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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4258|回復: 9
收起左側

基于51單片機的16*16點陣動態顯示程序怎么改

[復制鏈接]
ID:144183 發表于 2016-11-2 09:47 | 顯示全部樓層 |閱讀模式
以下程序是兩個字的動態顯示,怎么改成八個字動態顯示
#include<reg52.h>#define  uchar unsigned char #define  uint unsigned intuchar code col[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};  uchar code row[][32]={{0x00,0x08,0x00,0x04,0x00,0x03,0xE0,0x00,0x00,0x00,0x00,0x40,0x00,0x80,0xFF,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x40,0x00,0x80,0x01,0x00,0x0E,0x00,0x00,},    //顯示 字碼:你{0x00,0x88,0x00,0x68,0x3E,0x09,0x22,0x09,0x2A,0x29,0x32,0xC9,0x22,0x09,0xFE,0x0F,0x22,0x29,0x32,0xC9,0x2A,0x09,0x22,0x09,0x3E,0x29,0x00,0xC8,0x00,0x08,0x00,0x00,},       // 顯示字碼:好 };          void delayms(uint t)                           //每1延時1ms{     uint x,y;     for(x=t;x>0;x--)         for(y=124;y>0;y--);}                                                void display(uint n)          //n為顯示字碼的序數{     uint i,j;         for(j=0;j<10;j++)         for(i=0;i<16;i++)         {             if(i<8) P2=col[i],P3=0xff;                  else  P2=0xff, P3=col[i-8];                      P0=row[n][2*i];                 P1=row[n][2*i+1];                 delayms(3);                                            }                                   }                         void main(){     while(1)                   {                 display(0);                 delayms(50);             display(1);                 delayms(50);                 }         }   
回復

使用道具 舉報

ID:111634 發表于 2016-11-2 12:08 | 顯示全部樓層
本帖最后由 zl2168 于 2016-11-2 14:53 編輯

上述程序中uint全部改為uchar(這不是錯誤,而是沒必要)。
回復

使用道具 舉報

ID:111634 發表于 2016-11-2 12:09 | 顯示全部樓層
if(i<8) P2=col[i],P3=0xff;                  else  P2=0xff, P3=col[i-8];                      語句格式有錯
回復

使用道具 舉報

ID:111634 發表于 2016-11-2 12:11 | 顯示全部樓層
code中要有八個字。
回復

使用道具 舉報

ID:111634 發表于 2016-11-2 12:12 | 顯示全部樓層
顯示循環序數改為8
回復

使用道具 舉報

ID:144183 發表于 2016-11-2 13:09 | 顯示全部樓層

你好,那要怎么改
回復

使用道具 舉報

ID:144183 發表于 2016-11-2 13:11 | 顯示全部樓層
zl2168 發表于 2016-11-2 12:12
顯示循環序數改為8

按你說的改了,好像刷新時間太快,要改上面的嗎
回復

使用道具 舉報

ID:140371 發表于 2016-11-2 14:23 | 顯示全部樓層
將row數組(陣列) 用一組{} 包圍就好 ,增加到8個漢字的內容,結束用 ;
將 main() 改成下列這樣  
void main()
{ char i,j;     
while(1)                  
        {
        for(j=0;j<8;j++) //有8個字形輪流顯示
                {
                 for(i=0;i<2;i++) ////每個字形顯示時間的長度
                 display(j);
                }
                                                                       
        }         
}  

  

如果有殘影則加上 關閉顯示器
如下:                                          
void display(uint n)         
{     uint i,j;         
        for(j=0;j<10;j++)
                                       
        for(i=0;i<16;i++)         
                {
                                P0=0; //
                                P1=0; //
                       
                if(i<8) P2=col[i],P3=0xff;                  
                else  P2=0xff, P3=col[i-8];
                       
                 P0=row[n][2*i];               
                 P1=row[n][2*i+1];                 
                 delayms(3);                                            
                }                                   
}  

您試看看...
回復

使用道具 舉報

ID:148069 發表于 2016-11-16 14:32 | 顯示全部樓層
論壇里有的
回復

使用道具 舉報

ID:111634 發表于 2016-11-16 14:42 | 顯示全部樓層
本帖最后由 zl2168 于 2016-11-16 14:44 編輯

實例66  LED 16×16點陣掃描顯示漢字


Proteus仿真一下,確認有效。
實例66a LED 16×16點陣漢字顯示.rar (48.21 KB, 下載次數: 12)
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲h视频 | 久久久久亚洲精品 | 欧美久 | 欧美激情精品久久久久 | 久久精品高清视频 | 国产精品jizz在线观看老狼 | 九九av| 成人午夜在线观看 | 国产羞羞视频在线观看 | 免费的黄色片子 | 欧美激情久久久 | 欧美一级二级三级视频 | 午夜黄色影院 | 亚洲每日更新 | 99精品久久| 久久美女网 | 99久久久久 | 国产精品久久久久久久 | 亚洲精品一二三区 | 国产日韩欧美一区 | 亚洲精品久久久久久久久久久 | 色综合一区二区 | 久久99精品国产 | 国产真实精品久久二三区 | 国产精品久久久久久久久久不蜜臀 | 偷拍自拍第一页 | 色性av | 日日操夜夜操天天操 | 91在线看视频 | 欧美女优在线观看 | 亚洲国产精选 | 成人在线观看免费观看 | 亚洲 中文 欧美 日韩 在线观看 | 国产一区二区三区免费 | 欧美狠狠操| 久久精品视频在线播放 | 精品伦精品一区二区三区视频 | 国产精品自产拍在线观看蜜 | 亚洲区视频 | 午夜精品视频一区 | 国产精品揄拍一区二区 |