实验二 基于Proteus的跑马灯电路
一、 实验目的
1、掌握Proteus系统的使用,能够建立、保存、打开和修改文件。 2、掌握使用各种元器件绘制电路原理图的方法,实现电路的仿真。
二、 实验内容
跑马灯电路,即完成P1口上的八个发光二极管循环闪亮。 三、 实验步骤
1、进入Keil C51软件的操作环境,编辑源程序并对源文件进行编译,在Keil中编辑汇编语言程序如下: ORG 0000H ;给定起始地址为0000H
AJMP MAIN ;绝对转移至MAIN ORG 30H ;程序源地址为30H MAIN: MOV R2,#16 ;循环次数送R2
MOV A,#0FEH ;立即数0FEH送累加器 LOOP: MOV P1,A ;累加器A中的值送P1口 LCALL D1 ;对D1进行长调用 RL A ;A的值循环左移一位 DJNZ R2,LOOP ;R2-1不为零时转LOOP D1: MOV R4,#10 ;立即数10送R4 D2: MOV R5,#100 ;立即数100送R5 D3: MOV R6,#249 ;立即数249送R6 DJNZ R6,$ ;R6-1不为零时暂停 DJNZ R5,D3 ;R5-1不为零时转D3 DJNZ R4,D2 ;R4-1不为零时转D2 RET END
2、 进入Proteus系统,画出实验电路图
(1) 元件拾取。在桌面上选择【开始】→【程序】→“Proteus 7 Professional” ISIS 7 Professional的蓝色图标打开应用程序,进入编辑界面,如图2-1,鼠标左键单击界面左侧预览窗口下面的“P”按钮,弹出“元件拾取”对话框,如图2-2所示:
图2-1 ISIS编辑界面 图2-2元件拾取对话框
在“元件拾取”对话框的Kewords处可以输入所要用到的原件英文全称或部分。此次实验中需要用到的元件清单: 元件名 类 数量 3WATT10K Resistors 1 At89C51 Microprocessor ICs 1 BUTTON Switch&Relays 1 CAP Capacitors 2 CAP-ELEC Capacitors 1 CRYSTAL Miscellaneous 1 LED-BIBY Optoelectronics 8 RESPACK-8 Resistors 1 拾取元件后如图2-3所示,电源与接地器件选择左面工具条上的按钮界面,如图2-4所示:
图2-3 拾取元件结果 图2-4 电源、接地选择 (2)、画出电路,如图2-5所示:
,弹出
图2-5 跑马灯电路原理图
3、 对Proteus 系统和Keil C51系统进行联机设置。在Keil中创建HEX文件,点击按钮
,弹出界面,点击Output选项卡,将Create HEX Fi:复选框选中,
如图2-6所示:
图2-6 创建HEX文件
4、 在Keil C51系统中运行、调试程序,在Proteus系统中检查输出结果。双击画出的原理图中的At89C51,在弹出的对话框中选入在第3步创建的sy2.hex,如图2-7所示:
图2-7联机设置选择HEX文件
5、在点击左下角的按钮对其进行仿真效果检测,看运行结果如
图2-8所示,点击“暂停”后选择工具栏Debug→8051 CPU?可以查看各寄存器,存储器的值,如图2-9所示:
图2-8 电路运行结果显示
图2-9 查看各寄存器、存储器内的值
备注:实验运行时,灯八个发光二极管从左至右循环闪亮,十六次以后停止,当把程序中指令“DJNZ R2,LOOP”改为“AJMP LOOP”后,电路就会一直运行下去,即八个发光二极管一直循环闪亮下去。
相关推荐: