這是一款51單片機16×16點陣源程序及仿真,可以實現(xiàn)滾動效果,程序及仿真文件壓縮后放在51黑附件,需要一可以自己下載
0.png (63.01 KB, 下載次數(shù): 70)
下載附件
2016-5-8 03:57 上傳
所有資料下載:
16X16點陣向左移動.rar
(62.26 KB, 下載次數(shù): 49)
2016-5-8 03:57 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
1、仿真使用PROTEUS7.8以上版本打開。 2、程序需要Keil 4打開。
程序: - /*******************************/
- //功能: 用16*16點陣實現(xiàn)左移顯示內(nèi)容
- //使用74154 作為行選信號
- //使用74HC595作為列信號
- /*******************************/
- #include <reg51.h>
- #include <intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- #define ROW P2
- /******位定義*******/
- sbit ST_CP = P3^2; //74HC_595的上升沿使其數(shù)據(jù)鎖存
- sbit MR = P3^3; //74HC_595的復(fù)位端口
- uchar code disp[] = //需顯示的字模表
- {
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //" "
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
-
- 0x04,0x10,0x34,0x08,0xC4,0x06,0x04,0x01,0xC4,0x82,0x3C,0x8C,0x20,0x40,0x10,0x30, //歡
- 0x0F,0x0C,0xE8,0x03,0x08,0x0C,0x08,0x10,0x28,0x60,0x18,0xC0,0x00,0x40,0x00,0x00,
-
- 0x40,0x00,0x42,0x40,0x44,0x20,0xC8,0x1F,0x00,0x20,0xFC,0x47,0x04,0x42,0x02,0x41, //迎
- 0x82,0x40,0xFC,0x7F,0x04,0x40,0x04,0x42,0x04,0x44,0xFE,0x63,0x04,0x20,0x00,0x00,
-
- 0x40,0x00,0x20,0x00,0xF8,0xFF,0x07,0x00,0x40,0x00,0x20,0x08,0x18,0x04,0x0F,0x43, //你
- 0x08,0x80,0xC8,0x7F,0x08,0x00,0x08,0x01,0x28,0x06,0x18,0x0C,0x00,0x00,0x00,0x00,
-
- 0x10,0x40,0x10,0x20,0x10,0x1E,0xFF,0x01,0x10,0x20,0x10,0x40,0xF8,0x3F,0x10,0x00, //加
- 0x00,0x00,0xF8,0x7F,0x08,0x20,0x08,0x20,0x08,0x20,0xFC,0x7F,0x08,0x00,0x00,0x00,
-
- 0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x0C,0x01,0x03,0xE2,0x00,0x1C,0x00, //入
- 0xE0,0x00,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0xC0,0x00,0x40,0x00,0x00,
-
-
- 0x00,0x10,0x00,0x10,0xF8,0x17,0x49,0x12,0x4A,0x12,0x4C,0x12,0x48,0x12,0xF8,0xFF, //單
- 0x48,0x12,0x4C,0x12,0x4A,0x12,0x49,0x12,0xFC,0x13,0x08,0x18,0x00,0x10,0x00,0x00,
-
- 0x00,0x80,0x00,0x40,0xFE,0x3F,0x20,0x01,0x20,0x01,0x20,0x01,0x20,0x01,0x20,0x01, //片
- 0x3F,0x01,0x20,0xFF,0x20,0x00,0x20,0x00,0x20,0x00,0x30,0x00,0x20,0x00,0x00,0x00,
-
- 0x10,0x04,0x10,0x03,0xD0,0x00,0xFF,0xFF,0x90,0x80,0x10,0x41,0x00,0x20,0xFC,0x1F, //片
- 0x04,0x00,0x04,0x00,0x04,0x00,0xFE,0x3F,0x04,0x40,0x00,0x40,0x00,0x70,0x00,0x00,
-
- 0x10,0x02,0x10,0x01,0x91,0x00,0xD6,0xFF,0x30,0x01,0x98,0x82,0x00,0x40,0x08,0x20, //初
- 0x08,0x18,0xF8,0x07,0x08,0x40,0x08,0x80,0x08,0x40,0xFC,0x3F,0x08,0x00,0x00,0x00,
-
- 0x40,0x04,0x30,0x04,0x11,0x04,0x96,0x04,0x90,0x04,0x90,0x44,0x91,0x84,0x96,0x7E, //學(xué)
- 0x90,0x06,0x90,0x05,0x98,0x04,0x14,0x04,0x13,0x04,0x50,0x06,0x30,0x04,0x00,0x00,
-
- 0x00,0x80,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x0C,0x01,0x03,0xE2,0x00,0x1C,0x00, //入
- 0xE0,0x00,0x00,0x03,0x00,0x0C,0x00,0x30,0x00,0x40,0x00,0xC0,0x00,0x40,0x00,0x00,
-
- 0x00,0x00,0xFC,0xFF,0x01,0x00,0x02,0x00,0x06,0x00,0x00,0x00,0x02,0x00,0x02,0x00, //門
- 0x02,0x00,0x02,0x00,0x02,0x00,0x02,0x40,0x02,0x80,0xFF,0x7F,0x02,0x00,0x00,0x00,
-
- 0x00,0x00,0xC0,0x07,0xE0,0x0F,0xF0,0x1F,0x38,0x38,0x08,0x38,0x08,0x2C,0x08,0x2C, //QQ
- 0x08,0x2C,0x08,0x38,0x08,0x70,0x18,0x70,0xF0,0xDF,0xE0,0x4F,0xC0,0x07,0x00,0x00,
- 0x00,0x00,0xC0,0x07,0xE0,0x0F,0xF0,0x1F,0x38,0x38,0x08,0x38,0x08,0x2C,0x08,0x2C,
- 0x08,0x2C,0x08,0x38,0x08,0x70,0x18,0x70,0xF0,0xDF,0xE0,0x4F,0xC0,0x07,0x00,0x00,
-
- 0x10,0x04,0x92,0x02,0xFE,0xFD,0x92,0x44,0x92,0x44,0x92,0x44,0xFF,0xFE,0x12,0x04,//群
- 0x89,0x08,0x8A,0x08,0x8C,0x08,0xF8,0xFF,0x8C,0x08,0xCA,0x0C,0x89,0x08,0x00,0x00,
-
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0xF8,0x3F, // 104412917
- 0xF8,0x3F,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x80,0x01,0xE0,0x0F,0xF0,0x1F,0xF0,0x1F,0x18,0x30,0x08,0x20,0x08,0x20,
- 0x08,0x20,0x08,0x20,0x18,0x30,0xF8,0x1F,0xF0,0x1F,0xE0,0x0F,0x80,0x01,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x07,0x80,0x05,0x80,0x04,0x40,0x24,0x20,0x24,
- 0x30,0x24,0xF0,0x3F,0xF8,0x3F,0xF8,0x3F,0x00,0x24,0x00,0x24,0x00,0x24,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x07,0x80,0x05,0x80,0x04,0x40,0x24,0x20,0x24,
- 0x30,0x24,0xF0,0x3F,0xF8,0x3F,0xF8,0x3F,0x00,0x24,0x00,0x24,0x00,0x24,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0xF8,0x3F,
- 0xF8,0x3F,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x60,0x30,0x70,0x30,0x78,0x38,0x08,0x3C,0x08,0x34,0x08,0x36,
- 0x08,0x32,0x08,0x33,0x88,0x31,0xF8,0x31,0xF0,0x30,0x60,0x38,0x00,0x00,0x00,0x00,
- 0x00,0x00,0xC0,0x00,0xF0,0x11,0xF0,0x3B,0x18,0x3B,0x08,0x32,0x08,0x22,0x08,0x22,
- 0x08,0x22,0x08,0x32,0x08,0x39,0xF8,0x1F,0xF0,0x0F,0xE0,0x07,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x10,0x20,0x10,0x20,0x10,0x20,0xF8,0x3F,
- 0xF8,0x3F,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x30,0x00,0x38,0x00,0x18,0x00,0x08,0x00,0x08,0x3C,0x08,0x3E,
- 0x08,0x3F,0x88,0x01,0xC8,0x00,0x68,0x00,0x18,0x00,0x18,0x00,0x08,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //" "
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- };
- /*************延時函數(shù)***************/
- void delay1ms( unsigned char t)
- {
- unsigned char i,j;
- for( ; t; t--)
- for(i=4; i>0; i--)
- for(j=123; j>0; j--);
- }
- void main()
- {
- uint base = 0; //在disp[]地址中移動,從0 到 rows - 15,每次加2,實現(xiàn)移動效果 用int類型 計數(shù)較多
- uchar tmp = 0; //臨時變量,用于每個字顯示的次數(shù)
- uint cols = sizeof(disp); //" 歡迎你來到桂林電子科技大學(xué)"共13個字符塊,+兩個清屏
- uchar row = 0; //行選線
- SCON = 0x00; //串口工作模式0;移位寄存器方式 ,P3.1送移位脈沖,P3.0連接串行數(shù)據(jù)線
-
- while(1)
- {
- for(base=0;base<=cols-32;base=base+2) //-32目的是用于顯示最后一個字符后沒有亂碼出現(xiàn)
- {
- for(tmp=0;tmp<2;tmp++) //每個字塊顯示5次
- {
- for(row=0;row<16;row++)
- {
-
- MR = 0; //清理行輸出,將移位寄存器的數(shù)據(jù)清0
- MR = 1;
- ST_CP = 0; //上升沿,將數(shù)據(jù)鎖存
- ST_CP = 1;
- SBUF=disp[base+row*2];
- while(TI==0); //等待發(fā)送完畢,串口發(fā)送完畢后,TI==1;所以使其TI=1,停止中端
- TI = 0;
- SBUF=disp[base+row*2+1];
- while(TI==0); //等待發(fā)送完畢,串口發(fā)送完畢后,TI==1;所以使其TI=1,停止中端
- TI = 0;
- ST_CP = 0; //上升沿,將數(shù)據(jù)鎖存
- ST_CP = 1;
- ROW = row; //行控制,使其點亮
-
- delay1ms(3); //3ms延時
- }
- }
- }
-
- }
- }
-
復(fù)制代碼
|