请问这个程序为什么4位数码管显示程序不显示啊

单片机数码管要显示2015显示不出来,是不是我程序出错了_百度知道
单片机数码管要显示2015显示不出来,是不是我程序出错了
我有更好的答案
首先,你这是在仿真图上要显示的,可程序只用P0口输出段码了你这程序肯定是不对的,还是要实物开发板上显示的。看程序,这数码管是共阳的,没有位控码呀。从哪个口输出位控码呢
采纳率:91%
来自团队:
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。程序下载到单片机上,数码管不显示下面是我的程序_百度知道
程序下载到单片机上,数码管不显示下面是我的程序
这是主函数
#include&head1.h&
#include&Init_Timer0.h&
void main()
Init_Timer0();
void timer0()
interrupt 1
TH0=()/256;
TL0=()%256;
if(aa==20)
我有更好的答案
Init_Timer0();放到while循环外面试试看
采纳率:66%
从程序看"i"不受控制的,数组上限溢出了。
1、在main里,将定时器初始化移至while(1)的前面。2、i的最大值为5,需要在合适的地方重新置0。3、说实在的,没看明白你每秒刷新P0,P1,的目的。能不能把你想要实现的功能大致描述一下。
数码管依次亮6 5 4 3 2 1P2是送位码,P1送段码74ls138实现的位选
这个从程序已经看出来了,我的意思是只显示固定的这几个数字的话,没必要每秒刷新,每秒刷新的目的是什么?
HELLO的断码 void delay(uint z) //延时子函数 { uint x,y; for(x=/*程序用到了38译码器做为位选信号,调节延时函数中的参数就可以调节HELLO
为您推荐:
其他类似问题
您可能关注的内容
单片机的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。这个点亮数码管的程序为什么有有关问题 - 单片机当前位置:& &&&这个点亮数码管的程序为什么有有关问题这个点亮数码管的程序为什么有有关问题www.MyException.Cn&&网友分享于:&&浏览:5次这个点亮数码管的程序为什么有问题?#include&reg52.h&
#include&intrins.h&
sbit&dula=P2^6;
sbit&wela=P2^7;
char&code&table[]={0XAA,0X3F,0X06,0X5B,0X4F,0X66,0X6D};
void&main()
temp=0xFE;
for(num=0;num&6;num++)
P0=_irol_(temp,num);
P0=table[num+1];
为什么板板上显示的不是连续的012345,而是乱七八糟的数?应该怎么改正才能使之显示连续的012345?------解决方案--------------------延时加了?特别是P0=table[num+1];后的延时。
http://blog.csdn.net/binzo/article/details/6364977------解决方案--------------------闪的太快,LED显示来不及,所以就乱七八糟了,个人同意这个观点。你加个延时试试看。
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有这是一段数字温度计的程序,为何我的数码管不会显示?求大神指教【单片机吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:145,736贴子:
这是一段数字温度计的程序,为何我的数码管不会显示?求大神指教收藏
#include&reg51.h&#include&intrins.h&#define uchar unsigned char#define uint
unsigned int#define AlarmTemper 60sbit DQ=P1^0;sbit LED=P1^6;uchar code table[]={0X3f,0X06,0X5b,0X4f,0X66,0X6d,0X7d,0X07,0X7f,0X6f};uchar temperature,ten,//延时50us函数void delay_50us(uint t){
for(;t&0;t--)
for(j=19;j&0;j--);
//延时2us函数
void delay_2us(unsigned char i)
while(--i);
//蜂鸣器报警函数
void alarm()
if(temperature&=AlarmTemper)
//数码管显示函数
void LEDDisplay()
P2=table[ten];
delay_50us(20);
P2=table[bits];
delay_50us(20);
//DS18B20初始化
void DS18B20Reset()
delay_50us(10);
delay_50us(1);
while(!DQ)
}//读DS18B20函数uchar DS18B20ReadByte(){
uchar dat=0;
for(i=0;i&8;i++)
delay_2us(2);
dat|=0x80;
delay_2us(20);
return( dat );
//写DS18B20函数
void DS18B20WriteByte(uchar dat)
for(j=0;j&8;j++)
delay_2us(5);
if(dat&0x01)
delay_2us(15);
//温度转换函数
void temperConvert()
DS18B20Reset();
DS18B20WriteByte(0xcc);
DS18B20WriteByte(0x44);
//读出温度函数
void temperRead()
uchar temph,
DS18B20Reset();
DS18B20WriteByte(0xcc);
DS18B20WriteByte(0xBE);
templ =DS18B20ReadByte();
temph =DS18B20ReadByte();
temperature=(temph&&4)|(templ&&4);
ten =temperature%100/10;
bits=temperature %10;
void main()
temperConvert();
for(j=0;j&250;j++)
LEDDisplay();
temperRead();
为用户提供各种低成本,低功耗,低能耗,功能强的微控制器解决方案.恩智浦微控制器,高性能,设计新颖,性能稳定,价格超低,欲购从速,欢迎垂询!
在线等!!
--i和i--有什么区别?
登录百度帐号推荐应用这个程序是现实数码管的,就是不能得到我想要的显示【单片机吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:145,736贴子:
这个程序是现实数码管的,就是不能得到我想要的显示收藏
#include&reg52.h&sbit duan_latch=P2^2;sbit wei_latch=P2^3;main(){P0=0wei_latch=1;wei_latch=0;P0=0x3f;duan_latch=1;duan_latch=0;}怎么破啊?大伙能拿到你们的单片机试试么?
为用户提供各种低成本,低功耗,低能耗,功能强的微控制器解决方案.恩智浦微控制器,高性能,设计新颖,性能稳定,价格超低,欲购从速,欢迎垂询!
#include&reg52.h&sbit duan_latch=P2^2;sbit wei_latch=P2^3;main(){wei_latch=1;P0=0wei_latch=0;duan_latch=1;P0=0x3f;duan_latch=0;}怎么破啊?大伙能拿到你们的单片机试试么?
你是不是用动态数码管,如果是加一个适当的延时
共阴还是共阳
显示的是什么?
登录百度帐号推荐应用

我要回帖

更多关于 c51数码管显示程序 的文章

 

随机推荐