久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1709|回復: 8
收起左側

哪位大神指點一下,網上的程序燒錄進單片機沒反應,也不知道哪里錯了

[復制鏈接]
ID:1009425 發表于 2023-12-6 13:47 | 顯示全部樓層 |閱讀模式
sfr P3              = 0xB0;
sfr LEDWTML         = 0xce;
sfr LEDWTMH         = 0xcf;
sfr LEDAT1          = 0xc7;
sfr PWMEN           = 0x90;
sfr PWM2DIVL        = 0xad;
sfr PWM2DIVH        = 0xae;
sfr PWM2DUTL        = 0x9f;
sfr PWM2DUTH        = 0x91;
sfr PWM2CKD         = 0xb3;
sfr PWM2CON         = 0xbb;
sfr LEFLG           = 0xbf;
#define CKCON (*(unsigned char volatile xdata *)0x8030)
#define P34F  (*(unsigned char volatile xdata *)0x801C)
#define LEDUTL (*(unsigned char volatile xdata *)0x8060)
#define LEDUTH (*(unsigned char volatile xdata *)0x8061)
#define PWMIE(N) (N<<7) //N=0-1
#define PWMTOG(N) (N<<6) //N=0-1
#define PWMMOD(N) (N<<3) //N=0-7
#define PWMPOL(N) (N<<2) //N=0-1
#define PWMCKS_SYS 0
#define PWMCKS_IL 1
#define PWMCKS_IH 2     //LEFLG
#define LEF1 (1<<3)
#define LEBSY1 (1<<2)
#define IHCKE (1<<7)
void PWM_init(void)
{
P3   =16;
P34F = 5; //設置 P34 為 PWM 引腳功能
CKCON |= IHCKE; //打開 IRCH 時鐘
PWM2DIVH = 0; //設置位周期時間
PWM2DIVL = 20;
PWM2DUTH = 0; //設置位碼 0 時間
PWM2DUTL = 6;
LEDUTH = 0; //設置位碼 1 時間
LEDUTL = 13;
PWM2CON = PWMIE(0) | PWMTOG(0) | PWMMOD(3) | PWMPOL(0) | PWMCKS_IH; //設置IRCH 為PWM時鐘源,發送 3 個字節后插入暫停時間
PWM2CKD = 0; //設置預分頻系數,設置為 0 表示不分頻
LEDWTMH = 0; //設置暫停時間
LEDWTML = 50;
PWMEN |= (2<<2); //PWM2 使能
}
code unsigned char LED_DAT[][3] = //LED 數據表
{
{0xff,0x00,0x00},
{0xff,0xff,0x00},
{0x00,0xff,0x00},
{0x00,0xff,0xff},
{0x00,0x00,0xff},
{0xff,0x00,0xff},
};
void main(void)
{
unsigned char i;
unsigned char color_index=0;
PWM_init();
while(1)
{
for(i=0;i<24;i++) //每級 RGB LED 為 3 個字節數據,8 級為 24 字節
{
while(LEFLG & LEBSY1); //等待數據全部發送
LEDAT1 = LED_DAT[color_index][i%3]; //寫入 LED 數據到 LEDAT 寄存器
}
color_index ++; //循環變色
if(color_index> 6) color_index =0;
}
  }

回復

使用道具 舉報

ID:161164 發表于 2023-12-7 09:36 | 顯示全部樓層
啥芯片?
預期反應是啥?
沒反應又是啥?
回復

使用道具 舉報

ID:1009425 發表于 2023-12-12 14:49 | 顯示全部樓層
1.“PWMEN |= (2<<2); //PWM2 使能” 改為 “PWMEN |= (1<<2); //PWM2 使能”
2.需要復位280us以上
回復

使用道具 舉報

ID:1009425 發表于 2024-1-20 12:47 | 顯示全部樓層
//航順8位單片機,錦銳CA51F551S1,只可調光,調速,調燈組數,不會跑馬。程序調試OK
sfr P3              = 0xb0;
sbit EA                         = 0xAF;
sfr LEDWTML         = 0xce;
sfr LEDWTMH         = 0xcf;
sfr LEDAT1             = 0xc7;
sfr PWMEN           = 0x90;
sfr PWM2DIVL        = 0xad;
sfr PWM2DIVH        = 0xae;
sfr PWM2DUTL        = 0x9f;
sfr PWM2DUTH        = 0x91;
sfr PWM2CKD         = 0xb3;
sfr PWM2CON         = 0xbb;
sfr LEFLG           = 0xbf;
#define CKCON (*(unsigned char volatile xdata *)0x8030)
#define P34F  (*(unsigned char volatile xdata *)0x801C)
#define LEDUTL (*(unsigned char volatile xdata *)0x8060)
#define LEDUTH (*(unsigned char volatile xdata *)0x8061)
#define PWMIE(N) (N<<7) //N=0-1
#define PWMTOG(N) (N<<6) //N=0-1
#define PWMMOD(N) (N<<3) //N=0-7
#define PWMPOL(N) (N<<2) //N=0-1
#define PWMCKS_SYS   0
#define PWMCKS_IL    1
#define PWMCKS_IH    2     //LEFLG
#define LEF1 (1<<3)
#define LEBSY1 (1<<6)
#define IHCKE (1<<7)

void main(void)
{               
                EA = 1;       
                CKCON =(1<<7);                                                        //打開IRCH時鐘
    P34F  =5;
        PWM2CON = PWMIE(0) | PWMTOG(0) | PWMMOD(3) | PWMPOL(0) | PWMCKS_IH;                //設置PWM時鐘源為IRCH
        PWM2CKD = 0;                                                                                                                                                                       
       
        //設置PWMDIV、PWMDUT
        PWM2DIVH = 0;                       
        PWM2DIVL = 30;               

       
        PWM2DUTH = 0;               
        PWM2DUTL = 7;       
       
        LEDUTH        = 0;               
        LEDUTL        = 14;               
       
        LEDWTMH        = 0;
        LEDWTML        = 50;       
       
                                                                //開全局中斷
        PWMEN |= (1<<2); //PWM2 使能

        while(1)
        {
        unsigned int j,k;//定義一個16位無符號整形變量
        unsigned char i;
                static unsigned char color_index = 0;
                code unsigned char LED_DAT[][3] =
                {
            {0x00,0x2F,0x00},         //綠,紅,藍
                        {0x2F,0x00,0x00},
                        {0x00,0x00,0x2F},
                        {0x00,0x2F,0x2F},
            {0x2F,0x2F,0x00},
                        {0x2F,0x00,0x2F},
                        {0x2F,0x2F,0x2F},
                };               
                for(i=0;i<24;i++)              //LED個數i*3
                {
                        while(LEFLG & LEBSY1);
                        LEDAT1 = LED_DAT[color_index][i%3];
                }
                color_index ++;
                if(color_index> 6) color_index =0;    //LED數據組數N-1
      for(j=0;j<1500;j++)  //延時0.2s
        {
            for(k=1000;k>0;k--);
        }
        }
}
回復

使用道具 舉報

ID:1009425 發表于 2024-1-20 15:49 | 顯示全部樓層
8位2812點亮圖片

8位2812

8位2812

WS2812.rar

1.52 KB, 下載次數: 1

回復

使用道具 舉報

ID:1009425 發表于 2024-1-20 15:53 | 顯示全部樓層
lkc8210 發表于 2023-12-7 09:36
啥芯片?
預期反應是啥?
沒反應又是啥?

D:\123.JPG
回復

使用道具 舉報

ID:1009425 發表于 2024-1-20 19:45 | 顯示全部樓層
錦銳CA51F551S1芯片手冊

航順-CA51F551S1.pdf

2.37 MB, 下載次數: 0

規格書與例程

回復

使用道具 舉報

ID:1009425 發表于 2024-1-20 19:47 | 顯示全部樓層
lkc8210 發表于 2023-12-7 09:36
啥芯片?
預期反應是啥?
沒反應又是啥?

錦銳CA51F551S1,自帶WS2812硬件驅動
回復

使用道具 舉報

ID:382454 發表于 2024-1-22 16:20 | 顯示全部樓層
照抄也要抄的對啊。。。。。。。人才。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区三区视频 | 亚洲国产一区二区在线 | 成人性视频免费网站 | 欧美在线天堂 | 性视频一区 | 在线观看成人精品 | 久久免费观看视频 | .国产精品成人自产拍在线观看6 | 国产成人在线视频免费观看 | 老司机成人在线 | 日韩亚洲视频 | 欧美综合一区二区 | 欧美综合一区二区三区 | 中文字幕av一区二区三区 | 狠狠爱一区二区三区 | 超碰免费在线 | 国产精品久久久久久久久久久久久 | 日本福利在线观看 | 久久久久一区 | 懂色中文一区二区在线播放 | www.伊人.com| 亚洲视频免费在线观看 | 国产成人在线一区二区 | 91精品国产一区二区三区蜜臀 | 自拍视频国产 | 国产日韩欧美 | 精品中文字幕一区二区 | 在线视频99 | 亚洲成av| 99热在这里只有精品 | av午夜激情| 爱综合| 久久香蕉网 | 欧美精品在线播放 | 成人h片在线观看 | 精品久久久网站 | 日本黄色的视频 | 久久久999国产精品 中文字幕在线精品 | 天堂久久av| аⅴ资源新版在线天堂 | 三级黄视频在线观看 |