标题:
源程序代码!99999.9秒显示!
[打印本页]
作者:
liuda
时间:
2015-1-21 18:25
标题:
源程序代码!99999.9秒显示!
#include<reg52.h>//数码管显示0123456789共阴
#define uchar unsigned char
uchar table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
void delay1ms(int n)
{
int i;
while(n--)
{
for(i=0;i<200;i++);
}
}
void main()
{
char i=0;
while(1)
{ if(i<11)
{
P2=table[i];
delay1ms(150);
i++;
}
else i=0;
}
}
定时器点亮一个led///
#include<reg52.h>
char count=0;
void timer_0(void)interrupt 1
{
count++;
if(count==20)
{ P2=~P2;
count=0;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
}
}
void main()
{
P2=0x00;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{
}
}
定时一百秒计数//
#include<reg52.h>
int second=0,count=0,munite=0;
unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
void main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{
}
}
void timer_0(void)interrupt 1
{
second++;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(second==20)
{
P1=table[count%10];
second=0;
count++;
}
if(count==11)
{
munite++;
P2=table[munite%10];
count=0;
}
}
99999.9秒的定时程序显示在6位7段数码管上(注意小数点的电平),p3口扫描送高电平加上一个上拉电阻增大驱动电流P0口送共阳极代码//
#include<reg52.h>
#include<intrins.h>
sbit dot=P0^7;
int i,second=0;
unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
unsigned char disp[]={0,0,0,0,0,0};
void delayms( unsigned char n)
{
do
{ _nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}
while(--n);
}
void main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
while(1)
{
P3=0x80;
for(i=5;i>=0;i--)
{
P3=_crol_(P3,1);
P0=table[disp[i]];
if(i==1)
dot=0;
delayms(10);
}
}
}
void timer_0(void)interrupt 1
{
second++;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
if(second==2)
{ second=0;
disp[0]=disp[0]+1;
}
else
return;
for(i=0;i<6;i++)
{
if(disp[i]==10)
{
disp[i]=0;
if(i!=5)
disp[i+1]=disp[i+1]+1;
}
else break;
}
}
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1