单片机4位数码管程序六位数码管

在电子工程世界为您找到如下关于“6位数码管”的新闻
void timer0() interrupt 1
//&定时器0中断服务程序, 用于数码管的动态扫描
//&dis_index --- 显示索引, 用于标识当前显示的数码管和缓冲区的偏移量
//&dis_digit --- 位选通值, 传送到P2口用于选通当前数码管的数值, 如等于0xfe时,
//&&&&n...
//8位数码管动态显示时间,可调节,
//调节时间时,调节的数闪烁显示;
//比较两种闪烁的方法;
#include&reg51.h&
#define uint unsigned int&
#define uchar unsigned char
sbit tiaojie=P1^0;
sbit jia=P1^1;
sbit jian=P1...
数码管基本属性:
1.采用2片595驱动数码管,需要单片机3路IO口,根据数码管动态扫描原理进行显示;
2.宽工作电压3.3V到5V;
3.PCB板尺寸:71mm*22mm
4.数码管型号:0.36 4位共阳
商家给的基本资料:最新八位串行595数码管资料.rar
8位数码管的连接原理图
#include &AT89X51.H&...
功能 : 用2片74HC595驱动8位数码管, 级联的最低1片595控制位选,那么第一片控制段选
作者 : Stone
版本 : REV1
平台 : STC89C52&& 11.0592MHz
现象 : 8位数码管从第一位开始从0计数,满10进位
版本说明 : 第0版本没有使用定时器中断,同时定义了...
74HC595是8位串行移位寄存器,亦能串行输出控制下一级级联芯片。关于级联、595芯片具体我就不多介绍,大家自己查吧!下面直接贴代码
此程序已成功移植到STM32平台,敬请关注!
// 注意 此代码没有什么技术含量,也没有按规范些,旨在说明595怎么控制,大家不要模仿。
// 此代码刷新速度有点慢,注意想办法优化,time变量用定时器中断处理,主函数不断地刷新显示函数,...
AVR单片机4位数码管计数,从一直循环。位选端接在PC的低4位,而段选端接在PA口。程序如下:
#include&iom16v.h&//头文件
#include&macros.h&//头文件
#define uchar unsigned char//宏定义
#define uint unsigned int//宏定义
& &ajmp main
& &org 000bh
& &ljmp inti0
& &org 0030h
main: mov ie,#82h
& & & mov tmod,#01h
& &mov th0,#4ch...
利用8位数码管显示时间,原理与4位数码管显示的基本一样
程序源代码:
作者:胡琴
本程序版本规本人所有可以任意转载:
技术支持网站:http://www.51hei.com&
本程序已经通过在线软件仿真和硬件制作.
& org 0000h&& ;程序开始入口地址
经过几天的努力,第一个51单片机电子时钟终于出炉了,通过4位数码管来显示时间,系统晶振11.0592MHZ,仿真图中用二极管代替时钟冒号闪烁,非门代替三极管,让仿真速度与真实速度达到一致,本设计用了6个按钮来对时间及闹钟时间的调节、关闭,p3.2接时间分加1按钮,p3.3接时间时加1按钮,p3.4接闹钟时间与当前时间切换按钮,按住不放显示闹钟的时间,闹钟初始化为00:00,放开...
/***************************************************************************
定时器中断 24小时时钟程序
数码管显示24小时制时钟(具有调时功能)
使用12M晶振
,key1=P3^7; key2=P3^6; key3...
6位数码管资料下载
一些关于51单片机的HEX例子,可以测试开发板的功能是否完整...
4位数码管.pdf...
通过AT89S/C52,11.0592MHz,DS18B20和6位数码管,采集温度并在数码管上实时显示。并有相应的不同颜色的led和蜂鸣器指示。文件完整,用KEILUV3编译。本科毕业设计程序完整版。...
通过AT89S/C52,11.0592MHz,DS18B20和6位数码管,采集温度并在数码管上实时显示。并有相应的不同颜色的led和蜂鸣器指示。同时包括完整的PROTEUS演示,内容完整,为初学者不可或缺的入门资料!号...
8位数码管[实例3-9].rar...
8位数码管[实例3-8].rar...
8位数码管[空模板].rar...
6位数码管动态扫描,采用Keil、C51、Proteus仿真...
6位数码管显示 倒记时...
6位数码管显示的数字频率计,测量范围可达65KMz,测量误差小。...
6位数码管相关帖子
6位数码管视频
你可能感兴趣的标签
热门资源推荐还没有帐号? 赶紧
用户版块帖子
用51单片机制作的6位数码管GPS授时时钟
UID:1645495
在线时间10小时
M币184专家6
用51单片机制作的6位数码管GPS授时时钟
电路图和PCB(使用Altium Designer 绘制)当显示GPS的时间时,时钟是精确的无须调整;但是当没有GPS信号或没有插入GPS模块时,时间是需要调整的,就加入了一个红外接收头,这样就可以用遥控器调整时间了。单片机型号是STC89C52RC,手头没有IC座就将管脚折出来当贴片用。因为需要串口通信晶振频率选择了11.0592mhz。硬件做好后开始了漫长的程序调试,用了几个晚上的时间,反复烧写多次后终于达到了自己的设计要求。这是DIY时钟的当前时间插入GPS后,自动与卫星同步,时间就想当的准确了使用5V的电源,没有插入GPS模块时电流100ma左右,功耗大约是0.5W,插入GPS后,电流增加了一倍多,不过1W左右的功耗也不算太大。数码管倒装,用左上角的小点指示GPS信号的有无。当没有GPS信号时,小点不亮,从DS1302里读出时间来显示;当有GPS信号时,自动与卫星同步并将准确的时间写入DS1302,这样即使GPS信号消失,在一段时间内还是相当的准确的(时间长短与DS1302的精度有关)为了DIY“作品”的美观,特意从网上订购的半透明亚克力。个人认为还是非常简洁漂亮的。本次DIY以实用为主,没有添加日期、星期、闹钟等功能,因为我需要的只是一个时间精准的钟,DIY爱好者可以根据需要自行添加。如果有疑问可以联系,定当知无不言,让我们共同进步。
本文内容包含图片或附件,获取更多资讯,请
后查看;或者
成为会员获得更多权限
UID:966646
在线时间3009小时
M币952专家20
不错,也想有一个,可惜不会玩!
UID:1772685
在线时间459小时
M币-286专家0
膜拜大神,膜拜一下
UID:1369926
在线时间724小时
M币3452专家0
楼主好,我想做一个51单片机的流水灯,我只需要5个灯,一次点亮和熄灭,但是我不会写程序,跪求程序
UID:845480
在线时间460小时
M币1303专家8
回 llzhantian 的帖子
:楼主好,我想做一个51单片机的流水灯,我只需要5个灯,一次点亮和熄灭,但是我不会写程序,跪求程序 ( 19:06) 这是老师作业吧,别人代劳可不太好
UID:1369926
在线时间724小时
M币3452专家0
兄台误会了,我早就毕业了,我是要做一个led模拟血液循环的教具,初中生物上,本来准备用NE555+CD4017流水灯连接继电器模拟流水效果,结果继电器闭合时间太短,led根本不亮,我的led一共有140个吧,分成了5路,无奈只好改用51单片机,苦于不会写程序,只好求助兄台,可否留个联系方式
UID:518340
在线时间3029小时
M币283专家10
回 llzhantian 的帖子
:兄台误会了,我早就毕业了,我是要做一个led模拟血液循环的教具,初中生物上,本来准备用NE555+CD4017流水灯连接继电器模拟流水效果,结果继电器闭合时间太短,led根本不亮,我的led一共有140个吧,分成了5路,无奈只好改用51单片机,苦于不会写程序,只好求助兄台,可否留个联系 .. ( 19:54) 把电路图放上来,把要求写一下!这样才好帮你。
UID:1369926
在线时间724小时
M币3452专家0
大哥看看,给我指导下
本文内容包含图片或附件,获取更多资讯,请
后查看;或者
成为会员获得更多权限
UID:1369926
在线时间724小时
M币3452专家0
我的想法就是,51单片机系统驱动5个led产生流水效果,然后把led拆下接上继电器,继电器带动外围多并联的led在图板上产生血液流动的效果,现在的问题是,外围电路已经接好,是正极控制,负极我把所有led连在一起了,51单片机点亮LED好像是输出低电平的,我不会编程,网上的程序都是8路led流水,故此跪求大哥指导
UID:1369926
在线时间724小时
M币3452专家0
另外,我有个CH341的编程器,是否可以用来给51单片机传程序,USB 转TTL的
访问内容超出本站范围,不能确定是否安全
温馨提示:所有技术区严禁灌水,“沙发”“顶”字样;禁止广告贴;以免被删除
您目前还是游客,请
&回复后跳转到最后一页
Code by , Time now is:05-27 04:00, Total 0.191906(s) query 13,
Gzip enabled&单片机89c51一个6位LED数码管显示功能 程序,希望能准确点的程序,只显示6位数字就好。_百度知道
单片机89c51一个6位LED数码管显示功能 程序,希望能准确点的程序,只显示6位数字就好。
就是显示6位数字。
我有更好的答案
#include &reg51.h& #include &intrins.h&void delay(unsigned int i);
//函数声名char DelayCNT;//定义变量 //此表为 LED 的字模, 共阴数码管 0-9
- unsigned char code
Disp_Tab[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
//段码控制//此表为8个数码管位选控制, 共阴数码管 1-8个
- unsigned char code
dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdF,0xbF,0x7F};
//位选控制
查表的方法控制/************主函数**********************/ main(){
unsigned int i,LedNumVal=1 ;
//变量定义
unsigned int LedOut[10];
//变量定义
DelayCNT=0;
if(++DelayCNT&=20)
//控制数字变化速度 {
DelayCNT=0;
//20个扫描周期清零一次
//每隔20个扫描周期加一次 } LedOut[0]=Disp_Tab[LedNumVal%];
LedOut[1]=Disp_Tab[LedNumVal%x80;
LedOut[2]=Disp_Tab[LedNumVal%100/10];
LedOut[3]=Disp_Tab[LedNumVal%10];
LedOut[4]=Disp_Tab[LedNumVal%];
LedOut[5]=Disp_Tab[LedNumVal%x80;
//百位带小数点
LedOut[6]=Disp_Tab[LedNumVal%100/10];
LedOut[7]=Disp_Tab[LedNumVal%10];
for( i=0; i&9; i++)
P0 = LedOut[i];
P1 = dispbit[i];
//使用查表法进行位选
//使用switch 语句控制位选
case 0:P1 = 0x7F;
case 1:P1 = 0xbF;
case 2:P1 = 0xdF;
case 3:P1 = 0xeF;
case 4:P1 = 0xf7;
case 5:P1 = 0
case 6:P1 = 0
case 7:P1 = 0
delay(150);
//扫描间隔时间
太长会数码管会有闪烁感
} void delay(unsigned int i){
for(i; i & 0; i--)
for(j = 200; j & 0; j--);}
如果我要输入6位指定数字,就是吧P1到P6依次改一下就可以么?
LedOut[0]=Disp_Tab[LedNumVal%10];
LedOut[1]=Disp_Tab[LedNumVal%]|0x80;
LedOut[2]=Disp_Tab[LedNumVal%100/10];
LedOut[3]=Disp_Tab[LedNumVal%10];
LedOut[4]=Disp_Tab[LedNumVal%10];
//千位
LedOut[5]=Disp_Tab[LedNumVal%]|0x80;
//百位带小数点改变LedOut[0]~[5]的值就行了
采纳率:44%
为您推荐:
其他类似问题
led数码管的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。没有更多推荐了,
不良信息举报
举报内容:
C51单片机数码管的显示代码
举报原因:
原文地址:
原因补充:
最多只允许输入30个字
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!频道本月排行
随机推荐文章
Copyright (C) 2006 - 2016 www.eorder.net.cn
All Rights Reserved

我要回帖

更多关于 单片机4位数码管秒表 的文章

 

随机推荐