STM32
文章平均质量分 58
karwen2020
机械、自动化、嵌入式
展开
-
STM32F10X时钟树
STM32F10X外设时钟树。原创 2022-12-02 20:38:29 · 293 阅读 · 0 评论 -
STM32 bit-band位带操作
如果在裸机开发中,位带操作相比于直接的读-改-写操作除了访问速度快一点以外好像也没有什么可以说的了,但是如果在带操作系统的开发中,多任务并发运行的时候就有可能在任务切换的过程中发生不可预料的问题,而位带操作由于是属于硬件完成的不可被异常打断的操作(原子操作),所以相对于读-写-改的操作模式的话会更安全些。另外,由于位带操作异常不可打断(原子操作),在带操作系统的开发中出于安全性考虑可以使用位带操作。式中:m为位带区的地址(0x2000,0000~0x200F,FFFF),n为位带区对应字节的第0~7位,原创 2022-11-29 23:29:33 · 1612 阅读 · 0 评论 -
assert_param函数的用法
注意:assert_failed()函数一般在代码调试时使用,可以帮助开发者检查输入参数无效的错误,但由于assert_failed()函数会影响代码执行效率,在程序release时,需要屏蔽掉,将宏定义USE_FULL_ASSERT注释即可。要使assert_failed()函数生效,需要宏定义USE_FULL_ASSERT,并且包含头文件stm32f0xx_conf.h;如果USE_FULL_ASSERT没有宏定义,则执行((void)0),即什么都不做。转载 2022-11-29 16:55:36 · 753 阅读 · 0 评论 -
I2C通信协议
I2C通信协议原创 2022-09-26 12:57:41 · 4867 阅读 · 0 评论 -
超全汇总——常见的芯片封装大全
常见IC封装形式大全原创 2022-09-22 10:17:46 · 1560 阅读 · 0 评论 -
STM32基本定时器TIM6、TIM7
STM32F10XXX定时器资源:STM32F10XXX系列包含TIM6、TIM7两个基本定时器,计数器为16位,其功能比较简单,仅支持向上计数,且只能计时,没有外部I/O口。1、时钟源TIMxCLK:定时器的时钟源来自系统内部时钟,准确来说由APB1预分频器分频提供,因为TIM6、7都是挂载在APB1上的外设。如果APB1的预分频系数等于1,则频率不变,其他情况,频率乘以2,库函数中APB1的分频系数为2,故定时器的时钟TIMxCLK=36*2=72MHz。2、计数器时钟CK......原创 2022-06-29 13:24:30 · 2472 阅读 · 0 评论 -
STM32F103C8T6引脚图
STM32F103C8T6引脚图原创 2022-06-22 16:53:22 · 19517 阅读 · 2 评论 -
STM32 EXTI外部中断/事件
一、EXTI外部中断/事件功能框图1、中断线路:①-②-③-④-⑤①输入线:有19个中断/事件输入线(联网型有20个),通过寄存器将这些输入线设置为任意一个GPIO。②边沿检测电路:选择上升沿触发、下降沿触发或者上升和下降沿都触发。③或门:选择软件触发或者GPIO输入触发中断。④与门:从或门③输出的信号分为两路,上路经过请求挂起寄存器输出与中断屏蔽寄存器一起控制与门的输出,并将与门④的输出保存至挂起寄存器EXTI_PR。⑤、将EXTI_PR寄存器内容输出至NVIC。2、事件线路:①-②-③-⑥原创 2022-06-19 17:57:34 · 2838 阅读 · 0 评论 -
Keil新建一个STM32工程文件
Keli新建STM32工程文件原创 2022-06-16 18:02:04 · 1404 阅读 · 0 评论 -
STM32 通用GPIO I/O口8种输出模式
STM32 通用I/O口8种模式原创 2022-06-13 14:18:54 · 4857 阅读 · 0 评论