中国高校课件下载中心 》 教学资源 》 大学文库

内蒙古农业大学:《单片机原理及应用》课程教学课件(讲稿)P1口流水灯实验(风标电子)

文档信息
资源类别:文库
文档格式:PDF
文档页数:6
文件大小:346.79KB
团购合买:点击进入团购
内容简介
内蒙古农业大学:《单片机原理及应用》课程教学课件(讲稿)P1口流水灯实验(风标电子)
刷新页面文档预览

P1口流水灯实验 实验报告包括: 1、实验名称:P1口流水灯实验 2、实验目的: (1)了解/O口的电气特性和驱动能力; (2)掌握程序编写的方法;(3)了解LED电路中加入 限流电阻的原理。 3、实验设备:PC机一台;PROTEUS仿真软件一套; 实验箱一台;SP下载器一台。 4、实验内容:P1口作为输出口,控制8位发光二极管作 流水灯显示。 5、硬件电路; 6、实验程序; 7、实验现象: 烧录程序后上电运行后,第一个LED灯 点亮,然后下一个LED灯点亮,循环往复,构成一个流 水灯。 8、实验心得体会; 9、思考题

P1口流水灯实验 实验报告包括: 1、实验名称:P1口流水灯实验 2、实验目的:(1)了解I/O口的电气特性和驱动能力; (2)掌握程序编写的方法;(3)了解LED电路中加入 限流电阻的原理。 3、实验设备:PC机一台;PROTEUS仿真软件一套; 实验箱一台;ISP下载器一台。 4、实验内容:P1口作为输出口,控制8位发光二极管作 流水灯显示。 5、硬件电路; 6、实验程序; 7、实验现象:烧录程序后上电运行后,第一个 LED灯 点亮,然后下一个LED灯点亮,循环往复,构成一个流 水灯。 8、实验心得体会; 9、思考题

硬件电路:P1口流水灯电路 U1 39 XTAL1 X1 PD.DADO 33 90.1A01 R2 37 18 P0.2/AD2 XTAL2 P0.3/AD3 35 20 PD.4/AD4 D PO.S/AD5 PD.6/AD6 33 20 RST P0.7/AD7 32 R4 p20A8 21 P2.1/A9 P2.2IA10 29 PSEN P2.3A11 30 P2.4iA12 6 BUTTON 31 P2.5A13 P2.6A14 27 P2.7A15 28 R1 2 P1.0 P3.0/RXD 10 1 p12 P3.1TXD p1.3 P3.21NT0 P1.4 P3.3/INT1 13 14 P15 P3.4T0 P3.5/T1 15 p1.6 P17 P3.6i P1.7 P3.7/RD > AT89C51 实验接线:P1.0~P1.7接发光二极管显示单元D1~D8

硬件电路:P1口流水灯电路 实验接线:P1.0~P1.7 接发光二极管显示单元D1~D8

P1口亮灯电路及其Proteus仿真 亮灯电路的硬件电路图如图所示,这里采用P1 口做LED发光二极管的驱动端口。发管二极管具有单 向导电性,只需要通过5mA左右的电流即可发光,电 流越大,亮度越强,一般控制其电流在520mA,因 此在发光二极管电路中串联一个电阻,用来限制通过 发二极管的电流。 负极的一正极 如图,当发光二极管发光时,其两端的导通压降 约为1.7V,发光二极管通过2202的限流电阻与+5V电 源相连,则其电流为(5一1.7)220=15mA。31脚EA 端与+5V相连,以保证单片机上电复位后从内部程序 存储器开始运行程序

P1口亮灯电路及其Proteus仿真 亮灯电路的硬件电路图如图所示,这里采用P1 口做LED发光二极管的驱动端口。发管二极管具有单 向导电性,只需要通过5mA左右的电流即可发光,电 流越大,亮度越强,一般控制其电流在5~20mA,因 此在发光二极管电路中串联一个电阻,用来限制通过 发二极管的电流。 如图,当发光二极管发光时,其两端的导通压降 约为1.7V,发光二极管通过220Ω的限流电阻与+5V电 源相连,则其电流为(5-1.7)/220=15mA。31脚 端与+5V相连,以保证单片机上电复位后从内部程序 存储器开始运行程序。 EA

P1口流水灯实验程序: #include #include /延时程序 void delay(unsigned int count) { unsigned char i; while(count-!=0)/*count=count-1若不等于0,就执 行循环*/ for(i=0;i<120;计+);/i=i计1加到120为止

P1口流水灯实验程序: #include #include //延时程序 void delay(unsigned int count) { unsigned char i; while(count- != 0) /*count=count-1若不等于0,就执 行循环*/ for(i=0; i<120; i++);//i=i+1加到120为止 }

P1口流水灯实验程序: void mainO { unsigned char val Oxfe; while(1) P1 val; val=_crol_(val,1); 1/循环左移1位 delay(500); /延时500ms }

P1口流水灯实验程序: void main() { unsigned char val = 0xfe; while(1) { P1 = val; val = _crol_(val, 1); //循环左移1位 delay(500); //延时500ms } }

思考题:在实验电路不变的情况下,通过修改实验程序, 使8个发光二极管呈现不同的灯型。 ①val=_crol(wal,1); 变量=crol(变量名,移动位数); val cror_(val,1); 变量=cror(变量名,移动位数); ②若将程序主函数改为如下内容,则8位发光二极管显示效果如何? void main() 答:8位发光二极管D1~D8全亮(同时 while(1) 点亮)0.5秒,全灭(同时熄灭)0.5秒, 循环不止。 P1=0x00; delay(500); P1=0xff; delay(500);

思考题:在实验电路不变的情况下,通过修改实验程序, 使8个发光二极管呈现不同的灯型。 ① val = _crol_(val, 1); val = _cror_(val, 1); 变量= _crol_(变量名, 移动位数); 变量= _cror_(变量名, 移动位数); ②若将程序主函数改为如下内容,则8位发光二极管显示效果如何? void main( ) { while(1) { P1 = 0x00; delay(500); P1 = 0xff; delay(500); } } 答:8位发光二极管D1~D8全亮(同时 点亮)0.5秒,全灭(同时熄灭)0.5秒, 循环不止

已到末页,全文结束
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档