最新单片机实验6PPT课件.ppt
二、实验内容与步骤二、实验内容与步骤(一)内容(一)内容 用用XL400+XL400+单片机单片机综合仿真试验仪和综合仿真试验仪和KeilKeil软件实现:软件实现: 1 1、 按键指示程序,有键按下,对应的按键指示程序,有键按下,对应的LEDLED灯亮,灯亮,按键接按键接p1p1口,口,8 8路指示灯接路指示灯接p0p0口口 2 2、对独立键进行按键次数计数,三位数码管显示。、对独立键进行按键次数计数,三位数码管显示。 (1 1)K1K1按下后,进行加按下后,进行加1 1计数计数(2 2)K2K2按下后,进行减按下后,进行减1 1计数计数(3 3)K3K3按下后,进行加按下后,进行加5 5计数计数(4 4)K4K4按下后,清计数单元,数码管显示按下后,清计数单元,数码管显示0 0。第三部分第三部分 程序写入单片机观察运行结果程序写入单片机观察运行结果1、双击桌面XLISP启动程序,选择打开框,找到需要执行的程序(HEX文件),点击;在XLISP的文件 程序区可见到要执行的程序;2、点击写入框,在程序写入结束后即可观察运行的结果题题1 参考程序参考程序#include #include #define uchar unsigned char#define uint unsigned intsbit K1 = P10; sbit K2 = P11;sbit K3 = P12; sbit K4 = P13;sbit K5 = P14; sbit K6 = P15;sbit K7 = P16; sbit K8 = P17;main() P2 = 0 xff; P1=0 xff; while(1) P0 = 0 xff; if(K1=0) P0 = 0 xfe; if(K2=0) P0 = 0 xfd; if(K3=0) P0 = 0 xfb; if(K4=0) P0 = 0 xf7;if(K5=0) P0 = 0 xef; if(K6=0) P0 = 0 xdf; if(K7=0) P0 = 0 xbf; if(K8=0) P0 = 0 x7f; 题题2 参考程序参考程序#include unsigned char k_scan();unsigned char k_pro();unsigned char k_new,k_old;unsigned char k,num;unsigned char k_count=0;void delay(unsigned char m);void disp_count();sbit k1=P14; sbit k2=P15;sbit k3=P16; sbit k4=P17; unsigned char code LEDData = 0 x28, 0 x7E, 0 xA2, 0 x62, 0 x74, 0 x61, 0 x21, 0 x7A, 0 x20, 0 x60,0 xff; /0,1,2,3,4,5,6,7,8,9,关显示,数码管码表 unsigned char data display4 = 0 x00,0 x00,0 x00,0 x00,;char code SST5163 _at_ 0 x003b;void main(void) P0=0 xff; P1=0 xff; P2=0 xff; k_old=0 x00; k=0 x00; while(1) disp_count(); k_new=k_scan(); if(k_new!=k_old) for(num=0;num30;num+) disp_count(); if(k_new!=k_old) k=k_pro(); switch(k) case 1: k_count+; break; case 2: k_count-; break; case 3: for(num=0;num4; return(k_new); void delay(unsigned char m) while(m-) unsigned char i=255; while(i-); 三、思考题三、思考题 分析上述程序中4个按键的不同功能是如何用程序实现的。 四、实验要求四、实验要求: 1、实习前必须编写好程序 2、程序必须编译通过并运行正确 3、提交试验报告:报告内容 (1)实验目的 (2)实验内容 (3)实验原理图与线路连接 (4)实验步骤 (5)实验结果 (6)实验体会