- 博客(59)
- 资源 (4)
- 收藏
- 关注
原创 计算机网络之UDP数据格式(一)
数据格式校验和的概念首先需要知道“伪首部”概念,“伪首部”仅用于计算校验和,并非传输的通信数据。在UDP通信中“校验和”为0时不校验数据,这会提高数据转发速度,但是也要考虑其可能会造成的影响。Wireshark实例分析192.168.1.164:8888 向 192.168.1.193:8889发送字符串1234UDP数据包如下:源端口:22b8->8888目标端口:22b9->8889数据包长度:000c->12校验和:d148由校验和概念可知伪首部为C0A
2022-01-17 17:47:32
3842
原创 C语言 mktime() gmtime()实现——亲测正确性
写此文章是因为有的嵌入式设备编程时不支持<time.h>,所以有些时间转换的函数必须自己实现。
2022-01-05 15:15:31
1865
10
原创 Linux网络编程之UDP Socket(二)
先看效果程序会将收到的信息又发送给对端流程程序源码#include <stdio.h>#include <stdlib.h>#include <stdint.h>#include <string.h>#include <errno.h>#include <sys/socket.h>#include <arpa/inet.h>#define HOST "192.168.1.164"
2021-12-20 20:53:24
301
原创 Linux网络编程之TCP Socket(一)
先看效果客户端发送服务端接收客户端源码连接成功后,可通过键盘输入内容发送到服务端。#include <stdio.h>#include <stdlib.h>#include <stdint.h>#include <string.h>#include <sys/socket.h>#include <arpa/inet.h>#define HOST "127.0.0.1" // 服务器
2021-12-20 19:59:07
500
原创 STM32F103移植FreeRTOS完整过程
前言演示STM32F103移植FreeRTOS完整过程,文末提供移植好的完整工程,1.下载源码下载FreeRTOSv9.0.0.zip解压如下图只用关注第一个文件夹FreeRTOS中的内容Demo是官方提供的常见芯片的移植示例,包括STM32F103,我们需要用到其中的FreeRTOSConfig.h配置文件。Source是源文件。2.拷贝源码在工程目录下创建FreeRTOS文件夹并创建子文件夹src和port将Source/include文件夹拷贝到FreeRTOS下将S
2021-12-06 20:30:20
11176
7
原创 C语言 有颜色有等级的日志实现
先看效果只需要调用log.h头文件即可,有LOG_DEBUG,LOG_INFO,LOG_WARN,LOG_ERR四个接口。其中有三个需要配置的地方。①:配置输出的接口,不同平台打印函数不一样;②:LOG等级,DEBUG INFO WARN ERR四个等级依次增高,可以选择输出的最低等级;③:地址分隔符。源码/********************************************************************************* *Autho
2021-11-12 16:11:10
1564
原创 Linux网络编程之域名解析DNS(三)
简介域名解析也叫域名指向、服务器设置、域名配置以及反向IP登记等等。说得简单点就是将好记的域名解析成IP,服务由DNS服务器完成,是把域名解析到一个IP地址,然后在此IP地址的主机上将一个子目录与域名绑定。互联网中的地址是数字的IP地址,域名解析的作用主要就是为了便于记忆。常用的域名解析函数有getaddrinfo()和gethostbyname(),一些资料书认为gethostbyname()已经过时且不支持IPv6,更推荐使用getaddrinfo()。gethostbyname()的衍生版本g
2021-09-16 15:09:24
1112
原创 C语言FIFO
简介First Input First Output的缩写,先入先出队列,这是一种传统的按序执行方法,先进入的指令先完成并引退,跟着才执行第二条指令。代码fifo.h/********************************************************************************* *Author: *Date: 2021.05.18 *Description: fi
2021-05-18 19:50:01
847
原创 Linux C sqlite3操作二进制文件
一、基本概念对于跟我差不多的初学者来说,有点分不清 SQL MySQL Sqlite3的区别和联系,百度了一圈,简单来说就是:SQL是用于所有数据库的基本语言,MySQL和Sqlite3是两种不同的数据库,MySQL更多的用于服务器,Sqlite3更多的用于嵌入式设备。二、基本语法①安装sqlite3sudo apt-get install sqlite3②创建表...
2021-04-02 19:31:31
365
原创 Linux C select()函数
1.功能 select 机制会监听它所负责的所有 socket,当其中一个 socket 或者多个 socket 可读或者可写的时候,它就会返回,而如果所有的 socket 都是不可读或者不可写的时候,这个进程就会被阻塞,直到超时或者 socket 可读写,当 select 函数返回后,可以通过遍历 fdset,来找到就绪的描述符。 简单点说就是,假如想在一个线程处理两个阻塞的socket时,就得用select()函数。2.函数原型int select(int maxfdp1,fd_set *r
2021-04-01 22:31:32
1007
原创 C语言常用时间相关函数
首先讲一下#include <time.h>和#include <sys/time.h>的区别,前者是C99标准库函数,后者是Linux系统函数,如果Windows平台装了MinGW(Minimalist GNU for Windows)工具也是可以使用<sys/time.h>的,<sys/time.h>中调用了<time.h>。获取时间戳-time函数原型:time_t time(time_t *timer)变量time_t实际上是l
2020-11-30 11:31:33
1983
原创 ARM平台移植openssl1.1.1g
1.openssl简介在计算机网络上,OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上。SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为Internet上保密通讯的工业标准。
2020-09-30 17:02:22
2536
3
原创 linux搭建NFS服务
1.NFS简介网络文件系统,英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进
2020-08-04 22:41:53
1023
原创 openssl详解与应用教程
通过openssl version -a查看当前openssl的版本,一般的linux系统会自带SSL。通过vim /usr/lib/ssl/openssl.cnf修改配置文件,这里修改了默认文件夹、私钥名、证书名。通过cd ssl进入默认文件夹在默认文件夹创建所需的目录和文件mkdir -pv {certs,crl,newcerts,private}touch {serial,index.txt,index.txt.attr}-pv可以显示执行进度指明证书开始的编号echo 01
2020-07-29 22:47:06
7545
1
原创 阿里云物联网平台MQTT教程
之前一直使用的中移物联网ONENET平台的MQTT的功能,由于阿里云平台的MQTT功能支持SSL,所以使用了一下阿里云平。创建产品和设备首先肯定是进入阿里云官网,并搜索物联网平台,点击物联网平台控制台,注意不是飞燕平台。点击创建产品选择直连设备和X.509证书认证,其他的大家随意。不需要用到SSL的可以选择设备密钥认证,当然选择X.509证书认证的不使用SSL也是可以的,所以我这里选择的是.509证书认证。创建成功点击添加设备,输入设备名后点击确定即可。设备添加成功后就可以在设备详情里
2020-07-05 22:48:49
7865
6
原创 STM32学习之SHT20温湿度传感器
一、产品综述SHT20, 新一代 Sensirion 湿度和温度传感器在尺寸与智能方面建立了新的标准:它嵌入了适于回流焊的双列扁平无引脚 DFN 封装, 底面 3 x3mm ,高度 1.1mm。传感器输出经过标定的数字信号,标准 I 2 C 格式。SHT20 配有一个全新设计的 CMOSens®芯片、一个经过改进的电容式湿度传感元件和一个标准的能隙温度传感元件,其性能已经大大提升甚至超出了前一代...
2020-03-29 14:19:32
21684
17
原创 NODEMCU( esp8266)刷MicroPython固件教程
一、准备工作这里默认大家已经安装二、利用pip安装esptool来到 pip 所在的文件夹下按住 Shift 点击右键打开命令窗口输入命令 pip3 install esptool安装成功三、查看串口号四、擦除FLASH在烧录固件之前需要通过如下操作进入 NodeMCU 的固件烧录模式按住 FLASH 按键(这里不松开)按开 RST 按键并松开松开 FLASH...
2019-12-23 17:52:07
3109
2
原创 Python实现语音识别(基于百度语音识别)
我是一名16级电子信息工程的学生,这是第一次发博客,因为经常在这里查资料 ,自己也应该贡献一点经验吧,也可以当是记录自己学习的过程吧。最近在自学Pythondef LuYin(Time,filename): CHUNK = 1024 #wav文件是由若干个CHUNK组成的,CHUNK我们就理解成数据包或者数据片段。 FORMAT = pyaudio.p...
2018-12-26 22:45:35
26182
19
IIC学习之SHT30温湿度传感器(基于STM32)配套资料
2024-01-12
STM32+FreeRTOS 使用SystemView监控系统
2023-07-11
STM32F103-FreeRTOS基础工程,0错误0警告 FreeRTOS V9.0源码
2023-07-11
J-Link驱动V7.60 64位版本
2023-07-04
mqttfx-1.7.1-windows-x64.rar
2020-07-05
求解STM32H750 SPI1作为从机回复错误的问题
2024-08-16
请教OpenSSL中AES_cbc加密的问题
2022-11-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅