找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1160|回复: 0
打印 上一主题 下一主题
收起左侧

STC单片机PWM做RGB全彩程序,如何同时几个CCPL和CCPH的值而改变PWM的宽度?

[复制链接]
跳转到指定楼层
楼主
ID:65237 发表于 2022-9-12 21:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STC15W408AS用PWM做RGB全彩 ,手上有STC15W408AS 想做个5050RGB全彩 硬件和软件CCP模块PWM固定不变的三色已经调通,现在遇到一个问题 如何让三路CCP,PWM的宽度如由 红 绿 蓝 红蓝 红绿 绿蓝 不同的PWMW宽度合成多种色 我想问的是在主程序中如何同时几个CCPL和CCPH的值而改变PWM的宽度重而达改变颜色,下面是我改的值 根本行不通,   望高手们指点

单片机源程序如下:
void main()
{
     //        P1=0X00;
        //         P1M1 &= 0XFC;//P1.0设置为推挽输出
     //   P1M0 |= 0x03;
                  P1M1 &= 0XFC;//P1.0设置为推挽输出
       P1M0 |= 0x03;  
                Timer0Init();
                Pwm_Init();
        //        P1=0X00;
              while(1)
        {  
        //         P1M1 &= 0XFC;//P1.0设置为推挽输出
     //  P1M0 |= 0x03;  
        
            /*  if(SW1 == 0)
                {
                        delayms(100);
                       if(SW1 == 0);
                                                {
                                                        while(SW1!=0);
                                                // led=~led;

                                                //         led=1;
                                                    TR0=1;
                              // CR = !CR;             //反转控制位,启动/关闭PCA计时器
                                                           //P1 =~P1;  
                                                         //          P1=~P1;
                                                        //          delayms(100);   

                                                }
               }   */
                          // delayms(1);
                          // for(x=z;x>0;x--)
                           r=r-10;
                           if(r<0)
                           {
                                  r=0xff ;
                           }
                            CCAP1L = r;                              //PWM占空比为50%[(40H-20H)/40H]
                CCAP1H =r ;
                          b= b+10 ;
                             if(b>0xfe)
                           {
                                  b=0;
                           }
                            CCAP2L = b; //PWM占空比为87.5%[(100H-20H)/100H]  1.5  0~255
                CCAP2H =b;

        }         
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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