标题:
非常简单易懂的51点阵源代码。8*8LED点阵
[打印本页]
作者:
qq124471241
时间:
2009-9-17 07:05
标题:
非常简单易懂的51点阵源代码。8*8LED点阵
代码非常简单易懂。很适合初学者。
/*********************************************************************************************/
/* 给新手的学习建议,如何快速学习单片机。 */
/* 铁牛单片机 购买单片机实验板请直接在淘宝下单 */
/* 技术支持 QQ:124471241 TEL:15829700675 仅限铁牛单片机用户 */
/* 实验目的:学会8*8点阵动态扫描方法. */
/* 实验现象:8*8点阵光柱先从0-9每隔一定的时间动态显示。 */
/*【版权】Copyright(C)铁牛单片机 All Rights Reserved */
/*【声明】此程序仅用于学习与参考,引用请注明版权和作者信息! */
/*********************************************************************************************/
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code row[] ={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//行扫描数组row0--row7.硬件定义为P1口。
uchar code word[][8]={
{0xC7,0xBB,0xBB,0xBB,0xBB,0xBB,0xBB,0xC7},//硬件定义为P0口。'0'
{0xEF,0x8F,0xEF,0xEF,0xEF,0xEF,0xEF,0xEF},//硬件定义为P0口。'1'
{0xC7,0xBB,0xBB,0xF7,0xEF,0xDF,0xBF,0x83},//硬件定义为P0口。'2'
{0xC7,0xBB,0xFB,0xC7,0xFB,0xFB,0xBB,0xC7},//硬件定义为P0口。'3'
{0xE7,0xE7,0xD7,0xD7,0xB7,0x83,0xF7,0xF7},//硬件定义为P0口。'4'
{0x83,0xBF,0xBF,0x87,0xFB,0xFB,0xBB,0xC7},//硬件定义为P0口。'5'
{0xC7,0xBB,0xBF,0x87,0xBB,0xBB,0xBB,0xC7},//硬件定义为P0口。'6'
{0x83,0xFB,0xF7,0xF7,0xF7,0xEF,0xEF,0xEF},//硬件定义为P0口。'7'
{0xC7,0xBB,0xBB,0xC7,0xBB,0xBB,0xBB,0xC7},//硬件定义为P0口。'8'
{0xC7,0xBB,0xBB,0xBB,0xC3,0xFB,0xBB,0xC7},//硬件定义为P0口。'9'
};
void display(uchar);
void delay(uint x)
{
uint a,b;
for(a=x;a>0;a--)
for(b=100;b>0;b--);
}
void main()
{
uint i=1000;
uchar dis_num;
dis_num=0;
while(1)
{
for(i=100;i>0;i--)
{
if(dis_num==10)
dis_num=0;
display(dis_num);
}
dis_num++;
}
}
void display(uchar word_num)
{
uchar i;
for(i=0;i<8;i++)
{
P1=row[i];
P0=word[word_num][i];
delay(1);
P1=0xff;
P0=0xff;
}
}
作者:
mainv
时间:
2009-9-17 11:52
只能显示数字吗?
作者:
qq124471241
时间:
2009-9-17 23:25
也可以显示汉字。但是得加上三个LED啊。新手刚开始学的时候只要懂原理就行了。今后想做大时,就可以根据需要去弄。
作者:
xi_chang
时间:
2014-5-4 11:13
谢谢分享
作者:
过客的思念
时间:
2016-1-16 20:42
楼主好人
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1