单片机led显示程序C语言的

利用P1口和P3口控制8个共阴极LED显示器显示8个字符数据(自定义显示内容)。
非常着急,希望给予有帮助的回复和主要的程序
主要程序是实验用,程序我都不会,希望可以按照我说的内容给点详细的C语音程序,我参考和实践下

该程序的原理是动态扫描,即每一时刻,只让一个数码管亮。让数码管从第一个到地第八个依次快速地显示,给人的视觉效果就是八个数码管同时显示。

/*程序让八个数码管显示数字0-7。*/

#include<reg52.h>
#include<intrins.h>包含对_crol_()函数的声明的头文件。
#define uchar unsigned char宏定义用以简写unsigned char
#define uint unsigned int

uchar temp,i;定义无字符型全局变量temp,i。

void delay(unsigned int z)//延时程序,大概延时1ms。
{
unsigned int x ,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07};//数码管真值数组,分别为0到7.

void main()
{
while(1)//大循环,让显示的状态保持
{
temp=0xfe;
for(i=0;i<8;i++)
{
P3=temp;让第一个数码管显示
P1=table[i];调用数组
temp=_crol_(temp,1); 每执行一条这个语句,temp的值左移一位
delay(4); 延时(4这个参数不知道管不管用,你实际操作的时候自己改一下)
}
i=0;
}
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-17
应该是动态扫描,分别只连接其中一行或列的共阴到地,锁存同时输出8位信息,再换下行或列,快速切换。可以说是我懒,不过这么问问题有点…如果是我我会找一些程序把什么不懂的放上来…
第2个回答  2021-04-28

单片机从小白开始系列(七)第一个C语言程序来控制LED灯

第3个回答  2010-06-17
这个我可以给你的
相似回答