找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4522|回复: 2
收起左侧

STC12C5A60S2输出可调占空比的PWM脉冲源程序

  [复制链接]
ID:23844 发表于 2019-11-9 20:21 | 显示全部楼层 |阅读模式
测试STC12C5A60S2输出可调占空比的PWM脉冲带两个按键,分别加大与减少占空比调整,
可以用万用表电压档测量PWM输出IO的电压会随着占空比高低变化

单片机源程序如下:
  1. /**********
  2. 测试STC12C5A
  3. 输出可调占空比的PWM脉冲
  4. 调整范围
  5. 20191109
  6. *********/
  7. #include "STC12C5A.H"   // 包含STC12C5A60S2寄存器定义文件

  8. sbit UpKey=P3^5;  //调小占空比按键
  9. sbit DownKey=P3^4;//调大占空比按键

  10. #define ADJdata CCAP0H//宏定义

  11. void delayms(unsigned int delay)
  12. {
  13.         unsigned int a,b;
  14.         for(a=delay;a>0;a--)
  15.         for(b=150;b>0;b--);
  16. }

  17. void main()
  18. {
  19.         CCAPM0=0x42;            // 设置PCA模块为PWM输出方式。
  20.         //B7  B6     B5    B4   B3    B2   B1   B0
  21.         //*  ECOM0 CAPPn CAPNn MATn TOGn PWMn ECCFn
  22.         // 开启比较器允许  允许PWM引脚输出脉冲
  23.         CR=1;                        // PCA计数器开始运行
  24.         ADJdata=0x80;        // 脉宽控制初值50%        
  25.         while(1)
  26.                 {
  27.                 if(UpKey==0)
  28.                         {
  29.                         delayms(20);
  30.                         if(UpKey==0)
  31.                                 {
  32.                                 while(UpKey==0);
  33.                                 ADJdata+=5;
  34.                                 if(ADJdata>=255) ADJdata=255;//最大
  35.                                 }
  36.                         }
  37.                 if(DownKey==0)
  38.                         {
  39.                         delayms(20);
  40.                         if(DownKey==0)
  41.                                 {
  42.                                 while(DownKey==0);
  43.                                 if(ADJdata<=25) ADJdata=30;//最低
  44.                                 ADJdata-=5;
  45.                                 }
  46.                         }
  47.                 }               
  48. }                                                                  
复制代码





评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:554892 发表于 2020-4-2 19:15 | 显示全部楼层
很有价值,顶一个
回复

使用道具 举报

ID:945807 发表于 2022-12-3 15:06 | 显示全部楼层
厉害, 很有价值,顶一个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表