1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉

標(biāo)題: 單片機(jī)點(diǎn)陣仿真程序,一旦牽扯到行亮就有異常情況 [打印本頁]

作者: 最白的單片機(jī)    時(shí)間: 2020-4-21 14:29
標(biāo)題: 單片機(jī)點(diǎn)陣仿真程序,一旦牽扯到行亮就有異常情況
單片機(jī)小白求大神指教   在做LED點(diǎn)陣仿真的時(shí)候有沒有出現(xiàn)列亮正常,一旦牽扯到行亮就有異常的情況?有解決辦法嗎?(如下所示)
圖1  讓第三列亮   顯示正常 ;圖2、3 分別是讓第一行第一個(gè)亮和第一行亮,都顯示不正常  
圖2、3的代碼是照著宋大師的代碼   圖1是自己寫。

3.jpg (222.4 KB, 下載次數(shù): 118)

3.jpg

2.jpg (220.64 KB, 下載次數(shù): 174)

2.jpg

1.jpg (220.06 KB, 下載次數(shù): 90)

1.jpg

3.jpg (222.4 KB, 下載次數(shù): 131)

3.jpg

作者: 最白的單片機(jī)    時(shí)間: 2020-4-21 14:38
很抱歉發(fā)成這個(gè)樣子。上面大圖第一張是圖三  第二張是圖二 第三張是圖一  第四張大圖和三張小圖都沒用

圖一代碼是這樣的,#include<reg52.h>
sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;

unsigned char code image[]={
0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB,0xFB    //點(diǎn)陣取模  字節(jié)倒序

     };
void main()
{
         EA=1;
         ENLED = 0;
         ADDR3 = 0;
         TMOD  = 0x10;
         TH1 = 0xFC;
     TL1 = 0x67;
         ET1= 1;
         TR1 = 1;
     while(1);
}
void InterrumptTimer1()  interrupt 3
{
         static unsigned char i=0;
         
         TH1=0xFC;
         TL1=0x67;
         
         P0 =0xFF;
         switch(i)
         {                         
             case 0: ADDR2=0; ADDR1=0; ADDR0=0; i++; P0=image[0];break;
                 case 1: ADDR2=0; ADDR1=0; ADDR0=1; i++; P0=image[1];break;
                 case 2: ADDR2=0; ADDR1=1; ADDR0=0; i++; P0=image[2];break;
                 case 3: ADDR2=0; ADDR1=1; ADDR0=1; i++; P0=image[3];break;
                 case 4: ADDR2=1; ADDR1=0; ADDR0=0; i++; P0=image[4];break;
                 case 5: ADDR2=1; ADDR1=0; ADDR0=1; i++; P0=image[5];break;
                 case 6: ADDR2=1; ADDR1=1; ADDR0=0; i++; P0=image[6];break;
                 case 7: ADDR2=1; ADDR1=1; ADDR0=1; i=0; P0=image[7];break;
                 default:break;
         }
}




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1