用51单片机控制4位led数码管,使其显示出想要的数字,程序怎样写,谢谢

 我来答
ninjafan
2010-07-18 · TA获得超过2096个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:115万
展开全部
- -!
这样:
1/首先把段码端和片选端都设为输出,也就是led和单片机连的那几个角
2/你先用延时来做吧,大致是这样的

设一个片选有效;
把要显示的内容放段码中;
延时15ms;
设第二个片选有效;
把要显示的内容放段码中;
延时15ms;





直到4个都ok
百度网友cb7ef91
2010-07-19 · TA获得超过435个赞
知道小有建树答主
回答量:216
采纳率:0%
帮助的人:234万
展开全部
这个程序关键在于键盘的检测,显示数字是很简单的。

两个函数:key()(键盘检测函数);dis()(数码管显示函数);即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
谢应宸
2010-07-18 · TA获得超过2640个赞
知道大有可为答主
回答量:2731
采纳率:66%
帮助的人:2127万
展开全部
1、建立数字与P口对应的数组
2、位选显示

数码管是8段的吧,正好对应某个P口的8个位,要显示某个数组只需将相应的Px_x亮起来就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蒿焱洋蔓蔓
2020-04-03 · TA获得超过3772个赞
知道大有可为答主
回答量:3243
采纳率:29%
帮助的人:192万
展开全部
模拟串口方式0:
#include"reg52.h"
#define
uint
unsigned
int
#define
uchar
unsigned
char
sbit
P3_2=P3^2;
//模拟接受
sbit
P3_3=P3^3;
//模拟发送
uchar
code
smg[11]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,0xff};//数码管编码0~
9
void
display(uchar
z);
main()
{
display(5);
display(0);
display(4);
while(1);
}
/************模拟串口显示**************/
void
display(uchar
z)
{
uchar
i;
uchar
temp;
temp
=
smg[z];
for(i=0;i<8;i++)
{
P3_3=
0;
if(temp
&
0x01)
P3_2=1;
else
P3_2
=
0;
P3_3=
1;
temp
=
temp>>1
;
}
}
串口}方式0:
void
display()
{
SM0=0;
SM1=0;
//方式0
for(i=0;i<3;i++)
{
SBUF=smg[snum[2-i]];
while(!TI)
;
TI=0;
delay(1000);
}
}
还有并行口方式
占用I/O不推荐
不过程序很简单
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
月下独酌zsd
推荐于2018-04-30 · TA获得超过689个赞
知道小有建树答主
回答量:802
采纳率:0%
帮助的人:451万
展开全部
模拟串口方式0:
#include"reg52.h"
#define uint unsigned int
#define uchar unsigned char
sbit P3_2=P3^2; //模拟接受
sbit P3_3=P3^3; //模拟发送
uchar code smg[11]={0x03,0x9f,0x25,0x0d,0x99,0x49,0x41,0x1f,0x01,0x09,0xff};//数码管编码0~ 9
void display(uchar z);
main()
{
display(5);
display(0);
display(4);
while(1);
}

/************模拟串口显示**************/
void display(uchar z)
{
uchar i;
uchar temp;
temp = smg[z];
for(i=0;i<8;i++)
{
P3_3= 0;
if(temp & 0x01) P3_2=1;
else P3_2 = 0;
P3_3= 1;
temp = temp>>1 ;
}
}

串口}方式0:
void display()
{
SM0=0;
SM1=0; //方式0
for(i=0;i<3;i++)
{
SBUF=smg[snum[2-i]];
while(!TI) ;
TI=0;
delay(1000);
}
}

还有并行口方式 占用I/O不推荐 不过程序很简单
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式