1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > c语言led灯汉字编码 单片机led灯板显示汉字程序

c语言led灯汉字编码 单片机led灯板显示汉字程序

时间:2021-02-23 03:58:27

相关推荐

c语言led灯汉字编码 单片机led灯板显示汉字程序

//该板子上的点阵为8*8,只能显示简单的一些汉子,如果要显示真正的汉字

//通过取模软件取的可以选择16*16点阵的板子

#include

#include

sbit SRCLK=P3^6;

sbit RCLK=P3^5;

sbit SER=P3^4;

//--定义要使用的IO口--//

#define COMMONPORTS P0

//--列选通控制--//

unsigned char code TAB[8]= {0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};

//--点阵字码--//

unsigned char code CHARCODE[4][8]=

{

0x7F,0x01,0x01,0x01,0x00,0x00,0x5F,0x00,//Li

0x10,0x55,0xBF,0x14,0x10,0xFE,0x99,0x52, //我

0x38,0x64,0x22,0x11,0x11,0x22,0x64,0x38,//心形

{0x20,0x7F,0x84,0x6A,0xC1,0x5F,0x68,0x44}//你

};

void delay(unsigned int time)

{

unsigned int i,j;

for(i=0;i

for(j=0;j<121;j++);

}

/*******************************************************************************

* 函数名 : Hc595SendByte(unsigned char dat)

* 函数功能 : 想74H595发送一个字节的数据

* 输入 : 无

* 输出: 无

*******************************************************************************/

void Hc595SendByte(unsigned char dat)

{

unsigned char a;

SRCLK=0;

RCLK=0;

for(a=0;a<8;a++)

{

SER=dat>>7;

dat<<=1;

SRCLK=1;

_nop_();

_nop_();

SRCLK=0;

}

RCLK=1;

_nop_();

_nop_();

RCLK=0;

}

/*******************************************************************************

* 函数名 : main

* 函数功能 : 主函数

* 输入 : 无

* 输出: 无

*******************************************************************************/

void main()

{

unsigned char tab, j;

unsigned inti;

while(1)

{

for(i= 0; i<50; i++ ) //两个字之间的扫描间隔时间

{

for(tab=0;tab<8;tab++)

{

Hc595SendByte(0x00); //消隐

COMMONPORTS = TAB[tab];//输出字码

Hc595SendByte(CHARCODE[j][tab]);

……………………

…………限于本文篇幅 余下代码请从51黑下载附件…………

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。