找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

51单片机C程序修改 显示管从99减到00,并停留在00不断闪烁

查看数: 4284 | 评论数: 10 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2021-5-17 11:54

正文摘要:

51单片机C程序各位大佬帮忙看看怎么修改才能实现功能:显示管从99减到00,并停留在00不断闪烁,51单片机电路如图。  #include<regx51.h>   unsigned char num[]={0x3f,0x06,0x5b,0x4f,0x66, ...

回复

ID:466183 发表于 2021-5-21 19:14

你好,你的这个仿真软件是叫Proteus吧,由于本站不支持下载.我去百度搜索一个
ID:332444 发表于 2021-5-21 15:01

无标题.png (60.32 KB, 下载次数: 31)

无标题.png
ID:857551 发表于 2021-5-18 22:18
慢慢从基础打起吧,不能超之过急
ID:889094 发表于 2021-5-18 21:29
学习这个事还是要从基础学起,如果是要做工程的话就直接去某一个宝弄就行了,这里没人能从基础一点点讲起
ID:922299 发表于 2021-5-18 19:59
wulin 发表于 2021-5-18 09:43
从99减到00,并停留在00不断闪烁
#include
unsigned char num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x ...

谢谢!
ID:213173 发表于 2021-5-18 09:43
从99减到00,并停留在00不断闪烁
#include<regx51.h>
unsigned char num[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
void delay()
{
        unsigned int a=500;
        while(a--);
}
void main()
{
        unsigned char i=99,j;
        bit flag=0;
        while(1)
        {
                j++;
                if(j>100)
                {
                        j=0;
                        if(i>0)
                                i--;
                        flag=~flag;
                }
                P1=0x00;
                if(i>0)P3_0=0;
                else P3_0=flag;
                P3_1=1;
                P1=num[i/10];
                delay();
                P1=0x00;
                if(i>0)P3_1=0;
                else P3_1=flag;
                P3_0=1;
                P1=num[i%10];
                delay();
        }
}
ID:332444 发表于 2021-5-18 08:04
数码管显示随意控制要在哪位显示就在哪位显示。  闪烁可参https://blog.csdn.net/xianfajush ... ase&utm_term=51  倒计时可参https://blog.csdn.net/xianfajush ... ase&utm_term=51  或https://blog.csdn.net/xianfajush ... ase&utm_term=51
ID:451718 发表于 2021-5-17 21:05
liuan 发表于 2021-5-17 19:11
就是搞不清啊,求大佬指导一下我该如何学习?

都想拥有武林秘籍,一夜功成名就。 殊不知 “黄蓉比郭靖聪明百倍,就是学不会降龙十八掌” 。  已经给你把知识点分解成最小的步骤了,如果还不知如何办,就从头开始学C语言,从头开始学寄存器吧。
ID:922299 发表于 2021-5-17 19:11
robinsonlin 发表于 2021-5-17 14:30
1,先搞清楚,显示两个数字如何操作。
2,再搞清楚,显示空白如何操作。
3,再搞清楚,通过定时器来递减 ...

就是搞不清啊,求大佬指导一下我该如何学习?
ID:451718 发表于 2021-5-17 14:30
1,先搞清楚,显示两个数字如何操作。
2,再搞清楚,显示空白如何操作。
3,再搞清楚,通过定时器来递减一个变量。
4,判断当变量小于等于0时,变量一直等于0。
5,然后将这个变量显示出来。
6,闪烁其实就是500毫秒显示变量,500毫秒显示空白的操作。

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表