一個程序希望有用
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (9.11 KB, 下載次數: 59)
下載附件
2018-10-12 13:20 上傳
0.png (14.8 KB, 下載次數: 49)
下載附件
2018-10-12 13:20 上傳
單片機源程序如下:
- #include<reg52.h>
- #include<intrins.h>
- sbit LSA=P2^0;
- sbit LSB=P2^1;
- sbit LSC=P2^2;
- sbit LSD=P2^3;
-
- sbit YJ_SCK=P3^0;
- sbit YJ_RCK=P3^1;
- sbit YJ_SA1=P3^2;
- void RowLight(row); //刷新行
- void WriteContent(char dat); //寫入函數
- unsigned char code tt1[]={
-
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",1*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",2*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",3*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",4*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",5*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",6*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",7*/
- 0x20,0x00,0x24,0x08,0x24,0x48,0x24,0x84,0xFE,0x7F,0x23,0x02,0x22,0x41,0x20,0x40,
- 0x20,0x20,0xFF,0x13,0x20,0x0C,0x22,0x14,0x2C,0x22,0xA0,0x41,0x20,0xF8,0x00,0x00,/*"?",8*/
-
- 0x00,0x10,0x02,0x08,0x02,0x04,0x02,0x02,0x02,0x01,0x82,0x00,0x42,0x00,0xF2,0xFF,
- 0x0E,0x00,0x42,0x00,0x82,0x00,0x02,0x01,0x02,0x02,0x02,0x0C,0x00,0x00,0x00,0x00,/*"?",0*/
- 0x10,0x20,0x12,0x60,0xF2,0x3F,0x92,0x22,0x92,0x12,0x9A,0x12,0xF6,0xFF,0x10,0x10,
- 0x80,0x80,0x70,0x40,0x8F,0x33,0x08,0x0C,0x08,0x33,0xF8,0x40,0x08,0x80,0x00,0x00,/*"?",1*/
- 0x00,0x01,0x80,0x00,0x60,0x00,0xF8,0xFF,0x07,0x00,0x10,0x00,0xC8,0xFF,0x54,0x12,
- 0x52,0x92,0xD1,0xFF,0x12,0x00,0x94,0x5F,0x08,0x80,0xD0,0x7F,0x10,0x00,0x00,0x00,/*"?",2*/
- 0xE0,0x01,0x00,0x00,0xFF,0xFF,0x10,0x10,0xE4,0x09,0x24,0x05,0xFF,0xFF,0x24,0x05,
- 0xE4,0x19,0x10,0x80,0xE8,0x4F,0x27,0x20,0xB4,0x1F,0x2C,0x20,0xE0,0xCF,0x00,0x00,/*"?",3*/
- 0x00,0x00,0x00,0x00,0x00,0x58,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*",",4*/
-
- 0x00,0x81,0x00,0x41,0x00,0x21,0x7F,0x1D,0x49,0x21,0x49,0x41,0x49,0x81,0x49,0xFF,
- 0x49,0x89,0x49,0x89,0x49,0x89,0x7F,0x89,0x00,0x89,0x00,0x81,0x00,0x81,0x00,0x00,/*"?",0*/
- 0x00,0x00,0xFE,0xFF,0x02,0x40,0x42,0x50,0x42,0x48,0x42,0x44,0x42,0x43,0xFA,0x40,
- 0x42,0x41,0x42,0x42,0x42,0x44,0x42,0x58,0x02,0x40,0xFE,0xFF,0x00,0x00,0x00,0x00,/*"?",5*/
- 0x00,0x80,0x20,0x40,0x22,0x20,0x2C,0x10,0x20,0x08,0x20,0x06,0xE0,0x01,0x3F,0x00,
- 0x20,0x01,0x20,0x46,0x20,0x80,0x20,0x40,0xE0,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,/*"?",6*/
- 0x40,0x00,0x40,0x40,0x42,0x20,0xCC,0x1F,0x00,0x20,0x00,0x42,0x02,0x41,0x82,0x40,
- 0x42,0x40,0xF2,0x5F,0x0E,0x40,0x42,0x40,0x82,0x40,0x02,0x43,0x00,0x40,0x00,0x00,/*"?",7*/
- 0x00,0x00,0x02,0x02,0xF2,0x82,0x92,0x92,0x92,0x9A,0xFE,0x56,0x92,0x63,0x92,0x22,
- 0x92,0x32,0xFE,0x4A,0x92,0x46,0x92,0x42,0xF2,0x82,0x02,0x02,0x00,0x00,0x00,0x00,/*"?",8*/
- 0x80,0x40,0x40,0x40,0x30,0x42,0x1E,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0xFF,0x7F,
- 0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x40,0x00,0x40,0x00,0x00,/*"?",9*/
- 0x10,0x04,0x60,0x04,0x02,0x7E,0x8C,0x01,0x00,0x00,0x20,0x00,0x24,0xFE,0x24,0x42,
- 0x24,0x42,0xFE,0x43,0x22,0x42,0x23,0x42,0x22,0xFE,0x20,0x00,0x20,0x00,0x00,0x00,/*"?",10*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",11*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",12*/
- 0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,
- 0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x00,0x00,0x00,/*"?,13*/
- 0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,
- 0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,0x00,0x00,0x00,/*"?,14*/
- 0x00,0x40,0x02,0x40,0x42,0x44,0x62,0x44,0x52,0x44,0x4A,0x44,0x46,0x44,0x42,0x7F,
- 0x42,0x44,0x42,0x44,0x52,0x44,0x62,0x44,0xC2,0x44,0x02,0x40,0x00,0x40,0x00,0x00,/*"?",15*/
- 0x00,0x10,0x02,0x08,0x02,0x04,0x02,0x02,0x02,0x01,0x82,0x00,0x42,0x00,0xF2,0xFF,
- 0x0E,0x00,0x42,0x00,0x82,0x00,0x02,0x01,0x02,0x02,0x02,0x0C,0x00,0x00,0x00,0x00,/*"?",16*/
- 0x80,0x00,0x90,0x80,0x8C,0x80,0x84,0x84,0x84,0x46,0x84,0x49,0xF5,0x28,0x86,0x10,
- 0x84,0x10,0x84,0x2C,0x84,0x23,0x84,0x40,0x94,0x80,0x8C,0x00,0x80,0x00,0x00,0x00,/*"?",17*/
- 0x40,0x00,0x40,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x40,0x42,0x80,0xFE,0x7F,
- 0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x42,0x00,0x40,0x00,0x40,0x00,0x00,0x00,/*"?",18*/
- 0x04,0x20,0x84,0x60,0x84,0x20,0xFC,0x1F,0x84,0x10,0x84,0x90,0x00,0x40,0xFE,0x23,
- 0x02,0x18,0x02,0x06,0xF2,0x01,0x02,0x7E,0x02,0x80,0xFE,0x83,0x00,0xE0,0x00,0x00,/*"?",19*/
- 0x00,0x04,0x08,0x04,0x30,0x02,0x00,0x01,0xFF,0xFF,0x20,0x80,0x20,0x40,0x20,0x30,
- 0x20,0x0E,0xFF,0x01,0x20,0x06,0x20,0x18,0x22,0x20,0x2C,0x40,0x20,0x80,0x00,0x00,/*"?",20*/
- 0x00,0x00,0xF8,0x7F,0x0C,0x21,0x0B,0x21,0x08,0x21,0x08,0x21,0xF8,0x7F,0x40,0x00,
- 0x30,0x00,0x8F,0x00,0x08,0x43,0x08,0x80,0x08,0x40,0xF8,0x3F,0x00,0x00,0x00,0x00,/*"?",21*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0xFF,0x88,0x44,0x8C,0x44,0x8A,0x44,0x89,0x44,
- 0x88,0x44,0x88,0x44,0x88,0x44,0xF8,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*"?",22*/
- 0x00,0x00,0x00,0x00,0x82,0x3F,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,0x82,0x40,
- 0x82,0x40,0x82,0x40,0x82,0x40,0xFE,0x40,0x00,0x40,0x00,0x78,0x00,0x00,0x00,0x00,/*"?",23*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",1*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",2*/
- 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",3*/
- };
- unsigned char key;
- /**************************
- **********主函數***********
- **************************/
- main()
- {
- unsigned char i;
- unsigned int k,m;
- char j;
- m=sizeof(tt1);
-
- while(1)
- {
- for(k=0;k<m;k=k+2)
-
- for(i=0;i<16;i++)
- {
- for(j=3;j>=0;j--)
- {
- WriteContent(tt1[(32*j+2*i+1+k)%m]);
- WriteContent(tt1[(32*j+2*i+k)%m]);
- }
- RowLight(i);
- YJ_RCK=1;
- _nop_();
- YJ_RCK=0;
- }
- }
- }
- /**********************************
- 595輸入
- **********************************/
- void WriteContent(char dat)
- {
- char i;
- for(i=0;i<8;i++)
- {
- if(((dat<<i)&0x80)!=0)
- {
- YJ_SA1=1;
- }
- else
- {
- YJ_SA1=0;
- }
-
- YJ_SCK=0;
- _nop_();
- YJ_SCK=1;
- _nop_();
- }
- }
- /**************************************
- ************刷新行********************
- *************************************/
- void RowLight(row)
- {
-
- switch(row)
- {
- case(0):
- LSA=0;LSB=0;LSC=0;LSD=0; break;//???0?
- case(1):
- LSA=1;LSB=0;LSC=0;LSD=0; break;//???1?
- case(2):
- LSA=0;LSB=1;LSC=0;LSD=0; break;//???2?
- case(3):
- LSA=1;LSB=1;LSC=0;LSD=0; break;//???3?
- case(4):
- LSA=0;LSB=0;LSC=1;LSD=0; break;//???4?
- case(5):
- LSA=1;LSB=0;LSC=1;LSD=0; break;//???5?
- case(6):
- LSA=0;LSB=1;LSC=1;LSD=0; break;//???6?
- case(7):
- LSA=1;LSB=1;LSC=1;LSD=0; break;//???7?
- case(8):
- LSA=0;LSB=0;LSC=0;LSD=1; break;//???8?
- case(9):
- LSA=1;LSB=0;LSC=0;LSD=1; break;//???9?
- case(10):
- LSA=0;LSB=1;LSC=0;LSD=1; break;//???10?
- case(11):
- LSA=1;LSB=1;LSC=0;LSD=1; break;//???11?
- case(12):
- LSA=0;LSB=0;LSC=1;LSD=1; break;//???12?
- case(13):
- LSA=1;LSB=0;LSC=1;LSD=1; break;//???13?
- case(14):
- LSA=0;LSB=1;LSC=1;LSD=1; break;//???14?
- case(15):
- LSA=1;LSB=1;LSC=1;LSD=1; break;//???15?
-
- }
-
- }
復制代碼
所有資料51hei提供下載:
%E5%BE%AA%E7%8E%AF%E5%B7%A6%E7%A7%BB.zip
(87.48 KB, 下載次數: 98)
2018-10-12 08:39 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|