C语言
VF-TECH
清华大学本科,微电子专业硕士。对嵌入式有独特的爱好!
展开
-
GD32F303移植RT-Thread
GD32F303移植RT-Thread步骤原创 2023-12-07 17:34:51 · 808 阅读 · 0 评论 -
GD32F303 DAM串口接收
GD32F303串口DMA接收中断核心程序。使用串口空闲中断,DMA接收中断原创 2023-07-14 18:07:51 · 354 阅读 · 0 评论 -
STM32 CUBE SPI SD卡模拟U盘
STM32F103,SPI读取SD卡,模拟U盘原创 2023-02-28 16:00:01 · 601 阅读 · 0 评论 -
STM8L低功耗停止看门狗
STM8L看么狗在低功耗模式下停止计数原创 2022-03-15 11:34:02 · 1341 阅读 · 0 评论 -
FreeRTOS移植-GD32F303R
准备:(1)GD32F303R裸机工程(2)FreeRTOS的官方的源码包FreeRTOS源码包下载链接:官网:http://www.freertos.org/百度云:https://pan.baidu.com/s/1KWI8_-cap6H2cOLrj7Ro4g 提取码:u4pc下面是FreeRTOS源码包里面的内容提取关键源码(1)GD32F303R裸机工程下添加文件夹FreeRTOS文件夹(为了方便,我就创建者一个文件夹)(2)FreeRTOS\...原创 2022-02-18 11:48:14 · 4963 阅读 · 2 评论 -
正则表达式
%[^e] 意思是一直到e终止,并且这个e会被去掉:举例:sscanf("123456 abcdedf", "%[^e]", buf); 输出123456 abcd举例: sscanf("123456 abcdedf","123456 a%[^f]", buf); printf("%s\n", buf); 输出bcded...原创 2021-04-22 14:30:58 · 159 阅读 · 0 评论 -
ESP8266 RTOS 串口发送与接收
1.串口配置2.读取接收数据并发送出去#define BUF_SIZE (1024)static void echo_task(){ // Configure parameters of an UART driver, // communication pins and install the driver uart_config_t uart_config = { .baud_rate = 74880, .data_bits =...原创 2020-12-16 13:22:28 · 1961 阅读 · 1 评论 -
cJson内存泄漏 free不掉
1.问题描述:使用cJson,直接赋值粘贴官网的历程,发现free(out);根本释放不掉内存。当然也有可能我看的这个官网是假的。问题复现发现root_json ,data_json 和out都没有被释放,然后我就添加root_json ,data_json的释放函数。结果如下图,结果分析:root_json 和data_json被成功释放了,但是out还是没有被释放2.问题解决:cJSON_CreateObject创建的指针,需要使用cJSON_Delete删除,cJSON..原创 2020-11-10 13:47:38 · 3379 阅读 · 3 评论 -
Keil添加cJson和MQTT自带的库
我是用的芯片是MM32F031,开发环境是keil。添加keil自带的json mqtt库跟使用的哪款芯片没关系(1)安装cjson和mqtt的pack(2)功能调用原创 2020-11-05 20:18:42 · 2359 阅读 · 1 评论 -
C语言相关
1.结构体与结构体变量(1)结构体:struct student{ char name[10]; int age; int student_number;};(2)结构体变量struct student{ char name[10]; int age; int student_number;}s1,s2;原创 2020-06-11 21:21:37 · 269 阅读 · 0 评论 -
C语言自定义设计标准
文件名:全小写字母,单功能。例子:usart.c 全局变量:“g_” 开头,全小写字母。例子:g_aaa_bbb 静态变量:“s_” 开头,全小写字母。例子:s_aaa_bbb 局部变量:“l_” 开头,全小写字母。例子:l_aaa_bbb 函数名称:第一个单词大写,如果第一个单词全大写那与第二个单词之间用_隔开。例子:CJSON_Demo、UsartInit 宏定义:全大写...原创 2020-02-19 15:32:31 · 269 阅读 · 0 评论 -
网上下载的cjson库,使用经验记录
1.库文件下载链接:https://pan.baidu.com/s/1udX1cawz9X7_mVzCwYGUxA 提取码:8plt2.提取其中的.c .h文件来使用3.相关函数功能描述(1)json解析cJSON *json , *json_value ,*json_data; //定义json参数json = cJSON_Parse(text);...原创 2019-09-11 11:13:27 · 966 阅读 · 0 评论 -
__attribute__ ((packed)) 作用
定义结构体的时候,后面加上__attribute__ ((packed)) 可以减少参数存储空间。struct ID_NUM_BUFFER{ UINT8 card_dn[ID_DN_LEN]; // ID_DN_LEN=10 UINT8 card_id[ID_LEN]; // ID_LEN =17 UINT8 gread; // 权...原创 2018-07-12 10:13:41 · 431 阅读 · 0 评论