两个月实习笔记

1、STM32Cube代码生成软件,使用STM32 HAL库支持cube直接生成初始化代码,ST提供一个使用文档,文档内列出HAL库提供的所有API函数以及说明,结合cube和HAL库可以十分高效地进行STM32开发,缺点是对比标准库效率稍低。
2、HAL库的使用,相比于标准库,HAL库掩盖了底层寄存器的操作,将其抽象分为两层,如UART功能分为GPIO功能层如引脚模式和UART专有功能层如波特率、奇偶校验等,在移植方面有着标准库无可匹配的优势,现在ST公司大力推广HAL库可见HAL库将是未来的发展趋势。
3、Git的使用,使用Git作为代码托管真的十分方便版本管理,功能包括本地库与远程库,如果没有远程库可以仅仅使用本地库实现版本管理功能,具体指令见Git常用指令文件。
4、常用开发工具学习,如局域网内使用飞鸽传书软件来进行文件传输,不仅传输速度快而且安全;如npp文本编辑器对C语言编程,其具有良好的界面和人性化的代码对齐和补全等功能。
5、ModBus通信协议,使用RS485协议,半双工通信,如果有校验位时需要把数据增加一位用来做校验。
6、逻辑分析仪的使用,结合PC和逻辑分析仪可以十分容易的捕捉MCU的引脚信号,可以分析UART、IIC、SPI等信号,大大方便了程序的调试和找错,但是需要注意分析仪采样频率的范围。
7、使用JTAG和ST-Link进行在线调试和仿真,包括断点调试、窗口查看变量,JTAG下载速率比ST-Link快得多。
8、时间片轮询法,使用一个定时器即可以进行时间片轮询法,可以大大提高CPU的效率。
9、分块式内存管理,结合正点原子的例程进行移植,可内存的管理和实现动态分配,但是使用分块式内存管理时内存的使用效率并不高,有待改进。

你可能感兴趣的:(专业技术)