[通用8051核FLASH系列] PWM0配置2Hz频率

[复制链接]
 楼主| louliana 发表于 2024-7-23 16:27 | 显示全部楼层 |阅读模式


  1. /*************************************PWM0初始化****************************************/
  2. void PWM_init(void)
  3. {
  4.         P2M1 = P2M1&0xF0|0x08;                //P22设置为推挽输出
  5.   P1M0 = P1M0&0xF0|0x08;    //P10设置为推挽输出
  6.        
  7.         PWM0_MAP = 0x07;                                        //PWM0通道映射P07口
  8.         PWM01_MAP = 0x10;                                        //PWM01通道映射P10口
  9.   PWM0C = 0x01;                                                  //PWM0、PWM01高有效,时钟8分频

  10.         //独立模式下,PWM0和PWM01共用一个周期寄存器
  11.         //周期计算         = 0x03E8 / (Fosc / PWM分频系数) = 0x03E8 / (16000000 / 8)        = 500us        / 2kHz               

  12.         PWM0PH = 0x03;
  13.         PWM0PL = 0xE8;

  14.         //占空比计算= 0x0155 / (Fosc / PWM分频系数)
  15.         //                        = 0x01F4 / (16000000 / 8)        = 500 / 2000000  = 250us        占空比为250/500 = 50%               

  16.         PWM0DH = 0x01;                                                //PWM0高4位
  17.         PWM0DL = 0xF4;                                                //PWM0低8位
  18.         PWM0DTH = 0x01;                                                //PWM01高4位
  19.         PWM0DTL = 0xF4;                                                //PWM01低8位
  20.         PWM0EN = 0x0F;                                                //使能PWM0,工作于独立模式
  21. }


guijial511 发表于 2024-7-23 19:15 来自手机 | 显示全部楼层
PWM输出2HZ频率也太低了吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

46

主题

1586

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部