哪位大神帮忙写个单片机程序

七段共阴LED数码管的串行显示控制,用TXD控制一位LED数码管静态循环显示数字0~9,每个数显示持续3秒。规定主要器件:AT89S(C)5112MHz晶体共阴数码管用C... 七段共阴LED数码管的串行显示控制,用TXD控制一位LED数码管静态循环显示数字0~9,每个数显示持续3秒。
规定主要器件:AT89S(C)51 12MHz晶体 共阴数码管
用C语言写!!
展开
 我来答
zhxiufan
2013-12-23 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38385
国家科技进步奖

向TA提问 私信TA
展开全部
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV TMOD,#01H
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
SETB ET0
SETB EA
MOV SCON,#00H
CLR A
MOV R2,#60
SJMP $
T0ISR:
CLR TR0
MOV TH0,#HIGH(65536-50000)
MOV TL0,#LOW(65536-50000)
SETB TR0
DJNZ R2,T0E
MOV R2,#60
MOV DPTR,#TABLE
PUSH ACC
MOVC A,@A+DPTR
MOV SBUF,A
JNB TI,$
CLR TI
POP ACC
INC A
CJNE A,#10,T0E
CLR A
T0E:
RETI

TABLE: ; 共阴极数码管显示代码表 DB 3FH,06H,5BH,4FH,66H ;01234 DB 6DH,7DH,07H,7FH,6fh ;56789
追问
用C语言写可以嘛
追答
#include
#define uchar unsigned char
uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar times=0,nun=0;;
void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(times>=60)
{
times=0;
SBUF=talbe[num];
while(!TI);
TI=0;
num++;
num%=10;
}
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
SCON=0x00;
while(1);
}
阳阳百宝箱
2013-12-23 · 超过33用户采纳过TA的回答
知道答主
回答量:169
采纳率:66%
帮助的人:45.8万
展开全部
用TXD控制?每位显示3秒;不太清楚你的意思
更多追问追答
追问
用单片机的TXD引脚
追答
原来你要汇编的。。。。只会C
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-23
展开全部
亲,您指是要做什么产品还是课程设计啊
追问
课程设计
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式