sys 文件夹介绍
deley 文件夹介绍
deley 文件夹函数简介
SysTick 工作原理
SysTick,即系统滴答[[定时器]],包含在 M3/4/7 内核里面,核心是一个 24 位的递减计数器(2 的 24 次方,来一个脉冲就递减)
每次 VAL 到 0 时,VAL 自动从 LOAD 重载!开始新一轮递减计数!
SysTick 寄存器介绍
SysTick 控制及状态寄存器(CTRL)
SysTick 重装载数值寄存器(LOAD)
SysTick 当前数值寄存器(VAL)
delay_init()函数(f1)
1 | void delay_init(uint16_t sysclk)//传入72(mhz) |
delay_us()函数(f1)
1 | void delay_us(uint32_t nus) |
delay_ms()函数(f1)
1 | //利用微秒延时函数实现 |
- Date:2023-06-05
- Time:17:08
- Subject: none
- Tags: #stm32
[[2023-06]]
printf 函数输出流程
printf 的使用
1 | //printf("字符串\r\n"); |
常用输出控制符表
常用转义字符表
例子
1 | //printf("输出控制符1输出控制符2…",输出参数1,输出参数2,…); |
printf 函数支持
半主机模式简介
用于 ARM 目标的一种机制,可将来自应用程序代码的输入/输出请求传送至运行调试器的主机
简单说:就是通过仿真器实现开发板在电脑上的输入和输出
一般我们:不使用半主机模式!!!
方法一:微库法
在魔术棒->Target 选项卡,勾选:Use Micro LIB,即可避免半主机模式
方法二:代码法
1 个预处理、 2 个定义、3 个函数,会用就行
-
pragma import(__use_no_semihosting),确保不从 C 库中使用半主机函数
- 定义:__ FILE 结构体,避免 HAL 库某些情况下报错
- 定义: FILE __ stdout,避免编译报错
- 实现:_ ttywrch、_ sys_exit 和_sys_command_string 等三个函数
在历程(uart.c)中已经实现了
到时候拷贝就好
微库法 VS 代码法
实现 fputc 函数
也不需要怎么知道