51单片机c语言编程实验指导书

51单片机c语言编程实验指导书

ID:14928467

大小:1.59 MB

页数:170页

时间:2018-07-31

51单片机c语言编程实验指导书_第1页
51单片机c语言编程实验指导书_第2页
51单片机c语言编程实验指导书_第3页
51单片机c语言编程实验指导书_第4页
51单片机c语言编程实验指导书_第5页
资源描述:

《51单片机c语言编程实验指导书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、9.                  一键多功能按键识别技术1.实验任务如图4.9.1所示,开关SP1接在P3.7/RD管脚上,在AT89S51单片机的P1端口接有四个发光二极管,上电的时候,L1接在P1.0管脚上的发光二极管在闪烁,当每一次按下开关SP1的时候,L2接在P1.1管脚上的发光二极管在闪烁,再按下开关SP1的时候,L3接在P1.2管脚上的发光二极管在闪烁,再按下开关SP1的时候,L4接在P1.3管脚上的发光二极管在闪烁,再按下开关SP1的时候,又轮到L1在闪烁了,如此轮流下去。2.电路原理图图4.9.13.系统板

2、上硬件连线(1.      把“单片机系统”区域中的P3.7/RD端口连接到“独立式键盘”区域中的SP1端口上;170(2.      把“单片机系统”区域中的P1.0-P1.4端口用8芯排线连接到“八路发光二极管指示模块”区域中的“L1-L8”端口上;要求,P1.0连接到L1,P1.1连接到L2,P1.2连接到L3,P1.3连接到L4上。4.程序设计方法(1.      设计思想由来在我们生活中,我们很容易通过这个叫张三,那个叫李四,另外一个是王五;那是因为每个人有不同的名子,我们就很快认出,同样,对于要通过一个按键来识别每种

3、不同的功能,我们给每个不同的功能模块用不同的ID号标识,这样,每按下一次按键,ID的值是不相同的,所以单片机就很容易识别不同功能的身份了。(2.      设计方法从上面的要求我们可以看出,L1到L4发光二极管在每个时刻的闪烁的时间是受开关SP1来控制,我们给L1到L4闪烁的时段定义出不同的ID号,当L1在闪烁时,ID=0;当L2在闪烁时,ID=1;当L3在闪烁时,ID=2;当L4在闪烁时,ID=3;很显然,只要每次按下开关K1时,分别给出不同的ID号我们就能够完成上面的任务了。下面给出有关程序设计的框图。5.程序框图     

4、     170         图4.9.27.C语言源程序#includeunsignedcharID;voiddelay10ms(void){unsignedchari,j;for(i=20;i>0;i--)for(j=248;j>0;j--);} voiddelay02s(void){unsignedchari;for(i=20;i>0;i--){delay10ms();170}} voidmain(void){while(1){if(P3_7==0){delay10ms();if(P3_7==0)

5、{ID++;if(ID==4){ID=0;}while(P3_7==0);}}switch(ID){case0:P1_0=~P1_0;delay02s();break;case1:P1_1=~P1_1;delay02s();break;case2:170P1_2=~P1_2;delay02s();break;case3:P1_3=~P1_3;delay02s();break;}}13.           动态数码显示技术1. 实验任务如图4.13.1所示,P0端口接动态数码管的字形码笔段,P2端口接动态数码管的数位选择端,P1

6、.7接一个开关,当开关接高电平时,显示“12345”字样;当开关接低电平时,显示“HELLO”字样。2. 电路原理图170图4.13.13. 系统板上硬件连线(1.      把“单片机系统”区域中的P0.0/AD0-P0.7/AD7用8芯排线连接到“动态数码显示”区域中的a-h端口上;(2.      把“单片机系统”区域中的P2.0/A8-P2.7/A15用8芯排线连接到“动态数码显示”区域中的S1-S8端口上;(3.      把“单片机系统”区域中的P1.7端口用导线连接到“独立式键盘”区域中的SP1端口上;4. 程序设

7、计内容(1.      动态扫描方法170动态接口采用各数码管循环轮流显示的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出(字形选择),另一接口完成各数码管的轮流点亮(数位选择)。(2.      在进行数码显示的时候,要对显示单元开辟8个显示缓冲区,每个显示缓冲区装有显示的不同数据即可。(3.      对于显示的字形码数据我们采用查表方法来完成。5. 程序框图7. C语言源程序#include unsignedcharcodetable1[]={

8、0x06,0x5b,0x4f,0x66,0x6d};unsignedcharcodetable2[]={0x78,0x79,0x38,0x38,0x3f};unsignedchari;unsignedchara,b;unsignedchartemp; voidm

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。