資源簡介
這個是在protues里嗎仿真的16x16點陣屏,主要有顯示漢字,漢字滾動效果(包括上滾,下滾,左滾,右滾),有詳細的keil程序,特地拿出來給大家分享

代碼片段和文件信息
#include?
#include?
#define??DATAOUT?P2????//P2?use?as?data??you?can?change
#define??SPEED??13
void?ymove(char?dirunsigned?char?*ptrchar?speed);
void?xmove(char?dirunsigned?char?*ptrchar?nchar?speed);
void?delay(unsigned?int?a);
void?display();
void?displaytime(char?time);
void?init164();
sbit??ADATA=?DATAOUT^0;
sbit??ASCK=??DATAOUT^1;
sbit??LATCH=?DATAOUT^2;
sbit??BDATA=?DATAOUT^3;
sbit??BCLK=??DATAOUT^4;
code?unsigned?char?xin[32]={
0x000x000x000x000x000x000x0E0x38???//心
??????0x1F0x7C0x3F0xFE0x3F0xFE0x3F0xFE
??????0x1F0xFC0x0F0xF80x070xF00x030xE0
??????0x010xC00x000x800x000x000x000x00};
code?unsigned?char?zhong[32]={??
0x010x000x010x000x010x040x7F0xFE??//中
??????0x410x040x410x040x410x040x410x04
??????0x7F0xFC0x410x040x010x000x010x00
??????0x010x000x010x000x010x000x010x00};
code?unsigned?char?guo[32]={
0x000x040x7F0xFE0x400x240x5F0xF4??//國
??????0x410x040x410x040x410x440x4F0xE4
??????0x410x040x410x440x410x240x410x04
??????0x5F0xF40x400x040x7F0xFC0x400x04};
code?unsigned?char?dui[32]={???????????
0x7C0x400x440x400x480x400x480x40??//隊
??????0x500x400x480x400x480x400x440xA0
??????0x440xA00x440xA00x690x100x510x10
??????0x420x080x440x060x480x040x000x00};
?
code?unsigned?char?jia[32]={?
0x100x000x100x000x100x040x120x7E??//加
??????0xFF0x440x120x440x120x440x120x44
??????0x120x440x220x440x220x440x220x44
??????0x220x440x4A0x7C0x840x440x000x00};
code?unsigned?char?you[32]={
0x000x400x400x400x300x400x100x44??//油
??????0x870xFE0x640x440x240x440x0C0x44
??????0x140x440x270xFC0xE40x440x240x44
??????0x240x440x240x440x270xFC0x240x04?};
code?unsigned?char?gth[32]={
0x000x000x010x800x030xC00x030xC0????//!
??????0x030xC00x030xC00x030xC00x010x80
??????0x010x800x010x800x000x000x010x80
??????0x030xC00x010x800x000x000x000x00};
unsigned?char?idata?buffer[32];
void?main(void)
{
unsigned?char?i;
init164();
while(1)
{
for(i=0;i<32;i++)
buffer[i]=xin[i];
displaytime(1);
xmove(1zhong3SPEED);
displaytime(1);
ymove(10SPEED);
ymove(1jiaSPEED);
ymove(1youSPEED);
ymove(10SPEED);
xmove(0jia3SPEED);
ymove(0gthSPEED);
ymove(00SPEED);
xmove(1xin1SPEED);
}
}
/*************??子函數???******************/
void?delay(unsigned?int?a)
{
while(a--);
}
void?display()
{
unsigned?char?hangibktmp;
????DATAOUT=?0x0;
BDATA?=?0;
for(hang=0;hang<16;hang++)
{
ASCK?=0;
LATCH=0;
BCLK?=0;
for(ib=0;ib<2;ib++)
{
tmp?=?buffer[hang*2+ib];
for(k=0;k<8;k++)
{
tmp?<<=1;
ASCK??=0;
ADATA?=CY;
ASCK??=1;
}
}
DATAOUT|=0x14;
//LATCH=1;
//BCLK=1;
BDATA=1;
}
delay(64);
ASCK?=0;
ASCK?=1;
}
void?displaytime(char?time
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????4570??2012-08-07?16:49??16x16點陣\16x16點陣
?????文件???????4129??2012-08-07?16:49??16x16點陣\16x16點陣.hex
?????文件?????????53??2012-08-07?16:49??16x16點陣\16x16點陣.lnp
?????文件??????16265??2012-08-07?16:49??16x16點陣\16x16點陣.M51
?????文件???????1001??2012-08-07?16:51??16x16點陣\16x16點陣.Opt
?????文件????????362??2012-08-07?16:49??16x16點陣\16x16點陣.plg
?????文件???????1697??2012-08-07?16:51??16x16點陣\16x16點陣.Uv2
????.......?????????0??2012-08-07?16:46??16x16點陣\16x16點陣_Uv2.Bak
?????文件???????6434??2012-08-07?16:49??16x16點陣\16點陣??滾動顯示???陽極數據.c
?????文件????????791??2012-08-07?16:49??16x16點陣\16點陣??滾動顯示???陽極數據.LST
?????文件???????7463??2012-08-07?16:49??16x16點陣\16點陣??滾動顯示???陽極數據.OBJ
?????文件?????117561??2012-08-07?16:51??16x16點陣\16點陣??陽極數據.DSN
?????文件????????742??2012-08-07?16:51??16x16點陣\16點陣??陽極數據.PWI
?????文件?????117492??2012-08-07?16:35??16x16點陣\Last?Loaded?16點陣??陽極數據.DBK
?????目錄??????????0??2012-08-07?16:51??16x16點陣
-----------?---------??----------?-----??----
???????????????278560????????????????????15
- 上一篇:根據三相電流計算正序負序零序的軟件
- 下一篇:dockae第一
評論
共有 條評論