<4D F736F F D20CEA2BBFAD4ADC0EDD3EBBDD3BFDABCBCCAF5CAB5D1E9D6B8B5BCCAE92E646F63>

Size: px
Start display at page:

Download "<4D F736F F D20CEA2BBFAD4ADC0EDD3EBBDD3BFDABCBCCAF5CAB5D1E9D6B8B5BCCAE92E646F63>"

Transcription

1 曹峥胡赤鹰编写 浙江大学控制科学与工程学系自动化实验中心 009 年 月

2 目 录 目 录... 第一篇 软件实验... 实验一 存储器块操作实验... 实验二 数值转换实验... 5 实验三 程序跳转表实验... 8 实验四 数据排序实验... 0 实验五 键盘显示仿真实验... 第二篇 硬件实验... 实验一 I/O 口控制实验... 5 实验二 音频驱动实验... 7 实验三 音乐编程实验... 9 实验四 动态扫描显示实验... 实验五 查询式键盘实验... 5 实验六 定时器实验... 7 实验七 计数器实验... 0 实验八 外部中断实验... 实验九 RS 串口通信实验... 实验十 ADC0809 并行 A/D 转换实验... 5 实验十一 DAC08 并行 D/A 转换实验... 0 第三篇 综合实验... 实验一 十字路口交通灯模拟实验... 实验二 DS8B0 传感器温度控制实验... 7 实验三 直流电动机控制实验... 5 实验四 步进电动机控制实验 实验五 电机综合控制系统开放性设计实验... 6 附录一 THKL-C5 型仿真器及 Keil uvision 仿真软件的使用说明... 6 附录二 ISP 下载器使用说明... 8 浙江大学控制科学与工程学系 自动化实验中心

3 第一篇软件实验 实验一存储器块操作实验一 实验目的. 熟悉 KEIL 集成调试环境和汇编程序的调试方法. 掌握存储器读写方法 ;. 了解内存块的移动方法 ; 二 实验说明实验 指定某块存储器的起始地址和长度, 要求能将其内容赋值 通过该实验学生可以了解单片机读写存储器的方法, 同时也可以了解单片机编程 调试方法 块移动是单片机常用操作之一, 多用于大量的数据复制和图象操作 例程 给出起始地址, 用地址加一方法移动块, 将指定源地址和长度的存储块移到指定目标地址为起始地址的单元中去 移动 000H 起始的 56 个字节到 000H 起始的 56 个字节 三 实验步骤实验 :. 启动 PC 机, 打开 KEIL 软件 (KEIL 软件使用见软件使用说明 ), 软件设置为模拟调试状态 在所建的 Project 文件中添加 TH_ 存储器清零.ASM 源程序进行编译, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解 也可改变 A 的值, 那样输出的内容也会改变. 打开 View 菜单中的 Memory Window, 在 Address 窗口输入 X:8000H 后回车, 观察 8000H-800FF 起始的 56 个字节单元的内容, 可以发现这 56 个字节的内容都为 实验 :. 新建一个 Project 文件, 添加 TH5_ 内存块移动.ASM 源程序进行编译, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解. 打开 View 菜单中的 Memory Window, 在 Address 窗口的 Memory# 输入 X:000H 后回车, 点击运行按钮后, 在 Memory# 输入 X:000H 后回车, 通过比较, 可观察到,000H 起始的 56 个字节存储块与 000H 起始的 56 个字节存储块各单元内数据对应相同, 说明存储块已移动 四 实验流程图及源程序实验 :. 说明 : 给外部 RAM8000~80FFH 的 56 个单元的内容赋值, 赋值的内容取决于程序中 A 的赋值. 流程图 浙江大学控制科学与工程学系 自动化实验中心

4 . 源程序 ORG 0000H START EQU 8000H MOV DPTR, #START ; 起始地址 MOV R0,#0 ; 设置 56 字节计数值 MOV A,#H Loop: INC DPTR ; 指向下一个地址 DJNZ R0,Loop ; 计数值减一 NOP LJMP $ END. 运行结果 : 外部 RAM8000H~80FFH 的内容都为 实验 :. 说明 : 将 000H 起始的 56 个字节存储块移动到 000H 起始的 56 个字节存储块. 流程图 浙江大学控制科学与工程学系 自动化实验中心

5 . 源程序 ORG 0000H MOV DPTR,#000H MOV A,#0H MOV R5,#O LOOP: INC DPTR DJNZ R5,LOOP MOV R0,#0H MOV R,#00H MOV R,#0H MOV R,#00H MOV R7,#0 LOOP: MOV DPH,R0 MOV DPL,R MOVX MOV DPH,R MOV DPL,R INC R INC R DJNZ R7,LOOP LJMP $ END 运行结果 :000H 起始的 56 个字节存储块与 000H 起始的 56 个字节存储块各单元内数据对应相同 浙江大学控制科学与工程学系 自动化实验中心

6 五 思考题. 如何将存储器块的内容置成某固定值 ( 例全填充为 0FFH)? 请用户修改程序, 完成此操作. 若源块地址和目标块地址有重叠, 该如何避免? 六 实验内容. 试编程将片内 RAM 中的数据依次复制到片外 RAM 假设源数据区的首地址为 0H, 目的数据区的首地址为 000H, 数据块长度为 0H. 两个 6 位无符号二进制数分别存放在片外 RAM 首址为 000H 和 00H 单元内, 将它们相加, 结果存入片内 RAM 0H( 低 8 位 ) H( 高 8 位 ) 实验二数值转换实验一 实验目的. 熟悉 KEIL 集成调试环境和汇编程序的调试方法. 掌握简单的数值转换算法. 基本了解数值的各种表达方法. 掌握数值的加减法运算 5. 掌握用查表的方法将 BCD 值转换成 ASCII 值 二 实验说明单片机系统内部运算用二进制, 而输入输出常用十进制, 以符合日常习惯, 因此, 数制转换是仪表设计中常用的程序之一 单片机中的数值有各种表达方式, 这是单片机的基础 掌握各种数制之间的转换是一种基本功 我们将给定的一字节二进制数, 转换成二十进制 (BCD) 码 将累加器 A 的值拆为三个 BCD 码, 并存入 RESULT 开始的三个单元, 例程 A 赋值 # 实验 主要让学生了解数值的 BCD 码和 ASCII 码的区别, 利用查表方法快速地进行数值转换 进一步掌握数值的各种表达方式 现在我们给出一个 BCD 数, 将其转换成 ASCII 值 如下 : 将累加器 A 的值转换为二个 ASCII 码, 并存入 Result 开始的二个单元, 例如 A 赋值 #AH 三 实验步骤实验 :. 启动 PC 机, 打开 KEIL 软件, 软件设置为模拟调试状态 在所建的 Project 文件中添加 TH_BCD.ASM 源程序进行编译, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解 也可改变 A 的值, 观察实验效果. 打开 View 菜单中的 Memory Window, 在 Address 窗口输入 D:0H 后回车, 点击运行按钮, 观察地址 0H H H 的数据变化,0H 内容将更新为 0,H 更新为 0,H 更新为 0 修改源程序中给累加器 A 的赋值, 重复实验, 观察实验效果 实验 :. 新建一个 Project 文件, 添加 TH_ASCII.ASM 源程序进行编译, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解 也可改变 A 的值, 观察实验效果. 打开 View 菜单中的 Memory Window, 在 Address 窗口输入 D:0H 后回车, 点击运行按钮, 观察地址 浙江大学控制科学与工程学系 5 自动化实验中心

7 0H H 的数据变化,0H 更新为,H 更新为 修改源程序中给累加器 A 的赋值, 重复实验, 观察实验效果 四 实验流程图及源程序例程 :. 说明 : 将 A 的值转换为十进制数, 存放在 0H~H 中. 流程图. 源程序 RESULT EQU 0H ORG 0000H LJMP START BINTOBCD: MOV B,#00 DIV AB MOV RESULT,A ; 除以 00 得百位数 MOV A,B MOV B,#0 DIV AB MOV RESULT+,A ; 余数除以 0 得十位数 MOV RESULT+,B ; 余数为个位数 START: MOV SP,#0H MOV A,# CALL BINTOBCD LJMP $ END. 运行结果 :0H~H 的内容分别为 0,0,0 浙江大学控制科学与工程学系 6 自动化实验中心

8 例程 :. 说明 : 将 A 的值转换为对应的 ASCII 值, 存放在 0H H 单元中. 流程图. 源程序 RESULT EQU 0H ORG 0000H LJMP START ASCIITAB: DB ABCDEF' ; 定义数字对应的 ASCII 表 BCDTOHEX: MOV DPTR,#ASCIITAB MOV B, A ; 暂存 A SWAP A ANL A,#0FH ; 取高四位 MOVC A,@A+DPTR ; 查 ASCII 表 MOV RESULT, A MOV A,B ; 恢复 A ANL A,#0FH ; 取低四位 MOVC A,@A+DPTR ; 查 ASCII 表 MOV RESULT+,A START: MOV SP,#0H MOV A,#AH CALL BCDTOHEX LJMP $ END 浙江大学控制科学与工程学系 7 自动化实验中心

9 . 运行结果 :0H H 单元的结果分别为 五 思考题 BCD 码转换成二进制数的算法是什么? 例如 :(9) BCD 对应的二进制数是多少? 六 实验内容. 把 R 中的 8 位二进制整数转换为压缩 BCD 码, 存放在 R R 5 中. 设 位 BCD 码 abcd 依次存放在内部 RAM 中 50H~5H 单元的低 位,( 高 位为 0) 试编程将其转换成二进制数并存入 R6R7 中 实验三程序跳转表实验一 实验目的. 熟悉 KEIL 集成调试环境和汇编程序的调试方法. 了解简单的函数计算. 掌握多分支结构程序的编程方法 二 实验说明多分支结构是程序中常见的结构, 在多分支结构的程序中, 能够按调用号执行相应的功能, 完成指定操作 若给出调用号来调用子程序, 一般用查表方法, 查到子程序的地址, 转到相应子程序 三 实验步骤. 启动 PC 机, 打开 KEIL 软件, 软件设置为模拟调试状态 在所建的 Project 文件中添加 TH_ 跳转.ASM 源程序进行编译, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解. 打开 View 菜单中的 Memory Window, 在 Address 窗口输入 D:0H 后回车, 点击运行按钮, 观察地址 0H H H H 的数据变化,0H 更新为 0,H 更新为,H 更新为,H 更新为 修改源程序中给 0H~H 的赋值, 重复实验, 观察实验效果 四 实验流程图及源程序. 说明 : 程序顺序跳转到相应的地址, 执行对应的操作. 流程图. 源程序 ORG 0000H LJMP START 浙江大学控制科学与工程学系 8 自动化实验中心

10 FUNC0: MOV 0H,#0 FUNC: MOV H,# FUNC: MOV H,# FUNC: MOV H,# FUNCENTER: ADD A,ACC ;AJMP 为二字节指令, 调用号 MOV DPTR,#FUNCTAB FUNCTAB: AJMP FUNC0 AJMP FUNC AJMP FUNC AJMP FUNC START: MOV A,#0 CALL FUNCENTER MOV A,# CALL FUNCENTER MOV A,# CALL FUNCENTER MOV A,# CALL FUNCENTER LJMP $ END. 运行结果 :0H~H 单元的值分别为 0 五 思考题. 写跳转程序时要注意些什么?. 跳转的作用有哪些? 六 实验内容 x x > 0 计算 y= x = 0 (-8 x + 6) x/ ( 取整 ) x < 0 假设 x 存于 R 0,y 存于片内 RAM 0H 浙江大学控制科学与工程学系 9 自动化实验中心

11 实验四数据排序实验 一 实验目的. 熟悉 KEIL 集成调试环境和汇编程序的调试方法. 掌握排序程序的设计方法 二 实验说明 本例程采用交换排序法将内部 RAM 中的 50~59H 单元中的 0 个单字节无符号二进制数按从小到大的次 序排列, 并将这一列排序后的数据从小到大依次存贮到外部 RAM 000H 开始处 三 实验步骤. 启动 PC 机, 打开 KEIL 软件, 软件设置为模拟调试状态 在所建的 Project 文件中添加 TH6_ 数据排 序.ASM 文件, 阅读 分析 理解程序, 编译无误后进入仿真环境. 在 VIEW 菜单中打开 MEMORY WINDOW 数据窗口, 分别观察 50H( 在 MEMORY# 中输入 D:50H) 000H(MEMORY# 窗口输入 X:000H). 可在程序指令 NOP 处设置断点, 在第一个断点处可观察 50~59H 单元内容是否为 0 个任意排列原始 数据 ; 在第二个断点处可观察每次排序的结果. 可单步执行程序观察排序过程 四 实验源程序 ORG 0000H JMP MAIN ORG 000H MAIN: MOV R0,#50H INC R0 INC R0 INC R0 INC R0 INC R0 INC R0 INC R0 INC R0 INC R0 ; 将 0 个随机数送入内部 RAM 的 50~59H 单元 NOP ; 可在此处设置断点 ACALL QUE ; 调用排序子程序 OUT: MOV R0,#50H MOV DPTR,#000H 浙江大学控制科学与工程学系 0 自动化实验中心

12 MOV R7,#0 OUT: MOV INC R0 INC DPTR DJNZ R7,OUT HERE: AJMP HERE NOP ; 可在此处设置断点, 观察每次排序结果 QUE: CLR 00H ; 清交换标志 MOV R,#50H MOV R6,#09H I: MOV A,R6 MOV R7,A MOV A,R MOV R0,A MOV A,@R0 I: INC R0 MOV R,A SUBB A,@R0 MOV A,R JC I SETB 00H XCH A,@R0 I: DJNZ R7,I JNB 00H,STOP INC R DJNZ R6,I END 五 实验内容 画出本实验程序的流程图 实验五键盘显示仿真实验一 实验目的. 熟悉 KEIL 集成调试环境和汇编程序的调试方法. 学习使用外围接口工具调试程序. 熟悉键盘显示接口电路及程序设计 二 实验说明为了能够比较直观地了解单片机中定时器 中断 并行端口 串行端口等常用外设的使用情况,Keil 提供了一些外围接口对话框, 通过 Peripherals 菜单选择, 该菜单的下拉菜单内容与你建立项目时所选的 CPU 有关, 如果是选择的 89C5 这一类 标准 的 5 机, 那么将会有 Interrupt( 中断 ) I/O Ports( 并行 I/O 口 ) Serial 浙江大学控制科学与工程学系 自动化实验中心

13 ( 串行口 ) Timer( 定时 / 计数器 ) 这四个外围设备菜单 打开这些对话框, 列出了外围设备的当前使用情况, 各标志位的情况等, 可以在这些对话框中直观地观察和更改各外围设备的运行情况 并行 I/O 口窗口定时器 / 计数器窗口对于初学者来说, 调试过程中仅仅看到一些数值还是有些枯燥无味 如果可以看到这些数值所引起的外围电路的变化, 例如数码管点亮 发光管发光等, 就形象直观多了 当前比较流行的实验仿真板 ( 如图 5., 图 5.) 插件很好地解决了这一问题, 它使初学者在没有硬件时就能感受到真实的学习环境, 降低了单片机的入门门槛 第一块仿真板的硬件电路很简单, 电路图已在板上, 第二块板实现的功能稍复杂, 其键盘和数码显示管部份的电路原理图如图 5. 所示, 常用字形码也在图中, 用户也可以根据图中的接线自行写出其它如 A B C D E F 等的字形码 除了键盘和数码管以外,P 口同样也接有 8 个发光二极管, 连接方式与图 5. 一样 ; 脉冲发生器是接入 T0 即 P. 引脚 图 5. 键盘 LED 显示实验仿真板 图 5. 单片机实验仿真板 浙江大学控制科学与工程学系 自动化实验中心

14 图 5. 单片机实验仿真板电路原理图三 实验步骤. 启动 PC 机, 打开 KEIL 软件, 确认仿真插件已经安装, 并经过相应设置 软件设置为模拟调试状态 新建一个 Project 文件, 添加源程序文件. 编程实现一个按键亮灯的功能, 编译无误后, 进入仿真环境. 选择单步或跟踪执行方式运行程序, 观察观察窗口中各寄存器的变化, 可以看到程序执行的过程, 加深对实验的了解. 打开 Peripherals 菜单中的 I/O Ports 中的 Ports Ports, 点击按键对应的各 I/O 口 (P), 观察 LED 对应的 I/O 口 (P) 的变化 5. 打开 Peripherals 菜单中的 键盘 LED 仿真板 (K), 点击按键, 观察 LED 的变化 四 提高实验. 根据键盘 LED 仿真板, 设计一个走马灯程序, 通过按键实现启停 速率及方向的控制. 根据实验仿真板 设计一个按键显示数字的程序, 即按 0 显示 0, 依次类推 浙江大学控制科学与工程学系 自动化实验中心

15 第二篇硬件实验 硬件实验通过计算机与仿真器来模拟单片机的运行, 用户可在计算机上编译 调试 下载 运行程序, 在实验箱上观察实验结果, 并且可以方便地观察单片机内部各寄存器的状态 其系统 组成如下图 : RS- 仿真插头计算机仿真器用户系统 ( 实验箱 ) 硬件实验系统示意图 硬件实验的一般步骤 :. 根据实验指导书正确进行各模块间接口的连接 该步骤一定要在上电前进行, 严禁带电操作. 用串行数据线连接计算机与仿真器 ( 断电时进行, 严禁带电插拔 ); 把仿真头插到 80C5 单片机的紧锁插座中, 注意仿真头的方向 : 缺口朝上 ( 断电时进行, 严禁带电操作 ). 进行 KEIL 软件的设置 ( 见软件使用说明 ), 编辑汇编源程序, 编译直至无误. 打开实验箱电源, 联机调试, 可以单步或跟踪或全速方式运行程序, 同时观察运行结果 5. 也可把源程序编译成可执行文件 (.hex), 并用 ISP 烧录器烧到单片机中运行 ( 芯片缺口朝上, 不建议使用 ) (ISP 烧录器的使用见软件使用说明 ) 实验时请注意 :. 严禁插拔实验箱上的模块和芯片, 不要打开与本实验不相关模块的电源. 每次做完实验后, 关闭电源, 把移动过的短路帽 拨动开关 拨码开关等还原到原来的状态 浙江大学控制科学与工程学系 自动化实验中心

16 实验一 I/O 口控制实验一 实验目的 学习 P 口的使用方法 ; 学习延时子程序的编写和使用; 二 实验说明 P 口是准双向口, 它作为输出口时与一般的双向口使用方法相同 由准双向口结构可知当 P 口用作输入口时, 必须先对口的锁存器写, 若不先对它写, 读入的数据可能是不正确的 三 实验步骤实验 : 用 P 口做输出口, 接八位逻辑电平显示, 程序功能使发光二极管从右到左轮流循环点亮 用 8P 数据线连接 80C5 MCU 模块的 JD(P 口 ) 与八位逻辑电平显示模块的 JDA5 打开 Keil uvision 仿真软件, 选择硬件仿真, 选择串行口, 设置波特率为 800 新建一个项目文件, 添加 TH7_PA.ASM 源程序, 编译, 直到编译无误后进入仿真环境 打开模块电源和总电源, 点击 RUN 按钮运行程序 观察发光二极管显示情况 发光二极管单只从右到左轮流循环点亮 实验 : 用 P.0 P. 作输入接两个拨断开关,P. P. 作输出, 接两个发光二极管 程序读取开关状态, 并在发光二极管上显示出来 用导线分别连接 80C5 MCU 模块的 P.0 P. 到八位逻辑电平输出模块的 K0 K;P. P. 到八位逻辑电平显示模块的 L0 L 打开 TH7_PB.ASM 源程序, 编译无误后, 进入仿真环境 全速运行程序, 拨动拨断开关, 观察发光二极管的亮灭情况 向上拨为点亮, 向下拨为熄灭 四 实验电路图 RPB LEDC LEDC LEDC LEDC LED5C LED6C LED7C LED8C 0 L0 L 5 L 6 L 9 L L5 5 L6 6 L7 9 UB Q Q Q Q Q5 Q6 Q7 Q8 LE OE D D D D D5 D6 D7 D L0 L L L L L5 L6 L7 JDB L0 L L L L L5 L6 L7 PB PB PB PB P5B P6B P7B P8B L0 L L L L L5 L6 L7 50 GND 0 7LS7 K0 H L SE K0 K H P8E K0 L SE K K H H P9E P0E K K K K K L L S5E S6E PE K K H L S7E K K5 H PE K L S8E K6 K7 H H PE PE K5 K6 K7 K5 K6 L L S9E S0E P5E K7 R9E 00 浙江大学控制科学与工程学系 K0 5 自动化实验中心 K K K R0E 00

17 五 实验流程图及源程序 流程图 开始 开始 设置初始 P.0,P. 置 设移位次 读入 P.0 口值 数据输 左一位 将读入的值输出到 P. 延时 读入 P. 口值 是 移位次数完 否 将读入的值输出到 (A)P 口循环点灯程序 (B)P 口输入输出程序框图 源程序 ( 一 ) 实验 ORG 0 LOOP: MOV A, #0FEH MOV R,#8 OUTPUT: MOV P,A RL A ACALL DELAY DJNZ R,OUTPUT LJMP LOOP DELAY: MOV R6,#0 MOV R7,#0 DELAYLOOP: ; 延时程序 DJNZ R6,DELAYLOOP DJNZ R7,DELAYLOOP ( 二 ) 实验 KEYLEFT BIT P.0 ; 定义 KEYRIGHT BIT P. LEDLEFT BIT P. LEDRIGHT BIT P. ORG 0 SETB KEYLEFT ; 欲读先置 SETB KEYRIGHT LOOP: MOV C,KEYLEFT MOV LEDLEFT,C MOV C,KEYRIGHT 浙江大学控制科学与工程学系 6 自动化实验中心

18 MOV LJMP LEDRIGHT,C LOOP 微机原理与接口技术实验指导书 END 六 思考题 对于本实验延时子程序 Delay: MOV R6,0 MOV R7, 0 DelayLoop:DJNZ R6,DelayLoop DJNZ R7,DelayLoop 本模块使用 MHz 晶振, 粗略计算此程序的执行时间为多少? 七 实验内容. 编写程序, 使发光二极管沿一个方向循环点亮. 改变发光二极管移动步长 方向和时间 END 实验二音频驱动实验一 实验目的. 学习输入 / 输出端口控制方法 ;. 了解音频发声原理 二 实验说明本实验是利用 89C5 端口定时器输出控制端口, 驱动蜂鸣器发声, 声音的频率高低由延时快慢控制 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 接到蜂鸣器模块 (D7) 的 IN 端, 蜂鸣器模块的电源短路帽 JD7 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH8_ 音频.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境, 全速运行程序. 实验现象 : 蜂鸣器周期性的发出单频声音 四 实验电路图本实验用到 80C5/C805F MCU 模块 (D 区 ), 蜂鸣器模块 (D7 区 ) 蜂鸣器驱动电路原理参考图. IN R 0K C 0.0uF Q 8550 R 7 Bell 图. 蜂鸣器驱动电路 五 实验流程图及源程序. 流程图 浙江大学控制科学与工程学系 7 自动化实验中心

19 . 源程序 ORG 0000H OUTPUT BIT P.0 LOOP: CLR C MOV OUTPUT,C CALL DELAY SETB C MOV OUTPUT,C CALL DELAY AJMP LOOP 六 思考题. 如何编写程序, 让蜂鸣器播放一首歌曲. 改变频率, 能产生什么效果? DELAY: MOV R5,# A: MOV R6,#0FFH A: MOV R7,#0FFH DLOOP: DJNZ R7,DLOOP DJNZ R6,A DJNZ R5,A END 浙江大学控制科学与工程学系 8 自动化实验中心

20 实验三音乐编程实验 一 实验目的 掌握单片机音频发声原理, 掌握蜂鸣器的驱动电路 二 实验说明 使用 I/O 口输出音频脉冲, 脉冲经放大滤波后, 驱动蜂鸣器发声 要产生音频脉冲, 只要算出某一音频的周期 (/ 频率 ), 然后将此周期除以, 即为半周期的时间 利用定 时器定时这个半周期时间, 每当定时到后就将输出脉冲的 I/O 口反相, 然后重复定时此半周期时间再对 I/O 反相, 就可在 I/O 脚上得到此频率的脉冲 利用内部定时器使其工作在计数器模式, 改变计数值 TH0 及 TL0 以产生不同的频率 例如频率为 5Hz, 其周期 T=/5=9μs, 因此只要令计数器计 956μs/μs=956, 在每计数 956 次时将 I/O 反相, 就可得到中音 哆 (5Hz) 计数脉冲值与频率的关系公式如下 : N=Fi Fr N: 计数值 ; Fi: 内部计时一次为 μs, 故其频率为 MHz; Fr: 要产生的频率 ; 其计数值的求法 :T=6556-N=6556-Fi Fr 每个音符使用 个字节, 字节的高 位代表音符的高低, 低 位代表音符的节拍, 表 9. 为节拍与节拍码的对 照 如果 拍为 0. 秒,/ 拍是 0. 秒, 只要设定延迟时间就可以求得节拍的时间 假设 / 拍为 DELAY, 则 拍 应为 DELAY, 依此类推 所以只要求得 / 拍的 DELAY 时间, 其余的节拍就是它的倍数, 如表 9. 为 / 和 /8 节 拍的时间设定 表 9. 节拍与节拍码对照 节拍码 节拍数 节拍码 节拍数 / 拍 /8 拍 / 拍 / 拍 / 拍 /8 拍 拍 / 拍 5 又 / 拍 5 5/8 拍 6 又 / 拍 6 / 拍 8 拍 8 拍 A 又 / 拍 A 又 / 拍 C 拍 C 又 / 拍 F 又 / 拍 浙江大学控制科学与工程学系 9 自动化实验中心

21 表 9. 各调 / 节拍的时间设定 各调 /8 节拍的时间设定 曲调值 DELAY 曲调值 DELAY 调 / 5 毫秒 调 / 6 毫秒 调 / 87 毫秒 调 / 9 毫秒 调 / 50 毫秒 调 / 5 毫秒 建立音乐的步骤 : a. 先将乐谱的音符找出, 然后由表 9. 建立 T 值表的顺序 b. 将 T 值表建立在 TABLE, 构成发音符的计数值放在 TABLE 简谱码( 音符 ) 为高位, 节拍为 ( 节拍 数 ) 为低 位, 音符节拍码放在程序的 TABLE 处 表 9. 简谱对应的简谱码 T 值 节拍数 简谱 发音 简谱码 T 值 节拍码 节拍数 5 低音 SO 660 / 拍 6 低音 LA 660 / 拍 7 低音 TI 65 / 拍 中音 DO 6580 拍 中音 RE 又 / 拍 中音 MI 又 / 拍 中间 FA 拍 5 中音 SO A 又 / 拍 6 中音 LA C 拍 7 中音 TI A 6500 F 又 / 拍 高音 DO B 高音 RE C 650 高音 MI D 6557 高音 FA E 高音 SO F 657 不发音 0 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P. 接到蜂鸣器模块 (D7) 的 IN 端, 蜂鸣器模块的电源短路帽 JD7 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH9_MUSIC.ASM 源程序, 进 行编译, 编译无误后, 进入仿真环境, 全速运行程序. 实验现象 : 蜂鸣器周期性的发出 八月桂花开 歌曲 四 实验电路图 本实验用到 80C5/C805F MCU 模块 (D 区 ), 蜂鸣器模块 (D7 区 ) 蜂鸣器驱动电路原理参考实验八的 图. 五 实验源程序 ORG 0000H LJMP START ORG 000BH INC 0H ; 中断服务, 中断计数器加 浙江大学控制科学与工程学系 0 自动化实验中心

22 MOV TH0,#0D8H MOV TL0,#0EFH ;M 晶振, 形成 0 毫秒中断 I START: MOV SP,#50H MOV TH0,#0D8H MOV TL0,#0EFH MOV TMOD,#0H MOV IE,#8H MUSIC0: NOP MOV DPTR,#DAT ; 表头地址送 DPTR MOV 0H,#00H ; 中断计数器清 0 MOV B,#00H ; 表序号清 0 MUSIC: NOP CLR A MOVC A,@A+DPTR ; 查表取代码 JZ END0 ; 是 00H, 则结束 CJNE A,#0FFH,MUSIC5 LJMP MUSIC MUSIC5: NOP MOV R6,A INC DPTR MOV A,B MOVC A,@A+DPTR ; 取节拍代码送 R7 MOV R7,A SETB TR0 ; 启动计数 MUSIC: NOP CPL P. MOV A,R6 MOV R,A LCALL DEL MOV A,R7 CJNE A,0H,MUSIC ; 中断计数器 (0H)=R7 否? ; 不等, 则继续循环 MOV 0H,#00H ; 等于, 则取下一代码 INC DPTR LJMP MUSIC MUSIC: NOP CLR TR0 ; 休止 00 毫秒 浙江大学控制科学与工程学系 自动化实验中心

23 MOV R,#0DH MUSIC: NOP MOV R,#0FFH LCALL DEL DJNZ R,MUSIC INC DPTR LJMP MUSIC END0: NOP MOV R,#6H ; 歌曲结束, 延时 秒后继续 MUSIC6: MOV R,#00H LCALL DEL DJNZ R,MUSIC6 LJMP MUSIC0 DEL: NOP DEL: MOV R,#0H DEL: NOP DJNZ R,DEL NOP DJNZ R,DEL NOP DAT: DB 8H, 0H, CH, 0H,0H, 0H, CH, 0H DB 8H, 0H, 0H, 0H,CH, 0H, 8H, 0H DB CH, 0H, 0H, 0H,CH, 0H, 8H, 0H DB 0H, 80H, 0FFH, 0H,0H,CH, 0H, 8H DB 0H, 5H, 0H, CH,0H, 0H, 0H, 6H DB 0H, 0H, 0H, BH,0H, 6H, 0H, 0H DB 0H, 0H, 80H, 0FFH,0H, 0H,CH, 0H DB 8H, 0H, 0H, 0H,6H, 0H, BH, 0H DB 0H, 0H, BH, 0H,0H, 0H, CH, 0H DB 8H, 0H, 0H, 0H,6H, 0H, BH, 0H DB 0H, 0H, BH, 0H,0H, 0H, CH, 0H DB 8H, 0H, 5H, 0H,CH, 0H, 0H, 0H DB 6H, 0H, 0H, 0H,BH, 0H, 6H, 0H DB 0H, 0H, 0H, 80H,0H, 0H, CH, 0H DB 0H, 0H, CH, 0H,0H, 0H, 6H, 0H DB BH, 0H, 0H,0H,BH, 0H, 0H, 5H DB FH, 05H, 0H, 0H,CH, 0H, 0H, 0H DB 6H, 0H, BH, 0H,0H, 0H, BH, 0H DB 0H, 0H, CH, 0H,8H, 0H, 5H, 0H DB CH, 0H, 0H, 0H,6H, 0H, 0H, 0H DB BH, 0H, 6H, 0H,0H, 0H, 0H, 0H 浙江大学控制科学与工程学系 自动化实验中心

24 DB 0H, 0H, CH, 0H,8H, 0H, CH, 0H DB 0H, 0H, 6H, 0H,H, 60H, 8H, 0H DB 5H, 0H, H, 0H,8H, 80H, 00H END 六 思考题. 根据单片机控制发音的原理, 如何利用定时器得到含有泛音的声音, 使音色更好?. 在实际应用系统中, 如何提高声音的音量? 如何用软件对音量进行调节? 七 实验内容编写一首自己喜欢的歌曲的乐谱 实验四动态扫描显示实验 一 实验目的. 掌握数字 字符转换成显示段码的软件译码方法 ;. 动态显示的原理和相关程序的编写 ; 二 实验说明动态显示, 也称扫描显示 显示器由 8 个共阴极 LED 数码管构成 单片机 P0 口输出显示段码, 经由一片 7LS5 驱动输出给 LED 管, 由 P 口输出位码, 经由 7LS06 输出给 LED 管 三 实验步骤. 用 8P 数据线将 80C5/C805F MCU 模块的 JD0(P0 口 ) JD(P 口 ) 分别与八位动态数码显示模块的 JDA JDA 相连 ; 八位动态数码显示模块的 JTA 的短路帽全打在 处. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_8LED 动态 DISP.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 动态数码显示模块显示 6868 四 实验电路图本实验用到 80C5/C805F MCU 模块 (D 区 ), 八位动态数码显示模块 (A 区 ) 八位动态数码显示电路 II 原理参考图. RPA K GND DisA_ DisB_ DisC_ DisD_ DisE_ DisF_ DisG_ DisH_ GND UA 9 OE T/R A0 A A A A A5 A6 A7 GND 7LS5 B0 B B B B B5 B6 B DisA DisB DisC DisD DisE DisF DisG DisH DisA DisB DisC DisD DisE DisF DisG DisH LEDA a DPY 7 a a a a b c f b f b f b f b g g g g d e e c e c e c e c 0 d d d d f 5 dp dp dp dp g dp N BIT7 N 9 BIT6 N 8 BIT5 N 6 BIT DisA DisB DisC DisD DisE DisF DisG DisH LED0A a DPY 7 a a a a b c f b f b f b f b g g g g d e e c e c e c e c 0 d d d d f 5 dp dp dp dp g dp N BIT N 9 BIT N 8 BIT N 6 BIT0 JDA' BIT' JDA' DATE' BIT0_ BIT_ BIT_ BIT_ BIT_ BIT5_ BIT6_ BIT7_ DisA_ DisB_ DisC_ DisD_ DisE_ DisF_ DisG_ DisH_ RPA K GND BIT0_ BIT_ BIT_ BIT_ BIT_ BIT5_ BIT6_ BIT7_ BIT_ BIT5_ BIT6_ BIT7_ UAA 7LS06 UAB 7LS06 UAC 5 6 7LS06 UAD 9 8 BIT BIT5 BIT6 BIT7 BIT0_ BIT_ BIT_ BIT_ UAA 7LS06 UAB 7LS06 UAC 5 6 7LS06 UAD 9 8 BIT0 BIT BIT BIT 7LS06 7LS06 五 实验源程序 图. 八位动态数码显示电路 II 浙江大学控制科学与工程学系 自动化实验中心

25 DBUF EQU 0H MOV P0,A TEMP EQU 0H MOV A,R ORG 0000H MOV P,A LJMP DISP ACALL DELAY ORG 000H MOV A,R DISP: RL A MOV 0H,#8 MOV R,A MOV H,#6 INC R0 MOV H,# DJNZ R,DP0 MOV H,#8 SJMP DISP0 MOV H,#6 SEGTAB: MOV 5H,# DB FH,06H,5BH ; 0,, DB FH,66H,6DH ;,,5 MOV R0,#DBUF DB 7DH,07H,7FH, ; 6,7,8, MOV R,#TEMP DB 6FH,77H,7CH ; 9,A,B MOV R,#6 DB 58H,5EH,7BH, ; C,D,E MOV DPTR,#SEGTAB DB 7H,00H,0H ; F,,- DP00: MOV A,@R0 MOVC A,@A+DPTR DELAY: MOV R,#0H AA: MOV R5,#0FFH INC R AA: NOP INC R0 NOP DJNZ R,DP00 DJNZ R5,AA DISP0: MOV R0,#TEMP DJNZ R,AA MOV R,#6 MOV R,# END DP0: MOV A,@R0 六 思考题. 程序停止运行后, 显示随之变化, 为什么? 七 实验内容. 画出实验例程的流程图. 如何修改程序, 实现八位 LED 数码管只显示其中的两位?. 将显示改成闪烁显示模式, 频率约 Hz 浙江大学控制科学与工程学系 自动化实验中心

26 微机原理与接口技术实验指导书 实验五查询式键盘实验一 实验目的 掌握键盘和显示器的接口方法和编程方法; 掌握键盘和八段码显示器的工作原理; 掌握静态显示的原理和相关程序的编写; 二 实验说明实验箱提供了 8 个按钮的小键盘, 可接到单片机的并行口, 如果有键按下, 则相应输出为低, 否则输出为高 单片机通过识别, 判断按下什么键 有键按下后, 要有一定的延时, 防止由于键盘抖动而引起误操作 三 实验步骤 用 8P 数据线将 80C5/C805F00MCU 模块的 JD0(P0 口 ) 与查询式键盘模块 (C7)JDC7 相连 在实验箱右上角的扩展区中插入静态串行显示模块, 用导线将 80C5/C805F00MCU 模块的 P.0(RXD) P.(TXD) 分别与静态数码显示模块的 DIN CLK 相连 ; 将 A7 区的电源短路帽打到右端 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_ 查询式键盘.ASM 源程序, 进行编译, 直到编译无误, 进入仿真环境 5 全速运行程序 在查询式键盘模块上按下某个键, 观察数码管显示是否与按键值一致, 键值从右至左为 0~7 四 实验电路图 K0 K0 KEY0 JDC KEY0-7 K0 K K K K K5 K6 K7 R R R R R5 R6 R7 R8 0K 0K 0K 0K 0K 0K 0K 0K K K K K K5 K6 K K K K K5 K6 KEY KEY KEY KEY KEY5 KEY6 K7 K7 KEY7 查询式键盘模块 a b c d e f g h DIS a DPY b a c f b g d e e c d f g dp dp a b c d e f g h DIS a DPY b a c f b g d e e c d f g dp dp a b c d e f g h DIS a DPY b a c f b g d e e c d f g dp dp a b c d e f g h DIS 0 a DPY 9 b a 8 c f b 5 g d e e c d f g dp 7 dp a5 b5 c5 d5 e5 f5 g5 h DIS5 a DPY b a c f b g d e e c d f g dp dp a6 b6 c6 d6 e6 f6 g6 h DIS6 a DPY b a c f b g d e e c d f g dp dp R 5 R 5 R 5 R 5 R5 5 R6 5 DIN U 7LS6 U 7LS6 U 7LS6 a a a A Q0 A Q0 A Q0 b b b Q Q Q 5 c 5 c 5 c B Q B Q B Q 6 d 6 d 6 d Q Q Q 0 e 0 e 0 e Q Q Q 9 f 9 f 9 f MR Q5 MR Q5 MR Q5 g g g Q6 Q6 Q6 8 h 8 h 8 h CLK Q7 CLK Q7 CLK Q7 GND GND GND U 7LS6 A Q0 Q 5 B Q 6 Q 0 Q 9 MR Q5 Q6 8 CLK Q7 GND a b c d e f g h U5 7LS6 A Q0 Q 5 B Q 6 Q 0 Q 9 MR Q5 Q6 8 CLK Q7 GND a5 b5 c5 d5 e5 f5 g5 h5 U6 7LS6 A Q0 Q 5 B Q 6 Q 0 Q 9 MR Q5 Q6 8 CLK Q7 GND a6 b6 c6 d6 e6 f6 g6 h6 CLK 静态串行显示模块 浙江大学控制科学与工程学系 5 自动化实验中心

27 五 实验流程图及源程序. 流程图 开始 初始化地址参数 开始 键入? 显示缓冲区初始化 去抖动 LED 显示 查表读键值 有键输入? 读取键值 N 比较相同? Y 等待键释 N 调整表指针调整键码 键值转换为显示数据 得键码 主程序框 返回 源程序 DBUF EQU 0H TEMP EQU 0H ORG 0000H LJMP START ORG 000H START: MOV A,#0H MAIN: ACALL DISP ACALL KEY AJMP MAIN KEY: MOV P,#0FFH MOV A,P CJNE A, #0FFH, K00 AJMP KEY K00: ACALL DELAY MOV A,P CJNE A,#0FFH,K0 AJMP KEY K0: MOV R,#8 MOV R,#0 MOV B,A MOV DPTR,#K0TAB K0: MOV A,R MOVC A,@A+DPTR CJNE A,B,K0 K0: MOV A,P CJNE A,#0FFH,K0 ACALL DELAY MOV A,R K0: INC R DJNZ R,K0 MOV A,#0FFH LJMP MAIN K0TAB: DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DISP: MOV DBUF,A MOV DBUF+,#6 MOV DBUF+,#6 MOV DBUF+,#6 MOV DBUF+,#6 浙江大学控制科学与工程学系 6 自动化实验中心

28 MOV R0, #DBUF SETB 0BH ;CLK MOV R, #TEMP DJNZ R, DP MOV R, #5 INC R0 DP0: MOV DPTR,#SEGTAB DJNZ R, DP MOV MOVC SEGTAB: DB FH,06H,5BH,FH,66H,6DH A DB 7DH,07H,7FH,6FH,77H,7CH INC R0 DB 58H,5EH,79H,7H,00H,0H INC R DJNZ R, DP0 DELAY: MOV R, #0H MOV R0, #TEMP AA: MOV R5, #0F8H MOV R, #5 AA: NOP DP: MOV R, #8 NOP MOV DJNZ R5, AA DP: RLC A DJNZ R, AA MOV 0B0H,C;DIN, C CLR 0BH ;CLK END 六 思考题. 程序如何确保每按一次键, 只处理一次. 动态扫描和静态扫描有什么区别? 七 实验内容 试设计长按功能, 当按键时间长于 秒时, 个位上的数字以一定速率增加, 直至按键释放 实验六定时器实验 一 实验目的. 学习 89C5 内部计数器的使用和编程方法 ;. 进一步掌握中断处理程序的编写方法 ; 二 实验说明关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置 内部计数器在单片机中主要有定时器和计数器两个功能 本实验使用的是定时器, 定时为一秒钟 CPU 运用定时中断方式, 实现每一秒钟输出状态发生一次反转, 即发光管每隔一秒钟亮一次 定时器有关的寄存器有工作方式寄存器 TMOD 和控制寄存器 TCON TMOD 用于设置定时器 / 计数器的工作方式 0-, 并确定用于定时还是用于计数 TCON 主要功能是为定时器在溢出时设定标志位, 并控制定时器的运行或停止等 内部计数器用作定时器时, 是对机器周期计数 每个机器周期的长度是 个振荡器周期 因为实验系统的晶振是 MHZ, 本程序工作于方式, 即 8 位自动重装方式定时器, 定时器 00uS 中断一次, 所以定时常数的设置可按以下方法计算 : 机器周期 = MHz=uS (56- 定时常数 ) us=00us 定时常数 =56 然后对 00uS 中断次数计数 0000 次, 就是 秒钟 在本实验的中断处理程序中, 因为中断定时常数的设置对中断程序的运行起到关键作用, 所以在置数前要先关对应的中断, 置数完之后再打开相应的中断 浙江大学控制科学与工程学系 7 自动化实验中心

29 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 与八位逻辑电平显示模块 (A5) 的任意一只发光二极管相连. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_ 定时器.ASM 源程序, 编译无误后, 进入仿真环境. 全速运行程序, 发光二极管隔一秒点亮一次, 点亮时间为一秒 LED0 UF 四 实验电路图 R RF K 50 RF 00 CA pf RESET XTALA.059MHz CF 0uF P.0 P. P. P. P. P.5 P.6 P.7 RST P.0/RXD P./TXD P./INT0 P./INT P./T0 P.5/T P.6/WR P.7/RD XTAL XTAL VSS 89C5 P0.0 P0. P0. P0. P0. P0.5 P0.6 P0.7 EA ALE/PROG PSEN P.7 P.6 P.5 P. P. P. P. P 五 实验流程图及源程序. 流程图 CA pf 主程序框图 定时中断子程序框图. 源程序 Tick EQU 5000 ; 0000 x 00us = s T00us EQU 0 ; 00us 时间常数 (M) C00us EQU 5H ; 00us 记数单元 LEDBuf BIT 00H LED BIT P.0 ORG 0000H LJMP Start ORG 000BH LJMP T0Int ORG 000H 浙江大学控制科学与工程学系 8 自动化实验中心

30 T0Int: PUSH PSW MOV A, C00us+ JNZ Goon DEC C00us Goon: DEC C00us+ MOV A, C00us ORL A, C00us+ JNZ Exit ; 00us 记数器不为 0, 返回 MOV C00us, #HIGH(TICK) ;#HigH(Tick) MOV C00us+, #LOW(TICK) ;#low(tick) CPL LEDBuf ; 00us 记数器为 0, 重置记数器 ; 取反 LED Exit: POP PSW I Start: MOV TMOD, #0H ; 方式, 定时器 MOV TH0, #t00us MOV TL0, #t00us MOV IE, #000000B ; EA=, IT0 = SETB TR0 ; 开始定时 CLR LEDBuf CLR P.0 MOV C00us, #HigH(Tick) MOV C00us+, #low(tick) Loop: MOV C, LEDBuf MOV P.0, C LJMP Loop END 六 思考题. 如何将 LED 的状态间隔改为 秒, 程序如何改写?. 如果更换不同频率的晶振, 会出现什么现象? 如何调整程序? 七 实验内容 用 8P 数据线将 P 口 (JD) 与 JDA5 相连, 编写程序使 8 只发光二极管循环点亮, 要求 L0~L 之间时 间间隔为 0.5s,L~L7 之间时间间隔为 s 浙江大学控制科学与工程学系 9 自动化实验中心

31 实验七计数器实验 一 实验目的. 学习 89C5 内部定时 / 计数器使用方法 ;. 学习计数器各种工作方式的用法 ; 二 实验说明. 89C5 内部有两个 6 位的定时 / 计数器 T0 和 T,6 位是指定时 / 计数器内的计数器是 6 位的, 由 个 8 位计数器组成 本实验用的是 T0, 它的 个 8 位计数器是 TH0 和 TL0,TH0 是高 8 位,TL0 是低八位 所谓加法计数器, 指其计数的方法是对计数脉冲每次加 在其它单片机和可编程计数器芯片中, 有的计数器是减法计数器, 如 855 的 位计数器,85 的 6 计数器, 即先设置计数器的初值, 然后对计数器脉冲每次减, 减到 0, 计数器溢出 而 805 内部的计数器是加法计数器, 需先设置计数器的初值, 本实验设置计数器初值为 0, 然后对计数脉冲每次加, 加到计数器满后溢出. 本实验中内部计数器起计数器的作用 外部事件计数脉冲由 P. 引入定时器 T0 单片机在每个机器周期采样一次输入波形, 因此单片机至少需要两个机器周期才能检测到一次跳变 这就要求被采样电平至少维持一个完整的机器周期, 以保证电平在变化之前即被采样 这就决定了输入波形的频率不能超过机器周期频率 三 实验步骤. 用 8P 数据线将 80C5/C805F MCU 模块的 JD(P 口 ) 与八位逻辑电平显示模块的 JDA5 相连 ; 用导线将 80C5/C805F MCU 模块的 P. 与单次脉冲模块 (C8) 的任一输出端相连. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH5_ 计数器.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 连续按动单次脉冲的按键, 八位逻辑电平显示模块显示按键次数 四 实验电路图 CC8 0.uF 5 SC8 SW_RESET 6 RC8 M RC8 M RC8 M RC8 M UC8 5 EN S R S R S R S R GND CC0 Q Q Q Q UC8F UC8D 050 PC8 PC8 R5C8 K LEDC8 Pulse H-Pulse L-Pulse 单次脉冲电路 RF K RF 00 KEY R8 0K RESET CA pf P.0 P. P. P. P. 5 P.5 6 P.6 7 P.7 8 CF 9 0uF P.0 0 P. P. P. P. P.5 5 P.6 6 P.7 7 XTALA 8.059MHz 9 0 CA pf UF P.0 P. P. P. P. P.5 P.6 P.7 RST P.0/RXD P./TXD P./INT0 P./INT P./T0 P.5/T P.6/WR P.7/RD XTAL XTAL VSS P0.0 P0. P0. P0. P0. P0.5 P0.6 P0.7 89C5 EA ALE/PROG PSEN P.7 P.6 P.5 P. P. P. P. P P0.0 8 P0. 7 P0. 6 P0. 5 P0. P0.5 P0.6 P0.7 EA 0 ALE 9 PSEN 8 P.7 7 P.6 6 P.5 5 P. P. P. P. P.0 P.0 P. P. P. P. P.5 P.6 P.7 U0 OC C D D 7 D 8 D 5D 6D 7 7D 8 8D 7LS57 Q Q Q Q 5Q 6Q 7Q 8Q LED0 LED LED LED LED LED5 LED6 LED7 R 50 R 50 R 50 R 50 R5 50 R6 50 R7 50 R8 50 浙江大学控制科学与工程学系 0 自动化实验中心

32 五 实验流程图及源程序. 流程图. 源程序 ORG 0000H LJMP START ORG 000H START: MOV TMOD, #000000B ; 方式, 记数器 MOV TH0, #0 MOV TL0, #0 SETB TR0 ; 开始记数 Loop: MOV P, TL0 LJMP Loop END 六 思考题. 由功能 计数启动条件 重复启动条件等诸方面比较 80C5 的各种方式. 89C5 单片机的最高计数频率为多少? 七 实验内容 统计按键次数, 在数码管上显示出来 实验八外部中断实验一 实验目的. 掌握外部中断技术的基本使用方法 ;. 掌握中断处理程序的编写方法 ; 二 实验说明. 外部中断的初始化设置共有三项内容 : 中断总允许即 EA=, 外部中断允许即 EXi=(i=0 或 ), 中断方式设置 中断方式设置一般有两种方式 : 电平方式和脉冲方式, 本实验选用后者, 其前一次为高电平后一次为低电平时为有效中断请求 因此高电平状态和低电平状态至少维持一个周期, 中断请求信号由引脚 INT0(P.) 和 INT(P.) 引入, 本实验由 INT0(P.) 引入. 中断服务的关键 : a 保护进入中断时的状态 堆栈有保护断点和保护现场的功能使用 PUSH 指令, 在转中断服务程序之前把单片机中有关寄存单元的内容保护起来 b 必须在中断服务程序中设定是否允许中断重入, 即设置 EX0 位 c 用 POP 指令恢复中断时的现场. 中断控制原理 : 中断控制是提供给用户使用的中断控制手段 实际上就是控制一些寄存器,5 系列用于此目的的控制寄存器有四个 :TCON IE SCON 及 IP 浙江大学控制科学与工程学系 自动化实验中心

33 . 中断响应的过程 : 首先中断采样然后中断查询最后中断响应 采样是中断处理的第一步, 对于本实验的脉冲方式的中断请求, 若在两个相邻周期采样先高电平后低电平则中断请求有效,IE0 或 IE 置 ; 否则继续为 0 所谓查询就是由 CPU 测试 TCON 和 SCON 中各标志位的状态以确定有没有中断请求发生以及是那一个中断请求 中断响应就是对中断请求的接受, 是在中断查询之后进行的, 当查询到有效的中断请求后就响应一次中断 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 与八位逻辑电平显示模块的任一发光二极管相连 ; 用导线将 80C5/C805F MCU 模块的 P. 与单次脉冲模块的任一输出端相连. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH6_ 外部中断.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 连续按动单次脉冲模块按键, 发光二极管每按一次状态取反, 即隔一次点亮 四 实验电路图 五 实验流程图及源程序. 流程图 主程序框图. 源程序 LED BIT P.0 LEDBuf BIT 0 外部中断子程序框图 浙江大学控制科学与工程学系 自动化实验中心

34 ORG 0000H LJMP Start ORG 000BH LJMP INTERRUPT ORG 000H INTERRUPT: PUSH PSW ; 保护现场 CPL LEDBuf ; 取反 LED MOV C, LEDBuf MOV LED, C POP PSW ; 恢复现场 I Start: CLR LEDBuf CLR LED MOV TCON, #0H ; 外部中断 0 下降沿触发 MOV IE, #8H ; 打开外部中断允许位 (EX0) 及总中断允许位 (EA) OK: LJMP OK END 六 思考题. 简述中断处理的一般过程. 脉冲方式如何防止重复响应外中断 七 实验内容 采用电平触发方式改写程序, 试记录一次按键动作中进入中断的次数 实验九 RS 串口通信实验一 实验目的. 了解 80C5 串行口的工作原理以及发送的方式 ;. 了解 PC 机通讯的基本要求 ; 二 实验说明 80C5 串行口经 电平转换后, 与 PC 机串行口相连 PC 机使用串口调试应用程序 V..exe, 实现上位机与下位机的通讯 本实验使用查询法接收和发送资料 上位机发出指定字符, 下位机收到后返回原字符 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 P. 分别与 RS 模块 (B) 的 TXD RXD 相连 ; 用平行九孔串口线将 RS 模块的 COMB 与 PC 机的串口相连 ;RS 模块的电源短路帽 JB 打到上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH9_RS.ASM 源程序, 进行编译, 编译无误后, 全速运行程序. 若 PC 机只有一个串口, 可将源程序编译成可执行文件, 把可执行文件用 ISP 烧录器烧录到 89S5/89S5 芯片中运行 ( 注意 : 芯片缺口朝上 ). 实验现象 : 打开串口调试助手软件, 选择波特率为 800, 数据位为 8, 奇偶校验为无, 停止位为 在串口调试助手软件的 发送的字符 / 数据 区输入字符或数据 ( 每次只发一个字符 ), 按手动发送, 浙江大学控制科学与工程学系 自动化实验中心

35 接收区收到相同的字符 / 数据, 或者按自动发送, 接收区将接受到发送的字符 / 数据 ( 注 : 自动发送的时间可以在串口调试助手中改动 ) 四 实验电路图本实验用到 80C5/C805F MCU 模块 (D 区 ), RS 模块 (B 区 ) RS 电路原理参考图 9. _B _B UB 6 EB uf C+ C - EB uf C+ 5 C - EB uf V+ 6 V- EB 5 GND uf MAX R OUT R IN T IN R IN R OUT T OUT T IN T OUT COMB 图 9. RS 电路 五 实验源程序 ORG 00H JMP START ORG 0H START: MOV SP,#60H MOV SCON,#000000B ; 设定串行方式 :8 位异步, 允许接收 MOV TMOD,#0H ; 设定计数器 为模式 ORL PCON,# B ; 波特率加倍 MOV TH,#0FH ; 设定波特率为 800 MOV TL,#0FH SETB TR ; 计数器 开始计时 AGAIN: JNB RI,$ ; 等待接收 CLR RI ; 清接收标志 MOV A,SBUF ; 接收数据缓冲 MOV SBUF,A ; 送发送数据 JNB TI,$ ; 等待发送完成 CLR TI ; 清发送标志 SJMP AGAIN END 六 思考题 按照串口通信的协义, 采用不同的传送方式, 设置相应的参数 ( 波特率, 停止位, 校验位等 ); 然后启动传 送, 单片机还具有多机通讯功能, 用来协调多个单片机工作 七 实验内容 将上位机发送的数据在数码管显示模块上显示出来 TXD RXD 浙江大学控制科学与工程学系 自动化实验中心

36 实验十 ADC0809 并行 A/D 转换实验一 实验目的. 掌握 ADC0809 模 / 数转换芯片与单片机的连接方法及 ADC0809 的典型应用 ;. 掌握用查询方式 中断方式完成模 / 数转换程序的编写方法 ; 二 实验说明本实验将可调电源模块输出的电压信号接入 A/D 转换芯片, 经 A/D 转换后将电压值在 779 的数码管上显示出来 本实验使用 ADC0809 模数转换器,ADC0809 是 8 通道 8 位 CMOS 逐次逼近式 A/D 转换芯片, 片内有模拟量通道选择开关及相应的通道锁存 译码电路,A/D 转换后的数据由三态锁存器输出, 由于片内没有时钟需外接时钟信号 下图为该芯片的引脚图 各引脚功能如下 : IN0~IN7: 八路模拟信号输入端 ADD-A ADD-B ADD-C: 三位地址码输入端 八路模拟信号转换选择由这三个端口控制 CLOCK: 外部时钟输入端 ( 小于 MHz) D0~D7: 数字量输出端 OE:A/D 转换结果输出允许控制端 当 OE 为高电平时, 允许 A/D 转换结果从 D0~D7 端输出 ALE: 地址锁存允许信号输入端 八路模拟通道地址由 A B C 输入, 在 ALE 信号有效时将该八路地址锁存 START: 启动 A/D 转换信号输入端 当 START 端输入一个正脉冲时, 将进行 A/D 转换 EOC:A/D 转换结束信号输出端 当 A/D 转换结束后,EOC 输出高电平 Vref(+) Vref(-): 正负基准电压输入端 基准正电压的典型值为 +5V 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.7 P.7 P.6 分别与 779 模块 (D) 的 79CS 79DAT 79CLK 相连 ; 用导线将阵列式键盘模块的 H0/H H/H 分别与 779 模块的 DIG0 DIG 相连 ; 用 8P 数据线将阵列式键盘模块的 JD 与 779 模块的 JD9 相连 ; 用 8P 数据线将 779 模块的 JD9 JD0 分别与八位动态数码显示模块的 JDA JDA 相连 ; 阵列式键盘模块处的 S 拨码开关的 打在 ON 处, 5 6 打在 OFF 处 ; 八位动态数码显示模块的 JTA 的短路帽打在 处. 用 8P 数据线将 80C5/C805F MCU 模块的 JD0(P0 口 ) JD8(A0-7) 分别与并行 A/D 转换模块的 JDC5 JDC5 相连 ; 用导线将 80C5/C805F MCU 模块的 WR RD P.0 ALE P. 分别与并行 A/D 转换模块的 WR RD CS CLK EOC 相连 ; AIN0 接可调电源模块 (D6) 的 0 5V 端 ; 并行 A/D 转换模块 (C5) 的电源短路帽 JC5 打在左端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_AD0809.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 运行程序, 数码管显示电压转化的数字量, 调节可调电源模块的 RWD6 电位器, 显示值随着变化, 顺时针旋转值增大,AD 转换值的范围是 00~FF, 显示值范围是 0~.98 浙江大学控制科学与工程学系 5 自动化实验中心

37 浙江大学控制科学与工程学系 6 自动化实验中心四 实验电路图 ADC0809 并行 AD 转换电路 RWD5 0K 0-5V 可调电源电路五 流程图及源程序. 流程图 GND IN-0 6 msb- - 0 IN IN IN- -7 lsb-8 7 IN- EOC 7 IN-5 ADD-A 5 IN-6 ADD-B ADD-C IN-7 5 ALE ref(-) 6 ENABLE 9 START 6 ref(+) CLOCK 0 U9D ADC0809 UDB 7LS U0DA 7LS ICAD0 ICAD ICAD ICAD ICAD ICAD5 ICAD6 ICAD7 IN0 IN IN IN IN IN5 IN6 IN7 IOCK A0 A A /WR_IC /RD_IC P9D CS_0809 P0D EOC PD +Vref C6D 0.uF PD IN-0 PD IN- PD IN- P5D IN- P6D IN- P7D IN-5 P8D IN-6 P9D IN U0DB 7LS 5 6 UDC 7LS 9 8 UDD 7LS R8C.7K

38 . 源程序 ADHEX DATA 050H DBUF DATA 060H BIT_COUNT DATA 070H TIMER DATA 07H TIMER DATA 07H TIMER DATA 07H DATA_IN DATA 00H DATA_OUT DATA 0H CLK BIT P.6 DAT BIT P.7 ORG 0000H LJMP MAIN ORG 000H MAIN: CLR A SETB P. MOV R0,#DBUF MOV DPTR,#0FE00H ;A/D NOP NOP WAIT: JNB P.,WAIT MOVX A,@DPTR ; 读入结果 MOV R7,A CALL TODISP ; 拆开显示 CALL DISPLAY CALL delay 浙江大学控制科学与工程学系 7 自动化实验中心

39 LJMP MAIN DISPLAY: ANL P,#00H ; CS779 有效 MOV DATA_OUT,#00000B ; AH, 复位命令 CALL SEND MOV DATA_OUT,#00000B ; 译码方式 0,0 位显示 CALL SEND MOV DATA_OUT,DBUF CALL SEND MOV DATA_OUT,#0000B ; 译码方式 0, 位显示 CALL SEND MOV DATA_OUT,DBUF+ CALL SEND MOV P,#0FFH ; CS779 无效 SEND: MOV BIT_COUNT,#8 ; 发送字符子程序 ANL P,#00H CALL LONG_DELAY SEND_LOOP: MOV C,DATA_OUT.7 MOV DAT,C SETB CLK MOV A,DATA_OUT RL A MOV DATA_OUT,A CALL SHORT_DELAY CLR CLK CALL SHORT_DELAY DJNZ BIT_COUNT,SEND_LOOP CLR DAT LONG_DELAY: MOV TIMER,#50 ; 延时约 00US DELAY_LOOP: DJNZ TIMER,DELAY_LOOP SHORT_DELAY: MOV TIMER,#0 ; 延时约 0US SHORT_LP: DJNZ TIMER,SHORT_LP DELAY: MOV TIMER,# AA0: MOV TIMER,#0 AA: MOV TIMER,#0 AA: NOP NOP DJNZ TIMER,AA 浙江大学控制科学与工程学系 8 自动化实验中心

40 DJNZ TIMER,AA DJNZ TIMER,AA0 TODISP: MOV DBUF+,#0H MOV A,R7 SWAP A ANL A,#0FH MOV DBUF+,A MOV A,R7 ANL A,#0FH MOV DBUF,A END 六 思考题. A/D 转换程序有三种编制方式 : 中断方式 查询方式 延时方式, 实验中使用了查询方式, 请用另两种 方式编制程序. P0 口是数据 / 地址复用的端口, 请说明实验中 ADC0809 的模拟通道选择开关在利用 P0 口的数据口或地 址口时, 程序指令和硬件连线的关系 七 实验内容. 试用中断方式改写 A/D 转换程序. 对每 0 次采到的值求均值并显示 浙江大学控制科学与工程学系 9 自动化实验中心

41 实验十一 DAC08 并行 D/A 转换实验 一 实验目的. 掌握 DAC08 直通方式, 单缓冲器方式 双缓冲器方式的编程方法 ;. 掌握 D/A 转换程序的编程方法和调试方法 ; 二 实验说明 本实验利用 DAC08 数 / 模转换芯片, 设计波形发生器, 输出多种波形 DAC08 是 8 位 D/A 转换器, 它采用 CMOS 工艺制作, 具有双缓冲器输入结构, 其引脚排列如图所示, DAC08 各引脚功能说明 : DI0~DI7: 转换数据输入端 CS: 片选信号输入端, 低电平有效 ILE: 数据锁存允许信号输入端, 高电平有效 WR: 第一写信号输入端, 低电平有效, Xfer: 数据传送控制信号输入端, 低电平有效 WR: 第二写信号输入端, 低电平有效 Iout: 电流输出 端, 当数据全为 时, 输出电流最大 ; 当数据全为 0 时, 输出电流最小 Iout: 电流输出 端 DAC08 具有 :Iout+Iout= 常数的特性 Rfb: 反馈电阻端 Vref: 基准电压端, 是外加的高精度电压源, 它与芯片内的电阻网络相连接, 该电压范围为 :-0V~+0V 和 GND: 芯片的电源端和地端 DAC08 内部有两个寄存器, 而这两个寄存器的控制信号有五个, 输入寄存器由 ILE CS WR 控制, DAC 寄存器由 WR Xref 控制, 用软件指令控制这五个控制端可实现三种工作方式 : 直通方式 单缓冲方式 双缓冲方式 直通方式是将两个寄存器的五个控制端预先置为有效, 两个寄存器都开通只要有数字信号输入就立即进入 D/A 转换 单缓冲方式使 DAC08 的两个输入寄存器中有一个处于直通方式, 另一个处于受控方式, 可以将 WR 和 Xfer 相连在接到地上, 并把 WR 接到 89C5 的 WR 上,ILE 接高电平,CS 接高位地址或地址译码的输出端上 双缓冲方式把 DAC08 的输入寄存器和 DAC 寄存器都接成受控方式, 这种方式可用于多路模拟量要求同时输出的情况下 三种工作方式区别是 : 直通方式不需要选通, 直接 D/A 转换 ; 单缓冲方式一次选通 ; 双缓冲方式二次选通 三 实验步骤. 用 8P 数据线将 80C5/C805F MCU 模块的 JD0(P0 口 ) 与并行 D/A 转换模块的 JDC 相连, 用导线将 80C5/C805F MCU 模块的 P.0 WR 分别与并行 D/A 转换模块的 CS WR 相连, 用万用表测量 -Vref 端的电压, 手动调节电位器 RWC, 把 -Vref 电压调到 -5V, 并行 D/A 转换模块的电源短路帽 JC 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH5_DA08 Sine.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境 ( 若添加 TH5_DA08 Square.ASM 输出为方波 ). 运行程序, 用示波器观察 D/A 转换模块输出的波形 幅度及频率 浙江大学控制科学与工程学系 0 自动化实验中心

42 四 实验电路图 JDC D D0 D D D D D5 D6 D7 PC CS lsbdi0 DI DI DI DI DI5 DI6 msbdi7 Xfer CS GND UC DAC08 Vcc ILE Rfb Iout Iout AGND WR WR Vref _C VOUT PC +V PC WR PC -Vref 5 0 CC 0.uF UC LM Out IN- IN+ VDD IN+ IN+ IN+ Out Out Out VEE IN- IN- IN- 8 R5C 7 RC 9 6 RC RC 0K 0K COUT P5C RWC K TC TL RC 50 五 实验流程图及源程序. 流程图 -V 并行 D/A 转换电路. 源程序 ( 方波 ) ORG 00H AJMP START ORG 000H START: MOV DPTR,#0FEFFH ; 置 DAC08 的地址 LP: MOV A,#0FFH ; 设定高电平 ; 启动 D/A 转换, 输出高电平 LCALL DELAY ; 延时显示高电平 MOV A,#00H ; 设定低电平 ; 启动 D/A 转换, 输出低电平 浙江大学控制科学与工程学系 自动化实验中心

43 LCALL DELAY ; 延时显示低电平 SJMP LP ; 连续输出方波 DELAY: MOV R,# ; 延时子程序 D: NOP NOP NOP NOP NOP DJNZ R,D END 六 思考题计算输出方波的周期, 并说明如何改变输出方波的周期 七 实验内容编程实现输出波形为锯齿波及三角波 浙江大学控制科学与工程学系 自动化实验中心

44 第三篇综合实验 实验一十字路口交通灯模拟实验 一 实验目的. 学习 80C5 系列单片机的常用指令 ;. 学习模拟交通灯控制的方法 ;. 学习双色灯的使用 ; 二 实验说明双色 LED 是由一个红色 LED 管芯和一个绿色 LED 管芯封装在一起, 共阴极 红色正端加高电平, 绿色正端加低电平时, 红灯亮 ; 红色 + 正端加低电平, 绿色正端加高电平时, 绿灯亮 ; 两端都加高电平时, 黄灯亮 交通信号灯控制逻辑如下 : 假设一个十字路口为东西南北走向 开始为四个路口的红灯全部亮之后, 东西路口的绿灯亮, 南北路口的红灯亮, 东西路口方向通车, 延时一段时间后, 东西路口的绿灯, 闪烁若干次后, 东西路口的绿灯熄灭, 同时东西路口的黄灯亮, 延时一段时间后, 东西路口的红灯亮, 南北路口的绿灯亮, 南北路口方向通车, 延时一段时间后, 南北路口的绿灯闪烁若干次后, 南北路口的绿灯熄灭, 同时南北路口的黄灯亮, 延时一段时间后, 再切换到东西路口的绿灯亮, 南北路口的红灯亮, 之后重复以上过程 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 同时接双色 LED 显示模块的 G G;P. 同时接 R R; P. 同时接 G G;P. 同时接 R R; 双色 LED 显示模块的电源短路帽 JB5 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH7_TRLED.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 观察交通灯的模拟情况 四 实验电路图 JDB A0 A A A A A5 A6 A7 RPB K G G G G R R R R PB5 PB5 PB5 PB5 P5B5 P6B5 P7B5 P8B5 A0 A A A A A5 A6 A7 UB5 9 OE A0 A A A A A5 A6 A7 GND 7HC5 _B5 0 T/R 五 实验源程序 LED_G BIT P.0 ; 东西绿灯 LED_R BIT P. ; 东西红灯 LED_G BIT P. ; 南北绿灯 LED_R BIT P. ; 南北红灯 ORG 0000H LJMP START ORG 000H START: LCALL STATE0 ; 调用状态 0 LCALL DELAY ; 调用延时 MOV TMOD,#0H ; 置 T0 工作方式 B0 B B B B B5 B6 B DG DG DG DG DR DR DR DR DG DR DG DR RB5 00 RB5 00 LEDB5 West LEDB5 North DG DR DG DR RB5 00 RB5 00 LEDB5 East LEDB5 South 浙江大学控制科学与工程学系 自动化实验中心

45 MOV TH0, #CH ; 置 T0 定时初值 50mS MOV TL0, #0B0H SETB TR0 ; 启动 T0 LOOP: MOV R,#0 ; 置 S 计数初值 50mS*0=S MOV R,#0 ; 红灯 0S LCALL STATE ; 调用状态 WAIT: JNB TF0,WAIT ; 查询 50mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 50mS MOV TL0, #0B0H SETB TR0 ; 启动 T0 DJNZ R,WAIT ; 判 S 到否? 未到继续状态 MOV R,#0 ; 置 50mS 计数初值 DJNZ R,WAIT ; 状态 维持 0S MOV R,#5 ; 置 50mS 计数初值 5*=0 MOV R,# ; 绿灯闪 S MOV R,# ; 闪烁间隔 00mS WAIT: LCALL STATE ; 调用状态 JNB TF0,WAIT ; 查询 50mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 50mS MOV TL0, #0B0H DJNZ R,WAIT ; 判 00mS 到否? 未到继续状态 CPL LED_G ; 东西绿灯闪 MOV R,# ; 闪烁间隔 00mS DJNZ R,WAIT ; 判 S 到否? 未到继续状态 MOV R,#5 ; 置 50mS 计数初值 DJNZ R,WAIT ; 状态 维持 S MOV R,#0 ; 置 50mS 计数初值 MOV R,# ; 黄灯 S WAIT: LCALL STATE ; 调用状态 JNB TF0,WAIT ; 查询 0mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 50mS MOV TL0, #0B0H DJNZ R,WAIT ; 判 S 到否? 未到继续状态 MOV R,#0 ; 置 50mS 计数初值 DJNZ R,WAIT ; 状态 维持 S MOV R,#0 ; 置 50mS 计数初值 MOV R,#0 ; 红灯 0S WAIT: LCALL STATE ; 调用状态 浙江大学控制科学与工程学系 自动化实验中心

46 JNB TF0,WAIT ; 查询 50mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 50mS MOV TL0, #0B0H DJNZ R,WAIT ; 判 S 到否? 未到继续状态 MOV R,#0 ; 置 50mS 计数初值 DJNZ R,WAIT ; 状态 维持 0S MOV R,#5 ; 置 50mS 计数初值 5*=0 MOV R,# ; 闪烁间隔 00mS MOV R,# ; 绿灯闪 S WAIT5: LCALL STATE5 ; 调用状态 5 JNB TF0,WAIT5 ; 查询 50mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 00mS MOV TL0, #0B0H DJNZ R,WAIT5 ; 判 00mS 到否? 未到继续状态 5 CPL LED_G ; 南北绿灯闪 MOV R,# ; 闪烁 00mS DJNZ R,WAIT5 ; 判 S 到否? 未到继续状态 5 MOV R,#5 ; 置 00mS 计数初值 DJNZ R,WAIT5 ; 状态 5 维持 S MOV R,#0 ; 置 50mS 计数初值 MOV R,# ; 黄灯 S WAIT6: LCALL STATE6 ; 调用状态 6 JNB TF0,WAIT6 ; 查询 00mS 到否 CLR TF0 MOV TH0, #CH ; 恢复 T0 定时初值 00mS MOV TL0, #0B0H DJNZ R,WAIT6 ; 判 S 到否? 未到继续状态 6 MOV R,#0 ; 置 00mS 计数初值 DJNZ R,WAIT6 ; 状态 6 维持 S LJMP LOOP ; 大循环 STATE0: ; 状态 0 MOV P,#0 CLR LED_G SETB LED_R ; 东西红灯亮 CLR LED_G SETB LED_R ; 南北红灯亮 STATE: ; 状态 SETB LED_G ; 东西绿灯亮 浙江大学控制科学与工程学系 5 自动化实验中心

47 CLR LED_R CLR LED_G SETB LED_R ; 南北红灯亮 STATE: ; 状态 CLR LED_R CLR LED_G SETB LED_R ; 南北红灯亮 STATE: ; 状态 SETB LED_G SETB LED_R ; 东西黄灯亮 CLR LED_G SETB LED_R ; 南北红灯亮 STATE: ; 状态 CLR LED_G SETB LED_R ; 东西红灯亮 SETB LED_G ; 南北绿灯亮 CLR LED_R STATE5: ; 状态 5 CLR LED_G SETB LED_R ; 东西红灯亮 CLR LED_R STATE6: ; 状态 6 CLR LED_G SETB LED_R ; 东西红灯亮 SETB LED_G SETB LED_R ; 南北黄灯亮 DELAY: MOV R5, #5 DLOOP0: MOV R6, #0 DLOOP: MOV R7, #0 DLOOP: NOP NOP DJNZ R7, DLOOP DJNZ R6, DLOOP DJNZ R5, DLOOP0 浙江大学控制科学与工程学系 6 自动化实验中心

48 END 六 思考题根据实验程序请绘制流程图 实验二 DS8B0 传感器温度控制实验一 实验目的. 了解温度传感器电路的工作原理 ;. 了解温度控制的基本原理 ;. 掌握一线总线接口的使用 ; 二 实验说明. DALLAS 最新单线数字温度传感器 DS8B0 简介 Dallas 半导体公司的数字化温度传感器 DS80 是世界上第一片支持 一线总线 接口的温度传感器 现场温度直接以 一线总线 的数字方式传输, 大大提高了系统的抗干扰性 适合于恶劣环境的现场温度测量, 如 : 环境控制 设备或过程控制 测温类消费电子产品等 与前一代产品不同, 新的产品支持 V~5.5V 的电压范围, 使系统设计更灵活 方便 DS8B0 测量温度范围为 -55 C~+5 C, 在 -0~+85 C 范围内, 精度为 ±0.5 C DS8B0 可以程序设定 9~ 位的分辨率, 及用户设定的报警温度存储在 EEPROM 中, 掉电后依然保存 DS8B0 内部结构 DS8B0 内部结构主要由四部分组成 :6 位光刻 ROM 温度传感器 非挥发的温度报警触发器 TH 和 TL 配置寄存器 DS8B0 的管脚排列如下 : DQ 为数字信号输入 / 输出端 ;GND 为电源地 ;VDD 为外接供电电源输入端 ( 在寄生电源接线方式时接地 ) 光刻 ROM 中的 6 位序列号是出厂前被光刻好的, 它可以看作是该 DS8B0 的地址序列码 6 位光刻 ROM 的排列是 : 开始 8 位 (8H) 是产品类型标号, 接着的 8 位是该 DS8B0 自身的序列号, 最后 8 位是前面 56 位的循环冗余校验码 (CRC=X8+X5+X+) 光刻 ROM 的作用是使每一个 DS8B0 都各不相同, 这样就可以实现一根总线上挂接多个 DS8B0 的目的 DS8B0 中的温度传感器可完成对温度的测量, 以 位转化为例 : 用 6 位符号扩展的二进制补码读数形式提供, 以 /LSB 形式表达, 其中 S 为符号位 LS Byte: Bit7 Bit6 Bit5 Bit Bit Bit Bit Bit MS Byte: Bit5 Bit Bit Bit Bit Bit0 Bit9 Bit8 浙江大学控制科学与工程学系 7 自动化实验中心

49 S S S S S 6 5 这是 位转化后得到的 位数据, 存储在 8B0 的两个 8 比特的 RAM 中, 二进制中的前面 5 位是符号 位, 如果测得的温度大于 0, 这 5 位为 0, 只要将测到的数值乘于 即可得到实际温度 ; 如果温度小于 0, 这 5 位为, 测到的数值需要取反加 再乘于 即可得到实际温度 例如 +5 的数字输出为 07D0H, 的数字输出为 09H, 的数字输出为 FF6FH,-55 的数字输出为 FC90H 温度 数据输出 ( 二进制 ) 数据输出 ( 十六进制 ) D0H H H AH H H FFF8H FF5EH FE6FH FC90H DS8B0 温度传感器的存储器 DS8B0 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失性的可电擦除的 ERAM, 后者存 放高温度和低温度触发器 TH TL 和结构寄存器 暂存存储器包含了 8 个连续字节, 前两个字节是测得的温度信息, 第一个字节的内容是温度的低八位, 第 二个字节是温度的高八位 第三个和第四个字节是 TH TL 的易失性拷贝, 第五个字节是结构寄存器的易失性 拷贝, 这三个字节的内容在每一次上电复位时被刷新 第六 七 八个字节用于内部计算 第九个字节是冗余 检验字节 该字节各位的意义如下 : TM R R0 低五位一直都是,TM 是测试模式位, 用于设置 DS8B0 在工作模式还是在测试模式 在 DS8B0 出 厂时该位被设置为 0, 用户不要去改动 R 和 R0 用来设置分辨率, 如下表所示 :(DS8B0 出厂时被设置为 位 ) 分辨率设置表 : R R0 分辨率 温度最大转换时间 位 9.75ms 0 0 位 87.5ms 0 位 75ms 位 750ms 根据 DS8B0 的通讯协议, 主机控制 DS8B0 完成温度转换必须经过三个步骤 : 每一次读写之前都要对 DS8B0 进行复位, 复位成功后发送一条 ROM 指令, 最后发送 RAM 指令, 这样才能对 DS8B0 进行预定的 操作 复位要求主 CPU 将数据线下拉 500 微秒, 然后释放,DS8B0 收到信号后等待 6~60 微秒左右, 后发 浙江大学控制科学与工程学系 8 自动化实验中心

50 出 60~0 微秒的存在低脉冲, 主 CPU 收到此信号表示复位成功. 本实验在读取温度的基础上, 完成类似空调恒温控制的实验 用加热电阻代替加热电机, 制冷采用自然冷却 温度值通过 LED 显示电路以十进制形式显示出来, 单片机发出指令信号, 红色 LED 点亮, 加热电阻开始加热 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.7 P.7 P.6 P. 分别与 779 模块的 79CS 79DAT 79CLK KeyIN 相连 ; 用导线将阵列式键盘模块的 H0/H H/H 分别与 779 模块的 DIG0 DIG 相连 ; 用 8P 数据线将阵列式键盘模块的 JD 与 779 模块的 JD9 相连 ; 用 8P 数据线将 779 模块的 JD9 JD0 与八位动态数码显示模块的 JDA JDA 相连 ; 阵列式键盘模块处的 S 拨码开关的 打在 ON 处, 5 6 打在 OFF 处 ; 八位动态数码显示模块的 JTA 的短路帽打在 处. 用导线将 80C5/C805F MCU 模块的 P.0 P. 分别与 DS8B0 模块的 OUT T-CON 相连 ;DS8B0 模块的电源短路帽 JB6 全打在上端, 灯亮. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH0_DS8B0.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 程序运行后,HeatOn 灯亮加热源开始加热, 温度也随着变化, 数码管显示 XX 为十进制温度测量值 当加热到设定的控制温度时如 50 度时, 停止加热 四 实验电路图 _B6 +V +V RB6 K RB6.K LEDB6 HeatOn R6B6 75/W PB6 T-CON RB6 0K QB6 90 R5B6 50 QB6 TIP _B6 RB6 70 LEDB6 R7B6 0 _B6 JB V_B6 +V PB6 OUT GND _B6 QB6 Gnd DQ Vcc DS8B0 五 实验源程序 TEMPER_L EQU 0H ; 用于保存读出温度的低 8 位 TEMPER_H EQU H ; 用于保存读出温度的高 8 位 FLAG EQU H ; 是否检测到 DS8B0 标志位 DATA_IN DATA 05H DATA_OUT DATA 06H TIMER DATA 00H BIT_COUNT DATA 0H DBUF DATA 0H 浙江大学控制科学与工程学系 9 自动化实验中心

51 CLK BIT P.6 DAT BIT P.7 ORG 0000H LJMP START ORG 000H START: SETB P. MAIN: LCALL GET_TEMPER ; 调用读温度子程序 MOV A,9H MOV C,0H ; 将 8H 中的最低位移入 C RRC A MOV C,H RRC A MOV C,H RRC A MOV C,H RRC A MOV 9H,A LCALL TOBCD LCALL DISPLAY ; 调用数码管显示子程序 LCALL DELAY AJMP MAIN INIT_80: ; 这是 DS8B0 复位初始化子程序 SETB P.0 NOP CLR P.0 MOV R,# ; 主机发出延时 57 微秒的复位低脉冲 TSR: MOV R0,#07 DJNZ R0,$ DJNZ R,TSR SETB P.0 ; 然后拉高数据线 NOP NOP NOP MOV R0,#5H TSR: JNB P.0,TSR ; 等待 DS8B0 回应 DJNZ R0,TSR LJMP TSR ; 延时 TSR: SETB FLAG ; 置标志位, 表示 DS80 存在 LJMP TSR5 TSR: CLR FLAG ; 清标志位, 表示 DS80 不存在 LJMP TSR7 TSR5: MOV R0,#7 浙江大学控制科学与工程学系 50 自动化实验中心

52 TSR6: DJNZ R0,TSR6 ; 时序要求延时一段时间 TSR7: SETB P.0 GET_TEMPER: ; 读出转换后的温度值 SETB P.0 LCALL INIT_80 ; 先复位 DS8B0 JB FLAG,TSS ; 判断 DS80 是否存在? 若 DS8B0 不存在则返回 TSS: MOV A,#0CCH ; 跳过 ROM 匹配 LCALL WRITE_80 MOV A,#H ; 发出温度转换命令 LCALL WRITE_80 LCALL DELAY ; 这里通过调用显示子程序实现延时一段时间, 等待 AD 转换结束, 位的话 750 微秒 LCALL INIT_80 ; 准备读温度前先复位 MOV A,#0CCH ; 跳过 ROM 匹配 LCALL WRITE_80 MOV A,#0BEH ; 发出读温度命令 LCALL WRITE_80 LCALL READ_800 ; 将读出的温度数据保存到 5H/6H WRITE_80: ; 写 DS8B0 的子程序 ( 有具体的时序要求 ) MOV R,#8 ; 一共 8 位数据 CLR C WR: CLR P.0 MOV R,#6 DJNZ R,$ RRC A MOV P.0,C MOV R,# DJNZ R,$ SETB P.0 NOP DJNZ R,WR SETB P.0 READ_800: ; 读 DS8B0 的程序, 从 DS8B0 中读出两个字节的温度数据 MOV R,# ; 将温度高位和低位从 DS8B0 中读出 MOV R,#9H ; 低位存入 9H(TEMPER_L), 高位存入 8H(TEMPER_H) RE00:MOV R,#8 ; 数据一共有 8 位 RE0:CLR C SETB P.0 浙江大学控制科学与工程学系 5 自动化实验中心

53 NOP NOP CLR P.0 NOP NOP NOP SETB P.0 MOV R,#9 RE0:DJNZ R,RE0 MOV C,P.0 MOV R,# RE0:DJNZ R,RE0 RRC A DJNZ R,RE0 DEC R DJNZ R,RE00 TOBCD: MOV A,9H ; 将 9H 中的十六进制数转换成 0 进制 MOV B, #0 DIV AB MOV DBUF+, A MOV A, B MOV DBUF,A MOV A,DBUF+ CJNE A,#5,$+ JNC WW SETB P. WW: CLR P. DISPLAY: ANL P,#00H ;CS779 有效 MOV DATA_OUT,#00000B ;AH, 复位命令 CALL SEND MOV DATA_OUT,# B ; 在第一个数码管上显示 CALL SEND MOV DATA_OUT,DBUF CALL SEND MOV DATA_OUT,#000000B ; 译码方式 0, 位显示在第一个数码管上显示 CALL SEND MOV DATA_OUT,DBUF+ 浙江大学控制科学与工程学系 5 自动化实验中心

54 CALL SEND SEND: MOV BIT_COUNT,#8 ; 发送字符子程序 ANL P,#00H CALL LONG_DELAY SEND_LOOP: MOV C,DATA_OUT.7 MOV DAT,C SETB CLK MOV A,DATA_OUT RL A MOV DATA_OUT,A CALL SHORT_DELAY CLR CLK CALL SHORT_DELAY DJNZ BIT_COUNT,SEND_LOOP CLR DAT LONG_DELAY: MOV TIMER,#80 ; 延时约 00US DELAY_LOOP: DJNZ TIMER,DELAY_LOOP SHORT_DELAY: MOV TIMER,#6 ; 延时约 0US SHORT_LP: DJNZ TIMER,SHORT_LP DELAY: LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY DELAY: MOV R, #0 DLOOP: DJNZ R, DLOOP DJNZ R0, DELAY END 浙江大学控制科学与工程学系 5 自动化实验中心

55 实验三直流电动机控制实验一 实验目的. 熟悉单片机控制和驱动直流电机的原理 ;. 学习用 PWM 输出模拟量驱动直流电机 ;. 熟悉直流电动机的工作特性 ;. 学习使用 C 语言进行程序设计 二 实验说明 PWM 是单片机上常用的模拟量输出方法, 用占空比不同的脉冲驱动直流电机转动, 从而得到不同的转速 程序中通过调整输出脉冲的占空比来调节直流电机的转速 使用光电测速元件测速, 当它与圆盘上的空位相靠近时, 光电元件输出低电平, 当它与没对空时时, 光电元件输出高电平 圆盘转动一周时则产生 个脉冲, 直流电机转动时, 光电元件输出连续的脉冲信号, 单片机记录其脉冲信号, 就可以测出直流电机的转速 另外增加显示电路, 可把电机的转速显示出来 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 P. 与直流电机模块的 PWM PWM 口相连, 用 8P 数据线将 80C5/C805F MCU 模块的 JD(P 口 ) 与查询式键盘模块的 JDC7 相连 ; 直流电机模块的电源短路帽 JA 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_DCMotor.c 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 直流电机顺时针中速旋转 KEY0 控制电机顺时针旋转,KEY 控制电机逆时针旋转 ;KEY 控制电机减速 ( 每按一次, 速度就减慢一点 ),KEY 控制电机加速 ( 每按一次, 速度就加快一点 ) 四 实验电路图 R5 R8 P PWM Q 8550 D N8 D N8 Q A R K Q 8050 B DC_Motor + A - P PWM A R K Q 8050 R 0 Q 8050 D N8 D5 N8 Q R9 0 直流电机驱动 浙江大学控制科学与工程学系 5 自动化实验中心

56 UA R 0 U R6.7K 7LS UB PULSE R7 P Pulse LED 7LS 0 Pulse 电机测速 五 实验源程序 #include <at89x5.h> #include <intrins.h> #define _Nop() _nop_() #define uint unsigned int #define uchar unsigned char sbit PWM = P^0; // 电机驱动端口 sbit PWM = P^; #define RIGHT_KEY (!(P_0)) // 键盘接口 #define UP_KEY (!(P_)) #define DOWN_KEY (!(P_)) #define LEFT_KEY (!(P_)) bit Moto_Dir=0; uchar PWM_TIME_H,PWM_TIME_L; void ShortDelay(void) // 短延时 { uchar x,y; for(x=0;x<5;x++) for(y=0;y<5;y++) _Nop(); return; } void delay_ms(uchar i) //PWM 延时 { uchar x,y,z; for(x=0;x<i;x++) { for(y=0;y<5;y++) { for(z=0;z<0;z++) { _Nop(); } } } return; } void PWM_OUT(void) // 按键处理 { if(moto_dir==) { PWM=; PWM=; delay_ms(pwm_time_h); 浙江大学控制科学与工程学系 55 自动化实验中心

57 PWM=0; delay_ms(pwm_time_l); } else { PWM=; PWM=; delay_ms(pwm_time_h); PWM=0; delay_ms(pwm_time_l); } } void main(void) { PWM=0; PWM=0; PWM_TIME_H=50; PWM_TIME_L=50; while() { if(left_key) { ShortDelay(); if(left_key) // 延时去抖 { Moto_Dir=; PWM=0; PWM=; } while(left_key)pwm_out(); } if(right_key) { ShortDelay(); if(right_key) // 延时去抖 { Moto_Dir=0; PWM=; PWM=0; } while(right_key)pwm_out(); } if(up_key) { ShortDelay(); if(up_key) // 延时去抖 { if(pwm_time_l > 0) { PWM_TIME_L--; PWM_TIME_H = 00-PWM_TIME_L; } } // end if(up_key) 浙江大学控制科学与工程学系 56 自动化实验中心

58 while(up_key)pwm_out(); } // end if(up_key) if(down_key) { ShortDelay(); if(down_key) // 延时去抖 { if(pwm_time_l < 00) { PWM_TIME_L++; PWM_TIME_H = 00-PWM_TIME_L; } } while(down_key)pwm_out(); } PWM_OUT(); } } 六 思考题如何在以上程序中增加测速程序, 测出电机的转速? 实验四步进电动机控制实验一 实验目的. 掌握采用单片机控制步进电机的硬件接口技术 ;. 掌握步进电机驱动程序的设计和调试方法 ;. 熟悉步进电动机的工作特性 ; 二 实验说明. 步进电动机有三线式 五线式 六线式三种, 但其控制方式均相同, 必须以脉冲电流来驱动 若每旋转一圈以 0 个励磁信号来计算, 则每个励磁信号前进 8 度, 其旋转角度与脉冲数成正比, 正 反转可由脉冲顺序来控制. 步进电动机的励磁方式可分为全部励磁及半步励磁, 其中全步励磁又有 相励磁及 相励磁之分, 而半步励磁又称 - 相励磁 图为步进电动机的控制等效电路, 适应控制 A B /A /B 的励磁信号, 即可控制步进电动机的转动 每输出一个脉冲信号, 步进电动机只走一步 因此, 依序不断送出脉冲信号, 即可步进电动机连续转动 a. 相励磁法 : 在每一瞬间只有一个线圈导通 消耗电力小, 精确度良好, 但转矩小, 振动较大, 每送一励磁信号可走 8 度 若欲以 相励磁法控制步进电动机正转, 其励磁顺序如图所示 若励磁信号反向传送, 则步进电动机反转 浙江大学控制科学与工程学系 57 自动化实验中心

59 励磁顺序 : A B C D A STEP A B C D b. 相励磁法 : 在每一瞬间会有二个线圈同时导通 因其转矩大, 振动小, 故为目前使用最多的励磁方式, 每送一励磁信号可走 8 度 若以 相励磁法控制步进电动机正转, 其励磁顺序如图所示 若励磁信号反向传送, 则步进电动机反转 励磁顺序 : AB BC CD DA AB STEP A B C D c.- 相励磁法 : 为 相与 相轮流交替导通 因分辨率提高, 且运转平滑, 每送一励磁信号可走 9 度, 故亦广泛被采用 若以 相励磁法控制步进电动机正转, 其励磁顺序如图所示 若励磁信号反向传送, 则步进 电动机反转 励磁顺序 : A AB B BC C CD D DA A STEP A B C D 电动机的负载转矩与速度成反比, 速度愈快负载转矩愈小, 当速度快至其极限时, 步进电动机即不再 运转 所以在每走一步后, 程序必须延时一段时间 三 实验步骤. 用导线将 80C5/C805F MCU 模块的 P.0 P. P. P. 与步进电机模块的 A B C D 相连, 用 8P 数据线将 80C5/C805F MCU 模块的 JD(P 口 ) 与查询式键盘模块的 JDC7 相连 ; 步进电机模块的电源短路帽 JA 打在上端. 打开 Keil uvision 仿真软件, 首先建立本实验的项目文件, 接着添加 TH_STEP Motor.ASM 源程序, 进行编译, 编译无误后, 进入仿真环境. 全速运行程序, 查询式键盘的 KEY0 控制电机正转,KEY 控制反转, KEY 控制停止 四 实验电路图 浙江大学控制科学与工程学系 58 自动化实验中心

60 本实验用到 80C5/C805F MCU 模块 (D 区 ), 步进电机模块 (A 区 ), 查询式键盘模块 (C7 区 ) 查询式键盘电路参考实验十二图., 步进电机电路原理参考图. A_ B_ C_ D A A_ B_ C_ D_ UA IN IN IN IN 5 IN5 6 IN6 7 IN7 8 GND 00 JDA Step_Motor OUT OUT OUT OUT OUT5 OUT6 OUT COM 9 M A COM B 5 COM C 6 M D Step_Motor A B C D _A _A JA RA 0/W RA 0/W RA 0/W R5A 0/W A B C D A B C D A B C D LED LED LED LED _A R8A 0 LED LED LED LED LEDA RPA _A LED LED LED LED 5 5 K RPA _A A_ B_ C_ D_ 5 5 图. 步进电机电路 五 实验源程序 ORG 0000H STOP: ORL P, #0FFH ; 步进电机停止 LOOP: JNB P.0,FOR ; 如果 P.0 按下正转 JNB P.,REV ; 如果 P. 按下反转 JNB P.,STOP ; 如果 P. 按下停止 JMP LOOP ; 反复监测键盘 FOR: MOV R0, #00H ; 正转到 tab 取码指针初值 for: MOV A,R0 ; 取码 MOV DPTR,#TABLE MOVC A,@A+DPTR JZ FOR ; 是否到了结束码 00H CPL A ; 把 acc 反向 MOV P,A ; 输出到 P 开始正转 JNB P.,STOP ; 如果 P. 按下停止 JNB P.,REV ; 如果 P. 按下正转 JNB P.0,FOR ; 如果 P.0 按下反转 CALL DELAY ; 转动的速度 INC R0 ; 取下一个码 JMP FOR ; 继续正转 rev: MOV R0,#05H ; 反转到 tab 取码指针初值 rev: MOV A,R0 MOV DPTR,#TABLE ; 取码 MOVC A,@A+DPTR JZ REV ; 是否到了结束码 00H 0K A_ B_ C_ D_ UAC UAF 7LS 7LS UAD 7LS UAE 7LS 8 0 A_ B_ C_ D_ 浙江大学控制科学与工程学系 59 自动化实验中心

61 CPL A ; 把 acc 反向 MOV P,A ; 输出到 P 开始反转 JNB P.,STOP ; 如果 P. 按下停止 JNB P.,REV ; 如果 P. 按下正转 JNB P.0,FOR ; 如果 P.0 按下反转 CALL DELAY ; 转动的速度 INC R0 ; 取下一个码 JMP REV ; 继续反转 stop: CALL DELAY ; 按 P. 的消除抖动 JNB P.,$ ;P. 放开否? CALL DELAY ; 放开消除抖动 JMP STOP for: CALL DELAY ; 按 P.0 的消除抖动 JNB P.0,$ ;P.0 放开否? CALL DELAY ; 放开消除抖动 JMP FOR rev: CALL DELAY ; 按 P. 的消除抖动 JNB P.,$ ;P. 放开否? CALL DELAY ; 放开消除抖动 JMP REV DELAY: MOV R,#50 ; 步进电机的转速 0ms D: MOV R,#8 DJNZ R,$ DJNZ R,D TABLE: DB 0H,0H,0H,08H ; 正转表 DB 00 ; 正转结束 DB 0H,08H,0H,0H ; 反转 DB 00 ; 反转结束 END 六 思考题 如何改变电机的工作方式或者方向 速度, 设计控制软件? 浙江大学控制科学与工程学系 60 自动化实验中心

62 实验五电机综合控制系统开放性设计实验一 实验目的. 掌握单片机控制和驱动直流电机的原理 ;. 掌握用 PWM 输出模拟量驱动直流电机 ;. 掌握单片机与扩展模块的接口电路及程序设计 ;. 学习基于单片机设计控制系统 ; 二 实验说明根据实验箱提供的各种硬件资源, 设计一套如图 5. 所示的电机综合控制系统, 编写相应的程序, 使系统正常运行 图 5. 电机综合控制系统框图由可调电源手动输出控制信号, 经 A/D 转换输入单片机, 单片机经过运算处理输出相应的 PWM 信号控制直流电机转动 ( 单向 ) 电机转动时, 光电元件输出连续的脉冲信号, 单片机记录其脉冲信号, 计算出直流电机的转速, 并通过显示模块显示出来 在完成框图所示任务的基础上, 可自行设计添加附加功能 ( 如按键输入设定值 超限声光报警等 ) 三 实验步骤. 将控制系统的硬件电路连接好 ( 在断电状态下进行, 接完经老师检查后方可上电 ). 打开 Keil uvision 仿真软件, 建立本实验的项目文件, 编写源程序, 进行编译, 编译无误后, 进入仿真环境. 联机调试, 直至达到题目的要求. 实验结果 : 电机转速通过旋转电位器 RWD6 连续可调, 显示模块上显示当前的转速 四 思考题 若要增加换向的功能, 应如何设计? 浙江大学控制科学与工程学系 6 自动化实验中心

63 附录一 THKL-C5 型仿真器及 Keil uvision 仿真软件的使用说明一 THKL-C5 型仿真器使用说明 仿真器自检步骤不要带电插拔串口, 以防止由此产生的浪涌电流损坏 MAX 通讯芯片, 下面的操作顺序可以避免带电插拔 联机正确顺序 : 插好仿真用串口旋紧固定螺栓 >> 插上 USB 电源接口 >> 连接目标硬件, 可以是任何 5 系统开发板 试验板 工控板 目标板... 等等的 5 硬件系统 脱机正确顺序 : 拔下 USB 电源接口 >> 拔下仿真用串口 如果短期内经常要使用仿真功能, 无需拔下串口 因为仿真器在通电瞬间要对系统进行自检, 所以在通过 USB 给仿真系统供电之前, 仿真头上不要连有负载 接通 USB 电源, 自检通过后 POW LED 指示灯会亮起来, 表示自检通过, 此时就可以进入的硬件仿真了 仿真器复位按钮的作用在仿真器的右侧下方有一个小的按纽, 这个按钮用来给整个仿真器硬件系统复位, 什么时候需要按这个按钮呢? 设置好 KEIL 的硬件环境后, 在每次点击进入仿真环境之前, 需要按一下这个复位按纽, 这样 KEIL 启动后, 软件和已复位的硬件仿真器就会顺利联机, 在点击进入仿真环境之后, 仿真器完全由 KEIL 控制, 此时不要按这个按钮, 否则在仿真过程中系统将会提示联机中断 如果需要给硬件复位的话, 请先点击仿真器的复位键然后点退出 KEIL 仿真调试环境 仿真器使用注意事项 : 在打开 PC 机之前请把仿真器和 PC 机的串口连好 在联机后, 请千万不要带电插拔仿真器和 PC 机的接口, 如果带电插拔仿真器就可能导致接口电路 MAX 损坏 注意插拔的时候仿真器或者 PC 机至少有一方的电源是断开的 PC 机的串口和并口等接口的最大不便就是不支持热插拔, 这也是开发 USB 接口的根本原因 断开连接之前推荐步骤 : ) 按一下仿真器硬件复位按纽 ) 按退出仿真环境 ) 关闭 KEIL, 关闭 PC 机, 最后再断开硬件连接, 如果要经常使用则不用断开硬件连接 二 Keil uvision 仿真软件的使用说明. 关于 Keil μvision μvision IDE 是德国 Keil 公司开发的基于 Windows 平台的单片机集成开发环境, 它包含一个高效的编译器 一个项目管理器和一个 MAKE 工具 其中 Keil C5 是一种专门为单片机设计的高效率 C 语言编译器, 符合 ANSI 标准, 生成的程序代码运行速度极高, 所需要的存储器空间极小, 完全可以与汇编语言媲美. 关于开发环境 μvision 的界面如图 - 所示,μVision 允许同时打开 浏览多个源文件 浙江大学控制科学与工程学系 6 自动化实验中心

64 图 - μvision 界面图. 菜单条 工具栏和快捷键下面的表格列出了 μvision 菜单项命令, 工具栏图标, 默认的快捷以及他们的描述 ) 编辑菜单和编辑器命令 Edit( 如表 - 所示 ) 表 - 编辑菜单和编辑器命令 Edit 菜单工具栏快捷键描述 Home End Ctrl+Home Ctrl+End Ctrl+<- Ctrl+-> Ctrl+A 移动光标到本行的开始移动光标到本行的末尾移动光标到文件的开始移动光标到文件的结束移动光标到词的左边移动光标到词的右边选择当前文件的所有文本内容 Undo Ctrl+Z 取消上次操作 Redo Ctrl+SHift+Z 重复上次操作 Cut Ctrl+X Ctrl+Y 剪切所选文本剪切当前行的所有文本 Copy Ctrl+C 复制所选文本 Paste Ctrl+V 粘贴 Indent Selected Text 将所选文本右移一个制表键距离 浙江大学控制科学与工程学系 6 自动化实验中心

65 Unindent Selected Text 将所选文本左移一个制表键距离 Toggle Bookmark Ctrl+F 设置 / 取消当前行的标签 Goto Next Bookmark F 移动光标到下一个标签处 GotoPrevious bookmark SHift+F 移动光标到上一个标签处 Clear All Bookmarks 清除当前文件的所有标签 在当前文件中查找文本 Find Replace Find in Files F SHift+F Ctrl+F Ctrl+] 向前重复查找向后重复查找查找光标处的单词寻找匹配的大括号 圆括号 方括号 ( 用此命令将光标放到大括号 圆括号或方括号的前面 ) 替换特定的字符在多个文件中查找 选择匹配的一对大括号 圆括号或 Goto MatcHing brace 方括号中的内容 ) 选择文本命令在 μvision 中, 可以通过按住 SHift 键和相应的键盘上的方向键来选择文本 如 Ctrl+-> 可以移动光标到下一个词, 那么,Ctrl+SHift+-> 就是选择当前光标位置到下一个词的开始位置间的文本 当然, 也可以用鼠标来选择文本 ) 项目菜单 Project 和项目命令 Project( 如表 - 所示 ) 表 - 项目菜单和项目命令 Project 菜单工具栏快捷键描述 New Project Import μ Vision Project Open Project Close Project Target Environment Targets,Groups,Files Select Device for Target 创建新项目转化 μ Vision 的项目打开一个已经存在的项目关闭当前的项目定义工具 包含文件和库的路径维护一个项目的对象 文件组和文件选择对象的 CPU 浙江大学控制科学与工程学系 6 自动化实验中心

66 Remove 从项目中移走一个组或文件 Options Alt+F7 设置对象 组或文件的工具选项 File Extensions 选择不同文件类型的扩展名 Build Target F7 编译修改过的文件并生成应用 Rebuild Target 重新编译所有的文件并生成应用 Translate Ctrl+F7 编译当前文件 Stop Build ~7 ) 调试菜单 Debug 和调试命令 ( 如表 - 所示 ) 表 - 调试菜单和调试命令 Debug 停止生成应用的过程 打开最近打开过的项目 菜单 工具栏 快捷键 描述 Start/Stop Debugging Ctrl+F5 开始 / 停止调试模式 Go F5 运行程序, 直到遇到一个中断 Step F 单步执行程序, 遇到子程序则进入 Step over F0 单步执行程序, 跳过子程序 Step out of Ctrl+F 执行到当前函数的结束 Current function stop Runing Esc 停止程序运行 Breakpoints Insert/Remove Breakpoint Enable/Disable Breakpoint Disable All Breakpoints Kill All Breakpoints SHow Next Statement Enable/Disable Trace Recording View Trace Records Memory Map Performance Analyzer Inline Assembly 打开断点对话框设置 / 取消当前行的断点使能 / 禁止当前行的断点禁止所有的断点取消所有的断点显示下一条指令使能 / 禁止程序运行轨迹的标识显示程序运行过的指令打开存储器空间设置对话框打开设置性能分析的窗口对某一行重新汇编, 可以修改汇编 浙江大学控制科学与工程学系 65 自动化实验中心

67 代码 Function Editor 5) 外围器件菜单 PeripHerals( 如表 - 所示 ) 表 - 外围器件菜单 PeripHerals 编辑调试函数和调试设置文件 菜单工具栏描述 Reset CPU 复位 CPU 以下为单片机外围器件的设置对话框 ( 对话框的种类及内容依赖于你选择的 CPU) Interrupt I/O-Ports Serial Timer A/D Conoverter D/A Conoverter I C Conoverter 中断观察 I/O 口观察串口观察定时器观察 A/D 转换器 D/A 转换器 I C 总线控制器 WatcHdog 看门狗 6) 工具菜单 Tool( 如表 -5 所示 ) 利用工具菜单, 可以设置并运行 Gimpel PC-Lint Siemens Easy-Case 和用户程序 通过 Customize Tools Menu 菜单, 可以添加需要的程序 浙江大学控制科学与工程学系 66 自动化实验中心

68 表 -5 工具菜单 Tool 菜单 描述 Setup PC-Lint 设置 Gimpel Software 的 PC- Lint 程序 Lint 用 PC- Lint 处理当前编辑的文件 Lint all C Source Files 用 PC- Lint 处理项目中所有 C 源代码文件 Setup Easy-Case 设置 Siemens 的 Easy-Case 程序 Start/Stop Easy-Case 运行 / 停止 Siemens 的 Easy-Case 程序 SHow File (Line) 用 Easy-Case 处理当前编辑的文件 Customize Tools Menu 添加用户程序到工具菜单中. 创建项目实例 μvision 包括一个项目管理器, 它可以使 8x5 应用系统的设计变得简单 要创建一个应用, 需要按下列步骤进行操作 : 启动 μvision, 新建一个项目文件并从器件库中选择一个器件 新建一个源文件并把它加入到项目中 增加并设置选择的器件的启动代码 针对目标硬件设置工具选项 编译项目并生成可编程 PROM 的 HEX 文件 下面将逐步地进行描述, 从而指引读者创建一个简单的 μvision 项目 ) 选择 Project / New Project 选项, 如图 - 所示 图 - Project 菜单 ) 在弹出的 Create New Project 对话框中选择要保存项目文件的路径, 比如保存到 Exercise 目录里, 在 文件名 文本框中输入项目名为 example, 如图 - 所示, 然后单击 保存 按钮 浙江大学控制科学与工程学系 67 自动化实验中心

69 图 - Create New Project 对话框 ) 时会弹出一个对话框, 要求选择单片机的型号 读者可以根据使用的单片机型号来选择,Keil C5 几乎支持所有的 5 核的单片机, 这里只是以常用的 AT89C5 为例来说明, 如图 - 所示 选择 89C5 之后, 右边 Description 栏中即显示单片机的基本说明, 然后单击 确定 按钮 图 - 选择单片机的型号对话框 ) 这时需要新建一个源程序文件 建立一个汇编或 C 文件, 如果已经有源程序文件, 可以忽略这一步 选择 File / New 选项, 如图 -5 所示 5) 在弹出的程序文本框中输入一个简单的程序, 如图 -6 所示 图 -5 新建源程序文件对话框图图 -6 程序文本框 6) 选择 File / Save 选项, 或者单击工具栏按钮, 保存文件 在弹出的如图 -7 所示的对话框中选择要保存的路径, 在 文件名 文本框中输入文件名 注意一定要输入扩展名, 如果是 C 程序文件, 扩展名为.c; 如果是汇编文件, 扩展名为.asm; 如果 ini 文件, 扩展名为. ini 这里需要存储 ASM 源程序文件, 所以输入.asm 扩展名 ( 也可以保存为其他名字, 比如 new.asm 等 ), 单击 保存 按钮 浙江大学控制科学与工程学系 68 自动化实验中心

70 图 -7 Save As 对话框图 7) 单击 Target 前面的 + 号, 展开里面的内容 Source Group, 如图 -8 所示 图 -8 Target 展开图 8) 用右键单击 Source Group, 在弹出的快捷菜单中选择 Add File to Group`Source Group` 选项, 如图 -9 所示 图 -9 Add Files to Group Source Group 菜单 9) 选择刚才的文件 example.asm, 文件类型选择 Asm Source file(*.c) 如果是 C 文件, 则选择 C Source file; 如果是目标文件, 则选择 Object file; 如果是库文件, 则选择 Library file 最后单击 Add 按钮, 如果要添加多个文件, 可以不断添加 添加完毕后单击 Close 按钮, 关闭该窗口, 如图 -0 所示 浙江大学控制科学与工程学系 69 自动化实验中心

71 图 -0 Add Files to Group Source Group 对话框 0) 这时在 Source Group 目录里就有 example.asm 文件, 如图 - 所示 图 - example.asm 文件 ) 接下来要对目标进行一些设置 用鼠标右键 ( 注意用右键 ) 单击 Target, 在弹出的会计菜单中选择 Options for Target Target 选项, 如图 - 所示 图 - ptions for Target Target 选项 ) 弹出 Options for Target Target 对话框, 其中有 8 个选项卡 默认为 Target 选项卡 ( 如图 - 所示 ) 浙江大学控制科学与工程学系 70 自动化实验中心

72 - Target 选项卡 Xtal(MHZ): 设置单片机工作的频率, 默认是.0MHz Use On-cHip ROM(0x0-0XFFF): 表示使用片上的 FlasH ROM,At89C5 有 KB 的可重编程的 FlasH ROM, 该选项取决于单片机应用系统, 如果单片机的 EA 接高电平, 则选中这个选项, 表示使用内部 ROM, 如果单片机的 EA 接低电平, 表示使用外部 ROM, 则不选中该项 这里选中该选项 Off-cHip Code memory: 表示片外 ROM 的开始地址和大小, 如果没有外接程序存储器, 那么不需要填任何数据 这里假设使用一个片外 ROM, 地址从 0x8000 开始, 一般填 6 进制的数,Size 为片外 ROM 的大小 假设外接 ROM 的大小为 0x000 字节, 则最多可以外接 块 ROM Off-cHip Xdata memory: 那么可以填上外接 Xdata 外部数据存储器的起始地址和大小, 一般的应用是 656, 这里特殊的指定 Xdata 的起始地址为 0x000, 大小为 0x8000 Code Banking: 是使用 Code Banking 技术 Keil 可以支持程序代码超过 6KB 的情况, 最大可以有 MB 的程序代码 如果代码超过 6KB, 那么就要使用 Code Banking 技术, 以支持更多的程序空间 Code Banking 支持自动的 Bank 的切换, 这在建立一个大型系统时是必需的 例如 : 在单片机里实现汉字字库, 实现汉字输入法, 都要用到该技术 Memory Model: 单击 Memory Model 后面的下拉箭头, 会有 个选项, 如图 - 所示 图 - Memory Model 选项 Small: 变量存储在内部 RAM 里 Compact: 变量存储在外部 RAM 里, 使用 8 位间接寻址 Large: 变量存储在外部 RAM 里, 使用 6 位间接寻址 一般使用 Small 来存储变量, 此时单片机优先将变量存储在内部 RAM 里, 如果内部 RAM 空间不够, 才会存在外部 RAM 中 Compact 的方式要通过程序来指定页的高位地址, 编程比较复杂, 如果外部 RAM 很少, 只有 56 字节, 那么对该 56 字节的读取就比较快 如果超过 56 字节, 而且需要不断地进行切换, 就比较麻烦,Compact 模式适用于比较少的外部 RAM 的情况 Large 模式是指变量会优先分配到外部 RAM 里 需要注意的是, 种存储方式都支持内部 56 字节和外部 6KB 的 RAM 因为变量存储在内部 RAM 里运算速度比存储在外部 RAM 要快得多, 大部分的应用都是选择 Small 模式 浙江大学控制科学与工程学系 7 自动化实验中心

73 使用 Small 模式时, 并不说明变量就不可以存储在外部, 只是需要特别指定, 比如 : unsigned char xdata a: 变量 a 存储在内部 RAM unsigned char a: 变量存储在内部 RAM 但是使用 Large 的模式时 : unsigned char xdata a: 变量 a 存储在外部 RAM unsigned char a: 变量 a 同样存储在外部 RAM 这就是它们之间的区别, 可以看出这几个选项只影响没有特别指定变量的存储空间的情况, 默认存储在所选模式的存储空间, 比如上面的变量定义 unsigned char a Code Rom Size: 单击 Code Rom Size 后面的下拉箭头, 将有 个选项, 如图 -5 所示 图 -5 Code Rom Size 选项 Small:programK or less, 适用于 AT89C05 这些芯片,05 只有 KB 的代码空间, 所以跳转地址只有 KB, 编译的时候会使用 ACALL AJMP 这些短跳指令, 而不会使用 LCALL,LJMP 指令 如果代码地址跳转超过 KB, 那么会出错 Compact:K functiongs,6k program, 表示每个子函数的代码大小不超过 K, 整个项目可以有 6K 的代码 就是说在 main() 里可以使用 LCALL,LJMP 指令, 但在子程序里只会使用 ACALL,AJMP 指令 只有确定每个子程序不会超过 KB, 才可以使用 Compact 方式 Large:6KB program, 表示程序或子函数代码都可以大到 6KB, 使用 code bank 还可以更大 通常都选用该方式 选择 Large 方式速度不会比 Small 慢很多, 所以一般没有必要选择 Compact 和 Small 方式 这里选择 Large 方式 Operating: 单击 Operating 后面的下拉箭头, 会有 个选项, 如图 -6 所示 图 -6 Operating 选项 None: 表示不使用操作系统 RTX-5 Tiny Real-Time OS: 表示使用 Tiny 操作系统 RTX-5 Full Real -Time OS: 表示使用 Full 操作系统 Tiny 是一个多任务操作系统, 使用定时器 0 做任务切换 在.059MHz 时, 切换任务的速度为 0ms 如果有 0 个任务同时运行, 那么切换时间为 00ms 不支持中断系统的任务切换, 也没有优行级, 因为切换的时间太长, 实时性大打折扣 多任务情况下 ( 比如 5 个 ), 轮循一次需要 50ms, 即 50ms 才处理一个任务, 这连键盘扫描这些事情都实现不了, 更不要说串口接收 外部中断了 同时切换需要大概 000 个机器周期, 对 CPU 的浪费很大, 对内部 RAM 的占用也很严重 实际上用到多任务操作系统的情况很少 Keil C5 Full Real -Time OS 是比 Tiny 要好一些的系统 ( 但需要用户使用外部 RAM), 支持中断方式的多任务和任务优先级, 但是 Keil C5 里不提供该运行库, 要另外购买 这里选择 None 设置 Output 选项卡 ( 如图 -7 所示 ) 浙江大学控制科学与工程学系 7 自动化实验中心

74 图 -7 设置 Output 卡 Select Folder for Objects: 单击该按钮可以选择编译后目标文件的存储目录, 如果不设置, 就存储在项目文件的目录里 Name of Executable: 设置生成的目标文件的名字, 缺省情况下和项目的名字一样 目标文件可以生成库或者 obj HEX 的格式 Create Executable: 如果要生成 OMF 以及 HEX 文件, 一般选中 Debug Information 和 Browse Information 选中这两项, 才有调试所需的详细信息, 比如要调试 C 语言程序, 如果不选中, 调试时将无法看到高级语言写的程序 Create HEX File: 要生成 HEX 文件, 一定要选中该选项, 如果编译之后没有生成 HEX 文件, 就是因为这个选项没有被选中 默认是不选中的 Create Library: 选中该项时将生成 lib 库文件 根据需要决定是否要生成库文件, 一般应用是不生成库文件的 After Make: 栏中有以下几个设置 Beep when complete: 编译完成之后发出咚的声音 Start Debugging: 马上启动调试 ( 软件仿真或硬件仿真 ), 根据需要来设置, 一般是不选中 Run User Program #,Run User Program #: 这个选项可以设置编译完之后所要运行的其他应用程序 ( 比如有些用户自己编写了烧写芯片的程序, 编译完便执行该程序, 将 HEX 文件写入芯片 ), 或者调用外部的仿真器程序 根据自己的需要设置 设置 Listing 选项卡 ( 如图 -8 所示 ) 图 -8 设置 Listing 选项卡 浙江大学控制科学与工程学系 7 自动化实验中心

75 Keil C5 在编译之后除了生成目标文件之外, 还生 *.lst *m5 的文件 这两个文件可以告诉程序员程序中所用的 idata data bit xdata code RAM ROM stack 等的相关信息, 以及程序所需的代码空间 选中 Assembly Code 会生成汇编的代码 这是很有好处的, 如果不知道如何用汇编来写一个 long 型数的乘法, 那么可以先用 C 语言来写, 写完之后编译, 就可以得到用汇编实现的代码 对于一个高级的单片机程序员来说, 往往既要熟悉汇编, 同时也要熟悉 C 语言, 才能更好地编写程序 某些地方用 C 语言无法实现, 便用汇编语言却很容易 有些地方用汇编语言, 很繁琐, 用 C 语言就很方便 单击 Select Folder for Listings 按钮后, 在出现的对话框中可以选择生成的列表文件的存放目录 不做选择时, 使用项目文件所在的目录 设置 Debug 选项卡 ( 如图 -9 所示 ) 这里有两类仿真形式可选 :Use Simulator 和 Use:Keil Monitor-5 Driver, 前一种是纯软件仿真, 后一种是带有 Monitor-5 目标仿真器的仿真 Load Application at Start: 选择这项之后,Keil 才会自动装载程序代码 -9 设置 Debug 选项卡 Go till main: 调试 C 语言程序时可以选择这一项,PC 会自动运行到 main 程序处 这里选择 Use Simulator 如果选择 Use:Keil Monitor-5 Driver, 还可以单击图 -9 中的 Settings 按钮, 打开新的窗口如图 -0, 其中的设置如下 Port: 设置串口号, 为仿真机的串口连接线 COM_A 所连接的串口 Baudrate: 设置为 9600, 仿真机固定使用 9600bit/s 跟 Keil 通信 Serial Inerrupt: 允许串行中断, 选中它 CacHe Options: 可以选也可以不选, 推荐选它, 这样仿真机会运行得快一点 最后单击 OK 按钮关闭窗口 浙江大学控制科学与工程学系 7 自动化实验中心

76 图 -0 Target 设置 ) 编译程序, 选择 Project / Rebuild all target files 选项, 如图 - 所示 或者单击工具栏中的 图 - Rebuild all target files 按钮, 如图 - 所示, 开始编译程序 图 - 工具栏中的按钮如果编译成功, 开发环境下面会显示编译成功的信息, 如图 - 所示 图 - 编译成功信息 ) 编译完毕之后, 选择 Debug / Start/Stop Debug Session 选项, 即就进入仿真环境, 如图 - 所示 或者单击工具栏中的 图 - 仿真铵钮, 如图 -5 所示 图 -5 工具栏仿真按钮 5) 装载代码之后, 开发环境下面显示如图 -6 所示的信息 浙江大学控制科学与工程学系 75 自动化实验中心

77 图 -6 装载代码三 THKL-C5 型仿真器的在线调试 软件调试步骤 ) 硬件准备 : 首先您必须具备 THGMS- 型硬件系统一套和 THKL-C5 型仿真器, 还需要一条串口线 ( 串口线的接法是 -/-/5-5 也就是交叉接法, 不是平行接法 ) 及一根 USB 线 ( 一头方一头扁 ) ) 软件准备 : 您需要准备 Keilc 软件一套, 版本最好是 7.0 之后的, 可以到 keil 公司的网站下载 下载 ) 系统设置 : 实验箱联接好电源线, 串口线联接好 PC 机和 THKL-C5 仿真器, 把仿真器插入 80C5 核心板的锁紧插座 请注意仿真器插入方向, 缺口应朝上 ) 软件设置 : 打开 keilc 软件, 创建相关实验的应用项目, 包括添加源文件, 编译项目文件, 详见附录一 开始软件设置, 找到图 -7 所示菜单项 图 -7 Project 菜单选中以后找到图 -8 所示的对话框, 按照图 -8 里面的图示方法, 进行端口设置 选择硬件仿真 浙江大学控制科学与工程学系 76 自动化实验中心

78 图 -8 设置 Debug 选项卡进入 Target 设置, 如图 -9 选择串行口, 波特率选择 800, 这样就设置好了 图 -9 Target 设置 5. 开始调试按实验指导提供的方法连接好实验导线 打开相关模块的电源开关 ( 关闭不相关模块的电源开关 ), 打开总电源开关 按图 -0 中的按钮开始调试 浙江大学控制科学与工程学系 77 自动化实验中心

79 图 -0 调试窗口这时候如果出现图 - 所示对话框, 那么硬件系统应复位一次, 关闭总电源开关 秒后从新打开电源 图 - 联接失败对话框然后按图 - 所示的 "Try Again", 可进入调试阶段 如图 - 所示 图 - 调试窗口按图 - 中按钮, 即可运行程序 如果想停止运行程序, 应按一下 THKL-C5 仿真器的复位按钮, 等待约 秒后, 程序便停止运行, 再次按图 - 中的按钮可返回到图 -0 界面 二 软件仿真 浙江大学控制科学与工程学系 78 自动化实验中心

80 根据一个实例作软件仿真的过程 本实例指定外部存储器的起始地址和长度, 将其内容赋同一值 程序如下 : ADDR EQU 8000H ; 地址 :8000H ORG 0 MOV DPTR,#ADDR MOV R0,#0 ; 赋值个数 :0 MOV A,#0FFH ; 赋值 :0FFH LOOP: INC DPTR DJNZ R0,LOOP END. 软件设置 点击 按钮, 按照图 - 里面的图示方法, 进行端口设置 : 图 - 设置 Debug 选项卡. 编译点击 按钮, 无误后点击 按钮, 如图 -: 无编译误后点击按钮 开始调试 浙江大学控制科学与工程学系 79 自动化实验中心

81 图 - 编译. 调试打开 View 菜单下 Memory Window( 存储器窗口 ), 在存储器窗口的 Address 输入框中输入 : X:8000H 接着按回车键, 存储器窗口显示 8000H 起始的存储数据 ( 都为 0) 点击按钮, 运行程序, 如图 - 图 - 调试窗口程序运行结束后, 存储器窗口显示 8000H 起始的 0 个单元的数据变为 0FFH, 如图 - 浙江大学控制科学与工程学系 80 自动化实验中心

82 图 - 调试窗口. 设置断点在需设断点的指令行的空白处双击左键, 指令行的前端出现红色方块即可 同样, 取消断点设置, 也在空白处双击左键, 红色方块消失 如图 -5 图 -5 调试窗口 浙江大学控制科学与工程学系 8 自动化实验中心

83 附录二 ISP 下载器使用说明下载器是使用了单片机的 ISP 编程方式, 其组成有下载板和并口下载器组成 软件特性 : 支持 Hex 文件, 重载的文件对话框, 让你不必到处找文件, 热键支持, 让你调试程序时效率更高, 灵活的程序设计, 甚至可以让整套软件在其他编程器硬件上运行, 下载线, 编程器都有相关的调试程序, 让你制作时更轻松, 提高了成功率. 把软件考到 PC 机中, 打开 Easy 5Pro.exe 即可会出现上图的对话框 打开右下角的设置按扭进行如下图的设置选择 Easy ISP 下载线. 接着在检测器件的窗口中选择要下载的目标芯片如 AT89S5. 其次把 89S5 芯片插到 80C5 MCU 核心板的 0P 的锁紧座中, 在把 ISP 的 8P 排线和实验箱上 80C5 MCU 核心板的 ISP 下载接口相接, 另一端与 5 针的并口线相连, 然后并口端连 PC 机的并口. 然后在烧录界面中点击 检测器件 的按钮看是否可以检测到所烧的目标芯片, 并听到相应的声音信号 浙江大学控制科学与工程学系 8 自动化实验中心

84 5. 在 打开文件 按钮中打开需要下载的程序 HEX 文件, 可以一步一步的手动完成, 也可以点击 自动完成 后, 就会一项一项的往下进行, 烧录完成就可以运行实验程序了 如果要烧写大批量的同样的程序, 缓冲 会自动刷新上一次你打开的文件, 所以你不必每烧一次芯片就去打开一次文件 你也可以不点击 自动完成, 在该界面下 回车 就是了 ISP 下载线可以是任何一种并口下载线, 因为我有个这样的设计 :Easy IS 打开程序目录下的 EasyIsp.ini 文件可以编辑控制 ISP 时所用到的并口引脚 浙江大学控制科学与工程学系 8 自动化实验中心

目 录

目 录 1 Quick51...1 1.1 SmartSOPC Quick51...1 1.2 Quick51...1 1.3 Quick51...2 2 Keil C51 Quick51...4 2.1 Keil C51...4 2.2 Keil C51...4 2.3 1 Keil C51...4 2.4 Flash Magic...9 2.5 ISP...9 2.6...10 2.7 Keil C51...12

More information

Microsoft Word - P3.doc

Microsoft Word - P3.doc ;P3.3 警报器 ;* ( 程序转载请著明出处, 未声明可适应本站腾龙 /isp 开发套件 / 倚天版开发套件 * ;* E-mail:sxj1974@163.com (51c51 test web) 51 测试网, 自学单片机的网站 * ;* Create by : 石学军 www.51c51.com www.8951.com 更多例程请登陆网站 * org 00h ajmp dlv org 0030h

More information

DPJJX1.DOC

DPJJX1.DOC 8051 111 2K 1 2 3 ' ' 1 CPU RAM ROM / A/D D/A PC CPU 40 68 10 20 8 51 PIII 8051 2 MCS51 8051 8031 89C51 8051 8031 89C51? MCS51 INTEL INTEL 8031 8051 8751 8032 8052 8752 8051 8051 8051 MCS51 8031 8031

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

CA24064B LED LED LED EL EL CCFL EL CCF /

CA24064B LED LED LED EL EL CCFL EL CCF / CA24064B 0 50-20 +70-30 +85 LED LED LED EL EL CCFL EL CCF 39 2 6 0755-81995643/27890716 0 13713911853 0755-27890716 1 : VDD-VSS 0 6 V LCD VDD-V0 Ta=25 0 28.0 V VI 0 VDD V : VDD-VSS --- 4.75 5.0 5.25 V

More information

12232A LED LED LED EL EL CCFL EL CCF

12232A LED LED LED EL EL CCFL EL CCF 12232A 0 50-20 +70-30 +85 LED LED LED EL EL CCFL EL CCF 122 x 32 1/32Duty 1/5Bias 6:00 STN( ), EL LED EL/100VAC 400HZ LED/4.2VDC 1 / VDD-VSS 0 6.5 V Ta=25 LCD VDD-V0 0 12.0 V V1 0 VDD V VDD-VSS - 4.75

More information

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0 SH79F6431 1. SH79F6431 1T 8051 FLASH SH79F JET51 Keil µ vision JTAG 1.1. SH79F6431 LQFP64 1.2. (Target Board) SH79F6431 1 V 1.0 1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F6431 1 2 1 B. 1(VCC/GND)

More information

untitled

untitled EDM16080-01 Model No.: Editor: 1. ----------------------------------------------------3 2. ----------------------------------------------------3 3. ----------------------------------------------------3

More information

微處理機期末專題

微處理機期末專題 微 處 理 機 期 末 專 題 自 動 鋼 琴 組 員 :b92611004 羅 鈞 瑋 b92611008 吳 妍 儂 b92611038 吳 韋 靜 b92611042 林 佳 穎 一 簡 介 本 組 的 主 題 是 自 動 鋼 琴 在 播 放 音 樂 的 同 時, 鋼 琴 會 自 動 按 下 琴 鍵, 被 按 下 的 琴 鍵 所 對 應 到 的 音 階, 就 是 正 在 撥 放 的 樂 曲 的

More information

单片机原理及应用实验指导书.doc

单片机原理及应用实验指导书.doc 1 2 3 4...2...4...9...9 AEDK598 MCS51...9 MCS51...10...10...10...10...10...10...11 P1...12...12...12....12...12...13 P3...14...14...14...14...14...14 I/O...15...15...15...15...15...16...17...17...17...17...17...18...19...19

More information

51 C 51 isp 10 C PCB C C C C KEIL

51 C 51 isp 10   C   PCB C C C C KEIL http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom

More information

untitled

untitled EDM12832-08 : 25-1 : 116600 : (0411)7612956 7632020 7631122 : (0411)7612958 Model No.: Editor: LCD 1. ----------------------------------------------------3 2. ----------------------------------------------------3

More information

<4D F736F F D20B3E6B4B9A4F930365F32A443AC71C5E3A5DCBEB9B1B1A8EE2E646F63>

<4D F736F F D20B3E6B4B9A4F930365F32A443AC71C5E3A5DCBEB9B1B1A8EE2E646F63> 七段顯示器控制電路四位數 _ 使用解碼器驅動 +5 V 10 uf 8.2 k 12 MHz 20 pf 1 2 3 4 5 6 7 8 9 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 RESET 10 P3.0 11 12 13 14 15 16 17 18 19 20 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 XTAL2 XTAL1

More information

<4D F736F F D20CEA2BBFAD4ADC0EDD3EBBDD3BFDABCBCCAF5CAB5D1E9D6B8B5BCCAE E646F63>

<4D F736F F D20CEA2BBFAD4ADC0EDD3EBBDD3BFDABCBCCAF5CAB5D1E9D6B8B5BCCAE E646F63> 曹峥胡赤鹰编写 浙江大学控制科学与工程学系 自动化实验中心 0 年 0 月 目 录 目 录... 第一篇 软件实验... 实验一 存储器块操作实验... 实验二 数值转换实验... 实验三 程序跳转表实验... 实验四 数据排序实验... 0 实验五 键盘显示仿真实验... 第二篇 硬件实验... 实验一 I/O 口控制实验... 实验二 动态扫描显示实验... 实验三 查询式键盘实验... 0 实验四

More information

HD61202 HD HD61203 HD61202, HY HY HD61202 HD61202 HD61203 HD =4096 RAMRAM LCD 2HD HD HD /32--

HD61202 HD HD61203 HD61202, HY HY HD61202 HD61202 HD61203 HD =4096 RAMRAM LCD 2HD HD HD /32-- HD61202 C-7 1 HD61202 HD61202 8 HD61203 HD61202, HY-12864 HY-19264 HD61202 HD61202 HD61203 HD61202 1 6464=4096 RAMRAM LCD 2HD61202 64 3HD61202 68 68 4HD61202 1/32--1/64 HD61202 HD61202 2 CS1,CS2,CS3 CS1

More information

2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L

2 Keil µ vision 2.1 1) Keil µ vision2 V2.34 µ vision3 2) Sino_Keil.exe   Keil c:\keil\ 3) JET51 USB PC C:\Keil\ USB PC 4) S-L 1 SH88F516 8051 64K FLASH 1024 EEPROM SH88F516 JET51 S-Lab Keil µ vision ISP51 Keil µ vision ISP51 ISP51 PC RS232 MCU SH88F516 SH88F516 1.1 SH88F516 1.1 SH88F516 SH88Fxx: QFP44, DIP40 RAM Flash E2 ADC

More information

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit

6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C C C51 C51 ANSI C MCS-51 C51 ANSI C C C51 bit Byte bit sbit 6 C51 ANSI C Turbo C C51 Turbo C C51 C51 C51 C51 C51 C51 C51 C51 C51 6.1 C51 6.1.1 C51 C51 ANSI C MCS-51 C51 ANSI C C51 6.1 6.1 C51 bit Byte bit sbit 1 0 1 unsigned char 8 1 0 255 Signed char 8 11 128

More information

» n ¹ú KS0108 x ÍÍÙ q n KS0108 KS KS0107 KS0108 KS *32 128*64 192*64 KS0108 KS0108 KS0107 KS =4096 RAM RAM LCD 2 KS

» n ¹ú KS0108 x ÍÍÙ q n KS0108 KS KS0107 KS0108 KS *32 128*64 192*64 KS0108 KS0108 KS0107 KS =4096 RAM RAM LCD 2 KS KS0108 KS0108 8 KS0107 KS0108 KS0108 128*32128*64 192*64 KS0108 KS0108 KS0107 KS0108 1 6464=4096 RAMRAM LCD 2KS0108 64 3KS0108 68 68 4KS0108 1/48--1/64 KS0108 CS1,CS2,CS3 CS1 CS2 CS3 E E KS0108 E R/W R/W=1

More information

專題最終版.doc

專題最終版.doc The Principle and Application of the Electric Combination Lock The Principle and Application of the Electric Combination Lock Abstract Recently, there are more and more burglaries in the society. It's

More information

单片机学习教程

单片机学习教程 . 89S51 1. 2.p1 3.8 3 4.8 3. 1. 0-F 2. 0000 0255. 1. : BB 2. : ( --- ) : :. 1. 2..232.I 2 C 1. X24C02 MCS-51 2. : 22H 24C02 50H 3. : ; 8 4. :I2C. / 1. 1 2. 2. 1. 1. 2. 2.. 1. 1: 2. 2: 3. 3 1 LED 1 89S51

More information

<4D6963726F736F667420576F7264202D20B9F9B0EABBCDBBAFAB48DEB3B4C1A5BDB3F8A7692E646F63>

<4D6963726F736F667420576F7264202D20B9F9B0EABBCDBBAFAB48DEB3B4C1A5BDB3F8A7692E646F63> 臺 北 市 立 松 山 高 級 工 農 職 業 學 校 資 訊 科 專 題 製 作 報 告 題 目 : 反 彈 空 間 指 導 老 師 : 余 耀 銘 學 生 : 廖 國 銓 趙 信 瑋 中 華 民 國 102 年 5 月 摘 要 在 這 高 速 科 技 的 起 飛 下, 科 技 都 建 立 起 於 基 礎, 有 些 人 把 這 基 礎 轉 為 理 論, 教 給 大 眾 學 習 ; 有 些 人 利

More information

93C46串行EEPROM数据读写

93C46串行EEPROM数据读写 一 \ 实验目的 93C46 串行 EEPROM 数据读写 1 学会 93C46 的操作指令, 掌握 93C46 读 / 写程序的编写 2 掌握 93C46 与单片机的接口方式二 实验说明 93C46/56/66 是 1K/2K/4K 位的串行电可擦写的 EPROM 93C46 的 1K 位 EPROM, 可以按 128 字节排列, 也可以 64 字节排列 93C46 芯片有 8 脚, 当 ORG

More information

1 TPIS TPIS 2 2

1 TPIS TPIS 2 2 1 1 TPIS TPIS 2 2 1. 2. 3. 4. 3 3 4 5 4 TPIS TPIS 6 5 350 Mark Coil F3/F6 350 M 150 M 25 M 7.12M 8 M F3 F6 F4 F7 F8 8M AA 7 350 28V 5V IC HCPL2731 0.5mA 6 8 (TPIS) TPIS 9 7 IC AT89C2051 AT89C2051 CMOS8

More information

Microsoft Word - 專題封面.doc

Microsoft Word - 專題封面.doc 逢 甲 大 學 資 訊 工 程 學 系 專 題 研 究 報 告 8051 小 遊 戲 -21 點 指 導 教 授 : 陳 德 生 學 生 : 許 博 益 中 華 民 國 九 十 六 年 六 月 I 目 錄 第 一 章 緒 論 1 1-1 研 究 背 景 1 1-2 研 究 動 機 2 1-3 研 究 目 的 3 1-3-1 21 點 源 起 3 1-3-2 21 點 規 則 3 第 二 章 微 電

More information

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C

1.1 ML_ONOFF = 1 Q 3 Q 8 C 0.3V M 2 L 1 ML_ONOFF = 0 Q 3 Q 8 C 1. + R31 VCC R21 10K ML_ONOFF R15 0:off 1:on 1K Green Light VCC=5V L1 Q VDD=12V C AUTOMATIC TROLLEY H K Hwang K K Chen J-S Lin S-C Wang M-L Li C-C Lin W-B Lin Dept. Of Electrical Engineering Far East College ABSTRACT This paper proposes an automatic trolley which can move automatically

More information

W77E58中文手册

W77E58中文手册 W77E58 77E58 8051 8051 8051 77E58 8051 1.5 3 COMS 32K EEPROM 1K SRAM 1 8 2 40M 4 3 8051 4 8051 5 4 8 I/O 6 4 I/O 44 PLCC QFP 7 16 / 8 12 9 10 11 1K 12 13 16 DPTR 14 15 DIP40 W77E58 25/40 PLCC44 W77E58P

More information

TSINGTEK DISPLAY CO.,LTD LCD CONTROLLER & DRIVER ST7920 OR EQUIVALENT (f) 639 2A f B1

TSINGTEK DISPLAY CO.,LTD LCD CONTROLLER & DRIVER ST7920 OR EQUIVALENT (f) 639 2A f B1 TSINGTEK DISPLAY CO.,LTD LCD CONTROLLER & DRIVER ST7920 OR EQUIVALENT 588 4 1 0571-85121224 85121742 85121304(f) 639 2A095 0571-88256346 89902095 f B1618 010-62051209 62000662 62568913 82036512 f http://www.tsingtek.com

More information

SPMC75F2413A_EVM_使用说明_V1.2.doc

SPMC75F2413A_EVM_使用说明_V1.2.doc SPMCFA EVM V. - Jan 0, 00 http://www.sunplusmcu.com ................ SPMCFA........... EEPROM.... I/O............ LED.... LED.... RS-........0............ EVM................ 0.....0..... SPMCFA EVM SPMCFA

More information

<4D6963726F736F667420576F7264202D203130B5A5C6ACBBFACAB5D1E9D6B8B5BCCAE92E646F63>

<4D6963726F736F667420576F7264202D203130B5A5C6ACBBFACAB5D1E9D6B8B5BCCAE92E646F63> 单 片 机 及 接 口 技 术 实 验 指 导 书 张 勇 编 计 算 机 与 通 信 工 程 学 院 信 息 与 通 信 工 程 系 2004.12 1 - 前 言 单 片 机 及 接 口 技 术 是 通 信 工 程 专 业 的 专 业 技 能 课 程, 在 专 业 知 识 结 构 体 系 中 具 有 十 分 重 要 的 地 位, 课 程 的 实 践 性 很 强, 学 习 必 须 理 论 和 实

More information

00 sirius 3R SIRIUS 3R 3RV1 0A 1 3RT1 3RH1 3 3RU11/3RB SIRIUS SIRIUS TC= / 3RV1 A 1 IEC6097- IP0 ( IP00) 1/3 IEC6097- (VDE0660) DIN VDE 06 0 AC690V, I cu 00V 1) P A n I n I cu A kw A A ka S00 0.16 0.0

More information

学习MSP430单片机推荐参考书

学习MSP430单片机推荐参考书 MSP430 16 MSP430 C MSP430 C MSP430 FLASH 16 1 CPU 16 ALU 16 PC SP SR R4~R15 2 3 00-FFH 100-1FFH 4 5 1 2 51 24 27 6 1 2 3 4 5 6 4 12 SR SP SR CPU SR CPU C Z N GIE CPUOff CPU OscOff SCG0 SCG1 CPU EXIT SP

More information

() () () () () () () () DDRAM () II

() () () () () () () () DDRAM () II 液晶模块说明书 SPEC NO YM2232A REV NO. 液晶显示模块产品说明书 产品类型 : 产品型号 : 产品描述 : 标准产品 YM2232A 22x32 图形点阵模块, 控制器 :SED52,LED 背光 客户名称 : 客户确认 : 编写 : Dexun Zou 审核 : HCC 批准 : Jingxi Yang 发行日期 : 22.8 大连佳显电子有限公司 地址 : 大连市沙河口区工华街

More information

! *!"#$%&'()*+,-./#01 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( / )! ( ) 3SB3!" Ø22mm!"# ( / ) 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( ) 7, 10 7, 9 7, 8

! *!#$%&'()*+,-./#01 6, 8 6, 8 6, 8 8!# ( / )!# ( / )!# ( / )! ( ) 3SB3! Ø22mm!# ( / ) 6, 8 6, 8 6, 8 8!# ( / )!# ( / )!# ( ) 7, 10 7, 9 7, 8 SIRIUS 3SB3 sirius s ! *!"#$%&'()*+,-./#01 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( / )! ( ) 3SB3!" Ø22mm!"# ( / ) 6, 8 6, 8 6, 8 8!"# ( / )!"# ( / )!"# ( ) 7, 10 7, 9 7, 8! (2 /3 ) ( / ) RONIS! ( SB) CES

More information

GW EDA VHDL VHDL VHDL VHDL ADC009 0 FPGA PC GW EDA a GW EDA beda README.TXT c d 0 e J MZH +V GND -V D/A +V GND S JA J D D D D D D D D C K J J VGA VGA B EDA JB B J HC B RS- CON CON HC PS/ CPLD/FPGA J RS-

More information

第5章:汇编语言程序设计

第5章:汇编语言程序设计 第 5 章 : 汇编语言程序设计 程 汇编语言指令格式 系统伪指令 存储器选择方式 常用子程序 1 汇编语言程序设计 PIC 指令系统 语言系统 指 CPU 编 器语言 器语言 器语言 设计 用 语言 设计 语言 汇编语言 2 汇编语言指令格式 汇编语言指令格式 ( 指令 ) label opcode operand comment 指令 用 存 指令 指令语 3 汇编语言指令格式 1 指令 用 指令

More information

电子技术基础 ( 第 版 ) 3. 图解单相桥式整流电路 ( 图 4-1-3) 电路名称电路原理图波形图 整流电路的工作原理 1. 单相半波整流电路 u 1 u u sin t a t 1 u 0 A B VD I A VD R B

电子技术基础 ( 第 版 ) 3. 图解单相桥式整流电路 ( 图 4-1-3) 电路名称电路原理图波形图 整流电路的工作原理 1. 单相半波整流电路 u 1 u u sin t a t 1 u 0 A B VD I A VD R B 直流稳压电源 第 4 章 4.1 整流电路及其应用 学习目标 1. 熟悉单相整流电路的组成, 了解整流电路的工作原理. 掌握单相整流电路的输出电压和电流的计算方法, 并能通过示波器观察整流电路输出电压的波形 3. 能从实际电路中识读整流电路, 通过估算, 能合理选用整流元器件 4.1.1 认识整流电路 1. 图解单相半波整流电路 ( 图 4-1-1) 电路名称电路原理图波形图 4-1-1. 图解单相全波整流电路

More information

物品重量分級器.doc

物品重量分級器.doc Ω Ω Ω Ω Ω Ω Ω 9 A R = Ω Ω + - - + R = A R = - ρ A A R = + A A R = A ρ Ω = + A A A - R + + = + = ρ ) A A ) ( A R ( + + = + + = A ) A R (+ R R = R R = F F Active Dummy V Active Dummy ± ± ± mv = mv ±

More information

SIGNUM 3SB3

SIGNUM 3SB3 SGNUM * 6, 8 6, 8 6, 8 8 : : : : ( ) Ø22mm 6, 8 6, 8 6, 8 8 : : : : ( ) 7, 10 7, 9 7, 8 : (2 /3 ) RNS ( SB) : : CES / BKS : ( / ) 10 7, 8 : (2 /3 ) RNS ( 360012K1) : : MR : 7 Ø22mm 16 16 16 16 : : : :

More information

2 12

2 12 SHENZHEN BRILLIANT CRYSTAL TECHNOLOGIC CO.,LTD. The specification for the following models Graphic LCM serial communication control board CB001 PROPOSED BY APPROVED Design Approved TEL:+86-755-29995238

More information

Microsoft Word - IRFWX_A051_C_SyncMOS_with_STC_APN_SC_.doc

Microsoft Word - IRFWX_A051_C_SyncMOS_with_STC_APN_SC_.doc EEPROM 应用说明 1 适用产品 :SM59D03G2 SM59D04G2 series 2 应用范围 : 针对需使用 EEPORM 功能替换 STC 89C5X 的应用及汇编语言之范例程序 ( 使用内部扩充内存为暂存区 ) 3 功能说明 : 3.1 本公司上述产品 EEPORM 功能皆可替换 STC89C5X, 仅需对特殊功能缓存器定义 ( 详见表 1) 及 ISP 命令定义 ( 详见表 2)

More information

逢 甲 大 學

逢    甲    大    學 論 車 Auto Vehicle 立老 磊 年 老 立老 了 見 老 了不 料 利 了 識 更了 力量! i 車. 車 利 89c51 來 流. 令. 車 8051 類 車利 車 ii Abstract The goal of this thesis is to design a small auto vehicle by using IC as its control center. Our auto

More information

Microsoft Word - 47FD9AF8-57CE-283B40.doc

Microsoft Word - 47FD9AF8-57CE-283B40.doc 单片机原理及应用 实验指导书 机械工程分院 龚 民 目 录 第一部分实验系统的组成和结构 ----------------------------------------------------------1 第二部分 Keil C 软件使用说明 ---------------------------------------2 第三部分单项实验 ---------------------------------------------------------------------------8

More information

电 阻 应 变 式 传 感 器 是 将 被 测 量 的 力, 通 过 它 产 生 的 金 属 弹 性 变 形 转 换 成 电 阻 变 化 的 元 件 由 电 阻 应 变 片 和 测 量 线 路 两 部 分 组 成 电 阻 应 变 片 产 生 的 误 差, 主 要 来 源 于 温 度 的 影 响, 本

电 阻 应 变 式 传 感 器 是 将 被 测 量 的 力, 通 过 它 产 生 的 金 属 弹 性 变 形 转 换 成 电 阻 变 化 的 元 件 由 电 阻 应 变 片 和 测 量 线 路 两 部 分 组 成 电 阻 应 变 片 产 生 的 误 差, 主 要 来 源 于 温 度 的 影 响, 本 AT89C51 体 重 称 电 路 图 原 理 本 文 设 计 一 种 利 用 电 阻 应 变 式 压 力 传 感 器 和 MCS-51 单 片 机 等 器 件 制 作 的 体 重 秤 该 体 重 秤 的 量 程 为 100kg, 能 实 现 称 重 数 码 显 示 调 零 等 功 能 该 体 重 秤 利 用 电 桥 测 量 原 理, 将 压 力 应 变 传 感 器 阻 值 转 换 为 电 压 值,

More information

Hz 10MHz 0.5V 5V 0.01% 10s 2 0.5V 5V 1Hz 1kHz 10% 90% 1% 3 1Hz 1MHz 1% EPM7128SLC84-15 LM361 LM361 Zlg

Hz 10MHz 0.5V 5V 0.01% 10s 2 0.5V 5V 1Hz 1kHz 10% 90% 1% 3 1Hz 1MHz 1% EPM7128SLC84-15 LM361 LM361 Zlg 1 1 a. 0.5V 5V 1Hz 1MHz b. 0.1% 2 : a. 0.5V 5V 1Hz 1MHz b. 0.1% (3) a. 0.5V 5V 100 s b. 1% 4 1 10 5 1MHz 6 1 2 1 0.1Hz 10MHz 0.5V 5V 0.01% 10s 2 0.5V 5V 1Hz 1kHz 10% 90% 1% 3 1Hz 1MHz 1% EPM7128SLC84-15

More information

untitled

untitled LCD EDM12864HBSL-ALC-G : 25-1 : 116600 : (0411)7612956 7632020 : (0411)7612958 Model No.: Editor: LCD 1. ----------------------------------------------------3 2. ----------------------------------------------------3

More information

epub83-1

epub83-1 C++Builder 1 C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r C + + B u i l d e r 1.1 1.1.1 1-1 1. 1-1 1 2. 1-1 2 A c c e s s P a r a d o x Visual FoxPro 3. / C / S 2 C + + B u i l d e r / C

More information

四、通 讯 规 约

四、通 讯 规 约 HY-ML2000 RS232 RS422 RS-485 9 RS232 1----GND 3---RXD 4---TXD RS422 6--T+,7--T-,8--R-, 9--R+ 00 0FFH 256 0# 1# 2# 3# 4# 5# 6# 7# 8# 14# 18# HY-ML2000 ( ) 0# ( BJ DISA ) 1 EB 90 EB 90 02...( )... (L) (H)

More information

PIC16F F MPLAB 08 16F LED 15 LED

PIC16F F MPLAB 08 16F LED 15 LED PIC16F877 PIC16F877 03 16F877 05 06 MPLAB 08 16F877 13 LED 15 LED 17 20 24 2 PIC16F877 PIC16F877 DIP VDD VSS CLOCK CPU :,AND,OR,XOR ROM: CPU ROM RAM: CPU,CPU I/O:CPU, CPU,, 16F877 RAM 512 128 Bank Bank

More information

MICROMASTER 410/420/430/440 DA kW 250kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER Vector 90kW (Low

MICROMASTER 410/420/430/440 DA kW 250kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER Vector 90kW (Low DA51.2 2002 micromaster MICROMASTER 410/420/430/440 0.12kW 250kW s MICROMASTER 410/420/430/440 DA51.2 2002 0.12kW 250kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER

More information

Ps22Pdf

Ps22Pdf ( ) ( 150 ) 25 15 20 40 ( 25, 1, 25 ), 1. A. B. C. D. 2. A. B. C. D. 3., J = 1 H = 1 ( A B, J', J, H ) A. A = B = 1, J' =0 B. A = B = J' =1 C. A = J' =1, B =0 D. B = J' = 1, A = 0 4. AB + AB A. AB B. AB

More information

untitled

untitled 0.37kW 250kW D11.7 2009 SINAMICS G120 0.37kW 250kW SINAMICS G120 Answers for industry. SINAMICS G120 0.37kW 250kW SINAMICS G110 D 11.1 0.12 kw 3 kw CA01 MC CA01 MC CD : E20001-K20-C-V2-5D00 141-P90534-09020

More information

MICROMASTER 410/420/440 DA kW 200kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER Vector 90kW (Low-Vol

MICROMASTER 410/420/440 DA kW 200kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER Vector 90kW (Low-Vol s MICROMASTER 410/420/440 0.12kW 200kW DA51.2 2002 MICROMASTER 410/420/440 DA51.2 2002 0.12kW 200kW MICROMASTER Eco & MIDIMASTER Eco MICROMASTER, MICROMASTER Vector DA64 MIDIMASTER Vector 90kW (Low-Voltage

More information

<4D6963726F736F667420576F7264202D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63>

<4D6963726F736F667420576F7264202D20C7B6C8EBCABDCFB5CDB3C9E8BCC6CAA6B0B8C0FDB5BCD1A75FD1F9D5C22E646F63> 因 为 路 过 你 的 路, 因 为 苦 过 你 的 苦, 所 以 快 乐 着 你 的 快 乐, 追 逐 着 你 的 追 逐 内 容 简 介 本 书 根 据 2005 年 下 半 年 实 施 的 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 嵌 入 式 系 统 设 计 师 级 考 试 大 纲 精 神, 在 深 入 研 究 历 年 计 算 机 技 术 与 软

More information

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示

图 内部结构图 8251 的外部引脚如图 所示, 共 28 个引脚, 每个引脚信号的输入输出方式如图中的箭 头方向所示 实验题目 : 串行接口芯片 8251 实验目的 : 1. 掌握 8251 的工作方式及应用 2. 了解有关串口通讯的知识 串行接口芯片 8251 3. 掌握使用 8251 实现双机通讯的软件编程和电路连接 实验设备 : IA-32 架构的微机系统及应用教学平台两套 实验原理 : 1. 8251 的基本性能 性能 : 8251 是可编程的串行通信接口, 可以管理信号变化范围很大的串行数据通信 有下列基本

More information

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63>

<4D F736F F D20B5DAC8FDCBC4D5C2D7F7D2B5B4F0B0B82E646F63> 第三章 Q3 1 1. 省略了 I/O 操作的复杂逻辑, 易实现, 耗费低 ; 2. 可以利用丰富的内存寻址模式实现灵活的 I/O 操作 Q3 2 假设存储单元 ds1 处寄存器地址为 0x2000, 代码如下 #define ds1 0x2000 while ( *ds1 == 0 ) ; Q3 3 假设设备 (dev1) 中有两个寄存器 ds1 和 dd1,dev1 的地址为 0x1000,ds1

More information

<4D F736F F D20B5A5C6ACBBFAD4ADC0EDD3EBD3A6D3C3BCB B3CCD0F2C9E8BCC65FB5DA33B0E65F2DD6D5B8E52D4E65772DBFB1CEF3B1ED2DB3F6B0E6C9E72E646F6378>

<4D F736F F D20B5A5C6ACBBFAD4ADC0EDD3EBD3A6D3C3BCB B3CCD0F2C9E8BCC65FB5DA33B0E65F2DD6D5B8E52D4E65772DBFB1CEF3B1ED2DB3F6B0E6C9E72E646F6378> 单片机原理与应用及 C51 程序设计 ( 第 3 版 )- 终稿 -New 勘误表 1. P18 页 11 行原来 : 汇编语言 机器语言 功能 MOV AL,01H 1011 0000 0000 0011B ; 把 01 送入累加器 A ADD AL,02H 0000 0100 0000 0101B ;02 与 A 中内容相加, 结 果存入 A HLT 11110100B ; 停止操作 汇编语言

More information

Microsoft Word - FM12232C.doc

Microsoft Word - FM12232C.doc SPEC NO YM2232C REV NO. : YM2232C : 22x32 SED52 LED : Dexun Zou HCC : Jingxi Yang : 22.8 目 录 ( 一 ) 基本特性 () ( 二 ) 限定参数 () ( 三 ) 直流特性 (2) ( 四 ) 交流特性 (2) ( 五 ) 机械尺寸图 (3) ( 六 ) 原理图 (3) ( 七 ) DDRAM 地址表 (4)

More information

CH559指令周期.doc

CH559指令周期.doc CH55X 汇编指令周期表 CH55X 汇编指令概述 : 型号包含 : a. 指令单周期型号 :CH557 CH558 CH559; b. 指令 4 周期型号 :CH551 CH552 CH553 CH554; c. 非跳转指令的指令周期数与指令字节数相同 ; d. 跳转指令含 MOVC/RET/CALL 通常比字节数多若干个周期 ; e.movc 指令多 4 或 5 个周期 ( 下条指令地址为奇数时多

More information

untitled

untitled TD3200 V1.3 2005-02-25 BOM 31050155 518057 www.emersonnetworkpower.com.cn 800-820-6510 800021-230171410755-86010800 E-mailinfo@emersonnetwork.com.cn ... 1 1.1...1 1.2...2 1.3...4... 5 2.1...5 2.2...5

More information

µPSD3000 系列

µPSD3000 系列 8032 FLASH MCU µpsd3251f-40t6 µpsd3251 8032 FlashPSD Flash SRAM I/O I 2 C, ADC and PWM 8032, 16 / FlashPSD µpsd32 JTAG ISP 2K SRAM Flash - 64K Flash - 16K Flash - Flash 8032 12 I2C ADC 6 I/O 37 I/O 16

More information

97 04 25 0970002232 97 12 31 1-7 1 2 1 0 1 0 1 0 1 0 1 0 1 0 1 2 24 A1. 0 1 ( 6 ) 2 ( 6 ) 3 4 A1a.? 5 6 0 1 A1b.? 0 1 2 A2. 0 1 A2b. A2c. A2a. A2d. 1 A3. 1 A4 2 0 A4 A3a.?? 0 A4 1 A3b. 0 A4 1 A3c.?? 1

More information

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor 1 4.1.1.1 (Load) 14 1.1 1 4.1.1.2 (Save) 14 1.1.1 1 4.1.2 (Buffer) 16 1.1.2 1 4.1.3 (Device) 16 1.1.3 1 4.1.3.1 (Select Device) 16 2 4.1.3.2 (Device Info) 16 2.1 2 4.1.3.3 (Adapter) 17 2.1.1 CD-ROM 2 4.1.4

More information

目录

目录 ALTERA_CPLD... 3 11SY_03091... 3 12SY_03091...4....5 21 5 22...8 23..10 24..12 25..13..17 3 1EPM7128SLC.......17 3 2EPM7032SLC.......18 33HT46R47......19..20 41..20 42. 43..26..27 5151DEMO I/O...27 52A/D89C51...28

More information

言1.PDF

言1.PDF MSP430 WINDOWS WORKBENCH MSP430 Flash Green MCU Flash Flash MCU MSP430 16 RISC 27 125ns 1.8V~3.6V A/D 6 s MSP430 10 ESD MSP430 MSP430 10 MSP430 2001 MSP430 Windows Workbench Interface Guide Windows Workbench

More information

ICD ICD ICD ICD ICD

ICD ICD ICD ICD ICD MPLAB ICD2 MPLAB ICD2 PIC MPLAB-IDE V6.0 ICD2 usb PC RS232 MPLAB IDE PC PC 2.0 5.5V LED EEDATA MPLAB ICD2 Microchip MPLAB-IDE v6.0 Windows 95/98 Windows NT Windows 2000 www.elc-mcu.com 1 ICD2...4 1.1 ICD2...4

More information

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File 51 C 51 51 C C C C C C * 2003-3-30 pnzwzw@163.com C C C C KEIL uvision2 MCS51 PLM C VC++ 51 KEIL51 KEIL51 KEIL51 KEIL 2K DEMO C KEIL KEIL51 P 1 1 1 1-1 - 1 Project New Project 1 2 Windows 1 3 N C test

More information

Microsoft Word - ~ doc

Microsoft Word - ~ doc EEPROM 功能使用方法 1 适用产品 : 1.1 SM39R16A2/ SM39R12A2/ SM39R08A2 1.2 SM39R4051/ SM39R2051 1.3 SM39R04G1/ SM39R02G1 2 EEPROM 功能概述 : 2.1 使用 code flash 仿真为 Internal EEPROM, 在程序执行时, 可将 code flash 作为 data flash 储存数据使用

More information

untitled

untitled 8086/8088 CIP /. 2004.8 ISBN 7-03-014239-X.... TP313 CIP 2004 086019 16 100717 http://www.sciencep.com * 2004 8 2004 8 1 5 500 787 1092 1/16 16 1/2 391 000 1 2 ii 1 2 CAI CAI 3 To the teacher To the student

More information

查询 AD0809 供应商 捷多邦, 专业 PCB 打样工厂,24 小时加急出货 51 测试网论坛 单片机征文大赛稿件, 非本站以及作者 同意禁止转载, 欢迎会员投稿! 欢迎投票评论! 中国. 深圳.51 测试网

查询 AD0809 供应商 捷多邦, 专业 PCB 打样工厂,24 小时加急出货 51 测试网论坛   单片机征文大赛稿件, 非本站以及作者 同意禁止转载, 欢迎会员投稿! 欢迎投票评论! 中国. 深圳.51 测试网 查询 AD0809 供应商 捷多邦, 专业 PCB 打样工厂,24 小时加急出货 51 测试网论坛 http://www.8951.com/bbs/index.asp 单片机征文大赛稿件, 非本站以及作者 同意禁止转载, 欢迎会员投稿! 欢迎投票评论! 中国. 深圳.51 测试网 www.8951.com AD0809 在 51 单片机中的应用 51 测试网论坛版主 / 黄海我们在做一个单片机系统时,

More information

E170C2.PDF

E170C2.PDF IQ E170C2 2002.3. Rotork Rotork * ( ) * * RotorkIQ - IQ * * PC IQ Insight / Rotork * - Rotork IQ www.rotork.com 5 10 5.1 11 1 2 5.2 11 2 3 5.3 11 3 IQ 3 5.4 11 3.1 3 5.5 IQM12 3.2 3 5.6 IQML12 3.3 4 5.7

More information

Microsoft Word - ISSFA-0134_A_AP_User-definedDownload_SC_.doc

Microsoft Word - ISSFA-0134_A_AP_User-definedDownload_SC_.doc 自定义下载应用说明 一 适用产品 :SM59XX 系列 SM59D XX 系列 SM59R XX 系列二 应用方式 : 可以让使用者自定义 command 作为进入 ISP 刻录的通关指令, 透过 UART 连接 ISAP 软件做联机更新三 操作说明 ( 使用 SM59D04G2 为例 ): 1. ISAP 操作方式 : 1.1 先将主程序及 ISP 服务程序烧进 MCU 中 1.2 将 MCU 放至系统版上,

More information

2005.book

2005.book ...4... 4... 7...10... 10... 10... 10... 10... 11... 11 PCC... 11 TB170... 12 /... 12...13... 13 BP150 / BP151 / BP152 / BP155... 14...15... 15... 15... 15... 15... 15... 15... 16 PS465 / PS477... 17 PS692

More information

中文手册

中文手册 PCC-3428 PC/104 1. PCC-3428 1.1 PCC-3428 90mm 96mm ST CPU STPC Atlas Atlas CPU 486 DX/DX2 CPU DX2 133MHz Atlas 2D LCD/CRT 100MHz SDRAM 64MBytes PCC-3428 10/100Mbps DOC EIDE USB PC/104 ST STPC Atlas STPC

More information

控制器 EtherCAT EtherCAT EtherCAT 接下一个电机驱动模块 (X4) 接下一个电机驱动模块 (X5) X11 IN X4 IN X3 OUT X5 IN X6 OUT X2 X1 X4 IN X3 OUT X5 IN X6 OUT X2 X1 SYS STA DC BUS D

控制器 EtherCAT EtherCAT EtherCAT 接下一个电机驱动模块 (X4) 接下一个电机驱动模块 (X5) X11 IN X4 IN X3 OUT X5 IN X6 OUT X2 X1 X4 IN X3 OUT X5 IN X6 OUT X2 X1 SYS STA DC BUS D 控制器 thert thert thert 接下一个电机驱动模块 () 接下一个电机驱动模块 () 电机驱动模块 电机驱动模块 电源模块 接下一个电机驱动模块 () 接下一个电机驱动模块 () 接下一个电机驱动模块 () 接下一个电机驱动模块 () X 0 X 0 4 /RK /RK 注 注 制动电阻阻值 Ω Φ 80: 适用电机驱动模块型号 8-M-XXXX--XX Φ : 适用电机驱动模块型号

More information

PowerPoint Presentation

PowerPoint Presentation 7.2 并行接口 二. 可编程并行接口芯片 8255A 的功能及其应用 与 CPU 一侧相连的引脚 D0 PA0 ~ ~ ~ ~ ~ D7 PA7 RESET PC7 WR RD PC4 PC3 PC0 A0 PB0 A1 PB7 CS PA 口 PC 口上半部 PC 口下半部 PB 口 A 组 B 组 与 I/O 设备相连的引脚 7.2 并行接口二. 可编程并行接口芯片 8255A 的功能及其应用

More information

dfgdafhdafhdafhdafh

dfgdafhdafhdafhdafh 逢 甲 大 學 自 動 控 制 工 程 學 系 專 題 製 作 專 題 論 文 數 位 式 電 子 秤 之 研 製 Design Study of Digital Electronic Weighing Sensor 指 導 教 授 : 賴 啟 智 學 生 : 劉 人 豪 俞 仲 維 中 華 民 國 九 十 八 年 四 月 二 十 二 日 ii . 誌 謝 本 文 承 蒙 賴 啟 智 老 師 指 導,

More information

Microsoft Word - FG12232A.doc

Microsoft Word - FG12232A.doc 图形点阵液晶显示模块使用手册 FG2232A 广州市方舟电子有限公司 公司网站 :www.arkteck.com 地址 : 广州市天河区东圃桃园路 33 号 5 楼电话 :2-82574878 82574677 8854485 传真 :82574878 82574677 分机 88 目 录 ( 一 ) 基本特性 () ( 二 ) 原理图 (2) ( 三 ) 限定参数 (2) ( 四 ) 直流特性 (2)

More information

*_* IAP In Applications Program, *_* ROM RAM A/D D/A KELL C51 2 0531-86213622 Micro Controller Unit( ) INTEL MCS-48 MCS-51 MCS-96 51 MCS-51 8 MCS-96 16 INTEL / 51 87 LPC W78L DS87 GSM97 ATMEL 89C51

More information

Comp-AC ACS to 2.2 kw

Comp-AC ACS to 2.2 kw Comp-AC ACS100 0.12 to 2.2 kw ACS 100 3BFE 64307622 R0125 3ABD00008839 C 2002 11 20 2000 ABB Industry Oy ACS 100 5 (U c+, U c- ) G! (U1, V1, W1 U2, V2, W2 U c+, U c- )! ACS400 ( RO1, RO2, RO3)! ACS100!

More information

untitled

untitled 2007 12 1 2 SIRIUS 3 4 5 6 2 2/2 3SB3 2/4 3SB3 2/5 3SB3 2/5 2/7 2/10 2/11 2/13 3SB3 2/14 3SB3 2/15 3SB3 2/17 3SB37 SIRIUS 3SB3 3SB3 (/) (/) (/) () Ø22mm (/) (/) (/) () 23 RONIS (/) (SB30) () 23 OMR (/)

More information

微机原理与接口技术 郭玉洁

微机原理与接口技术 郭玉洁 微机原理与接口技术 郭玉洁 实验安排 汇编语言程序设计实验编程测验硬件接口应用实验综合应用实验 2 学时 1 学时 4 学时 4 学时 一 实验内容 二 实验目的 三 实验方法 实验报告要求 1 文字叙述设计思路 2 流程图 四 实验源程序 ( 必要的文字注释 ) 五 实验结果 六 实验中遇到的问题及解决方法 七 心得体会 ( 学会编程 调试等学习的方法 ) 汇编语言实验内容 1 学习并掌握 IDE86

More information

因 味 V 取 性 又 鸟 U 且 最 大 罗 海 惜 梅 理 春 并 贵 K a t h l ee n S c h w e r d t n er M f l e z S e b a s t i a n C A Fe rs e T 民 伊 ' 国 漳 尤 地 视 峰 州 至 周 期 甚 主 第 应

因 味 V 取 性 又 鸟 U 且 最 大 罗 海 惜 梅 理 春 并 贵 K a t h l ee n S c h w e r d t n er M f l e z S e b a s t i a n C A Fe rs e T 民 伊 ' 国 漳 尤 地 视 峰 州 至 周 期 甚 主 第 应 国 ' 东 极 也 直 前 增 东 道 台 商 才 R od e ric h P t ak 略 论 时 期 国 与 东 南 亚 的 窝 贸 易 * 冯 立 军 已 劳 痢 内 容 提 要 国 与 东 南 亚 的 窝 贸 易 始 于 元 代 代 大 规 模 开 展 的 功 效 被 广 为 颂 扬 了 国 国 内 市 场 窝 的 匮 乏 窝 补 虚 损 代 上 流 社 会 群 体 趋 之 若 鹜 食 窝

More information

手册 doc

手册 doc 1. 2. 3. 3.1 3.2 3.3 SD 3.4 3.5 SD 3.6 3.7 4. 4.1 4.2 4.3 SD 4.4 5. 5.1 5.2 5.3 SD 6. 1. 1~3 ( ) 320x240~704x288 66 (2G SD 320x2401FPS ) 32M~2G SD SD SD SD 24V DC 3W( ) -10~70 10~90% 154x44x144mm 2. DVR106

More information

USB解决方案.ppt

USB解决方案.ppt USB USB? RS232 USB USB HID U modem ADSL cable modem IrDA Silabs USB CP210x USB UART USB RS-232 USB MCU 15 USB 12 FLASH MCU 3 USB MCU USB MCU C8051F32x 10 ADC 1.5%, Vref CPU 25MIPS 8051 16KB Flash -AMUX

More information

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha CYPOK CYPOK 1 UltraEdit Project-->Install Language Tool: Language Suite----->hi-tech picc Tool Name ---->PICC Compiler Executable ---->c:hi-picinpicc.exe ( Command-line Project-->New Project-->File Name--->myc

More information

Microsoft Word - LMB402CBC-AppNote-V0.1.doc

Microsoft Word - LMB402CBC-AppNote-V0.1.doc LMB402CBC 液晶显示模块应用参考 深圳市拓普微科技开发有限公司 版本描述日期编者 0.1 新版本 2006-02-09 杨军 http://www.topwaysz.com 1 / 1 目录 1 概述 3 2 硬件接口 3 3 软件特性 3 3.1 控制器接口信号说明 3 3.2 模块指令系统 4 4 显示数据存储器的地址 4 5 字符发生器 CGRAM 的地址 5 6 应用举例 5 6.1

More information

7688使用手冊V10.doc

7688使用手冊V10.doc TP-7688 . 2 2. 3 3. 5 4. 5 5. 6 6. 7 7. 8 8. 9 9.. 4. 7 2 2., 7x9 / 6x9 7x9.3() x 3.()mm 6x9 2.84() x 3.()mm 3 ASCII 7x9 95 ASCII 6x9 95 6x9 7 BIG5 6x9 3973 6x9 28 7x9 24 24 55 6x9 2 2 27 4.23mm (/6 inch)

More information

Tel:010-62981668-2930 1

Tel:010-62981668-2930  1 Access 93C46 with SPI function V1.0.0 Jan. 31, 2005 http://www.sunplusmcu.com Tel:010-62981668-2930 http://www.sunplusmcu.com E-mail:mcu@sunplus.com.cn 1 0 0...2 1...3 2...4 2.1...4 2.2...5 3...6 3.1 AT93C46...6

More information

Microsoft Word - em78 sub program.doc

Microsoft Word - em78 sub program.doc 一 二进制数转换为 ASCⅡ 码 将一个字节的二进制数转换为两位 16 进制数的 ASCⅡ 码 main: mov a,@0x9f ; 二进制数为 0x9f mov 0x30,a ; 二进制数存入 0x30 mov a,@0x02 mov 0x10,a ;0x10 中存放转换次数 mov a,@0x31 mov 0x04,a ;0x04 中为转换后数据存放地址 mov a,0x30 B1: ; 取

More information

´®ÐжàͨµÀ10λA/Dת»»Æ÷TLC1543¼°ÆäÔÚµçѹÊý¾Ý²É¼¯ÏµÍ³ÖеÄÓ¦ÓÃ

´®ÐжàͨµÀ10λA/Dת»»Æ÷TLC1543¼°ÆäÔÚµçѹÊý¾Ý²É¼¯ÏµÍ³ÖеÄÓ¦Óà 电子世界 杂志 串行 A/D 转换器 TLC1543 及其应用 严天峰 TLC1543 是美国 TI 公司生产的多通道 低价格的模数转换器 采用串行通信接口, 具有输入通道多 性价比高 易于和单片机接口的特点, 可广泛应用于各种数据采集系统 TLC1543 为 20 脚 DIP 封装的 CMOS 10 位开关电容逐次 A/D 逼近模数转换器, 引脚排列如图 1 所示 其中 A0~A10(1~9 11

More information

Microsoft Word - MSP430 Launchpad 指导书.docx

Microsoft Word - MSP430 Launchpad 指导书.docx Contents 3... 9... 14 MSP430 LAUNCHPAD 指导书 3 第一部分第一个工程 New Project File > New > CCS Project Project name: ButtonLED Device>Family: MSP430 Variant: MSP430G2553 Project templates and examples : Empty Project

More information

Microsoft PowerPoint - chap5.ppt

Microsoft PowerPoint - chap5.ppt 邏輯運算指令的動作 0 1 0 1 0 0 1 1 OR 1 0 1 1 1 0 0 1 1 1 1 1 1 0 1 1 (a) OR 運算 0 1 0 1 0 0 1 1 XOR 1 0 1 1 1 0 0 1 1 1 1 0 1 0 1 0 (c) XOR 運算 希望設定為 1 的位元 罩網標的位元組 新標的位元組 不改變的位元 希望取補數的位元 罩網標的位元組 新標的位元組 不改變的位元 1

More information

F515_CS_Book.book

F515_CS_Book.book /USB , ( ) / L R 1 > > > 2, / 3 L 1 > > > 2 + - 3, 4 L 1 了解显示屏上显示的图标 Wap 信箱收到一条 Wap push 信息 ( ) GSM 手机已连接到 GSM 网络 指示条越多, 接收质量越好 2 ...........................4.............................. 4 Micro SD (

More information

展 望 与 述 评 2 广 电 设 备 与 技 术 2013.2

展 望 与 述 评 2 广 电 设 备 与 技 术 2013.2 展 望 与 述 评 2013.2 广 电 设 备 与 技 术 1 展 望 与 述 评 2 广 电 设 备 与 技 术 2013.2 展 望 与 述 评 2013.2 广 电 设 备 与 技 术 3 展 望 与 述 评 4 广 电 设 备 与 技 术 2013.2 展 望 与 述 评 2013.2 广 电 设 备 与 技 术 5 展 望 与 述 评 骆 萧 萧 卜 筱 皛 本 文 讨 论 了 在 非

More information

行业

行业 PCI-1710 1.1...2 1.1.1...2 1.1.2...2 1.1.3 FIFO( )...2 1.1.4...2 1.1.5...2 1.1.6 16 16...3 1.1.7...3 1.2...3 1.3...3 2.1...3 2.2...4 2.2.1...4 2.2.2...5 2.3...9 2.3.1...10 2.3.2... 11 2.3.3...12 2.3.4...12

More information

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica CP Chip Power ARM Cortex-M3 (STM32F) ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplication and hardware

More information

PCM-3386用户手册.doc

PCM-3386用户手册.doc PCM-3386 BBPC-4x86 10/100M PC/104 (Lanry technology Co. Ltd. Zhuhai) 38 1012836 (Address: Room 1012,Linhai Building,No. 38,west of Shihua Road,Zhuhai City,Guangdong Province,China) (post code)519015 (phone)0756-3366659

More information

Persuasive Techniques (motorcycle helmet)

Persuasive Techniques  (motorcycle helmet) M O D E A T H E E L E M E N T S O F A N A R G U M E N T 1n t h l s t e s t i m o n y g iv e n b e f o r e t h e M a ry l a n d Se n a t e t h e s p e a ke r m a ke s a s t r o n g c l a i m a b o u t t

More information

行业

行业 PCL-1800 PCL-1800 1.1...2 1.1.1 1K FIFO...2 1.1.2...2 1.1.3 16...3 1.1.4...3 1.1.5...3 1.1.6...3 1.2...3 1.3...4 1.4...5 2.1...5 2.2...6 2.2.1...6 2.2.2...6 2.2.3 D/A...7 2.2.4...7 2.2.5 TRIG0 GATE0...8

More information