编码器单片机编程 下载本文

内容发布更新时间 : 2024/9/20 16:50:04星期一 下面是文章的全部内容请认真阅读。

#include #define uchar unsigned char #define uint unsigned int uint mm=0;m=0;n=0; uchar kk;k=0; uchar

code

table[]={0xc0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,}; //共阳极七段码表

delay(uint m) //延时函数 { uint i,j;

for(i=m;i>0;i--) for(j=60;j>0;j--); }

xian_shi() // 显示函数

{ uchar qian,bei,shi,ge; //千,百,十,个 uint jj; jj=mm; qian=jj/1000; bei=jj00/100;

shi=jj0/10; ge=jj;

P2=0x10; //显示千

位 P0=table[qian]; delay(1); P2=0;

P1=0x20; 位 P0=table[bei]; delay(1); P2=0;

P2=0x40; 位 P0=table[shi]; delay(1); P2=0;

P2=0x80; 位

P0=table[ge]; delay(1); P2=0; }

//显示百//显示十//显示个 timer_init() //定时器计数器初始化函数

{ EA=1; //开启总中断 ET0=1; //开启定时器中断 ET1=1; //开启计数器中断 TMOD=0X51; //设置定时和计数器的工作方式

TH0=(65535-50000)/256; //设置定时时间 TL0=(65535-50000)%6;

TH1=0; //计数器清零 TL1=0;

TR0=1; //启动定时器 TR1=1; //启动计数器 }

main() //主函数 {

timer_init();

P0=0xff; //开始数码管不显示

while(1) //设置为按键按下开启数码管 {