找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

2位数码管单片机程序,个位数一直闪烁,求指导

查看数: 2949 | 评论数: 9 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2020-6-12 21:50

正文摘要:

#include "reg51.h" unsigned char b[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; char i; sbit key=P3^0; sbit wei1=P2^0; sbit wei2=P2^1; void delay(int x) {     &nb ...

回复

ID:332444 发表于 2020-6-15 10:18

2位数码管型号:7SEG-MPX2-CA
ID:332444 发表于 2020-6-14 10:12
  1. #include "reg52.h"
  2. unsigned char code smgduan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0,64}; //共阴0~F消隐减号
  3. void main()
  4. {
  5.         unsigned char wei=1,Xd=47;
  6.         unsigned int Ys=47474;
  7.         while(1)
  8.         {
  9.                 if(!--Ys)
  10.                 {
  11.                         P2=wei;
  12.                         P0=~smgduan[wei==1?Xd-Xd/10*10:Xd/10];
  13.                         if(++wei>2)wei=1,++Xd;//数码管动态显示
  14.                         if(Xd>99)Xd=0;
  15.                         Ys=4747;
  16.                 }
  17.         }
  18. }
复制代码
数码管型号末尾-AC




ID:778724 发表于 2020-6-14 09:44
main函数有问题,再好好研究一下
ID:332444 发表于 2020-6-14 08:33
  1. void main()
  2. {
  3.         unsigned char wei=1,Xd=47;
  4.         unsigned int Ys=47474;
  5.         while(1)
  6.         {
  7.                 if(!--Ys)
  8.                 {
  9.                         P2=wei;
  10.                         P0=~b[wei==1?Xd-Xd/10*10:Xd/10];
  11.                         if(++wei>2)wei=1;//数码管动态显示
  12.                         Ys=1474;//延时调节
  13.                 }
  14.         }
  15. }
复制代码
ID:332444 发表于 2020-6-14 04:51
你的这种数码管驱动代码,嵌套循环属不必,外层循环只一次可省,你说对不?送去显示的2位数一位为0,另一位为9-0变化,一位0不变的显示显然看不出多大变化,好似正常显示一样。把延时里面的嵌套循环量600调整到30试看显示是否有变化。
ID:744327 发表于 2020-6-13 13:16
主函数需要加while(1){

}
ID:213173 发表于 2020-6-13 10:57
楼主要找一个成熟程序参考。这main()函数基本结构都不对,自己凭想象胡乱写的根本玩不转。除了重新写根本没法改。
ID:777689 发表于 2020-6-13 10:45
xianfajushi 发表于 2020-6-13 05:55
闪烁是频率问题,频率问题调节延时。

两个灯延时一样,但是一个闪一个不闪
ID:332444 发表于 2020-6-13 05:55
闪烁是频率问题,频率问题调节延时。

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

Powered by 单片机教程网

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