 
        
        
    .png) STMCU小助手
                    
                        发布时间:2022-3-8 22:28
                        STMCU小助手
                    
                        发布时间:2022-3-8 22:28                        
                | 一、SG90角度与PWM转换关系 舵机参数:f=50hz,t=20ms 根据选用的SG90参数,我们需要给出周期为20ms,其中高电平时间为 0.5ms-2.5ms的信号 0.5ms-------------0度; 2.5% 1.0ms------------45度; 5.0% 1.5ms------------90度; 7.5% 2.0ms-----------135度; 10.0% 2.5ms-----------180度; 12.5% 二、Cubemx参数配置 1、时钟配置   2、定时器配置PWM输出设置 根据SG90的参数,我们需要设置PWM输出一个周期时间为20ms,初始值为0.5ms高电平的信号。 计算方法:Timer定时器时钟我们设置为240Mhz,这里我们将预分频设置为239,则一个周期为240Mhz/(239+1)=1Mhz(即1us),所以20ms的周期我们需要计数20000-1=19999个填入Counter Period参数中。 另外,我们还需要一个默认脉冲宽度为0.5ms的,0.5/20*20000=500 其他设置如下图所示: ![I1]{OF37[}{NHU]LNCB8SB5.png I1]{OF37[}{NHU]LNCB8SB5.png](data/attachment/forum/202203/08/222839c471zzmoh1a1w3z4.png)  三、MDK代码修改与运行 1.PWM与SG90转换角度转换函数 方便实验我们将所需要的角度与PWM计数值对应关系封装成一个函数。只需要输入我们所需要的角度和相关定时器参数即可。 代码如下(示例): 
 2.实验现象 这里在主函数增加了按键扫描通过按键控制SG90正反转180°。 另外还增加了串口printf函数,打印SG90旋转时的角度变化。 代码如下(示例): 
 可以看到按键按下SG90按照我们预期的动作变化。实验成功。 ![M1G6TQ3@8{[@Q64aW22]0.png M1G6TQ3@8{[@Q64aW22]0.png](data/attachment/forum/202203/08/222840ksv0mz04043rb6bz.png)  | 
【经验分享】STM32CubeIDE汉化
手把手教你VSCode搭建STM32开发环境
RTOS在STM32中的应用
【下载有礼】STM32 Finder华为应用商店正式上线!移动选型工具助力开发效率升级
【2025·STM32峰会】GUI解决方案实训分享5-调通板载的NRF24L01 SPI接口并使用模块进行无线通信(发送和接收)
【2025·STM32峰会】GUI解决方案实训分享2-编译运行TouchGFX咖啡机例程(含桌面仿真)
实战经验 | Keil工程使用NEAI库的异常问题
STM32 ISP IQTune:真正零门槛的免费ISP调整软件
【经验分享】STM32 新建基于STM32F40x 固件库的MDK5 工程
意法半导体MCU双供应链策略,打消中国客户后顾之忧
 微信公众号
                微信公众号
             手机版
                手机版
            