单片机讲义实验3
设置存储区后,可运行程序
(左图标)或停
止程序(右图标);如果希望单步执行(即一条一条
的执行指令,以便调试程序)可点击 图标,每点击
一次黄箭头会向下移动,指向下一条指令。
观察程序的运行结果: 在单步调试时,每执行一条 指令,都可在屏幕左上方的寄存器区和右下方的存储 区观察运行的状态。程序存储器中表示的是程序汇编 后的二进制代码,内外数据存储器中表示的运行中数 据结果的变化。观察时可在相应存储区的地址栏打入 地址即可,如想看内存20H中的内容,只需在相应存储 区的地址栏打入 D:0020H。
clr p1.6 ;点亮灯p1.6
lcall delay
clr p1.7 ;点亮灯p1.7
lcall delay
AJMP Lop2 ; 重新运行
delay: mov r5,#20 ;延时子程序
d1: mov r6,#40
d2: mov r7,#248
djnz r7,$
djnz r6,d2
djnz r5,d1
输入C语言或汇编语言程序, 输入结束后点击文件 中的保存,输入程序名(例如S1.C或S1.ASM)并选择 存入的盘(如D:)点击保存。
输入的程序名一般不超过6个字母数字,以字母打头, C语言要加尾缀 .C,汇编语言要加尾缀:.ASM。
2、实验3.1:用单片机仿真仪实现8个发光二极管轮 流闪烁。 (1)硬件连接:用8PIN线连接P1口和8 个发光二极管。
精品jing
单片机实验3
二、实验步骤和内容
1、用XL1000或XL2000综合仿真仪进行在线仿真 步骤如下:
(1)使用USB线和串口线,将XL1000综合仿真仪 与微型计算机串行口COM Nhomakorabea连接起来;
(2)在XL1000综合仿真仪上,将JP13和JP14两个 232/USB通信选择方式端口的跳线帽跳至232的方 式,
ret
流水灯控制程序(C语言实现),定时计数器加软件定时1S。
#include <reg51.h> #include <stdio.h> void delays() //1S 延时 { unsigned char i; for(i=0;i<0x14;i++) //20次 { TH1=0x3c;//延时50ms TL1=0xb0; TR1=1; while(!TF1); TF1=0; } }
(6)程序编写后, 可进行系统的仿真; 在仿真前,需对目标1 的属性进行修改; 如右图,点击P工程 下拉菜单中的”目 标’目标1’属性”;
(7)单击”目标”,输入仿真器的频率12(MHz);
(8)选择”输出”菜单中的”生成HEX文件”, 以便汇编后产生HEX代码,供编程器使用;
(9)在”调试”菜单中,选择如下箭 头所指3项功能,并”点击设置”,
(12)退出仿真时,按下仿真仪上的复位键就会自动退 到编辑模式下,修改完毕程序并编译后,再按下”调试” 即可进入仿真模式;
(13)依次点击屏幕上方左下角的编译和建造目标图
标
对文件进行编译和链接,观察左下角的调
试程序信息显示,如有错可根据该栏提示的信息进行
修改,修改后要重新保存和编译,直到无错误提示,如
lcall delay ;调延时子程序
clr p1.1
;点亮灯p1.1
lcall delay
clr p1.2 ;点亮灯p1.2
lcall delay
clr p1.3 ;点亮灯p1.3
lcall delay
clr p1.4 ;点亮灯p1.4
lcall delay
clr p1.5
;点亮灯p1.5
lcall delay
void main( ) { unsigned char i,w;
TMOD=0x10; while(1) { w=0x01; for(i=0;i<8;i++) { P1=~w; w<<=1; delays(); } } }
(5)点击(图标)目标1前的“+”号,出现(图标) 源程序组1,选中并点右键,选“文件增加到源程序组 1”,选择文件类型,再选要输入的程序名.C或ASM, 点ADD(加入),点确定。 此时点击源程序组1可以 看到要输入的程序。
下图所示。
(14)点击调试图标 ,进入程序调试画面,此时 黄箭头所指是将要执行的指令。
(15)对汇编语言程序:调试界面分为4部分:
1)左上角为REG和系统显示区;
2)左下角为调试程序时的信息显示;
3)右上角为程序编写和修改区;
4)右下角为CODE(程序存储器)和DATA/XDATA (内部/外部数据存储器)的显示区。
12MHZ
C1
XTAL1
XTAL2 P1.0 C2
R D1
…
K +5V
R1 C3
P1.7 RST
89C51
VCC
…
当P1给低电平时 灯亮,给高电平时 灯灭。
(2)8路跑马灯参考程序
org 0000h
ajmp lop2
org 0050h
Lop2: mov p1,#0ffh ;关闭所有灯
clr p1.0 ;点亮灯p1.0
出现右图后按箭头 所指进行设置,注 意你使用的是那个 串口(Com1还是其它 的,可以看设备 管理器);
(10)全部确定后,对程序进行编译和链接,并生成相 应的HEX文件后,可进行调试(红色的D),
如出现错误报告,如要求连上仿真 仪时,请检查有无连接USB线和串 口线,并按下仿真仪上的复位键;
(11)进入调试窗口,连接上相关的连接线,运行程序, 即可观查仿真结果;
如果未出现存储区,设置方式如下:点击 V视图 M存储器窗口,右下角会出现4个存储区:存储器#1#4。可以根据需要设置。点击存储器1#,在上面地址 栏中输入C:0000H,此时存储器1#被设计为程序存储 器,地址从0000H开始。点击存储器2#/3#,在上面 地址栏中输入D/X:0000H,此时存储器2#/3#被设计 为内部/外部数据存储器,地址从0000H开始。
(3)将JP17的开关压下,选择仿真模式;
2、kerl-uvision集成调试软件的操作
操作步骤:(1)双击桌面上的UV2快捷图 ,启动 软件。
(2)点击P工程 N新建工程 输入文件名(如 A1)并点击保存。
出现CPU屏幕,选Atmel AT89C51 点确定。屏幕左上 方出现图标目标1。
(4)点击文件 新建文件 出现汇编语言输入区。