51单片机控制数码管循环显示0到9,延时2秒,到9后重新开始.

#include<reg51.h>#defineucharunsignedchar#defineuintunsignedintucharcodetable[]={0x3f... #include<reg51. h>

#define uchar unsi gned char #define uint unsigned int

uchar code table []= {0x3f, 0x06, 0x5b, 0x4f, 0x66,

0x6d, 0x7d, 0x07, 0x7f, 0x6f}; void delay(unsigned int i) {
unsigned int k
for(k=0;k<i;k++)
}
void main ()

while(1)

{
int i;
for (i=0;i<10;i++)
P0=tab1e[i];
delay (500); }
}

这样哪有问题吗 我找书上改的 我是初学者 大家说的详细点哈
展开
 我来答
lycdl
高粉答主

2019-04-16 · 醉心答题,欢迎关注
知道大有可为答主
回答量:2万
采纳率:94%
帮助的人:4971万
展开全部

你这是用于一位静态数码管的显示程序,P0口接有一位共阴数码管。程序中有不少的错误。修改如下,这是仿真测试通过的:

#include<reg51.h>


仿真结果如下,请及时采纳。

游易容9a
2019-04-14 · TA获得超过5397个赞
知道大有可为答主
回答量:6675
采纳率:83%
帮助的人:366万
展开全部
单片机有很多种,编程要根据不同单片机进行。
编程思想为:
main{
设置单片机上与数码管相连的引脚为输出,
设置单片机中断接口(即中断按钮)的中断控制寄存器里的中断使能,
设置整体中断使能,
循环子程序xunhuan(); 显示0到9,
}
xunhuan(){
循环子程序具体怎么循环
};
ISR_zhongduan(){
此处为中断时要做的事。
比如楼主说的,可以将输出只为0,然后延时一段时间
}
//解释如下:
主程序一开始设置一些基本的输入输出寄存器的值,比如数码管的输出,按钮的输入,然后是中断的提前设置(那个脚触发中断,上升沿还是下降沿中断),然后就是一直运行循环子程序了,直到中断一次运行一次中断子程序,然后回到原来跳出来的地方接着循环。
循环子程序可以不编,直接写在主程序里用for或while循环,但是写子程序比较容易修改。
中断子程序就是按钮按下之后要做的事情,做完又回到循环子程序跳出来的那个地方接着循环了,直到下次又按下按钮。
这是一个思想,对任何一种单片机都适用,但具体下来就要去看单片机的datasheet,说明书了。 如果想学可以直接从如下关键字去学只是块: 中断原理, GPIO, P0, P1, P2, 单片机最基本主程序构成.....
追问
有程序嘛
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
知无不道
2019-04-14 · TA获得超过5839个赞
知道大有可为答主
回答量:8244
采纳率:84%
帮助的人:1315万
展开全部
这个程序非常简单,建立一个0~9的for循环,直接把循环变量做段码数组下标送段码,再调用延时2S的子程序就OK了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2021-01-09
展开全部
请设计一个单静态数码管从0-9间隔2秒自动轮流显示的程序
#include <reg51.h>
unsigned char show[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
sbit P32=P3^2;
int j,num;
gr()interrupt 1 using 3
{TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
j++;
if(j==40)
{j=0;
num++;
if(num==10)
num=0;
}
}
main()
{ET0=1;
EA=1;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
while(1)
{
P0=show[num];
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
喵的教渗娃技笔
2019-04-14 · TA获得超过160个赞
知道答主
回答量:1335
采纳率:4%
帮助的人:73.7万
展开全部
单片机有很多种,编程要根据不同单片机进行。
追问
at89c51的那种
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式