2024单片机原理与接口技术实验_陈青.docx

上传人:夺命阿水 文档编号:1207672 上传时间:2024-04-01 格式:DOCX 页数:158 大小:1.51MB
返回 下载 相关 举报
2024单片机原理与接口技术实验_陈青.docx_第1页
第1页 / 共158页
2024单片机原理与接口技术实验_陈青.docx_第2页
第2页 / 共158页
2024单片机原理与接口技术实验_陈青.docx_第3页
第3页 / 共158页
2024单片机原理与接口技术实验_陈青.docx_第4页
第4页 / 共158页
2024单片机原理与接口技术实验_陈青.docx_第5页
第5页 / 共158页
点击查看更多>>
资源描述

《2024单片机原理与接口技术实验_陈青.docx》由会员分享,可在线阅读,更多相关《2024单片机原理与接口技术实验_陈青.docx(158页珍藏版)》请在课桌文档上搜索。

1、实验指导书单片机原理与接口技术编者:陈青出B.E旧RHRElSnHll,J iF衡成画1工算篁断回!r1LvnO0123456789*ABCD华中科技高校武昌分校信息系2024年3月第一章系统概述4其次章试验指导14一、试验指导说明14二、软件试验部分14试验一清零程序15试验二拆字程序16试验三拼字程序17试验四数据区传送子程序17试验五数据排序试验18试验六查找相同数个数19试验七无符号双字节快速乘法子程序20试验七无符号双字节快速乘法子程序21试验八多分支程序22试验九脉冲计数(定时/计数器试验)24试验十电脑时钟(定时器、中断综合试验)28三、硬件试验部分33试验一PI输出口亮灯试验3

2、4试验二Pl输出转向灯试验36试验三用P3口输入,用Pl口输出试验40试验四工业依次限制试验42试验五8255A,B,C口输出方波试验45试验六8255PA开关输入,PB口输出显示试验46试验七8255模拟交通信号灯限制过程试验48试验八简洁I/O接口扩展试验51试验九A/D转换试验53试验十D/A转换试验56试验十一用8279扩展键盘、显示接口试验60* 试验十二用8255连接标准打印机接口试验64* 试验十三用微型打印机打印字符/曲线/汉字试验66* 试验十四DS12887日历时钟芯片应用试验70* 验十五PC存储卡读写试验82* 试验十六ISD1420语音芯片录音试验91* 试验十七IS

3、D1420语音芯片放音试验95试验十八单片机外接继电器限制试验98试验十九单片机限制步进电机试验100试验二十单片机扩展8253产生方波试验108试验二十一单片机限制微型直流电机调速试验110试验二十二单片机限制16*16点阵LED显示试验113试验二十三单片机连接128*64点阵LCD液晶显示器试验118试验二十四单片机扩展8250串行接口试验127试验二十五单片机扩展8251串口与PC机通讯试验134试验二十六 试验二十七 试验二十八单片机用RS232/RS485串行发送数据试验(双机通讯).141单片机用RS232/RS485串行接收数据试验(双机通讯)148单片机接温度压力传感器试验1

4、50试验项目(一)软件试验(1)清零程序;(2)拆字程序;(3)拼字程序;(4)数据区传送子程序;(5)数据排序试验;(6)查找相同数据个数;(7)无符号双字节快速乘法子程序;(8)多分支程序;(9)脉冲计数试验;(10)电脑时钟试验。(二)硬件试验(1)Pl口输出亮灯试验;(2)Pl口输出转弯灯试验;(3)用P3口输入,用Pl口输出试验;(4)工业依次限制试验;(5)8255A,B,C口输出方波试验;(6)8255PA开关输入,PB口输出显示试验;(7)8255模拟交通信号灯限制过程试验;(8)简洁I/O接口扩展试验;(9)A/D转换试验;(10)D/A转换试验;(11)用8279扩展键盘、

5、显示接口试验;*(12)用8255连接标准打印机接口试验;*(13)用微型打印机打印字符/曲线/汉字试验;*(14)DS12887日历时钟芯片应用试验;(15)Pc存储卡读写试验;*(16)ISD1420语音芯片录音试验;*(17)ISD1420语音芯片放音试验;(18)单片机外接继电器限制试验;(19)单片机限制步进电机试验;(20)单片机扩展8253产生方波试验;(21)单片机限制微型直流电机调速试验;(22)单片机限制16*16点阵LED显示试验;(23)单片机连接128*64点阵LCD液晶显示器试验;(24)单片机扩展8250串行接口试验;(25)单片机扩展8251串口与PC机通讯试验

6、;(26)单片机用RS232/RS485串行发送数据试验(双机通讯);(27)单片机用RS232/RS485串行接收数据试验(双机通讯);(28)单片机接温度压力传感器试验;注:试验项目前打*星号为选配扩展卡试验。DICE-3000型51/96通用单片机仿真器相关介绍详见DICE-3000型运用说明或本试验指导书的相关介绍。第一章系统概述一:恒科超想-3000仿真机的运用方法:在桌面点击“HK-51系列仿真开发系统”出现如下画面:1、“新建”/“打开”一个ASM汇编源程序2、“编译/汇编!”ASM文件,生成包括HEX16进制文件在内的系列文档。假如编译没有通过,则依据提示修改程序的语法错误,直

7、到编译胜利。3、插入仿真头到应用板上,通电后用“单步”或“连续”运行,视察CPU内部RAM,各个特殊功能寄存器内容的变更,以及应用板上设计的显示等变更。假如达不到设计效果和要求,则须要重新考虑修改程序上的逻辑错误,直到完善为止。要想了解更多超想-3000仿真机的运用方法,请查阅单片机原理及其接口技术试验朱定华编著教材附录A(超想-3000仿真机运用说明)娟J胃可心胃南:)测Xa)工程C)设置6)视图(V)窗口物助coD盲等雪区/F护-/SmB3G4LJKP5DATAEQU100H033(编译后文件窗口)PORC0030HJOTSCOK,啦HCLREACLKESCPLP3.2LCALLWTCLR

8、P3.4CLRP3.5CLRALCALLDISPLAYKVDPTR,W000H;READ6116JVR5,J255K)VA,SOAAH1ESTC116:JK)VXeP巩AIKDPTR1.OP:IC:hkcxTKT51.DATAEQO100HORGOOOOH,(源文件窗口)1.JKPLOPORG003OHIOVSCOKJOOHCLREACLRES1.OP:CPLP3.21.CALLVAITCLRP3.4CLRP3.5CLRALCALLDISPLAYIOVDPTRJ0000H;READ6116FC0009ACC-IbPSWOODPTRonSP-07800RO00Rl00R200R300R400_R

9、5_00R600R7I00TeONj00(寄存器区窗口)-lll后1.列:1等待状态目 K 23.45d刑I四雕靴论文7iI单片机翅讲义27.HCc55I图1-1HK-51系列仿真开发系统仿真软件窗口图示2源文件的建立和打开目建立新文件执行“文件/新文件”菜单吩咐或单击工具栏按钮即出现一个源文件编辑窗口,您可以在编辑窗口中输入源程序代码,完成后用“文件/存储”吩咐将文件存到磁盘上。假如源文件是新建立的Superimage-3()(M)Win98则会弹出文件列表框要求您输入要保存的文件名,再单击“保存”即可。国打开一个文件执行“文件/打开文件”菜单吩咐或单击工具栏按钮即出现打开文件列表框,您可用

10、鼠标干脆点击显示在列表框内文件名或者也可在输入框内干脆输入,再单击“打开”按钮,屏幕即出现一个文件编辑窗口,显示您选取的文件内容。国译单个源程序文件当您已经建立或打开了一个源程序文件,您就可以运用“编译/文件编译、连接、装载”吩咐或单击工具栏按钮即可对当前源文件进行编译、连接,假如源文件存在错误,即弹出“编译连接产生错误”对话框,单击“OK”,编译错误信息便出现在“编译连接信息”窗口,双击错误信息行,光标便自动跳转到源文件编辑窗口的出错行,以便您进行修改。假如源程序文件没有错误,即弹出“编译、连接胜利”对话框。编译、连接胜利6. 2源文件的装载国在源文件编辑窗口或已打开工程文件后即可用“编译/

11、编译、连接、装载”菜单吩咐或单击工具栏按钮即可对当前源文件或当前工程组进行编译、连接,并装载到ROM。向当源文件通过编译并生成目标代码时,您可干脆将其目标代码(*.OMF*.HEX*.BIN*.OBJ*.O)装入ROM,方法是执行“编译/装载”菜单吩咐或单击工具栏按钮,再选择要装载的代码文件。例如demo,asm已通过编译并生成代码,您可干脆装载demo.Omf文件。假如装载的文件不含调试信息,调试窗口则以反汇编方式显示。您也可用此方法装载从编程器上读取的代码文件。留意:当源文件经过修改,必需运用13恒新编译装载。无论您运用何种方法装载,系统均提示编译、连接胜利。单击“OK”确认后,即打开调试

12、窗口。运用调试窗口调试源程序您可以在程序调试窗口中对用户程序设置或清除断点、起先或中止仿真、进行单步操作以及视察变量等。菜单及其吩咐菜单用途文件菜单建立、打开、保存源文件,关闭当前窗口,输出列表表文件,退出IDE编辑菜单对活动窗口有关内容进行编辑编译菜单源程序编译、连接、装载,阅读模块,设置编译选项调试菜单单步、断点、连续运行方式,增加变量,程序复位,程序暂停,设置PC。工程菜单建立、打开、编辑、关闭工程,打开工程文件列表。设置菜单设置仿真模式及通讯端口。视图菜单查看调试、寄存器、存储器、变量、编译信息窗口。窗口菜单层叠、平铺及关闭全部窗口,选择已打开的窗口。帮助菜单显示关于Superimag

13、e-3(XX)的版本信息。菜单及其用途列表(1)文件菜单建立一个新的源文件。弹出对话框,选取列表中的文件或在输入框输入文件名,单击“打开”,文件编辑窗即显示该文件内容。关闭关闭当前的活动窗口。将当前编辑窗口中的文件存到磁盘上。另存为将当前编辑窗口中的文件换成另一个文件名再存盘。输出列表文件将当前ROM地址空间的代码保存为-LST列表文件。弹出文件列表对话框,输入要保存的文件名并单击“保存”。执行该吩咐可退出Superimage-3(MX)Win98。(2)编辑菜单留意:编辑菜单为SUPerimage-3000Win98的动态菜单,当激活不同的窗口时该菜单命令也随之变更:关闭全部窗口后该菜单也白

14、动关闭。现以源文件编辑窗口为例向您说明该菜单(假设已激活源文件编辑窗口)。该菜单的其它吩咐将在以后的章节为您具体说明C我们特别建议您运用IDE快捷菜单。运用该吩咐能复原文件编辑中最终一次所做的修改。清除编辑窗口中选定的文件,并放置在剪贴板上。只有在选定文本后,这一吩咐才有效。放置在剪帖板上的文件始终保留在那里,直到新内容替换掉它们。运用该吩咐可将选定的文本复制到剪贴板上。只有在选定文本后,这一吩咐才有效。复制到剪贴板上的文本将替换掉从前的内容。运用该吩咐可以将剪贴板内容插入到当前编辑窗口的光标位置。假如在编辑窗口中已选定内容。运用该吩咐可用剪贴板上的内容替换掉选定的内容。假如剪贴板上无内容,这

15、一吩咐将是无效的。运用该吩咐可以在当前编辑窗口中查找文本字符串。该吩咐包含两参数,您可选择运用:WholeWord整字匹配MatchCase区分大小写查找下一个Ctrl+L运用该吩咐可以接着查找在“查找”吩咐中指定的文本。运用该吩咐可以跳转到编辑窗口中指定的行。字体对编辑窗口中的文本进行字体、字号、颜色等设置。刷新重新显示当前编辑窗口。(3)编译菜单编译、连接对当前编辑窗口源文件或当前工程组进行编译、连接,生成目标代码。国译、连接、装载Ctrl+F9对当前编辑窗口源文件或当前工程组进行编译、连接,并将生成的目标代码装入ROM。国装载F3将磁盘上存在的目标代码干脆装入ROMo回阅读模块Ctrl+

16、F3该吩咐可在调试窗口中阅读源文件内容,通常适用于阅读工程组中的源文件。编译选项运用该吩咐您可设置源文件编译的各选项。(4)调试菜单同连续运行F9执行该吩咐便起先连续运行用户程序,当遇到断点或按下Esc暂停键时停止。运行到指定地址F5以连续方式运行程序,运行到指定的地址停下。假如在源文件方式下调试,可以选择符号地址。E运行到光标处F4以连续方式运行程序,运行到光标所在行停下。假如光标移在非执行语句行,将不响应此命令。目单步运行F7逐步运行用户程序,遇到调用子程序,则跟踪进入子程序运行。同宏单步运行F8逐步运行用户程序,遇到调用子程序,一步执行完整个过程而不进入子程序运行。自动单步以连续单步方式

17、运行用户程序。自动宏单步以连续宏单步方式运行用户程序。增加变量Ctrl+F5将程序中想要视察的变量增加到变量窗口,在程序运行时您要随时视察变量的内容。国设置或清除断点Ctrl+F8当光标移到调试窗口可执行语句行时,可以用该吩咐设置断点,重复该吩咐也可清除断点。技巧:将鼠标移到调试窗口的可执行语句行左侧,单击鼠标即可设置断点。重复此操作也可清除断点。阅读断点执行此吩咐即弹出对话框,您可通过对话框查看断点个数、断点所在的模块、断点地址、断点在源文件中的行号,您也可用此吩咐增加或清除断点。清除全部断点该吩咐可清除各个调试模块中全部设置的断点。国复位Ctrl+F2该吩咐可对(目标系统)CPU复位,同时

18、将PC指针回复到装载文件的初始值(11(XX)O)o国重新起先运行将当前PC置初始值(如OOOo)后再以连续方式运行。回暂停Esc该吩咐可停止当前程序的运行(适用于连续运行、自动单步/自动宏单步运行方式),返回待令状态。臼区折处理强制停下当前正在运行的程序。一般来讲,“暂停”吩咐即可停止,假如正在运行和程序无法用“暂停”吩咐停止,可运用此吩咐。设置PC将当前PC指针指向您输入的地址。假如在源文件方式下调试,可以选择符号地址。PC=当前地址将PC指针指向当前光标所在的可执行语句行。(5)工程菜单新建打开文件列表框,创建新工程文件。国打开弹出文件列表框,打开已存在的工程文件。编辑打开对话框,增加或

19、删除工程中的文件。关闭关闭当前运用的工程文件。文件列表打开工程文件列表对话框,可指定编辑工程中的源文件。(6)设置菜单仿真模式打开对话框,可对仿真CPU、RAM、ROM读写限制等选项进行设置。通讯端口选择选择与仿真器实际连接的通讯端口。国重新连接通讯失败、检查硬件连接或重新选择通讯端口后,该吩咐可重新进行通讯测试。(7)视图菜单调试打开程序调试窗口。假如未装载程序,可看到随机代码。寄存器打开寄存器窗口。您可对该窗口进行增加、删除操作。存储空间1/2IDE允许同时打开两窗口,可在该窗口切换查看程序存储器、数据存储器、CPU内部存储器、特殊寄存器等内容。变量打开变量窗口,可随时视察变量的变更。编译

20、连接信息打开编译连接信息窗口,可查看源文件编译是否有错。(8)窗口菜单同层叠以重叠方式排列已打开的窗口,但保持每窗口的标题栏都可见。国水平平铺把已打开的窗口水平排列,使已打开的窗口都可见。国垂直平铺把已打开的窗口垂直排列,使已打开的窗口都可见。关闭全部窗口关闭全部已打开的窗口。选择“窗口”菜单下已打开窗口的名称及编号可以激活该窗口。(9)帮助菜单关于显示关于Superimage-3()(M)Win98集成开发环境的版本信息,及Win98环境与DOS环境下编辑器伪指令运用上的区分。二、TOP系列编程器运用的简要说明T0P2024型编程器具有体积小巧,功耗低,牢靠性高的特点,是专为开发单片机和烧写

21、各类存储器而设计的通用机型。T0P2024采纳USB通用串口与PC机连接通信,传输速率高,抗干扰性能好,牢靠性能极高,而且无需外接电源,特殊适合电池供电的笔记本电脑外出访用。其特点:1 .可支持2565V的器件;2 .运用USB接口电源,不必外接电源;3 .通过USB通用串口与PC机连接,传送速率12mhs;4 .即适合电池供电的笔记本电脑运用,也适合台式机运用;5 .完善的过电流爱护,有效地爱护编程器和器件不受损害;6 .USB负载实力检测(0至10级);7 .全插脚检查,可以检查出随意一个插脚的的接触状态;8 .40针进口万能锁紧插座;9 .在町NoTVS98SE/ME/2000/XP下运

22、行;10 .塑料机壳,体积小,重量轻,功耗低;11 .可自动探测厂家和型号;12 .单片机定时,编程速度与计算机无关;一:芯片操作11常规步骤连接好TOPwin,电源指示灯(红色)亮;运行TOPWin,exe”;工作指示灯(绿色)亮;在主菜单中选择文件,装载数据到文件缓冲区;如下图所示:01 02 03 04 65 06 07 08 09 0a b GC 0d Oe 0F Z0:10:20:30:5a102030打开查找范围(X): | TopWm-7J2J三|,回小圈;?40:40L50: 50 E 60: 60 t 70:70780:80S90: 90 a0: a c b: b tc0:

23、c cISRDLLEG.32. ;晨 blibdrivplacplacDEISR一 2Jb2d2JP.JP回回“W)IOOk 司123.hex borindmm.dll 国 cc3250mt.dll 取 CMoS40 皿 CMoS45国 Config D16v8.1ed D20V8.JED device2005.lst 1 device2048.lst HdeViCe8S3. KtCfe,HH ToPWin TOPWINHLP tlTTL74KLMNO - klno Jd文件名国):文件类型1):打开Q)取消F1 F2 F3 FU F5 F6 F7 F8 F9 Fa Fb Fc Fd Fe F

24、F光标地址:F起始地址:IoF0:检查和:I 7fd3找到文件夹,选择HEX类型(ASM文件编译后生成的16进制文件)文件。1 TopWin Ver 1.32E文件且修改 Q操作 y设置双窗口 巳粘助E:TopWin 123.hex05 6 07 08 09 0a Ob0C 0d Oe 0 ZE:TopWin123.hex式 NXDST 格BIHEJECDsvf 件 文一:2魏入方式Wl二进制格式Intel十六进制FLD熔丝GeCed格式)义隆格式JTAG (IEEEl 149. 1)内全郃C连续)C默认C IG位笫字节(8位)C- 16位第二字节(8位)C- 32位笫一字节(8位)C- 32

25、位第二字节(8位) 32位笫三字方6位)L 32位第四字节位)d线冲区开始地址(十六进制)I000000eF缓冲区终止地址(十六进制)IffffffI7fda光标地址:起始地址:F二:将芯片插在插座上并锁紧,准各对器件进行读写操作。操作莱单:选择型号,对应的工具按钮为型号,执行后弹出选择厂家/型号窗口: 芯片型号的选择过程依据:类型一)生产厂家一)型号的依次确定芯片型号。如下图所示:QRSTUUW abcdeFg qrstuuW&篁国幽凰组上10:ff CH UC 在首行查找右边键入关键字,如51,这一步可以省略。 在类别”框中选择芯片类型,如电擦除存储器; 在制造厂家列表框中选择生产厂家,例

26、如选择“ATMEL”; 在器件型号列表框中选择芯片型号。例如选择AT89C52”。假如选择的是存储器,可以按探测厂家代码取得2字节代码,第一字节代表生产厂家,其次字节代表型号。然后,按确认进入读写操作。2.读写器件:对应的工具按钮为读写”,由于芯片的类型不同,相应的读写窗口也略有不同。分别叙述如下:1读写并存储器以89c52为例,在选择厂家/型号窗口中选择类型电擦除存储器选择厂家ATMEL器见型号AT89C52按确认键,弹出单片机读写窗口如下:写器件:写器件操作是把缓冲区内的数据烧写到芯片申。文件起先地址和器件起先地址默认为0,隐含烧写该器件的全部单元,数据长度最大可达六位十六进制(HEX)数

27、字,最大地址空间8M。用户也可以根拥须要对起先地址进行修改,达到部分烧写的目的。写器件过程由进展条直观显示,烧写过程中,程序自动进行校验,如遇到不能写入的单元时,将退出写操作,并显示出错地址、缓冲区数据和芯片数据内容。特殊留意:器件在写之前必需特殊要留意芯片型号不能搞错,由于芯片类型不同,运用的编程电压可能不一样,否则会损坏器件或设备。确认全部设置正确无误后,将待编程的器件插到器件插座上,拉平锁紧扳手。读器件:将芯片中的全部数据读入缓冲区,分页显示到数据窗口,读出过程由进展条直观显示。用户可对读出的数据进行修改,存盘(文件格式必需与芯片内的固化文件格式一样)。擦除:擦除芯片存储器的全部内容,擦

28、除后全为FF。只有电擦除器件可以用这个吩咐,EPROM需用紫外线擦除。检查空片:器件在写入之前,要检查是否空片。空片的每-个字节都是FF(十六进制)。检查过程由进展条直观显示,当发觉非空单元,将退出检空操作,并显示非空单元的地址和数据。该操作检查EPROM的全部地址空间,与设置的器件起先地址和数据长度无关。EPROM可用紫外灯照耀后冉枪查,仍通不过则器件己损坏。校对数据:该操作把缓冲区内的数拥与芯片中的数据进行比较,校对由进展条直观显示,当遇到校对出错的单元时,将退出校对操作,并显示出错单元的地址、缓冲区数据私芯片数据。为了确保写入到器件的数据正确,写器件操作包含了校对,无须重复操作。加爱护:

29、许多EEPROM和FLASHROM具有爱护功能。加爱护后的器件只能读,不能写,必需经过解爱护才能冉写。该操作一般应用在写操作完成后运用。解爱护:与加爱护相反。读厂家:取得Z字节代码,第一字节代表生产厂家,其次字节代表型号。写速度:不同厂家的产品编程速度可能不一样,既使同一厂家的产品,其型号不同编程速度也可能不一样。一般可设为标准速度。自动编程操作该操作依据“组合操作框内的选择自动完成对器件的编程操作,可提高芯片的编程效率。其次章试验指导一、试验指导说明本试验指导是为适应各大、中专院校开设单片机原理与应用方面的课程需做大量软、硬件试验的须要而编写的.完成本试验指导中的试验,可使学生基本驾驭MCS

30、-51单片机的结构原理、接口技术、程序设计技巧。手册中具体叙述了各试验的目的、内容,列出了接线图、程序结构框图和清单。免除了主讲老师和试验辅导老师为设计、打算调试试验线路和试验程序所需的工作量,节约了珍贵的时间。1 .全部硬件试验程序己固化在程序存储器EEPROM中,选择UP模式(SW1),我们可以脱机试验,从小键盘输入相应试验序号,再按FV/EX即可运行该试验程序;也可采纳联机试验,将试验系统与PC机通过DJ-2025仿真器相连,联机调试全部试验程序。2 .试验接线图上的粗实线表示用户在试验时要用导线连接起来。3 .全部试验都是相互独立的,次序上也没有固定的先后关系,在运用本书进行教学时,老

31、师可依据该校(院)的教学要求,选择相应试验。4 .对同一问题的解决方法往往不是唯一的,欢迎用户在运用本书过程中提出更为优秀的试验方案,指出错误和不足,希望用户反馈给我们,以便刚好修改。二、软件试验部分软件试验部分是为了协作教材中单片机汇编语言教学而设计的相关实践操作内容,软件部分的试验主要以对存储器中的数据进行操作为主,并不涉及过多的显示处理、接口处理,操作时以输入汇编程序,运行并检验操作结果为主要试验过程,软件试验部分既可以在试验箱中操作,也可以在无试验箱的状况下用单片机模拟调试程序完成,其主要目的是驾驭51单片机的指令系统和提高汇编编程的实力。读者也可以自行设计相关的程序,并在试验条件下进

32、行调试和验证以拓展编程实力。软件试验部分本书供应了十个验证明验程序以供试验时选择运用。试验一清零程序1,试验目的:驾驭汇编语言设计和调试方法,熟识键盘操作。2,试验内容:把200OH20FFH的内容清零。3,试验程序框图:4,试验步骤:用连续或单步方式运行程序,检查2000-20FF中执行程序前后的内容变更。5,思考:假使把200OH210OH中的内容改成FF,如何修改程序。6,程序清单:ORG 0000HLJMP SE01ORG 0640HSE01: MOV R0,#00HMOV DPTR,#2000HLOO1: CLRAMOVX (g)DPTR,AINC DPTRINC ROCJNE R0

33、,#00H,LOO1LOOP: SJMP LOOP;(OOOOH)送 DPTR;0送(DPTR);DPTR+1;字节数(寄存器内容)力0 1;不到FF个字节再返回清零END试验二拆字程序1,试验目的:驾驭汇编语言设计和调试方法。2,试验内容:把2000H的内容拆开两位送2024H低位,低位送2024H低位,2024H、2024H高位清零,一般本程序用于把数据送显示缓冲区时用。3,试验程序框图:200OH内容送A高低位交换屏敝高位后送200IH200OH内容送A屏敝高位后送2002H4,试验步骤:用连续或单步方式运行程序,检查2000H2024H中内容变更状况。5,思考:如何用断点方式调试本程序

34、。6,程序清单:;把指定字节的凹凸位拆开分别存放,多用于显示子程序ORGOOOOH1.JMPSE02ORG0660HSE02:MOVDPTR,#200OHMOVXAj(Q)DPTRMOV B,A SWAPA ANL A,#OFH INC DPTR MOVX (S)DPTRjA INC DPTR MOV A,B ANL A,#OFH MOVX DPTR,A;(2000) AB;交换;屏蔽高位;送 2024H;(2000)内容屏蔽高位;送 2024HLOOP:SJMPLOOPEND试验三拼字程序本程序用1,试验目的:进一步驾驭汇编语言设计和调试方法。.2,试验内容:把2000H.2024H的低位分

35、别送入2024H凹凸位,一般于把显示缓冲区的数据取出拼装成一字节。3,试验程序框图:4,试验步骤:单步或用断点方式运行程序,检查2024H内容变更状况。5,程序清单:ORGOOOOHLJMPSTARTORG0680H;(2000H)内容屏蔽高位;交换;保存I (2000H)内容送A;屏蔽高位;或;送 2024HSTART:MOVDPTR,#2000HMOVXA,()DPTRANLA,#OFHSWAPAMOVB,AINCDPTRMOVXA,()DPTRANLA,#OFHORLA5BINCDPTRMOVXDPTR,ASJMP$END试验四数据区传送子程序1,试验目的:驾驭RAM中的数据操作。传送到

36、中输入 (例如 是否和2,试验内容:把R2.R3源RAM区首址内的R6.R7字节数据R4.R5目的RAM区。3,试验程序框图:4,试验步骤:在R2.R3中输入源首址(例如0000H),R4.R5目的地址(例如2000H),R6.R7中输入字节数IFFFH),运行程序,检查0000H-IFFFH中内容2000H-3FFFH中内容完全一样。5,程序清单:ORGOOOOHLJMPSE22泡法将按从小方法运 按从小ORG07B0HSE22:MOVDPL,R3MOVDPH,R2建立源程序首址MOVXA,DPTR;取数MOVDPL,R5MOVDPH,R4目的地首址MOVXDPTR,ACJNER3,#0FF

37、H,LO42INCR2*传送LO42:INCR3CJNER5,#0FFH,LO43INCR4源地址加1LO43:INCR5*目的地址加1CJNER7,#00H,LO44CJNER6,#00H,LO45*字节数减1LOOP:SJMPLOOPNOPLO44:DECR7SJMPSE22LO45:DECR7DECR6SJMPSE22END未完接着试验五数据排序试验1,试验目的:熟识51指令系统,驾驭程序设计方法。2,试验内容:编写并调试一个排序子程序,其功能为用冒内存RAM中几个单字节无符号的正整数,到大的次序重新排列。3,程序框图:4,试验步骤:将RAM50H5AH中放入不等的数据,用断点行本试验程

38、序后检查5OH-5A中的内容是否到大的次序排列。5,思考:修改程序把5OH5AH中内容从大到小排列。ORG09B0HQUE:MOVR3,#50HQUE1:MOVA,R3;指针送ROMOVR0,AMOVR7,#0AH:长度送R7CLR00H;清标记位MOVA,R0QL2:INCROMOVR2,ACLRCMOV22H,R0CJNEA,22H,QL3?相等吗?SETBCQL3:MOVA,R2JCQL1;大于交换位置SETB00HXCHA,(g)R0DECROXCHA,R0INCRO:大于交换位置QL1:MOVA,R0DJNZR7,QL2JB00H,QUE1;一次循环中有交换接着LOOP:SJMPLO

39、OP;无交换退出END试验六查找相同数个数I,试验目的:熟识汇编语言编程。2,试验内容:在2000H200FH的N个单元中填入本程序后检查2100H中是否为No3,试验程序框图:4,试验步骤:在2000H-200FH的几个单元中填入本程序后检查210OH中是否是几个单5,思索:修改程序,查找其它内容。6,程序清单:ORGOOOOH1.JMPL5800开始零,运行零,运行 元数。ORGOAAOH1.5800:MOVRO,#IoHMOVRl,#OoHMOVDPTR,#200OH1.5811:MOVXA,DPTR;取出内容与OOH相等吗?;取出个数加1;未完接着;相同数的个数送2100HCJNEA,

40、#00H,L5816INCRl1.5816:INCDPTRDJNZRO,L5811MOVDPTR,#2100HMOVA,RlMOVXDPTR,A1.581E:SJMPL581EEND试验七无符号双字节快速乘法子程序1,试验目的:驾驭MCS-51汇编语言程序设计方法。2,预备学问:本程序利用单字节的乘法指令,依据下面的公式进行乘法运算的。88(R2R3)*(R6R7)=(R2)*2+(R3)*(R6)*2+R7)3=(R2)*(R6)*7+(R2)*(R7)+(R3)*(R6)*2+(R3)*(R7)3,试验内容:将(R2R3)和(R6R7)中双字节无符号整数相乘,积送R4R5R6R7中。4,试

41、验程序框图:5,试验步骤:在R2R3和R6R7中输入无符号整数,断点或单步运行本试验程序后检查R4R5R6R7中内容。6程序清单:ORG0000H1.JMPQKULORG0970HQKUL:MOVA,R3MOVB,R7MULAB;R3*R7XCHA,R7;R7=(R3*R7)低字节MOVR5,B;R5=(R3*R7)高字节MOVB,R2MULAB;R2*R7ADDA,R5MOVR4,ACLRAADDCA,BMOVR5,A;R5=(R2*R7)高字节MOVA,R6MOVB,R3MULAB;R3*R6ADDA,R4SXCHA,R6XCHA,BADDCA,R5MOVR5,AMOVPSW.5,CMOV

42、A,R2MULABADDA,R5MOVR5,ACLRAMOVACC.0,CMOVC,PSW.5ADDCA,BMOVR4,A1.OOP:SJMPLOOPEND;存CY;R2*R6;加上次加法的进位试验七无符号双字节快速乘法子程序1,试验目的:驾驭MCS-51汇编语言程序设计方法。2,预备学问:本程序利用单字节的乘法指令,依据下面的公式进行乘法运算的。83(R2R3)*(R6R7)=(R2)*2+(R3)*(R6)*2+R7)3=(R2)*(R6)*7+(R2)*(R7)+(R3)*(R6)*2(R3)*(R7)3,试验内容:将(R2R3)和(R6R7)中双字节无符号整数相乘,积送R4R5R6R7

43、中。4,试验程序框图:5,试验步骤:在R2R3和R6R7中输入无符号整数,断点或单步运行本试验程序后检查R4R6R7中内容。6,程序清单:ORGOOOOH1.jmpqkulORG0970HQKUL:MOVA,R3MOVB,R7MULAB;R3*R7XCHA,R7;Rl=(R3*R7)低字节R5,B;R5=(R3*R7)高字节B,R2MULAB;R2*R7ADDA,R5MOVR4,ACLRAADDCA,BMOVMOVMOV;R3*R6;存CY;R2*R6;加上次加法的进位R5,A;R5=(R2*R7)高字节MOVA,R6MOVB,R3MULABADDA,R4XCHA,R6XCHA,BADDCA,R5MOVR5,AMOVPSW.5

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号