




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、相品第二章任务一:闪烁广告灯的设计利用89c51单片机的端口控制两个LED (D0和D1 ),编写程序,实现两个 LED互闪。#include<reg52.h>#define uint unsigned int#define uchar unsigned charsbitLED1=P0A0;sbit LED2=P0A1; void delayms(uint ms) uint i;while(ms-)for(i=0;i<120;i+);void main()while(1)LED1=0;LED2=1;delayms(500);LED1=1;LED2=0;delayms(500)
2、;任务二:流水广告灯的设计利用89c51单片机的端口控制 8个LED ( D0D7 )循环点亮,刚开始时 D0点亮,延时片刻 后,接着D1点亮,然后依次点亮 D2->D3->D4->D5->D6->D7 ,然后再点亮 D7->D6->D5->D4 ->D3->D2->D1->D0 ,重复循环。#include<reg52.h>#include <intrins.h>#define uint unsigned int#define uchar unsigned charuint i;uchar tem
3、p;uint a8=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f);void delayms(uint ms)while(ms-) uint j;for(j=0;j<120;j+);void main()while(1)P0=0xfe;while(P0!=0x7f) P1=temp;/delayms(500);P0=_crol_(P0,1);delayms(250);temp=0x7f;while(P0!=0xfe) P0=temp;delayms(500);temp=_cror_(temp,1);任务三:拉幕式与闭幕式广告灯的设计利用89c51单片机的
4、P0端口实现8个LED D0D7的拉幕式与闭幕式广告灯设计。拉幕式:开始D0D7全灭,延时片刻后首先 D3和D4亮,其次是 D2和D5亮,再是D1和D6亮,最后是D0和D7亮。闭幕式:开始 D0D7全亮,延时片刻后首先D0和D7灭,其次是 D1和D6灭,再是D2和D5灭,最后是D3和D4灭。#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar code table尸0xe7,0xc3,0x81,0x00;void delay(uint x)uint i,j;for(i=x;i>0;
5、i-) for(j=120;j>0;j-);void main()uint i;while(1)P1=0xff;delay(500);for(i=0;i<4;i+)P1=tablei;delay(500); for(i=3;i>0;i-) P1=tablei-1;delay(500); 任务四:复杂广告灯的设计利用89c51单片机的端口实现 8个LED ( D0D7 )复杂广告灯的控制,要求显示规律为:正向流水,反向流水,隔灯闪烁3次->高四盏、低四盏闪烁2次,隔两盏闪烁3次,再重复循环。#include<reg52.h>#define uint unsig
6、ned int#include<intrins.h>void delayms(uint ms)uint i;while(ms-) for(i=0;i<110;i+);void main()uint i,j,xx2=0xaa,0xff,yy2=0xf0,0x0f,zz2=0xb6,0xff);unsigned char aa;while(1)aa=0xfe;for(i=0;i<7;i+)P0=aa;aa=_crol_(aa,1);delayms(500);for(i=0;i<8;i+)P0=aa;aa=_cror_(aa,1);delayms(500);for(i=
7、0;i<3;i+) for(j=0;j<2;j+) P0=xxj; delayms(500);for(i=0;i<2;i+) for(j=0;j<2;j+) P0=yyj;delayms(500);for(i=0;i<3;i+)for(j=0;j<2;j+)P0=zzj; delayms(500);任务五:单个LED数码管显示设计使用89c51的P0 口作为输出口,外接 LED数码管,编写程序,使数码管循环显示从09的加1计数。#include<reg52.h>#define uint unsigned int#define uchar unsi
8、gned charuchar table10= 0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90;uint key=0;void int_int()EA=1;IT0=1;EX0=1;相品用口3 void count_num() interrupt 0 if(key=9)key=0; else key+;void main() int_int(); while(1) P0=tablekey; 任务六:多个LED数码管显示设计 使用单片机P0和P2 口作为输出口,外接一个8位LED数码管,编写程序,使数码管显示“ 872AF635;'#in
9、clude<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned chardelay(ms) while(ms-) int i; for(i=0;i<110;i+); main() uchara16=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;uchar b8=0x08,0x07,0x02,0x0a,0x0f,0x06,0x03,0x05,j;uint i
10、;while(1)j=0x01;for(i=0;i<8;i+) P2=j;P0=abi;j=_crol_(j,1);delay(3);任务七:查询式按键设计将8个按键从18进行编号,如果其中一个键被按下,则在LED数码管上显示相应的键值。#include<reg52.h>#define uint unsigned int#define uchar unsigned charmain()uchara16=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;P0=0xff;
11、while(P0!=0xff) switch(P0)case 0xfe:P2=a1; break;case 0xfd:P2=a2; break;case 0xfb:P2=a3; break;case 0xf7:P2=a4; break;case 0xef:P2=a5; break;case 0xdf:P2=a6; break;case 0xbf:P2=a7; break;case 0x7f:P2=a8;任务八:LED数码管显示矩阵键盘按键的设计设计一个4*4的矩阵键盘,以 P1.0P1.3作为行线,以P1.4P1.7作为列线。要求:未按下 按键时,LED数码管显示-“',按下按键时,在
12、数码管上显示相应的键值。#include<reg52.h>#define uchar unsigned char#define uint unsigned intuchartable17=0xbf,0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;uint num=0;相品void delay(uint x)uchar i,j;for(i=x;i>0;i-) for(j=120;j>0;j);keyscan() uint temp;temp=P2;temp&am
13、p;=0x0f;if(temp=0x0e) P2=0xf0; temp=P2; temp&=0xf0; switch(temp) case 0xe0:num=1;break; case 0xd0:num=2;break; case 0xb0:num=3;break; case 0x70:num=4; if(temp=0x0d) P2=0xf0; temp=P2; temp&=0xf0; switch(temp) case 0xe0:num=5;break; case 0xd0:num=6;break; case 0xb0:num=7;break; case 0x70:num=8
14、; if(temp=0x0b) P2=0xf0; temp=P2; temp&=0xf0; switch(temp) case 0xe0:num=9;break;case 0xd0:num=10;break;case 0xb0:num=11;break;case 0x70:num=12; if(temp=0x07) P2=0xf0; temp=P2; temp&=0xf0; switch(temp) case 0xe0:num=13;break; case 0xd0:num=14;break; case 0xb0:num=15;break; case 0x70:num=16;
15、return num; void display(uint num) if(num=0)P0=0xbf;P0=tablenum;main() uint temp; while(1) P2=0x0f;temp=P2;if(temp!=0x0f)keyscan(); display(num);(2)#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit LED1=P2A0;sbit LED2=P2A1;uchar num;uchar code LED_code尸 0xc0,0xf9,0xa4,0
16、xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;/数码管字形码编码void delay(uint x) uchar i,j;for(i=x;i>0;i-) for(j=120;j>0;j-);/延时函数void display(uchar num) P0=LED_codenum;/数码管显示函数void keyscan()/键盘扫描函数 uchar temp;P1=0xfe;/key1-key4 第一行按下temp=P1;temp&=0xf0;if(temp!=0xf0) delay(10);/
17、消除抖动temp=P1;temp&=0xf0;if(temp!=0xf0) temp=P1;switch(temp) case 0xee:num=1;break;case 0xde:num=2;break;case 0xbe:num=3;break;case 0x7e:相品用。3num=4; break;while(temp!=0xf0)等待按键释放temp=P1;temp&=0xf0;P1=0xfd;/key5-key8 第二行按下temp=P1;temp&=0xf0;if(temp!=0xf0)delay(10);/消除抖动temp=P1;temp&=0xf
18、0;if(temp!=0xf0) temp=P1;switch(temp) case 0xed:num=5;break;case 0xdd:num=6;break;case 0xbd:num=7;break;case 0x7d:num=8;break;while(temp!=0xf0)等待按键释放temp=P1;temp&=0xf0;P1=0xfb;/key9-key12 第三行按下temp=P1;temp&=0xf0;if(temp!=0xf0)delay(10);/消除抖动temp=P1;temp&=0xf0;if(temp!=0xf0) temp=P1;switc
19、h(temp) case 0xeb:num=9;break;case 0xdb:num=10;break;case 0xbb:num=11;break;case 0x7 b:num=12;break;while(temp!=0xf0)等待按键释放temp=P1;temp&=0xf0;P1=0xf7;/key13-key16 第四行按下temp=P1;temp&=0xf0;if(temp!=0xf0)delay(10);/消除抖动temp=P1;temp&=0xf0;if(temp!=0xf0) temp=P1;switch(temp)相品用。3case 0xe7:num
20、=13;break;case 0xd7:num=14;break;case 0xb7:num=15;break;case 0x77:num=16;break;while(temp!=0xf0)等待按键释放temp=P1;temp&=0xf0;void main()while(1)keyscan();if(num=0)P0=0xbf;elsedisplay(num-1);任务九:简单拨号键盘的设计使用4*4的矩阵式键盘及 8位共阳极LED数码管设计一个简单拨号键盘,要求在初始状态 时,8位数码管均显示 了,每按下一个号码后,原 8位LED数码管显示的内容向左移动1位。#include&l
21、t;reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned charuchar keycount=0,num;uchar code LED1_code=相品0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e;/数码管字形码编码uchar LED2_duan8=0xbf,0xbf,0xbf,0xbf,0xbf,0xbf,0xbf,0xbf);8段共阳数码管编码uchar LED2
22、_wei8= 0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01;void delay(uint x)uchar i,j;for(i=x;i>0;i-)for(j=120;j>0;j-);void display。 uchar i; /P2=0x80; for(i=0;i<8;i+) P2=LED2_weii;P0=LED2_duan7-i;delay(1);void keyscan() uchar temp; P3=0xfe; temp=P3; temp&=0xf0; if(temp!=0xf0) delay(10); temp=P3;
23、temp&=0xf0; if(temp!=0xf0) temp=P3;switch(temp) case 0xee:keycount+;num=0;break; case 0xde:keycount+;num=1;break; case 0xbe:keycount+;num=2;break; case 0x7e:keycount+;num=3;break;相品用。3while(temp!=0xf0)temp=P3;temp&=0xf0;P3=0xfd;temp=P3;temp&=0xf0;if(temp!=0xf0)delay(10);temp=P3;temp&
24、=0xf0;if(temp!=0xf0)temp=P3;switch(temp)case 0xed:keycount+;num=4;break;case 0xdd:keycount+;num=5;break;case 0xbd:keycount+;num=6;break;case 0x7d:keycount+;num=7;break;while(temp!=0xf0)temp=P3;temp&=0xf0;P3=0xfb;temp=P3;temp&=0xf0;if(temp!=0xf0)delay(10);temp=P3;temp&=0xf0;if(temp!=0xf0)
25、temp=P3;switch(temp)case 0xeb:keycount+;num=8;break;case 0xdb:keycount+;num=9;break;case 0xbb:keycount+;num=10;break; case 0x7b:keycount+;num=11;break;while(temp!=0xf0)temp=P3;temp&=0xf0;P3=0xf7;temp=P3;temp&=0xf0;if(temp!=0xf0)delay(10);temp=P3;temp&=0xf0;if(temp!=0xf0)temp=P3;switch(te
26、mp)case 0xe7:keycount+;num=12;break; case 0xd7:keycount+;num=13;break; case 0xb7:keycount+;num=14;break;case 0x77:keycount+;num=15;break; while(temp!=0xf0)temp=P3;temp&=0xf0;void main()uchar i;while(1)相品用口"-display。; keyscan(); if(keycount!=0) for(i=0;i<7;i+)LED2_duani=LED2_duani+1;LED2_
27、duan7=LED1_codenum; keycount=0; 第五章 任务一:带中断控制的 LED花样灯P0端口作为输出口,外接8只LED, P3.2外接按键Ko编写程序,当K未按下时,8只LED 进行默认显示,其显示规律为左移流水->右移流水-> 隔灯闪烁3次花样显示;如果按下K键 后,8只LED暂停默认显示,而进行闪烁显示,当显示达到 5次后,继续按默认规律显示。#include<reg52.h>#define uint unsigned int#define uchar unsigned charuint LED_table14=0xfe,0xfd,0xfb,0
28、xf7,0xef,0xdf,0xbf,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd; void delayms(uint ms) uint i; while(ms-) for(i=0;i<120;i+); void int_int() EA=1;EX0=1;IT0=1;void LED_shan() interrupt 0 uint k; for(k=0;k<5;k+) P0=0xaa;delayms(500);P0=0xff;delayms(500);void main()int_int(); while(1) uint i;for(i=0;i<14
29、;i+) P0=LED_tablei; delayms(500); for(i=0;i<3;i+)P0=0xaa;delayms(500);P0=0xff;delayms(500); 任务二:采用外中断控制的条形LED彩灯设计P0端口作为输出口,外接条形 LED。编写程序,当按键 K未按下时,LED进行循环左移显 示。如果第1次按下按键KB, LED进行循环右移显示。如果第 2次按下按键KB, LED 进行拉幕式与闭幕式花样显示。如果第3次按下按键KB,又恢复循环左移显示。#include <reg52.h> unsigned char flag=0; unsigned ch
30、ar led =0;unsigned char table= 0x00,0x81,0xc3,0xe7, 0xff,0xe7,0xc3,0x81;状态标志位/LED映射位花样数组先闭幕式再开幕式void delayms(unsigned int ms);延时函数void sysInit(void);void step0(void);void step1(void);void step2(void);void main(void)sysInit();while(1) 系统初始化状态0状态1状态2初始化系统switch(flag)相品用。3case 0:step0();break;case 1: s
31、tep1();break;case 2: step2();break;default:break;P0 = led;将led值映射至U LED灯delayms(500);/延时 500ms void delayms(unsigned int ms) unsigned char i; for (;ms;ms-) for (i=110;i;i-); void sysInit(void) EX0 = 1; /打开外部中断0EA = 1; 打开总中断IT0 = 1; 外部中断0下降沿触发 void step0(void) led <<=1; / 左移if (led=0)溢出处理led =
32、0x01; void step1(void) led >>=1; / 右移if (led=0)溢出处理led = 0x80; void step2(void) static chart;led = tablet+; 开幕闭幕花样显示 if (t=8)t = 0; void EX_0() interrupt 0 外部中断0服务函数 flag+;if (flag=3) flag = 0;(2)#include<reg52.h> 头文件#define uchar unsigned char#define uint unsigned int宏定义uchar temp,key_c
33、ount;uchar code tab口=开幕式闭幕式编码0x00,0x81,0xc3,0xe7,0xff,0xe7,0xc3,0x81;void delay(uint ms) 延时子函数 uint i,j; for(i=ms;i>0;i-)for(j=0;j<110;j+);void loop_leftmove() temp=temp<<1; if(temp=0) temp=0x01;void loop_rightmove() temp=temp>>1; if(temp=0) temp=0x80;void open_close() uchar count;
34、 temp=tabcount; count+; if(count>=8)count=0;void init()EA=1;EX0=1;IT0=1;temp=0; key_count=0;void main() init(); while(1) switch(key_count) case 0:loop_leftmove();break;case 1:loop_rightmove();break;case 2:open_close();break; default:break;P0=temp; delay(250); void key_interrupt() interrupt 0 外部中断
35、 INTO 中断服务程序 key_count+;key_count%=3;/*if(key_count=3) key_count=0;*/ 任务三:采用两个外中断的LED彩灯控制P0端口作为输出口,外接 8只LED, P3.2外接按键K1 , P3.3外接按键K2。编写程序,没 有按下任何按键时,LED隔灯闪烁,当按键K1为奇数次时,LED进行左移流水->右移流水 显示。当按下按键 K1为偶数次时,LED进行拉幕式显示;当按下按键 K2时,LED暂停显 示,蜂鸣器发出“叮咚”的开门声音,然后 LED继续花样显示(K2按键优先)。#include<reg52.h>#includ
36、e<intrins.h>#define uchar unsigned char#define uint unsigned intsbit key1=P3A2;sbit key2=P3A3;sbit beep=P1A0; uchar code tab=相品0xf,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7; 开幕式编码uchar temp=0x01,key_count,flag,right,beep_FG;void delay(uint ms) uint i,j;for(i=ms;i>0;i-) for(j=110;j>0;j-);void in
37、it()EA=1;打开总中断EX0=1;/打开外部中断INT0EX1=1;/打开外部中断INT1IT0=1;下降沿触发方式IT1=1;下降沿触发方式PX0=0;/设置INT0为低中断优先级PX1=1;/设置INT1为高中断优先级void interval_LED()P0=0xff;delay(500);P0=0xaa;delay(500);void left_right_move()if(!right)temp=_crol_(temp,1);elsetemp=_cror_(temp,1);if(temp=0x01) right=0;if(temp=0x80)right=1;void open_
38、LED()uchar count;temp=tabcount+;if(count=8)count=0;void Beep()uchar i,j,k;for(i=100;i;i-)for(j=20;j;j-)for(k=1000;k;k-) beep=beep;/*for(i=100;i;i-)for(j=200;j;j-)for(k=1000;k;k-) beep=beep;*/beep_FG=0;void main()init();beep=0;while(1)if(!flag)interval_LED();elseif(beep_FG) Beep(); else switch(key_co
39、unt%2)case 1:left_right_move();break;奇数次按键左移右移显示case 0:open_LED();break;偶数次按键拉幕式显示 default:break;相品用。3P0=temp;delay(400); void key1_interrupt() interrupt 0flag=1; key_count+;void key2_interrupt() interrupt 2 flag=1; beep_FG=1;任务四:采用两个外中断实现LED键控移位P0端口作为输出口,外接 8只LED, P3.2外接按键K1 , P3.3外接按键K2。编写程序,要 求实现
40、LED键控移位,按下按键 K1时,8只LED左移1位;按下按键 K2时,8只LED 右移1位。#include<reg52.h>#include<intrins.h>#define uint unsigned int#define uchar unsigned charuchar key1=0,key2=0,temp1=0,temp2=0,temp11=0,temp12=0;/*void delayms(uint ms) uint i; while(ms-) for(i=0;i<120;i+); */ void int_int()EA=1;EX0=1;EX1=1;
41、IT0=1;IT1=1;void int0() interrupt 0 key1+;void int1() interrupt 2key2+;void main()uchar a;int_int();a=0xfe;while(1)if(temp1!=key1)P0 = a;a=_crol_(a,1);temp1=key1;if(temp2!=key2)P0 = a;a=_cror_(a,1); key2=temp2;(2)#include<reg52.h>#define uint unsigned int#define uchar unsigned char uchar key1=
42、0,key2=0,m,n,k;uchar table尸0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f);void int_int()EA=1;EX0=1;IT0=1;EX1=1;IT1=1;void int0() interrupt 0key1+; m=key1%8;void int2() interrupt 2key2+;n=key2%8;void main() int_int(); while(1) k=(m-n+8)%8;P0=tablek; 任务五:采用外中断实现计数 使用单片机P0、P2端口作为输出口,外接一个2位LED数码管,P3.2外接按键K1 ,
43、 P3.3外接按键K2。编写程序,每次按下K1时,LED数码管进行加1显示;每次按下按键 K2时,LED数码管进行减1显示,计数范围为 099。#include<reg52.h> 头文件#define uint unsigned int / 宏定义#define uchar unsigned char 宏定义uchar table尸0xc0,0xf9,0xa4,0xb0,0x99, 0x92,0x82,0xf8,0x80,0x90;0-9 共阳字型码编码char count=0;uchar shi,ge;void LED_scan()数码管扫描子函数 shi=count/10;/
44、分离十位ge=count%10;/ 分离个位P2=tablege;/ 显示个位P0=tableshi; 显示十位void int_int() 初始化 EA=1;打开总中断EX0=1;打开外部中断0EX1=1;打开外部中断1IT0=1;设置下降沿触发方式IT1=1;设式下降沿触发方式void main()主函数相品用。3int_int();调用初始化函数while(1)调用数码管扫描函数0服务程序计数加1溢出操作外部中断1服务程序计数减1溢出操作 LED_scan();void int0() interrupt 0 外部中断count+;if(count=100) count=0;void in
45、t2() interrupt 2 count-;if(count<0)count=99;(2) #include<reg52.h> 头文件#define uint unsigned int / 宏定义#define uchar unsignedchar 宏定义uchar table尸0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;0-9 共阳字型码编码 char count=0;uchar shi,ge;void delay(uint ms)/ 延时子函数uchar i;for(;ms;ms-)for(i=120;i;i-)
46、;void LED_scan()数码管扫描子函数shi=count/10;/ 分离十位ge=count%10;/ 分离个位P2=0x01; /个位对应的数码管点亮P0=tablege;/ 显示个位delay;P2=0x02; /十位对应的数码管点亮P0=tableshi; 显示十位delay;void int_int() 初始化EA=1;打开总中断EX0=1;打开外部中断 0EX1=1;打开外部中断1IT0=1;设置下降沿触发方式IT1=1;设置下降沿触发方式void main()主函数int_int();调用初始化函数while(1)LED_scan(); 调用数码管扫描函数void int
47、0() interrupt 0外部中断0服务程序count+;if(count=100) count=0;void int2() interrupt 2count-;if(count<0)count=99;计数加1溢出操作外部中断1服务程序计数减1溢出操作任务六:采用外中断进行计数和清零控制 使用单片机P0、P2端口作为输出口,外接一个 2位LED数码管,P3.2外接按键K1 , P3.3 外接按键K2。编写程序,按键 K2作为“加1/暂停/清零”控制;按键 K1作为加1计数控 制。当按键K2没有按下时,按键 K1按下后LED数码管总显示为 0;第1次按下键K2时, 每次按下K1 , L
48、ED数码管进行加1显示;第二次按下按键 K2时,暂停加1计数,按键K1 按下后LED数码管显示暂停前的数值;第 3次按下按键 K2时,LED数码管显示为0;第4 次按下按键K2时,与第1次类似。#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar key1=0,temp1=0,key2=0,temp2=0,key=0;uchar table=0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8, 0X80,0X90;void delayms(uint ms)相品
49、用口3while(ms-)uint i=0;for(i;i<120;i+);void int_int()EA=1;EX0=1;EX1=1;IT0=1;IT1=1;void int1() interrupt 0key2+;void int0() interrupt 2key1+;void display。P2=0xfe;P0=tabletemp1;delayms(2);P2=0xfd;P0=tabletemp2;delayms(2);void main()int_int();while(1)temp1=key1%10;temp2=key1/10;switch(key2%3)case 0:w
50、hileif(key2%3!=0) break;P2=0xfe;P0=table0;delayms(2);P2=0xfd;P0=table0;delayms(2);key1=0;break;(1) e 1: display。;break;(2) e 2:key=key1;whileif(key2%3!=2) break;P2=0xfe;P0=tabletemp1;delayms(2);P2=0xfd;P0=tabletemp2;delayms(2);key1=key;break;第八早任务一:简单计数器的设计使用单片机P0, P2端口作为输出口,外接一个 2位LED数码管,P3.4外接按键K。
51、编写 程序,每次按键 K按下时LED数码管进行加1显示,计数范围为 099。#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar table=0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90;uchar key=0;void delayms(uint ms)相品用口3uint i;while(ms-)for(i=0;i<120;i+);void int_int()EA=1;ET0=1;/开定日器0中断TR0=1; 启动定时器0TMOD=0x05;/设置工作方式为1选择计数功能TH0=0xff;TL0=0xff; /装初值使得按一下就中断void int1() interrupt 1TH0=0xff;TL0=0xff;key+;void display。P2=0xfe;P0=tablekey%10;delayms(3);P2=0xfd;P0=tablekey/10;d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 降低运输成本的策略计划
- 2025年小学教师资格考试《综合素质》教育评价专项训练试题及答案
- 技术推动下办公室员工的智慧健康管理解决方案研究报告
- 废旧设备拆除承包合同范本
- 职业技能鉴定保密协议书
- 2025投资合伙协议书
- 人合伙公司合同范本
- 提升税务筹划水平的具体措施计划
- 车位涂鸦机器转让协议书
- 金融培训教学合同范本
- 2025年软件设计师考试模拟题大全试题及答案
- 和二手车合作协议书
- 商会授权运营协议书
- 石膏砂浆抹灰施工工艺流程及操作要点
- 学习公共关系2025年重要试题及答案
- 2025高考北京卷作文命题趋势分析及范文
- 2025-2030年中国电子材料行业市场现状供需分析及投资评估规划分析研究报告
- 运维自动化流程设计-全面剖析
- 人工智能AI创业计划书
- 二级注册计量师题库附答案2025
- 南科大的机试题及答案
评论
0/150
提交评论