- 博客(4)
- 收藏
- 关注
原创 STM32TIM定时中断
计数器溢出频率:CK_CNT_OV = CK_CNT / (ARR+1) = CK_PSC / (PSC+1) / (ARR+1)计数器的计数频率:CK_CNT= CK_PSC/(PSC+1) 计数器 = 预分频器/(预分频器+1)不仅具备基本的定时中断功能,而且还包含内外时钟源选择,输入捕获,输出比较,编码器接口,主从触发模式等多种功能。16位计数器,预分频器,自动重装寄存器的时基单元,在72MHz计数时钟下可以实现最大59.65s的定时。计数器每有一个上升沿,计数器的值+1。
2024-01-31 18:34:15
553
原创 STM32EXTI外部中断
当一个中断程序正在运行时,又有新的更高优先级的中断源申请中断,cpu再次暂停当前中断程序,转而去处理更高优先级的中断源申请中断,cpu再次暂停当前中断程序,转而去处理新的中断程序,处理完成后依次进行返回。在主程序运行过程中,出现了特定的中断触发条件(中断源),使得cpu暂停当前运行的程序,转而去处理中断程序,处理完成后又返回原来被暂停的位置继续运行。当有多个中断源同时申请中断时,cpu会根据中断源的轻重缓急进行裁决,优先响应更加紧急的中断源。
2024-01-28 22:09:32
515
1
原创 C++笔记:内存四区
代码区是共享的,共享的目的是对于频繁被执行的程序,只需要在内存中有一份代码即可。注意事项:不要返回局部变量的地址,栈区开辟的数据由编译器自动释放。代码区是只读的,使其只读的原因是防止程序意外的修改了它的指令。由程序员分配释放,若是程序员不释放,程序结束时由操作系统回收。不同区域存放的数据,赋予不同的生命周期,给予更大的灵活编译。栈区:由编译器自动分配释放,存放函数的参数值,局部变量等。代码区:存放函数体的二进制代码,由操作系统进行管理的。由编译器自动分配释放,存放函数的参数值,局部变量等。
2023-11-06 17:44:35
81
1
原创 C++笔记:this指针的使用
我们知道在C++中成员变量和成员函数是分开存储的,每一个非静态成员函数只会诞生一份函数示例,也就是说多个同类型的对象会共用一块代码。(2).在类的非静态成员函数中返回对象本身,可以使用return*this。那么问题是:这一块代码代码是如何区分那个对象调用自己呢?(1).当形参和成员变量同名时,可以用this指针来区分。c++通过特殊的对象指针,this指针,解决上述问题。this指针是隐含每一个非静态成员函数内的一种指针。this指针不需要定义可以直接使用。
2023-11-06 17:30:10
65
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人