首页 单片机实验指导书

单片机实验指导书

举报
开通vip

单片机实验指导书《单片机原理》 实验指导书 张毅刚 何谨 孙震 哈尔滨工业大学 2005年4月 目 录 1序 2实验1 单片机实验开发系统操作实验 4实验2 单片机数据区传送程序设计 6实验3 数据排序实验 8实验4 查找相同数个数 10实验5 P1口转弯灯实验 13实验6 工业顺序控制 16实验7 8255控制交通灯 19实验8 A/D转换实验 22实验9 D/A转换实验 26实验10 电子时钟(定时器、中断综合实验) 36附录1 Dais-80...

单片机实验指导书
《单片机原理》 实验指导 关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf 张毅刚 何谨 孙震 哈尔滨工业大学 2005年4月 目 录 1序 2实验1 单片机实验开发系统操作实验 4实验2 单片机数据区传送程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 6实验3 数据排序实验 8实验4 查找相同数个数 10实验5 P1口转弯灯实验 13实验6 工业顺序控制 16实验7 8255控制交通灯 19实验8 A/D转换实验 22实验9 D/A转换实验 26实验10 电子时钟(定时器、中断综合实验) 36附录1 Dais-80958B单片机实验开发系统简介 37附录2 实验开发系统的字形/字位/键值 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 序 一、实验素养和一般知识 1.实验前准备工作 (1) 明确实验目的、熟悉实验内容、掌握实验步骤、了解所用单片机实验开发系统及仪器设备的性能。 (2) 做好实验前预习和必要的准备(先编好程序),作到有的放矢。 2. 进入实验室后 (1) 熟悉所用的单片机实验开发系统及仪器设备,了解其外观、性能。 (2) 接线要简单、正确、明了,一个人接线,另一个人检查,经老师复查后允许后才可通电。 (3) 通电瞬间,应注意仪器是否正常工作,不要只看开关,如有不正常现象,应立即断电找出原因。 (4) 不允许自带光盘和软盘上机,违反者取消实验资格!(指导教师允许情况除外)。 3. 实验进行时 (1) 正常请况下,按规定步骤进行,读取数据,并及时纪录。 (2) 各种操作要有目的进行,不可盲动。 (3) 实验完后,经老师察看或签字,并把仪器、导线、工具清理、收拾完毕后,学生签到方可离开实验室。 二、实验 报告 软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载 内容和要求 1. 实验报告要用学校统一的纸。 2. 实验内容应包括,是实验目的、设备、原理、步骤简述、原始数据、结果和分析以及程序清单等。 3. 每个实验后的思考题必须完成。 4. 对实验中发现的问题应加以讨论,并提出自己的改进意见和要求、希望等。 实验1 单片机实验开发系统操作实验 一、实验目的和要求 1. 掌握汇编语言的设计和调试。 2. 熟悉Dais-80958B微机实验开发系统调试软件的应用。 二、实验设备 1. Dais-80958B单片机实验开发系统 一套 2. WD990微机专用电源 一台 3. PC机 一套 三、实验线路及使用仪器 1.实验连接图 Dais-80958B单片机实验开发系统与PC机的连接如下图所示。 2.Dais-80958B单片机开发系统组成及功能 单片机实验开发系统自带32个键的键盘和6位LED数码管。系统有两种工作方式:独立运行的单板机工作方式以及与PC通过串行口相连的串行监控工作方式。 (1)独立运行的样板机工作方式 无需任何设备,利用开发系统上的单片机、监控程序、键盘和LED数码管,自构成一台样板机独立运行。 (2)串行监控工作方式 通过RS-232C串行口与PC机的串行口相连,以PC机为操作平台,配合系统操作软件,适用于PC机的系统编程和调试界面。 实验开发系统提供以Windows98操作平台的在线仿真调试软件包。支持汇编语言(ASM51)及高级语言(PL/M51、C51)源程序级及反汇编窗口式调试环境,该仿真软件具有:编辑、汇编、连接、反汇编、开观察窗口、单点跟踪、设置断点、全速/非全速运行、系统设置、程序固化等功能,具有查看SFR、内部RAM、外部RAM等选项。 四、实验开发系统的使用 1.按实验线路接好线后,检查无误在指导教师允许下才可通电。先打开电源+5V,主机板上的六位LED显示器最左边一位出现提示符“P”,表明系统正常。否则应立即关掉电源!!! 2.80958B主机板通电后,不允许在上面放置任何物品,特别是金属物!(因集成芯片或线路引起短路损坏设备)。 五、实验步骤 1.Dais-80958B接好线后,电源线红色接+5V,黑色接地。先打开电源,出现提示符“P”,表明该系统工作正常。 2.打开PC机电源,正常工作后,在显示器的桌面上点击快捷图标“MCS-51仿真开发系统“,进入Dais-MCS-51仿真开发系统的调试平台。 3. 源文件的建立和打开: (1) 选菜单栏文件/新文件或者工具栏新文件,出现源文件编辑窗口,输入程序S1。 (2) 选文件/存储(或另存),要求输入文件名,同时保存类型选*.asm。文件名按下面要求写: 1P 26 S1 一班 学号 文件名 保存路经为:D盘,然后单击保存即可。 (3)编译源文件,选菜单栏/编译、连接、装载或者工具栏“!”,弹出“装载完毕OK”,根据编译结果的错误提示,修正源程序S1,直至成功。此时可以关闭“编译结果”和源文件编辑窗口。 (4)出现“当前模块:1P26S1”,同时打开菜单栏视图/调试、寄存器、存储空间,然后可以选主菜单/窗口或者工具栏/ XX窗口;整理平台视野。 4.调试和运行程序S1 (1)“当前模块:1P26S1”中“小手光标”位置是PC指针所在,“寄存器”中显示当前各寄存器中的内容。“数据存储区”中地址用右键选显示地址,“输入数据”为十六进制2000,确认后调试。 (2)首先单步运行,选主菜单/调试/单步运行或者选工具栏单步运(F7)。运行一个循环,观察相关的寄存器和存储区的变化。 (3)运用连续运行和设断点运行。 工具栏/为连续运行,在“当前模块”中鼠标出现“小手”时点击,“红色手”即为断点位置。 5. 记录下数据区2000H~20FFH中,在执行程序S1前后的内容变化。 六、实验内容 程序S1的参考程序如下: 机器代码 汇编语言 注释 ORG 0000H 7800 SE01: MOV R0,#00H ; 902000 MOV DPTR,#2000H ; E4 L001: CLR A ; F0 MOVX @DPTR,A ; A3 INC DPTR ; 08 INC R0 ; B800F9 CJNE R0,#00H,L001 ; 80FE LOOP: SJMP LOOP ; END 七、思考题 1. 程序S1的功能是什么?画出S1程序框图,并写出注释。 2. 把2000H~20FFH中内容改成FF,如何修改程序S1? 3. 把3000H~20FFH中内容改成AA,如何修改程序S1? 4.程序S1中指令:“CJNE R0,#00H,L001”的作用是什么? 实验2 单片机数据区传送程序设计 一、实验目的 1. 进一步掌握汇编语言程序设计和调试方法。 2. 了解单片机RAM中的数据操作。 二、实验设备 1.Dais-80958B单片机实验开发系统 一套 2.WD990微机专用电源 一台 3.PC机 一套 三、实验线路 同实验1。 四、实验内容 1.要求:编写程序把R2、R3源RAM区首地址内的R6、R7字节数据传送到R4、R5目的地址的RAM区。 2.框图如下,文件名为:X X X X S2 班级 学号 五、实验步骤 1.打开电源,PC机开机正常工作后,进MCS-51仿真开发系统调试平台,编译源文件S2成功。(详细过程同实验1的步骤1~3) 2.在R2、R3中输入源地址(例如:0000H),R4、R5中输入目的地址(例如2000H),R6、R7中输入字节数(例如:1FFFH)。 3. 查看RAM 区0000~1FFFH和2000~3FFFH内容,也可自己重新赋值。 4. 运行程序XXXXS2,首先单步,然后用自动单步,最后用连续运行方式。 5. 记录下运行结果,检查0000~1FFFH中内容是否和2000~3FFFH内容完全一致。 六、要求 1.写出自己编写的程序,并写出原理性注释。 2.将检查程序运行的结果,分析一下是否正确。 七、思考题 如果使0000~1000H中内容与2000~3000H内容完全一致,如何来改写程序? 八、参考程序 ORG 0100H 8B82 SE22: MOV DPL,R3 8A83 MOV DPH,R2 ;建立源程序首址 E0 MOVX A,@DPTR ;取数 8D82 MOV DPL,R5 8C83 MOV DPH,R4 ;目的地首址 F0 MOVX @DPTR.A ;传送 BBFF01 CJNE R3,#OFFH,LO42 0A INC R2 0B LO42: INC R3 ;源地址加1 BDFF01 CJNE R5,#0FFH,L043 OC INC R4 OD LO43: INC R5 ;目的地址加1 BF0006 CJNE R7,#00H,LO44 BE0006 CJNE R6,#00H,LO45 ;字节数减1 80FE SJMP $ 00 NOP 1F LO44: DEC R7 80E0 SJMP SE22 1F LO45: DEC R7 1E DEC R6 80DC SJMP SE22 ;未完继续 END 实验3 数据排序实验 一、实验目的 熟悉MCS-51指令系统,掌握数据排序程序的设计方法。 二、实验设备 1.Dais-80958B微机实验开发系统 一套 2.WD990微机专用电源 一台 3.PC机 一套 三、实验线路 同实验1。 四、实验内容 1.编写并调试一个排序程序,其功能为用冒泡法(参见单片机教材84页)将RAM中几个单字节无符号的正整数,按从小到大的次序重新排列。程序框图如下: 五、实验步骤 1.编写程序XXXXS3,满足程序要求,在CPU内部的RAM 50H~5AH中放入不等的数据。 2.运行该程序后检查50H~5AH内容是否按从小到大排列,结果记录下表中: RAM 状态 50 51 52 53 54 55 56 57 58 59 5A 运行前内容 运行后内容 六、思考题 修改程序S3,将50H~5AH中内容按从大到小排列,并且记录下程序运行前后的结果,分析是否正确。 七、参考程序 ORG 0300H 7B50 QUE: MOV R3,#50H EB QUE1: MOV A,R3 ;指针送R0 F8 MOV R0,A 7F0A MOV R7,#0AH ;长度送R7 C200 CLR 00H ;标志位为0 E6 MOV A,@R0 08 QL2: INC R0 FA MOV R2,A C3 CLR C 8622 MOV 22H,@R0 ;取后数 B52201 CJNE A,22H,QL3 ;相等吗? D3 SETB C EA QL3: MOV A,R2 4006 JC QL1 ;大于则交换位置 D200 SETB 00H C6 XCH A,@R0 18 DEC R0 C6 XCH A,@R0 08 INC R0 ;大于则交换位置 E6 QL1: MOV A,@R0 DFEB DJNZ R7,QL2 2000E1 JB 00H,QUE1 ;一次循环中有交换继续 80FE SJMP $ ;无交换退出 END 实验4 查找相同数个数 一、实验目的 熟悉汇编语言编程 二、实验内容 在2000~200FH中查出有几个字节是零,把零的个数放在2100H中。 三、程序框图 四、实验步骤 在2000~200FH的几个单元中填入零,运行本程序后检查2100H单元中的数是否与2000~200FH中零的个数相同。 五、思考 在1000~100FH的几个单元中填入8H,检查8H的个数,并填入1100H单元中,如何来修改程序? 六、参考程序 ORG 0AA0H 0AA0 7810 L5800: MOV R0,#10H ;查找16个字节 0AA2 7900 MOV R1,#00H 0AA4 902000 MOV DPTR,#2000H 0AA7 E0 L5811: MOVX A,@DPTR 0AA8 B40001 CJNE A,#00H,L5816;取出内容与00H相等吗? 0AAB 09 INC R1 ;取出个数加1 0AAC A3 L5816: INC DPTR 0AAD D8F8 DJNZ R0,L5811 ;未完继续 0AAF 902100 MOV DPTR,#2100H 0AB2 E9 MOV A,R1 0AB3 F0 MOVX @DPTR,A ;相同数个数送2100H 0AB4 80FE L581E: SJMP L581E END 实验5 P1口转弯灯实验 一、实验目的 进一步了解P1口的使用,学习汇编语言编程方法与调试技巧。 二、实验内容 P1.0开关接5V时,右转弯灯闪亮,P1.1开关接5V时左转弯灯闪亮。 P1.0、P1.1 开关同时接5V或接地时,转弯灯均不闪亮。 三、程序框图 四、实验电路 五、实验步骤 P1.0接K1,P1.1接K2,P1.4~P1.7分别接L1、L5、L9、L13 ,连续运行本程序,应看到转弯灯正确闪亮,在用单步方式调试本程序时需修改延时子程序,(例如可把延时程序第一个字节改成返回指令22H),以便观察。 六、参考程序 ORG 0C30H 0C30 7590EF PX00: MOV P1,#0FFH ;初始化 0C33 E590 PX03: MOV A,P1 0C35 F5F0 MOV B,A 0C37 5403 ANL A,#03H 0C39 B40126 CJNE A,#01H,PX01 ;满足只是P1.0为高条件吗? 0C3C 200012 JB 00H,PX04 ;闪烁标志位 0C3F C294 CLR P1.4 0C41 C295 CLR P1.5 ;开右灯 0C43 D296 SETB P1.6 0C45 D297 SETB P1.7 ;关左灯 0C47 7A20 MOV R2,#20H 0C49 120213 LCALL DELY ;延时 0C4C D200 SETB 00H ;置标志位 0C4E 020C33 LJMP PX03 ;继续查状态 0C51 D294 PX04: SETB P1.4 0C53 D295 SETB P1.5 0C55 D296 SETB P1.6 ;关灯 0C57 D297 SETB P1.7 0C59 7A20 MOV R2,#20H 0C5B 120213 LCALL DELY ;延时 0C5E C200 CLR 00H ;清标志位 0C60 8133 AJMP PX03 ;继续查状态 0C62 B40227 PX01: CJNE A,#02H,PX02 ;满足只是P1.1为高条件 ;吗? 0C65 200112 JB 01H,PX05 ;判标志位 0C68 D294 SETB P1.4 0C6A D295 SETB P1.5 ;开左灯 0C6C C296 CLR P1.6 0C6E C297 CLR P1.7 ;关右灯 0C70 7A20 MOV R2,#20H ;延时 0C72 120213 LCALL DELY 0C75 D201 SETB 01H ;置标志位 0C77 020C33 LJMP PX03 ;继续查状态 0C7A D294 PX05: SETB P1.4 0C7C D295 SETB P1.5 0C7E D296 SETB P1.6 ;关灯 0C80 D297 SETB P1.7 0C82 7A20 MOV R2,#20H 0C84 120213 LCALL DELY ;延时 0C87 C201 CLR 01H ;清标志位 0C89 020C33 LJMP PX03 ;继续查状态 0C8C D294 PX02: SETB P1.4 0C8E D295 SETB P1.5 0C90 D296 SETB P1.6 ;关灯 0C92 D297 SETB P1.7 0C94 020C33 LJMP PX03 ;继续 ORG 0213H 0213 C002 DELY: PUSH 02H 0215 C002 DEL2: PUSH 02H 0217 C002 DEL3: PUSH 02H ;延时 0219 DAFE DEL4: DJNZ R2,DEL4 021B D002 POP 02H 021D DAF8 DJNZ R2,DEL3 021F D002 POP 02H 0221 DAF2 DJNZ R2,DEL2 0223 D002 POP 02H 0225 DAEC DJNZ R2,DELY 0227 22 RET END 实验6 工业顺序控制 一、实验目的 掌握工业顺序控制程序的简单编程,中断的使用。 二、实验预备知识 在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律的完成预定的动作,对这类继续生产过程的控制称顺序控制,象注塑机工艺过程大致按“合模 注射 延时 开模 产伸 产退”顺序动作,用单片机最易实现。 三、实验内容 8031的P1.0~P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平动作。P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。 四、程序框图 五、实验电路 六、实验步骤 按实验电路图接好连线。执行程序,把K1接到高电平,观察发光二极管点亮情况,确定工序执行是否正常,然后把K2置为低电平,看是否有声音报警,恢复中断1,报警停,又从刚才报警时一道程序执行下去。可以单步、单步跟踪,非全速断点、全速断点、连续执行功能调试软件,直到符合程序设计要求为止。 七、思考 修改程序,使每道工序中有多位输出。 八、参考程序 ORG 0190H 0190 75907F PO10: MOV P1,#7FH 0193 43B000 ORL P3,#00H 0196 30B4FD PO11: JNB P3.4,PO11 ;开工吗? 0199 43A884 ORL IE,#84H 019C 43B801 ORL IP,#01H 019F 75D000 MOV PSW,#00H ;初始化 01A2 758153 MOV SP,#53H 01A5 75907E PO12: MOV P1,#7EH ;第一道工序 01A8 31F1 ACALL PO1B 01AA 75907D MOV P1,#7DH ;第二道工序 01AD 31F1 ACALL PO1B 01AF 75907B MOV P1,#7BH ;第三道工序 01B2 31F1 ACALL PO1B 01B4 759077 MOV P1,#77H ;第四道工序 01B7 31F1 ACALL PO1B 01B9 75906F MOV P1,#6FH ;第五道工序 01BC 31F1 ACALL PO1B 01BE 75905F MOV P1,#5FH ;第六道工序 01C1 31F1 ACALL PO1B 01C3 75900F MOV P1,#0FH ;第七道工序 01C6 31A5 ACALL PO12 01C8 80DB SJMP PO12 01CA 8AF0 PO16: MOV B,R2 ;保护现场 01CC 75907F PO17: MOV P1,#7FH ;关输出 01CF 7520A0 MOV 20H,#0A0H ;振荡次数 01D2 D297 PO18: SETB P1.7 ;振荡 01D4 31EC ACALL PO1A ;延时 01D6 C297 CLR P1.7 ;停振 01D8 31EC ACALL PO1A ;延时 01DA D520F5 DJNZ 20H,PO18 ;不为0转 01DD C297 CLR P1.7 01DF 31EC ACALL PO1A ;停振 01E1 30B3E8 JNB P3.3,PO17 ;故障消除吗? 01E4 AAF0 MOV R2,B ;恢复现场 01E6 32 RETI 01E7 7A10 PO19: MOV R2,#10H 01E9 5113 ACALL DELY ;延时1 01EB 22 RET 01EC 7A06 PO1A: MOV R2,#06H 01EE 5113 ACALL DELY ;延时2 01F0 22 RET 01F1 7A30 P01B: MOV R2,#30H 01F3 5113 ACALL DELY ;延时3 01F5 22 RET ORG 0213H 0213 C002 DELY: PUSH 02H 0215 C002 DEL2: PUSH 02H 0217 C002 DEL3: PUSH 02H 0219 DAFE DEL4: DJNZ R2,DEL4 021B D002 POP 02H 021D DAF8 DJNZ R2,DEL3 021F D002 POP 02H 0221 DAF2 DJNZ R2,DEL2 0223 D002 POP 02H 0225 DAEC DJNZ R2,DELY 0227 22 RET END 实验7 8255控制交通灯 一、实验目的 进一步了解8255芯片的结构及编程方法,学习模拟交通控制的实现方法。 二、实验内容 用8255作输出口,控制12个发光二极管燃灭,模拟交通灯管理。 三、程序框图 四、实验电路 五、实验步骤 8255的PA0~PA7、 PB0~PB3接发光二极管L15~L13、L11~L9、L7~L5、L3~L1。 执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后东西路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪烁,闪烁若干次后,再切换到东西路口方向,之后重复以上过程。 六、参考程序 ORG 0BB0H 0BB0 758160 JOD0: MOV SP,#60H 0BB3 90FFDB MOV DPTR,#0FFDBH 0BB6 7488 MOV A,#88H 0BB8 F0 MOVX @DPTR,A ;8255初始化 0BB9 90FFD8 MOV DPTR,#0FFD8H OBBC 74B6 MOV A,#0B6H 0BBE F0 MOVX @DPTR,A 0BBF A3 INC DPTR 0BC0 740D MOV A,#0DH 0BC2 F0 MOVX @DPTR,A ;点亮4个红灯 0BC3 7A25 MOV R2,#25H ;延时 0BC5 120213 LCALL DELY 0BC8 90FFD8 JOD3: MOV DPTR,#0FFD8H 0BCB 7475 MOV A,#75H 0BCD F0 MOVX @DPTR,A 0BCE A3 INC DPTR 0BCF 740D MOV A,#0DH 0BD1 F0 MOVX @DPTR,A ;东西绿灯亮, ;南北红灯亮 0BD2 7A55 MOV R2,#55H 0BD4 120213 LCALL DELY ;延时 0BD7 7F05 MOV R7,#05H ;闪烁次数 0BD9 90FFD8 JOD1: MOV DPTR,#0FFD8H 0BDC 74F3 MOV A,#0F3H 0BDE F0 MOVX @DPTR,A 0BDF A3 INC DPTR 0BE0 740C MOV A,#0CH 0BE2 F0 MOVX @DPTR,A ;东西黄灯亮,南北红灯亮 0BE3 7A20 MOV R2,#20H 0BE5 120213 LCALL DELY ;延时 0BE8 90FFD8 MOV DPTR,#0FFD8H 0BEB 74F7 MOV A, #0F7H 0BED F0 MOVX @DPTR, A 0BEE A3 INC DPTR 0BEF 740D MOV A, #0DH 0BF1 F0 MOVX @DPTR, A ;南北红灯亮 0BF2 7A20 MOV R2, #20H 0BF4 120213 LCALL DELY ;延时 0BF7 DFE0 DJNZ R7, JOD1 ;闪烁次数未到,继续 0BF9 90FFD8 MOV DPTR,#0FFD8H 0BFC 74AE MOV A, #0AEH 0BFE F0 MOVX @DPTR,A 0BFF A3 INC DPTR 0C00 740B MOV A, #0BH 0C02 F0 MOVX @DPTR,A ;东西红灯亮,南北绿灯亮 0C03 7A55 MOV R2,#55H 0C05 120213 LCALL DELY ;延时 0C08 7F05 MOV R7,#05H ;闪烁次数 0C0A 90FFD8 JOD2: MOV DPTR,#0FFD8H 0C0D 749E MOV A,#9EH 0C0F F0 MOVX @DPTR,A 0C10 A3 INC DPTR 0C11 7407 MOV A,#07H 0C13 F0 MOVX @DPTR,A ;东西红灯亮,南北黄灯亮 0C14 7A20 MOV R2,#20H 0C16 120213 LCALL DELY ;延时 0C19 90FFD8 MOV DPTR,#0FFD8H 0C1C 74BE MOV A,#0BEH 0C1E F0 MOVX @DPTR,A 0C1F A3 INC DPTR 0C20 740F MOV A,#0FH 0C22 F0 MOVX @DPTR,A ;东西红灯亮 0C23 7A20 MOV R2,#20H 0C25 120213 LACLL DELY ;延时 0C28 DFE0 DJN R7,JOD2 ;闪烁次数未到继续 0C2A 020BC8 LJMP JOD3 ;循环 ORG 0213H 0213 C002 DELY: PUSH 02H 0215 C002 DEL2: PUSH 02H 0217 C002 DEL3: PUSH 02H ;延时 0219 DAFE DEL4: DJNZ R2,DEL4 021B D002 POP 02H 021D DAF8 DJNZ R2,DEL3 021F D002 POP 02H 0221 DAF2 DJNZ R2,DEL2 0223 D002 POP 02H 0225 DAEC DJNZ R2,DELY 0227 22 RET END 实验8 A/D转换实验 一、实验目的 (1)掌握A/D转换与单片机接口的方法; (2)了解A/D芯片0809转换性能及编程方法; (3)通过实验了解单片机如何进行数据采集。 二、实验内容 利用实验系统上的0809做A/D转换器,实验系统上的电位器提供模拟量输入,编制程序,将模拟量转换成数字,通过数码管显示出来。 三、程序框图 四、实验电路 五、实验步骤 把0809的0通道INT0用插针接至AIN1孔,0809的CS位接至FFE0孔,运行程序,数码管上显示0809.XX,后二位显示当前采集的电压转换的数字量,调节W1,该二位将随着电压变化而相应变化。 六、思考题 修改程序,能对INT0~INT7 8个通道轮流采样显示,每次显示1秒钟。 七、参考程序 ORG 05A0H 05A0 758153 SE11: MOV SP,#53H 05A3 757E00 MOV 7EH,#00H 05A6 757D08 MOV 7DH,#08H 05A9 757C00 MOV 7CH,#00H 05AC 757B09 MOV 7BH,#09H 05AF 757A10 MOV 7AH,#10H 05B2 757910 MOV 79H,#10H ;显示缓冲区初值 05B5 120425 LO18: LCALL DIS ;显示 05B8 7400 MOV A, #00H 05BA 90FFE0 MOV DPTR,#0FFE0H 05BD F0 MOVX @DPTR,A ;0809的0通道采样 05BE 120425 LCALL DIS 05C1 E0 MOVX A,@DPTR ;取出采样值 05C2 7879 MOV R0,#79H 05C4 120077 LCALL PTDS ;采样值送显示缓冲区 05C7 80EC SJMP LO18 ;循环 ORG 0077H 0077 F9 PTDS: MOV R1,A ;拆送显示缓冲区 0078 117C ACALL PTDS1 007A E9 MOV A,R1 007B C4 SWAP A 007C 540F PTDS1: ANL A, #0FH 007E F6 MOV @R0,A 007F 08 INC R0 0080 22 RET ORG 0425H 0425 C083 DIS: PUSH DPH 0427 C082 PUSH DPL 0429 D2D4 SETB RS1 042B 787E MOV R0,#7EH 042D 7A20 MOV R2,#20H 042F 7B00 MOV R3,#00H 0431 90044F MOV DPTR, #LS0 0434 E6 LS2: MOV A,@R0 0435 93 MOVC A,@A+DPTR 0436 79DC MOVX R1, #0DCH 0439 EA MOV A,R2 043A 09 INC R1 043B F3 MOVX @R1,A 043C DBFE LS1: DJNZ R3, LS1 043E C3 CLR C 043F 13 RRC A 0440 FA MOV R2,A 0441 18 DEC R0 0442 70F0 JNZ LS2 0444 F2 MOVX @R0,A 0445 18 DEC R0 0446 F4 CPL A 0447 F2 MOVX @R0,A 0448 C2D4 CLR RS1 044A D082 POP DPL 044C D083 POP DPH 044E 22 RET 044F C0F9A4 LS0: DB 0C0H, 0F9H,0A4H, 0B0H, 99H, 92H ;字形表 0452 B09992 0455 82F880 DB 82H, 0F8H, 80H, 90H, 88H, 83H, 0C6H 0458 908883 045B C6 045C A1868E DB 0A1H, 86H, 8EH, 0FFH, 0CH, 89H, 7FH, 0BFH 045F FF0C89 0462 7FBF END 实验9 D/A转换实验 一、实验目的 (1) 了解D/A转换芯片与单片机的接口方法; (2) 了解D/A转换芯片0832的性能及编程方法; (3) 了解单片机系统中扩展D/A转换芯片的基本方法。 二、实验内容 利用0832输出一个从0V开始逐渐升至5V再降至0V的电压,数码管显示送入的数字量值。 三、程序框图 四、实验电路 如下图所示: 五、实验步骤 把0832译码线0832 CS接至FFE0孔运行程序,数码管显示不断加大或减小的数字量,用万用表测试D/A输出孔AOUT应也能测出不断加大或减小的电压值。 六、思考 修改程序,使能产生锯齿波。 七、参考程序 ORG 05E0H 05E0 758153 SE13: MOV SP,#53H 05E3 757E00 MOV 7EH,#00H 05E6 757D08 MOV 7DH,#08H 05E9 757C03 MOV 7CH,#03H 05EC 757B02 MOV 7BH,#02H ;显示缓冲区初值 05EF 7E00 LO20: MOV R6,#00H 05F1 90FFE0 LO21: MOV DPTR,#0FFE0H 05F4 EE MOV A,R6 05F5 F0 MOVX @DPTR,A; ;送0382转换 05F6 7879 MOV R0,#79H 05F8 120077 LCALL PTDS 05FB 7A10 MOV R2,#10H 05FD 120425 LO23: LCALL DIS ;显示 0600 DAFB DJNZ R2,LO23 0602 0E INC R6 ;加1 0603 BEFFEB CJNE R6, #0FFH,LO21 ;不到FF继续加 0606 90FFE0 LO22: MOV DPTR,#0FFE0H 0609 1E DEC R6 060A EE MOV A,R6 060B F0 MOVX @DPTR,A ;减1送0832转换 060C 7879 MOV R0,#79H 060E 120077 LCALL PTDS 0611 7A10 MOV R2,#10H 0613 120425 LO24: LCALL DIS ;显示 0616 DAFB DJNZ R2,LO24 0618 BE00EB CJNE R6,#00H,LO22 ;不为 0继续减 061B 80D2 SJMP LO20 ;循环 ORG 0077H 0077 F9 PTDS: MOV R1,A ;拆送缓冲区 0078 117C ACALL PTDS1 007A E9 MOV A,R1 007B C4 SWAP A 007C 540F PTDS1: ANL A,#0FH 007E F6 MOV @R0,A 007F 08 INC R0 0080 22 RET ORG 0D59H 0D59 D2D4 SSEE: SETB RS1 ;换工作区 0D5B 7D05 MOV R5,#05H 0D5D 753020 SSE2: MOV 30H,#20H 0D60 75317E MOV 31H,#7EH 0D63 7F06 MOV R7,#06H 0D65 79DD SSE1: MOV R1,#0DDH 0D67 E530 MOV A,30H 0D69 F3 MOVX @R1,A ;字位送入 0D6A A831 MOV R0,31H 0D6C E6 MOV A,@R0 0D6D 900D85 MOV DPTR,#0DDFFH 0D70 93 MOVC A,@A+DPTR ;取字形代码 0D71 79DC MOV R1,#0DCH 0D73 F3 MOVX @R1,A ;字形送入 0D74 E530 MOV A,30H ;右移 0D76 03 RR A 0D77 F530 MOV 30H,A 0D79 1531 DEC 31H 0D7B 74FF MOV A,#0FFH 0D7D F3 MOVX @R1,A ;关显示 0D7E DFE5 DJNZ R7,SSE1 ;6位显示完了吗? 0D80 DDDB DJNZ R5,SSE2 ;5次显示完了吗? 0D82 C2D4 CLR RS1 0D84 22 RET ORG 044FH 044F C0F9A4 LS0: DB 0C0H,0F9H,0A4H,0B0H,99H,92H 0452 B09992 0455 82F880 DB 82H,0F8H
本文档为【单片机实验指导书】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_762784
暂无简介~
格式:doc
大小:1MB
软件:Word
页数:41
分类:工学
上传时间:2013-04-22
浏览量:40