收藏 分销(赏)

单片机实验 IO口的输入输出实验.doc

上传人:pc****0 文档编号:7728080 上传时间:2025-01-14 格式:DOC 页数:5 大小:47.50KB
下载 相关 举报
单片机实验 IO口的输入输出实验.doc_第1页
第1页 / 共5页
单片机实验 IO口的输入输出实验.doc_第2页
第2页 / 共5页
单片机实验 IO口的输入输出实验.doc_第3页
第3页 / 共5页
单片机实验 IO口的输入输出实验.doc_第4页
第4页 / 共5页
单片机实验 IO口的输入输出实验.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、 实验二 I/O口输入、输出实验一、实验目的1. 学习I/O口的使用方法。2. 学习延时子程序、查表程序的编写和使用。二、参考程序框图开始读入P1口值置计数初值=0P1口置1将读入的值输出到P0P1=0FFH?YN输入值右移1位到CyCy=0?N计数值+1Y以计数值查段码表段码输出到P2开始延时设置初始值数据输出左移一位 三、程序设计1、P0口循环点亮程序 ORG 0030HSTART : MOV P2,#00H; /消影 MOV A ,#01H; /LOOP : MOV P2 ,A; /点亮一个led灯 ACALL DELAY; /延时500ms RL A; /左移一位 AJMP LOOP;

2、 /跳转循环DELAY : MOV R7,#10; /延时程序DE1 : MOV R6,#200;DE2 : MOV R5,#123; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET END 2、I/O口输入输出(方法一) ORG 0000H; START : MOV P2,#00H; /初始化 MOV P0,#00H; MOV P1,#0FFH; /p1口初始化给ffh值 MOV DPTR,#TABLE; /表地址存入DPTR MOV 50H,#0FEH; /比较初值载入地址50hL0 :MOV A,P1; /按键消抖 CJNE A,#0FFH,L1; AJ

3、MP L0;L1 :MOV A,P1; CJNE A,#0FFH,LL1; AJMP L0;LL1 :CJNE A,50H,LL2; /是否与地址50h中数据相等 MOV P0,A; /相等 输出对应led灯 MOV A,#00H; MOVC A,A+DPTR; MOV P2,A; /输出表格数据到数码管 LCALL DELAY; /延时 LJMP START; /返回程序开头LL2 :XCH A,50H; /交换数据 RL A; /左移 XCH A,50H; /再次交换,此时地址50h中数据左移一位 INC DPTR; /表格数据地址加一 LJMP LL1; /返回 继续比较DELAY :

4、MOV R7,#01H; /延时程序DE1 : MOV R6,#28H;DE2 : MOV R5,#5AH; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET TABLE : ;/DB 0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H; DB 06H,5BH,4FH,66H,6DH,7DH,07H,7FH; /表格数据 END 程序二(方法二)ORG 0000H MOV P2,#00H; /I./O口初始化 MOV P1,#0FFH; /P1口赋FFH初值 MOV P0,#00H; START : MOV P2,#00H; /P2清0; M

5、OV P0,#00H; /P0清0; MOV R1 ,P1; MOV A,R1; /读P1口 CJNE A,#0FFH,L1; /是否有数据输入 AJMP START; /无输入则跳转,继续查询 LCALL DELAY; L1 : MOV R1,P1; /消除按键抖动 MOV A,R1; CJNE A, #0FFH,LL1; AJMP START;LL1 : CJNE A,#0FEH,LL2; /是否按键1输入 MOV P2,#06H; /是则P2输出相应的按键号码 CPL A; /A取反 MOV P0,A; /输出到P0口 LCALL DELAY; /延迟 AJMP LP; /跳转到LPLL

6、2 : CJNE A,#0FDH,LL3; /是否按键2输入 MOV P2,#5BH; /以下同上 CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL3 : CJNE A,#0FBH,LL4; /判断按键3是否按下 MOV P2,#4FH; CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL4 : CJNE A,#0F7H,LL5; /判断按键4是否按下 MOV P2,#66H; CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL5 : CJNE A,#0EFH,LL6; /判断按键5是否按下 MOV P

7、2,#6DH; CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL6 : CJNE A,#0DFH,LL7; /判断按键6是否按下 MOV P2,#7DH; CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL7 : CJNE A,#0BFH,LL8; /判断按键7是否按下 MOV P2,#07H; CPL A; MOV P0,A; LCALL DELAY; AJMP LP;LL8 : CJNE A,#7FH,LP; /判断按键8是否按下 MOV P2,#7FH; CPL A; MOV P0,A; LCALL DELAY;LP : AJ

8、MP START; /跳转回程序开头DELAY : MOV R7,#01H; /延时程序DE1 : MOV R6,#28H;DE2 : MOV R5,#5AH; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET END 四、思考题 1、LED循环方向更改:RL A; 改成 RR A; 1S的延时程序: DELAY : MOV R7,#20; /延时程序DE1 : MOV R6,#200;DE2 : MOV R5,#123; DJNZ R5,$; DJNZ R6,DE2; DJNZ R7,DE1; RET2、提高电阻阻值3、一般为5V或者3.3V。 单片机上电时I/O口出于高电平,则I/O口的输出电压要经过PNP三极管放大,再对继电器控制。

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服