程序一
利用动态扫描方法在六位数码管上显示出稳定的654321.
时钟频率为11.0592M
#include<reg52.h>
#include <intrins.h> //包含有左右循环移位子函数的库
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;
sbit wela=P2^7;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void display(uchar,uchar,uchar,uchar,uchar,uchar); //函数声明
void delay(uint);
void main()
{
}
void display(uchar one,uchar two,uchar three,uchar four,uchar five,uchar six)
{
}
void delay(uint z)
{
}
程序二
用动态扫描方法和定时器1在数码管的前三位显示出秒表,
精确到1%秒,即最后一位显示1%秒,一直循环下去
#include<reg52.h>
#include <intrins.h> //包含有左右循环移位子函数的库
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;
sbit wela=P2^7;
uchar ge,shi,bai;
uint tt;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71};
void display(uchar,uchar,uchar); //函数声明
void delay(uint);
void main()
{
}
void exter0() interrupt 3
{
}
void display(uchar one,uchar two,uchar three)
{
}
void delay(uint z)
{
}
程序三
利用动态扫描和定时器1在数码管上显示
出从765432开始以1/10秒的速度往下递减
直至765398并保持显示此数,与此同时利
用定时器0以500MS速度进行流水灯从上至
下移动,当数码管上数减到停止时,实验
板上流水灯也停止然后全部开始闪烁,3秒
后(用T0定时)流水灯全部关闭、数码管上
显示出"HELLO"。到此保持住。
#include<reg52.h>
#include <intrins.h> //包含有左右循环移位子函数的库
#define uint unsigned int
#define uchar unsigned char
sbit dula=P2^6;
sbit wela=P2^7;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,
0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,
0x39,0x5e,0x79,0x71,
0x76,0x79,0x38,0x3f,0};
uchar temp,t0,t1,bai,shi,ge,flag,flag1;
uint shu;
void init();
void display(uchar aa,uchar bb,uchar cc,uchar bai,uchar shi,uchar ge);
void delay(uint z)
{
}
void main()
{
}
void init()
{
}
void timer0() interrupt 1
{
}
void timer1() interrupt 3
{
}
void display(uchar aa,uchar bb,uchar cc,uchar bai,uchar shi,uchar ge) //显示子函数
{
}