单片机原理和开发应用 第三讲 TD-Ⅱ型单片学习开发机介绍

🏠 首页 《无线电》杂志 1990年 🔗 第10期 🔗 第28页 分类:无线电技术自学经验交流 🔗 刘尚诚 🔗, 杨晓希 🔗

为了适应单片机学习和开发的需要,我们推荐开发功能较强的TD-Ⅱ(无线电爱好者天地-Ⅱ)型单片学习开发机。该机具有24键键盘和6只LED数码管作为人机对话的工具,便于操作者使用;具有单步、断点、块移动、串查找、插入和删除等完整监控功能,便于程序的修改和调试;该机还具有由8只LED发光二极管组成的口显示电路,可显示8031单片机P1口或P3口的状态,也可以在开发工作中模拟外部设备使用;另外,TD-Ⅱ型机还具有EPROM编程、磁带转储及EPROM仿真电路和功能,使得该机有很强的向外开发能力,很适合开发以单片机最小系统为核心的应用系统。

TD-Ⅱ型机的电路原理简图如图1所示,其元器件安装及键盘配置请参见图2。限于篇辐,这里就不介绍电路工作原理了,有兴趣的读者不妨先钻研一下硬件电路工作原理,待学习了单片机原理后再结合该机的监控程序进行分析,就会对该机的软、硬件工作原理有一个全面深入的了解。下面我们介绍TD-Ⅱ型机的使用方法。

图1
图1 🔍原图 (2616×1744)

一、程序的键入、修改、调试及运行

TD-Ⅱ型机通电后自动复位,进入监控状态,此时显示“-”,等待接受键盘命令。

1.MON(返回监控)键:按下此键将中止运行中的用户程序,清除显示,返回监控状态。

2.MEN(存储器读写)键:输入4位(外部RAM)或2位(片内RAM)地址值,按下此键,机器便将该地址中的数据显示出来。如再键入2位数,就可以把该地址中的内容改为新键入的数据。

3.REG(8031片内寄存器读写)键:键入1位与8031片内寄存器相对应的数字代码(0H~DH),按下此键后可以显示和修改该寄存器中的内容。0H~DH分别对应R0~R7、SP、B、PSW、A、PC及DPTR等寄存器,见图2。

图2
图2 🔍原图 (1792×902)

4.NEXT或LAST(下移或上移一个地址)键:在存储器读写或寄存器读写状态下,按下NEXT(或LAST)键可以读写下面(或上面)一个地址的存储器或寄存器内容。

5.STEP(单步执行程序)键:键入4位起始地址后按下此键,则8031只执行一条指令,并显示下1条指令的地址和内容。如果没有输入起始地址而按下此键,则以当前PC寄存器中的内容为起始地址执行1条指令并显示下条指令的地址和内容。这时可用MEN键和REG键进行检查。

6.EXEC(连续执行程序)键:输入4位起始地址(如果没有输入地址,则以当前PC寄存器中的内容为起始地址),按下此键便可以连续执行用户程序。用MON键可以中止程序的执行。

7.MOV(数据块移动)键:把要移动的数据块的首地址写在3830H、3831H地址单元中,把数据块的末地址写入3832H、3833H地址单元中,在3834H、3835H中写入新地段的首地址。然后同时按下SFT和MOV键(记作SFT+MOV键),此时机器便执行数据块移动操作,当显示“good”时,表明操作完成。

8.INS和DEL(插入和删除1个字节内容)键:在存储器读写状态下,按下SFT+INS则在当前地址处插入1个字节数据00H,其值可以修改,原先在该地址及其以后地址的数据均顺序往后推移1个地址单元。在外部存储器读写状态下,按下SFT+DEL键,则删除当前地址单元中的数据,其后数据均自动向前推移1个地址单元。

9.CP(外部RAM内容比较)键:在3830H和3831H中写入一段存储区的首地址,在3832H、3833H中写入该存储区的末地址,在3834H、3835H中写入另一段存储区的首地址;然后回到监控状态,按下SFT+CP键,机器便开始比较两段存储区内容是否相同。结果相同则显示“good”,否则显示第一个不同的数据和其地址。

10.BP(设置断点)键:在监控状态下,输入4位地址,按下SFT+BP键,机器显示“good”,说明已在该地址处设置好了一个断点。当用EXEC键连续运行该程序时,程序在运行到断点时不执行该地址中的数据指令,而自动跳出并保留当时各存储器或寄存器的内容。

若要取消断点,亦在断点地址处按SFT+BP键。

11.GBP(检查断点)键:在监控状态下,按下SFT+GBP键,若有断点存在则显示断点地址及内容,否则什么也不显示。

12.SEEK(数据串查找)键:在3830H、3831H中写入查找范围的首地址,在3832H、3833H中写入查找范围的末地址,在3834H中写入数据串的长度,在3835H开始的存储单元中写入数据串。然后在监控状态下,按下SFT+SEEK键,机器就开始在指定的查找范围内查找有无该数据串。若找到,则显示查找范围中数据串的首地址和内容;若没找到,则返回监控状态。

二、EPROM编程操作

13.EPCP(EPROM与外部RAM数据比较)键:在断电情况下把2764EPROM插入D6插座中;开启电源,进入监控状态,并在外部RAM中准备好要比较的数据;在3830H、3831H中写入EPROM(0000H~1FFFH)中欲比较存储区的首地址,在3832H、3833H中写入其末地址,在3834H、3835H中写入外部RAM的首地址;回到监控状态,按下SFT+EPCP键,机器便开始对EPROM和外部RAM中的内容进行比较。若比较全部相等,则显示“good”;否则显示第1个不同数据的EPROM地址及其内容。

14.EPWE(外部RAM数据固化到EPROM中)键:断电时,S3置“常态”的读出位置,在D6插座中插入已擦净的EPROM芯片,按照EPROM芯片要求在VPP端加上编程电压(如12.5V或其它值);打开TD-Ⅱ型机电源,在外部RAM中准备好欲固化的数据;在3830H、3831H中写入外部RAM存储区的首地址,在3832H、3833H中写入其末地址,在3834H、3835H中写入EPROM首地址(0000H~1FFFH);回到监控状态下,将S3扳向“编程”档,这时编程电压便加到EPROM芯片上了;按下SFT+EPWE键后,机器开始对EPROM进行写入,此时显示内容不断闪动。若写入成功,显示“good”;否则显示写入出错的地址和内容并停止固化,这时应另换1只擦除干净的EPROM芯片重新进行此项操作。完成此项操作后,应立即将S3扳至“常态”档,并撤除编程电压。

15.EPRD(将EPROM数据装入外部RAM)键:在断电情况下将EPROM插入D6插座,然后加电进入监控状态;在3830H、3831H中写入EPROM的首地址(0000H~1FFFH)、在3832H、3833H中写入EPROM的末地址,在3834H、3835H中写入外部RAM的首地址;返回监控,按SFT+EPRD键,机器开始读入,读入结束显示“good”。

16.EPCO(EPROM复制)键:关掉电源,在D5(6264RAM)插座中插进要复制的2764EPROM源片;在D6插座中插入已擦除干净的EPROM拷贝片。在VPP端加上芯片所要求的编程电压。开启TD-Ⅱ型机电源,将S3扳至“编程”位置,按下SFT+EPCO键,机器开始进行EPROM复制;此时显示器不断闪动,当显示“good”时,表示复制成功;否则机器将显示出错地址和内容,此时应关断电源,换上另一片擦除干净的EPROM拷贝片重新操作。

三、磁带转储操作

17.DUMP(写磁带)键:首先联接好TD-Ⅱ型机OUT插孔(XS1)与录音机话筒MIC插孔之间的联线;开启TD-Ⅱ型机电源,在3830H、3831H中写入外部RAM存储区间的首地址,在3832H、3833H中写入末地址,返回监控状态;按下录音机RECORD+PLAY键开始录音,然后按下TD-Ⅱ型机的SFT+DUMP键,机器便会把外部EAM中指定区间的数据信息传送到录音机MIC插孔,录制到磁带上;录带结束,机器会显示“good”。结果会在磁带上写进40秒钟的用户准备(高电平脉冲)信号、数据信号和5秒钟的结束信号。

18.LOAD(读磁带)键:联接好录音机耳机EAR插孔到TD-Ⅱ型机IN插孔(XS2)之间的联线;开启TD-Ⅱ型机电源,按下录音机PLAY键放音,当看到发光二极管VH9由闪烁(噪声)变为全灭(高电平准备信号到来)时,按下TD-Ⅱ型机的SFT+LOAD键;或先拔下录音机耳机插头,按下放音键PLAY后听到均匀的啸叫声时,说明准备信号到了,可按下TD-Ⅱ型机的SFT+LOAD键载入信息。TD-Ⅱ型机在载入数据信息时,发光二极管VH9不断闪烁;当它熄灭时,机器会显示“good”,表示读磁带成功。读回信息的地址由录出时的地址决定,录出数据块地址是多少,读回时数据块的地址就是多少。若该带出错,则机器显示出错地址和内容,此时应适当加大放音音量再次读带。TD-Ⅱ型机要求录音机放音信号幅度≥0.8Vp。

四、EPROM仿真操作

当开发一个以8031(或其它)单片机最小系统为核心的应用系统时,我们可以在TD-Ⅱ型机第2用户程序区(D5,6264 RAM)中键入、调试应用系统程序,并可以把该程序保存到录音磁带中。然后把存在D5中的应用系统程序通过仿真插槽X以及与之配套的仿真插头送给应用系统中的程序存储器插座或者应用系统总线中的程序存储器对应端,这样TD-Ⅱ型机的6264RAM(D5)就相当于应用系统中的程序存储器EPROM,可以被应用系统中的8031单片机读出。这就是TD-Ⅱ型机EPROM仿真的含义。

EPROM仿真操作的方法是在断电时,用一套仿真插头联好TD-Ⅱ型机的仿真插槽以及应用系统的程序存储器插座,见图1右侧;开启TD-Ⅱ型机电源,在D5(6264RAM,4000H~5FFFH)中准备好应用系统程序;将仿真开关S2扳至“仿真”,此时机器将断掉TD-Ⅱ型机中除D5、D15以外其它电路的电源,并把D5控制权交给应用系统中的8031单片机;应用系统被TD-Ⅱ型机上电复位,然后开始执行TD-Ⅱ型机的D5中的应用系统程序。需要检查、修改应用系统程序时,可将S2扳回“常态”档。应用系统调试运行成功后,可在TD-Ⅱ型机上把该程序固化入EPROM芯片中,插入应用系统的程序存储器插座,至此对应用系统的开发结束。

需要说明的是仿真插槽X中29脚VCC可不连到应用系统,应用系统使用本机电源供电。仿真插槽X的地线E一定要与应用系统地线可靠连接,其它所有联线必须联接正确,并且长度应尽可能短,最长不要超过1米。

TD-Ⅱ型机使用时还有如下要求:①由于监控程序占用了3800H~39FFH,所以这段空间不允许用户使用。②用户也不能使用片内RAM中的7DH、7EH、7FH单元。③用户在使用监控程序时不允许使用外部中断0INT-。④用户在使用外部中断1INT-、计数/定时器中断0T及1T时,须分别向相应的中断标志地址39F0H、39F1H、39F2H置入中断标志数01H。使用串行口中断时,不必要建立标志。⑤输入一个较长的程序后应立即存到磁带上,然后进行调试修改,修改后也应先存带,后运行。

为了便于学习单片机指令,下面给出TD-Ⅱ型机的学习程序:

ORG 3A00H

MOV R0,#06H 00H: 78 06

MOV DPTR,#381EH 02H: 90 38 1E

CLR:MOV A,#10H 05H: 74 10

MOVX @DPTR,A 07H: F0

INC DPTR 08H: A3

DJNZ R0,CLR 09H: D8 FA

LCALL PRO 0BH: 12 3B 00

MAIN:MOV B,A 0EH: F5 F0

ANL A,#0FH ;3A10H; 54 0F

MOV DPTR,#3823H ;3A12H: 90 38 23

MOVX @DPTR,A ;3A15H; F0

XCH A,B ;3A16H: C5 F0

SWAP A ;3A18H: C4

ANL A,#0FH ;3A19H; 54 0F

MOV DPTR,#3822H ;3A1BH: 90 38 22

MOVX @DPTR ;3A1EH: F0

DISP: LCALL 00B9H ;3A1FH: 12 00 B9

LJMP DISP ;3A22H: 02 3A 1F

ORG 3B00H

PRO: MOV A,#81H 00H: 74 81

RET 02H: 22

执行本程序,结果显示81H。TD-Ⅱ型机的VH10~VH15在外部RAM占用了381EH~3823H等6个显示缓冲单元。监控程序中的显示子程序入口地址为00B9H。(刘尚诚 杨晓希)