本帖最后由 crz_21 于 2024-6-13 20:15 编辑
1、实验准备
需要一个SG90的舵机
2、工程搭建
首先从github上下载rtthread nano的源码,也可以从KEIL上或者STM32 CubeMX上添加rtthread。
自行下载的地址:https://github.com/RT-Thread/rtthread-nano/archive/refs/heads/master.zip
选取如图中的文件加到工程里
其中include和src文件夹全部移植即可,bsp和libcpu文件夹则需要选取一些文件添加,下图红框中便是需要的文件。
添加之后应该如图所示
PWM需要预分频成480,因为SG90需要50Hz频率的方波 通过分频后为100000Hz,在除以ARR为2000的值,得到50Hz频率。
主频设置为48Mhz。
因为使用了rtthread,需要将所有初始化放到board.c文件中,board.c中的#define RT_HEAP_SIZE (7 * 512)初始化线程栈,这个会影响单片机的ram大小
在components.c中的void rt_application_init(void)初始化任务。
三、实验现象
429e863f4fb4eec9d0c166e8d7ef7c90
2bbd27944cc169f2e9a5a7e9ec1fc794