- 博客(11)
- 收藏
- 关注
原创 STM32基于HAL库移植uCOS
在移植过程中步骤比较繁琐,需要仔细一点。利用uC/OS提供的系统特征,可以简化多任务程序设计,满足多个任务的时间要求,大大降低了开发难度,轻松地完成前后台编程方法难以完成的任务。同时利用系统的定时中断,设计一个超级任务来对其他任务进行监控,从而也提高了系统的可靠性。当然我们也看到,程序的可读性和可维护性也提高了。
2022-11-03 09:07:13 655
原创 STM32+OLED屏的应用实例
通过这几个实验基本熟练了STM32与OLED的显示,以及AHT20的使用,但在原理上还存在知识漏洞。对于汉字点阵的原理有了理解,在进行取模时应注意细节,实验总体上进行的比较顺利,但还应该好好理解下I2C协议。参考文章。
2022-11-03 00:33:38 567
原创 HAL库中断点灯及串口通信
中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行或调度新的进程执行的过程。中断分为内中断和外中断。内中断指与当前执行的指令有关,中断信号来自CPU内部,内中断也称异常,例如,当前执行的指令是非法的,则会引发一个中断信号。而外中断指与当前执行的指令无关,中断信号来源于CPU外部,例如时钟中断、I/O中断请求。我们通常所说的中断是狭义上的中断,即外中断。
2022-10-22 18:13:58 807
原创 基于STM32F103C8的串口通信 hello windows
USART是一个全双工通用同步/异步串行收发模块,该接口是一个高度灵活的串行通信设备。USART收发模块一般分为三大部分:时钟发生器、数据发送器和接收器。控制寄存器为所有的模块共享。时钟发生器由同步逻辑电路(在同步从模式下由外部时钟输入驱动)和波特率发生器组成。发送时钟引脚XCK仅用于同步发送模式下,发送器部分由一个单独的写入缓冲器(发送UDR)、一个串行移位寄存器、校验位发生器和用于处理不同帧结构的控制逻辑电路构成。使用写入缓冲器,实现了连续发送多帧数据无延时的通信。
2022-10-15 19:01:18 430
原创 GPIO端口初始化设置,STM32F103点亮LED流水灯过程
寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。寄存器的存储电路是由锁存器或触发器构成的,因为一个锁存器或触发器能存储1位二进制数,所以由N个锁存器或触发器可以构成N位寄存器。寄存器是中央处理器内的组成部分。寄存器是有限存储容量的高速存储部件,它们可用来暂存指令、数据和位址。
2022-10-13 19:08:15 2148 1
原创 基于STM32汇编程序的编写
此次实验因为对汇编语言不了解,以及对keil软件操作的不熟悉,导致很多问题出现,但最终通过参考资料得以解决。后续学习应该掌握汇编语言。
2022-10-08 16:37:14 1201
原创 gcc生成使用静态库和动态库、gcc常用命令和ELF文件的介绍以及opencv的操作
我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。这次作业练习了.o文件生成并使用静态库和动态库,然后再一次熟悉了gcc的常用命令,了解了ELF文件格式,熟悉了opencv打开图片、播放视频和获取摄像头的操作。这次作业很耗时,也很考验耐心!
2022-09-22 00:55:12 609
原创 Ubuntu系统下C语言的编译及makefile的应用
本次实验是基于Ubuntu系统使用gcc和makefile进行C语言程序的编译,回顾了以前学习的Ubuntu的常用命令以及源的更换操作,学习使用vim、gedit文本编辑器。
2022-09-07 21:40:25 1193 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人