摘要:
内存、存储中(计算机、MCU)的引导流程、存储器 一、内存 栈区(stack):存放 非静态局部变量 堆区(heap):存放 malloc()、calloc() 、realloc()、free()等函数动态分配的数据 ——malloc() - C语言标准库中的函数 全局静态区:存放 静态局部变量、全
阅读全文
posted @ 2024-07-18 11:38
岌岌无名
阅读(148)
推荐(0)
摘要:
一、实时时钟 时间戳(实时的时间【单位:s】): 使用"time.h"文件: mktime() ——得到一个时间戳 localtime() ——得到一个当前时间的结构体(包含:年-月-日 时:分:秒) eg: time_t timestamp = mktime(&utc_time); /
阅读全文
posted @ 2024-07-16 21:23
岌岌无名
阅读(24)
推荐(0)
摘要:
STM32通讯方式总结 1.SPI通信 (Serial Peripheral interface,串行外围设备接口) 是一种高速的,全双工,同步的串行通信总线 功能:SPI接口主要应用于EEPROM,FLASH,各种传感器,AD转换器等 W25Q32(芯片)是一种使用SPI通讯协议的NOR FLAS
阅读全文
posted @ 2024-07-16 21:22
岌岌无名
阅读(359)
推荐(0)
摘要:
STM32 常用函数整理、debug调试(printf) 一、常用函数整理 标准库使用的API 用的都是 **char *** 数据类型 函数定义在 <string.h> 头文件中。 1、mem 1.清空缓冲区 memset memset((char *)uart2RxBuff, 0, UART2R
阅读全文
posted @ 2024-07-11 23:09
岌岌无名
阅读(663)
推荐(0)
摘要:
debug调试实现 - printf打印日志 printf 执行一次很费时间,所以需要在调试结束后,把printf去掉 1.设置一个开关/功能裁剪:打开时有printf 关闭没有 使用宏定义设计 #define DEBUG 1 #if (DEBUG == 1) //在宏定义中if判断 #define
阅读全文
posted @ 2024-07-03 23:32
岌岌无名
阅读(79)
推荐(0)
摘要:
VS code 上操作步骤:左下角设置图标 ——> 用户代码片段 ——> 选择要设置的语言文件(c.json) ——> 填写配置文件 格式: 注:每个片段之间的{}用逗号隔开,$1:表示光标所在位置,“”,这样表示一行不输入数据,直接回车换行 "快速h文件声明": { "prefix": "my_h
阅读全文
posted @ 2024-06-28 16:12
岌岌无名
阅读(150)
推荐(0)
摘要:
运算符 有几个操作数 就是 几元运算符 1、算术运算符 *运算符* *描述* *操作数个数 (几元运算符)* *组成的表达式的值* *副作用* + 正号 1 操作数本身 无 - 负号 1 操作数符号取反 无 + 加号 2 两个操作数之和 无 - 减号 2 两个操作数之差 无 ***** 乘号 2 两
阅读全文
posted @ 2024-06-13 22:59
岌岌无名
阅读(27)
推荐(0)
摘要:
分支控制语句 1. 单向分支 if 2. 双向分支 if else 3. 多向分支 else if 4. 多向分析 switch case 5. 嵌套分支 循环控制语句 1. while 2. do while 3. for 跳转控制语句 1. break 2. continue 3. goto
阅读全文
posted @ 2024-06-13 14:16
岌岌无名
阅读(11)
推荐(0)
摘要:
一. 布尔类型——适用于判别真假的类型 说明:布尔类型是一种形式(int)的别名: int ——> bool True ——> 1 (其他 非0 都是 1 ) False ——> 0 对应:0为假,非零为真 总结: 第一种方式 C89标准,使用宏定义(#define ) 第二种方式 C99标准,添加
阅读全文
posted @ 2024-04-29 21:31
岌岌无名
阅读(278)
推荐(0)
摘要:
嵌入式之原理图与PCB制作 1 PCB(印刷电路板) 介绍 2 嘉立创EDA安装和配置 EDA:工程命名:一般是 名称加-版本号(v0.0.1)_日期 3 PCB 快速入门 3.1 原理图绘制 1. 搜索元器件 (Shift+F 或者底部“库”菜单) 2. 放置元器件 3. 元器件摆放 4. 连线
阅读全文
posted @ 2024-04-28 20:07
岌岌无名
阅读(83)
推荐(0)