单片机实验报告

2018-12-17 10:53

第三单元Proteus 系统仿真实验

实验一 基本并行口I/O口实验 自我完成实验

1、实验要求

当按键 SW1 按下之后,D1-D8 轮流点亮,点亮时间为 100ms,当按键停下后,停止轮换, 再次按下后继续轮换。

2、编程思路

①进行初始化工作,包括设置堆栈指针 SP,将 P2 口所有位设置为 1,使 P2 口所接发光二

极管全部熄灭。将显示缓冲单元(设为 20H 单元)初始化为 FEH。

② 从 P1 口读数据,查看 P1.0 位,如果 P1.0 位为 0,则执行如下循环:将显示缓冲单元

的值送给 P2 口,调用 100ms 延时程序,将显示缓冲单元的值循环左移 1 位,再送回显示缓

冲单元。如果 P1.0 位不为 0 则不执行上述循环。 ③重复上面的操作②

3、实验步骤

① 根据上述实验内容,参考 1.2.2,在 Proteus 环境下建立图 3.5 所示原理图,并将其保 存为 basicIO_self.DSN 文件。

② 根据(2)和(3)编写控制源程序,将其保存为 basicIO_self.asm。 ③ 将源程序添加到 U1 中,并构造(build)该程序。

④ 执行仿真过程观察 D1-D8 的指示,查看程序功能是否正确。 ⑤ 修改延时程序延时参数,重新执行③和④。

4、源程序 ORG 0000H AJMP MAIN ORG 0030H MAIN: MOV SP,#60H MOV P2,#0FFH MOV A,#0FEH MOV 20H,A;缓冲单元 LOOP: JNB P1.0,LOOP1; ;如果P1.0=0,跳转 SJMP LOOP ;否则循环不断检测 LOOP1:

; MOV P2,20H ;将缓冲单元内的值给P2口 LCALL DELAY100MS ;延时100ms MOV A,20H RL A ;左移一位 MOV 20H,A

JB P1.0,LOOP;如果P1.0=1,跳转到LOOP处 LJMP LOOP1;否则循环

DELAY100MS:MOV R7,#200 ;1us DL:MOV R6,#248 ;1us DJNZ R6,$ ;248*2=496us NOP ;1us DJNZ R7,DL ;2us RET ;(496+1+1+2)*200+1=100.001ms END

5、电路图

6、仿真结果

当按键 SW1 按下之后,D1-D8 轮流点亮,点亮时间为 100ms,当按键停下后,停止轮换, 再次按下后继续轮换。

实验二 扩展并行I/O口实验 自我完成实验

1、实验要求

仿真实现交通信号灯控制功能。 控制顺序为:

① 南北绿灯亮,同时东西红灯亮 10s; ② 南北黄灯亮,同时东西红灯亮 2s; ③ 南北红灯亮,同时东西绿灯亮 10s; ④ 东西黄灯亮,同时南北红灯亮 2s; ⑤ 重复①~④。

2、编程思路

①进行初始化工作,包括设置堆栈指针 SP,将两个 373 的输出口所有位均设置为 1,使所有发光二极管全部熄灭。 ②分析两个 373 的地址:

假定所有无关地址均定义为 1,那么 U4 的锁存地址为:#0FE00H,U5 的锁存地址为:#0FD00H。

③分析 4 个状态下两个 373 的输出数据值:

假定“南北绿灯亮,同时东西红灯亮”为状态 1,即:Stat1;“南北黄灯亮,同时东西红灯亮”为状态 2,即:Stat2;

“南北红灯亮,同时东西绿灯亮”为状态 3,即:Stat3; “东西黄灯亮,同时南北红灯亮”为状态 4,即:Stat4。

3、实验步骤

① 根据上述实验内容,参考 1.2.2,在 Proteus 环境下建立图 3.7 所示原理图,并将其保

存为 expandIO_self.DSN 文件。

② 根据(2)和(3)编写控制源程序,将其保存为 expandIO_self.asm。 ③ 将源程序添加到 U1 中,并构造(build)该程序。

④ 执行仿真过程观察各个方向的交通信号灯指示,查看程序功能是否正确。

4、源程序 ORG 0000H AJMP MAIN ORG 0030H MAIN: MOV SP,#60H MOV A,#0FFH MOV DPTR,#0FE00H MOVX @DPTR,A MOV DPTR,#0FD00H MOVX @DPTR,A STAT1: MOV A,#0F3H MOV DPTR,#0FE00H MOVX @DPTR,A MOV A,#0CH MOV DPTR,#0FD00H MOVX @DPTR,A LCALL DELAY10S STAT2: MOV A,#0C3H MOV DPTR,#0FE00H MOVX @DPTR,A MOV A,#0FH MOV DPTR,#0FD00H MOVX @DPTR,A LCALL DELAY2S STAT3: MOV A,#0FCH MOV DPTR,#0FE00H MOVX @DPTR,A MOV A,#03H MOV DPTR,#0FD00H MOVX @DPTR,A LCALL DELAY10S STAT4:

MOV A,#3CH MOV DPTR,#0FE00H MOVX @DPTR,A MOV A,#0FH MOV DPTR,#0FD00H MOVX @DPTR,A LCALL DELAY2S LJMP STAT1

DELAY2S:MOV R7,#20 DL2:MOV R6,#200 DL1:MOV R5,#250 DJNZ R5,$ DJNZ R6,DL1 DJNZ R7,DL2 RET

DELAY10S:MOV R7,#100 DL3:MOV R6,#200 DL4:MOV R5,#250 DJNZ R5,$ DJNZ R6,DL4 DJNZ R7,DL3 RET

END

5、电路图


单片机实验报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:安全标准化 现场勘察及整改方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: