找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

帖子
查看: 1183|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

STC單片機(jī)PWM做RGB全彩程序,如何同時(shí)幾個(gè)CCPL和CCPH的值而改變PWM的寬度?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:65237 發(fā)表于 2022-9-12 21:37 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
STC15W408AS用PWM做RGB全彩 ,手上有STC15W408AS 想做個(gè)5050RGB全彩 硬件和軟件CCP模塊PWM固定不變的三色已經(jīng)調(diào)通,現(xiàn)在遇到一個(gè)問(wèn)題 如何讓三路CCP,PWM的寬度如由 紅 綠 藍(lán) 紅藍(lán) 紅綠 綠藍(lán) 不同的PWMW寬度合成多種色 我想問(wèn)的是在主程序中如何同時(shí)幾個(gè)CCPL和CCPH的值而改變PWM的寬度重而達(dá)改變顏色,下面是我改的值 根本行不通,   望高手們指點(diǎn)

單片機(jī)源程序如下:
void main()
{
     //        P1=0X00;
        //         P1M1 &= 0XFC;//P1.0設(shè)置為推挽輸出
     //   P1M0 |= 0x03;
                  P1M1 &= 0XFC;//P1.0設(shè)置為推挽輸出
       P1M0 |= 0x03;  
                Timer0Init();
                Pwm_Init();
        //        P1=0X00;
              while(1)
        {  
        //         P1M1 &= 0XFC;//P1.0設(shè)置為推挽輸出
     //  P1M0 |= 0x03;  
        
            /*  if(SW1 == 0)
                {
                        delayms(100);
                       if(SW1 == 0);
                                                {
                                                        while(SW1!=0);
                                                // led=~led;

                                                //         led=1;
                                                    TR0=1;
                              // CR = !CR;             //反轉(zhuǎn)控制位,啟動(dòng)/關(guān)閉PCA計(jì)時(shí)器
                                                           //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空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表