永发信息网

用89c51单片机写一个数码管显示HELLO的程序,是在一个七段数码管上依次出现几个字母

答案:2  悬赏:70  手机版
解决时间 2021-02-17 02:59
用89c51单片机写一个数码管显示HELLO的程序,是在一个七段数码管上依次出现几个字母
最佳答案
大概理解你的意思,是在数码管一次排列好这一句话,首先第一步需要做的是数码管的取模工作。
#include
//这边为了让你看的更容易,用的是单独操作,没有用总线
sbit led1 = P1^0;
sbit led2 = P1^1;

sbit led3 = P1^2;

sbit led4 = P1^3;

sbit led5 = P1^4;

sbit led6 = P1^5;

sbit led7 = P1^6;

//看清楚自己的管脚,不一定对应,这里采用P0对应段选
code unsigned char led_paly[5] = {0x76,0x79,0x38,0x38,0x5c};

// H E L L O
void delay(unsigned int um)//延时函数
{
int i,j;
for(i = 0;i < um;i++)
{
for(j = 0;j < 200;j++);
}
}
void display()
{
P0 = led_paly[0];//显示H
led2 = 0;
delay(50);
led2 = 1;

P0 = led_paly[1];//显示E
led3 = 0;
delay(50);
led3 = 1;

P0 = led_paly[2];//显示L
led4 = 0;
delay(50);
led4 = 1;

P0 = led_paly[3];//显示E
led5 = 0;
delay(50);
led5 = 1;

P0 = led_paly[4];//显示O
led6 = 0;
delay(50);
led6 = 1;
}
void main(void)
{
while(1)
{
display();
}
}
未验证,应该差不多,首先取模,然后写显示函数,写完函数放置while(1)中无限循环下去,可追问
全部回答
将HELLO编码做成表,依次出现的话,用一个变量,查表里的第一个值也就是“H”送到数码管段选显示并用一个变量记录显示位置,假如在第一个数码管上显示,这个变量为0,然后500ms后前面查表用的变量加1,查第二个 也就是E 显示在第二个数码管上,然后依次类推
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一蹴而就而就的意思是什么
国考笔试用什么笔答题
清华斯维尔三维算量3DA2012若首层高3600 室内
如何在photoshop中打开rw2格式的文件
扁豆煮熟后汤汁为什么有些黑黑的
算24点有什么技巧?还有算24点题,希望有思路
牡丹梗炖什么给产妇吃最好?
耽美重生 主受 攻叫陆x凛,受重生后叫苏xx
求家庭教师里六道骸某些经典台词的罗马发音!
未来5年羊价格走势预测
n乘以括号n加一括回分之一等于几分之一减去几
小红书买东西的软件吗
DLNUO是什么牌子?
为什么古代人睡觉枕头很高,不累吗
删除什么文件能让XP系统不能启动?
推荐资讯
6年纪数学,,,
我在广州哪里可以贷款啊
小米7有哪些优缺点
单选题圆的周长和直径A.成正比例B.成反比例C.
2018年盐城市高压线路铁塔塔基怎么赔偿?
图是蚊子发育过程示意图,这样的发育类型属于
我诚心拜佛越拜越不好为什么-
谁给我解释下 内功和外功的区别
描写北京秋天景色的语句有哪些?
能帮我制定个两天的首尔游攻略吗
ems 美网上状态显示是delivered 是不是就是签
闺蜜是个班长,老是有时候会玩弄我,要怎么对
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?