单片机接口技术与实验(附原理图及源程序)_第1页
单片机接口技术与实验(附原理图及源程序)_第2页
单片机接口技术与实验(附原理图及源程序)_第3页
单片机接口技术与实验(附原理图及源程序)_第4页
单片机接口技术与实验(附原理图及源程序)_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 单片机接口技术与实验 姓名:学号:年级: 专业:电子信息科学与技术 实验二 并行口输入输出实验循环彩灯控制一、实验功能(1)P1 口接8 个开关,P0 口接8 个灯,每个开关对应一个灯,实时读取开关状态,开关闭合时,灯亮。开关断开时,灯灭。二、实验原理图注意:因为P0口作为输出口时必须接上拉电阻,为简化起见,此处接到P2口上三、实验程序org 0000h ljmp main org 0100hmain: mov p1,#0ffh mov p2,p1 ajmp main end(2)一、实验功能用5 个开关K0K4,控制P0 口所接8 个灯的循环,各开关的功能要求如下:(1)K1K2 分别选择

2、灯的四种闪动方式;(2)K3 用于控制灯的循环方式(顺时针或逆时针);(3)K4 用于选择灯的两种循环速度(4)K0 用于引发外部中断,在外部中断子程序中,读取通过K1-K4 所设定的循环彩灯的工作方式,并按所设定的工作方式控制彩灯运行。二、实验原理图三、实验流程图中断程序把P1.2的状态存入位地址50H把P1.3的状态存入位地址51HP1.0是否为1P1.1是否为1MOV A,#80HP1.1是否为1MOV A,#0C0HMOV A,#0AAHMOV A,#0E0H开始50H是否为1调用延时程序DELAY1调用延时程序DELAY251H是否为1灯循环右移子程序:LOOP1灯循环左移子程序:L

3、OOP2结束MOV P1,#0FFH四、实验程序 ORG 0000H LJMP MAIN ORG 0003H LJMP INT0PR0 ORG 0100HMAIN: MOV P1,#0FFH MOV SP,#60H SETB EX0 SETB IT0 SETB EA MOV C,P1.2 MOV 50H,C MOV C,P1.3 MOV 51H,C JB P1.0,NEXT1 JNB P1.0,NEXT2NEXT1: JB P1.1,CIRCLE1 JNB P1.1,CIRCLE2NEXT2: JB P1.1,CIRCLE3 JNB P1.1,CIRCLE4CIRCLE1: MOV A,#80

4、H LJMP STEP0CIRCLE2: MOV A,#0C0H LJMP STEP0CIRCLE3: MOV A,#0AAH LJMP STEP0CIRCLE4: MOV A,#0E0H LJMP STEP0STEP0: MOV P2,A JB 50H,S1 JNB 50H,S2STEP1: JB 51H,LOOP1 JNB 51H,LOOP2S1: LCALL DELAY1 LJMP STEP1S2: LCALL DELAY2 LJMP STEP1DELAY1: MOV R7,#100D1: MOV R6,#100D2: MOV R5,#10D3: DJNZ R5,D3 DJNZ R6,D

5、2 DJNZ R7,D1 RETDELAY2: MOV R7,#200D4: MOV R6,#100D5: MOV R5,#10D6: DJNZ R5,D6 DJNZ R6,D5 DJNZ R7,D4 RET LOOP1: RL A LJMP STEP0LOOP2: RR A LJMP STEP0 ORG 0400HINT0PR0: MOV C,P1.2 MOV 50H,C MOV C,P1.3 MOV 51H,C JB P1.0,WORK1 JNB P1.1,WORK2WORK1: JB P1.1,L1 JNB P1.1,L2WORK2: JB P1.1,L3 JNB P1.1,L4L1:

6、MOV A,#80H LJMP PASSL2: MOV A,#0C0H LJMP PASSL3: MOV A,#0AAH LJMP PASSL4: MOV A,#0E0H LJMP PASSPASS: RETI END实验三 七段 LED 数码管控制实验一、实验功能1实验采用4 位一体的数码管,用P1 口通过驱动芯片控制段码输出信号线,P0 口通过驱动芯片控制位选线:(1)当开关K0 接低电平时,第一位依次显示0,然后第二位、第三位、第四位,再循环回第一位。(2)当开关K0 接高电平时,四位动态显示“HELP”二、实验原理图三、实验流程图开始P1.0是否为1调用延时子程序delay1按位循环显

7、示0-F调用位显示子程序LOOP1左移一位P2判断是否显示一遍显示HELP子程序位显示子程序LOOP1P1.0是否为1调用延时子程序delay1依次查表,付给P0显示数字判断数是否显示一遍位显示子程序HELPP1.0是否为0调用延时子程序delay1返回显示HELP 四、实验程序org 0000h ljmp main org 0100h main: mov p2,#0ffh setb p1.0 mov dptr,#tab mov r0,#0 mov a,#00h loop1: mov r0,#00h jnb p1.0,h sjmp loop2 h: mov p2,#0feh lcall lig

8、ht mov p2,#0fdh lcall light mov p2,#0fbh lcall light mov p2,#11101111b lcall light sjmp loop1 light: jb p1.0,loop2 mov a,r0 movc a,a+dptr inc r0 mov p0,a lcall delay1 cjne r0,#16,light mov r0,#0 ret loop2: mov p2,#0feh mov p0,#73h lcall delay1 jnb p1.0,loop1 mov p2,#0fdh mov p0,#38h lcall delay1 jnb

9、 p1.0,loop1 mov p2,#0fbh mov p0,#79h lcall delay1 jnb p1.0,loop1 mov p2,#11101111b mov p0,#76h lcall delay1 jnb p1.0,loop1 sjmp loop1 tab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71h delay1: MOV R3,#10D2: MOV R2,#100D1: MOV R1,#100 D0: DJNZ R1,D0 DJNZ R2,D1 DJNZ R3,D2RET end实验

10、四 定时器中断实验一、实验功能1用 T0 定时器实现1 秒定时,控制一个LED 亮1 秒,灭1 秒,并不断循环。二、实验原理图三、实验流程图开始置TR0为1置TR0为0置P1.0为1置P2.7为0是否循环100次是否循环100次判断四位是否显示一遍定时程序 TR0=1设初值:MOV TH0,#0B8HMOV TL0,#00H计时四、实验程序 org 0000h ljmp main org 000bh ljmp t0pr0 org 0100h main: mov sp,#60h mov tmod,#01h mov th0,#0b8h mov tl0,#00h mov r0,#100 setb e

11、a setb et0 setb tr0 loop: sjmp $ ljmp loop t0pr0: djnz r0,w cpl p2.7 mov r0,#100 w: mov th0,#0b8h mov tl0,#00h reti end 2.一、实验功能实现一个4 位秒表:(1)用开关K0 模拟秒表的启动、停止、清零功能,按一次启动计时,按一次停止,再按一次清零,在三个状态中循环。(2)最低位按1/10 秒计数,依次计数单位为1/10 秒,1 秒,1 分(3) 要求K0 使用外部中断,优先级高于T0 的优先级二、实验原理图三、实验流程图开各种中断开始百分之一毫秒显示:R2十分之一毫秒显示:R

12、3毫秒十位显示:R5毫秒个位显示:R4外部中断INC R0R0是否等于2是否循环100次判断四位是否显示一遍TR0置1TR0置0设初值R0是否等于1MOVTH0,#0B8HMOV TL0,#00H设R1=0INC R2INC R3INC R4INC R5设R2=0INC R1R1是否等于10是否循环100次判断四位是否显示一遍R2是否等于10是否循环100次判断四位是否显示一遍R3是否等于10是否循环100次判断四位是否显示一遍R5是否等于10是否循环100次判断四位是否显示一遍R4是否等于20是否循环100次判断四位是否显示一遍设R3=0设R4=10设R5=0四、实验程序 org 0000h

13、 ljmp main org 0003h ljmp intx0 org 000bh ljmp t0pr0 org 0100h main: mov tmod,#01h mov th0,#0b8h mov tl0,#00h mov p2,#0ffh mov r0,#1 mov r1,#0 mov r2,#0 mov r3,#0 mov r4,#0 mov r5,#0 mov a,#0 mov dptr,#tab setb ea setb ex0 setb it0 setb tr0 setb px0 setb et0 k: lcall aaa jmp k aaa: mov p2,#0feh mov

14、a,r2 lcall loop lcall mm mov p2,#0fdh mov a,r3 lcall loop lcall mm mov p2,#0fbh mov a,r4 lcall loop lcall mm mov p2,#11101111b mov a,r5 lcall loop lcall mm ret mm: djnz acc,$ djnz acc,$ ret loop: movc a,a+dptr mov p0,a ret tab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh intx0: inc r0 cjne r0,#1,st s

15、etb tr0 reti st: cjne r0,#2,w clr tr0 reti w: mov a,#0 mov r0,a mov r1,a mov r2,a mov r3,a mov r4,a mov r5,a reti t0pr0: mov th0,#0b8h mov tl0,#00h inc r1 cjne r1,#10,exit mov r1,#0 inc r2 cjne r2,#10,exit mov r2,#0 inc r3 cjne r3,#10,exit mov r3,#0 inc r4 cjne r4,#6,exit mov r4,#0 inc r5 cjne r5,#1

16、0,exit mov r5,#0 exit: reti end实验五 脉冲宽度与周期测量实验一、实验功能同时测量脉冲宽度和周期,由开关K0 选择显示脉冲宽度还是显示脉冲周期。二、实验原理图三、实验流程图开始设置各种初值P1.0是否为1P3.2是否为0P3.2是否为1P3.2是否为0置TR0为1置TR0为0P3.2是否为1P3.2是否为0置TR0为1置TR0为0P3.2是否为0P3.2是否为0P3.2是否为0MOV A,TL0 MOV R2, A SUBB A,#48HMOV A,R0MOV B,#2 MOV B,#10 DIV AB DIV ABMOV B,#10 MOV R3, B DIV

17、AB ADD A,#10MOV R1, B MOV R4, A百分之一毫秒显示:R1十分之一毫秒显示:R2毫秒十位显示:R4毫秒个位显示:R3T0中断INC R0四、实验程序 ORG 0000H limp main org 000bh ljmp t org 0100h main: mov tmod,#oah mov th0,#48h mov tl0,#48h setb ea setb et0 mov dptr,#tab mov a,#0 mov r0,#0 mov r1,#0 mov r2,#0 mov r3,#0 mov r4,#0 jb p1.0,b0 loop0: jb p3.2,loo

18、p0 setb tr0 loop1: jnb p3.2,loop1 loop2: jb p3.2,loop2 loop3: jnb p3.2,loop3 loop4: jb p3.2,loop4 clr tr0 ljmp loop b0: jb p3.2,b0 setb tr0 b1: inb p3.2,b1 b2: jb p3.2,b2 clr tr0 loop: mov a,tl0 subb a,#48h mov b,#2 div ab mov r1,b mov r2,a mov a,r0 mov b,#10 div ab mov r3,b add a,#10 mov r4,a mov p2,#11111110b mov a,r1 lcall www lcall z mov p2,#11111101b mov a,r2 lcall www lcall z mov p2,#11111011b mov a,r3 lcall www lcall z mov p2,#11110111b mov a,r4 lcall www lcall z ljmp main www: movc a,a+dptr mov p0,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论