一晃已经结束比赛小半年,感觉自己的人生真是跌宕起伏呢(笑),本来以为随便写写的东西可能会没人看吧,没想到会有这么多人阅读,所以努力回忆填了这个坑。
其实在之前的硬件连接和cubemx设置中我们已经配好了最基本的菜单栏项,接下来所要做的就是打开我们生成的工程,然后配置相关的USER CODE
主要的代码编写都集中在main.c:
简而言之,就是在主函数里面编写了一个中断回调函数,并在这个函数里面通过定时器驱动电机。
以上是使用中断函数驱动直流电机的全部配置。下一篇应该会记录一些有关FreeRTOS、CAN通信以及无刷直流电机相关的内容。
需要注意的是:编写用户代码需要写在系统指定的地方,比如:
在整个工程里面随处可见的USER CODE,那相信聪明的大家也能看出来这个英文是什么意思,如果代码不写在这两行之间,等下次再编译工程的时候,你的代码就会被无情的刷掉。
一些通信协议使用的经验
Nrf24l01
检查模块是否正常
调试传感器的第一步一定是检查传感器是否在认真工作,统一操作是给SPI的寄存器写入5个地址。
直接使用NRF24L01_Check()函数来检查模块是否正常工作,如果正常就返回0x00,不正常就返回0x01。
问题1:一直返回0x01,查询贴吧发现是spi时序问题,遂增加主函数延时,成功。
问题2:一定要看清楚工作电压,写着不能超过3.6V就别用5V,不然上电就炸机指日可待。
结尾
距离结束比赛已经有快两年了,现在回过头再看看这些总结依旧是很宝贵的经历。
这个系列应该会结束吧,如果后面有空再回来完善细节。