为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

8×8LED点阵屏仿电梯数字滚动显示

2019-08-27 9页 doc 24KB 63阅读

用户头像

is_591137

暂无简介

举报
8×8LED点阵屏仿电梯数字滚动显示8×8LED点阵屏仿电梯数字滚动显示软件设计 原理图 仿真图 PCB图 8×8LED点阵屏仿电梯数字滚动显示程序设计 程序设计 #include #include #define uchar unsigned char #define uint unsigned int uchar code Table_OF_Digits[]= { 0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00, 0x00,0x00,0x00,0x21,0x7f,0x01,0x00,0x00, 0x00,0x27,...
8×8LED点阵屏仿电梯数字滚动显示
8×8LED点阵屏仿电梯数字滚动显示软件设计 原理图 仿真图 PCB图 8×8LED点阵屏仿电梯数字滚动显示程序设计 程序设计 #include #include #define uchar unsigned char #define uint unsigned int uchar code Table_OF_Digits[]= { 0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00, 0x00,0x00,0x00,0x21,0x7f,0x01,0x00,0x00, 0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00, 0x00,0x22,0x49,0x49,0x49,0x36,0x00,0x00, 0x00,0x0c,0x14,0x24,0x7f,0x04,0x00,0x00, 0x00,0x72,0x51,0x51,0x51,0x4e,0x00,0x00, 0x00,0x3e,0x49,0x49,0x49,0x26,0x00,0x00, 0x00,0x40,0x40,0x40,0x4f,0x70,0x00,0x00, 0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00, 0x00,0x32,0x49,0x49,0x49,0x3e,0x00,0x00, }; uchar Num_Index = 1,wei = 0,floor,i,mark,t; void Delay() { uint x; for( x = 0 ; x < 110 ; x++); } void LED_Init() { Delay(); t = _cror_(t,1); P3 = t; P0 = Table_OF_Digits[Num_Index * 8 +i]; if(++i == 8) { i = 0; } } void LED_Screen_Display(int temp) { Delay(); t = _cror_(t,1); P3 = t; if( mark ) P0 = (Table_OF_Digits[Num_Index *8 +temp] >> wei) + (Table_OF_Digits[(Num_Index - 1 )*8 +temp] << (8-wei)) ; else    P0 = (Table_OF_Digits[Num_Index *8 +temp] << wei) + (Table_OF_Digits[(Num_Index + 1 )*8 +temp] >> (8-wei)) ;    } void Control_Move() { int temp1,temp2; if(Num_Index > floor) mark = 1; else mark = 0; for( temp2 = 0 ;temp2 < 30 ; temp2 ++ ) { for ( temp1  = 0 ;temp1 < 8 ; temp1 ++) { LED_Screen_Display(temp1); } } if( ++wei == 8 ) { wei =0; if( mark ) if(  (Num_Index --)  == floor) P1 = 0xFF; else P2 = 0xFF; else if( ++ Num_Index == floor) P1 = 0xFF; } } void ProcessKey() { switch(P1) { case 0xFE : P1 = 0xFE ; floor = 5; if(Num_Index == floor) P1 = 0xFF; else Control_Move(); break; case 0xFD : P1 = 0xFD ; floor = 4; if(Num_Index == floor) P1 = 0xFF; else Control_Move(); break; case 0xFB : P1 = 0xFB ; floor = 3; if(Num_Index == floor) P1 = 0xFF; else Control_Move(); break; case 0xF7 : P1 = 0xF7 ; floor = 2; if(Num_Index == floor) P1 = 0xFF; else Control_Move(); break; case 0xEF : P1 = 0xEF ; floor = 1; if(Num_Index == floor) P1 = 0xFF; else Control_Move(); break; default : break; } } void main() { t = 0x7F; while(1) { if(P1 != 0xFF) { i = 0; t = 0x7F; ProcessKey(); } else { LED_Init(); } } }
/
本文档为【8×8LED点阵屏仿电梯数字滚动显示】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索