THGMU-1型实验指导书(C8051部分)(精)_第1页
THGMU-1型实验指导书(C8051部分)(精)_第2页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目录目录.I 前-_:言.III 第一章实验设备简介.(11.1 系统实验设备的组成(11.2 Cyg nal C8051F 单片机开发工具简介(11.2.1 开发工具概述(11.2.2 开发工具主要技术指标(11.2.3 IDE 软件运行环境(11.2.4 开发工具与 PC 机硬件连接(11.3 核心模块简介(21.3.1 核心模块概述(21.3.2 C8051F020 片上系统单片机片内资源(2第二章 Cyganl 单片机开发工具集成开发环境 IDE 使用说明(42.1 Cyg nal 集成开发环境软件简介(42.2 Cygnal IDE 界面(52.2.1 窗口 (52.2.2 菜单(6

2、223 工具栏(9224 状态栏(102.3 软件的基本操作(102.3.1 项目管理(创建和打开项目(102.3.2 源程序的编辑(122.3.3 源程序的编译和链接(122.3.4 集成开发环境与目标系统连接(122.3.5 下载代码到 FLASH (132.3.6 设置断点和观察点(132.3.7 运行和停止(142.3.8 查看和修改存储器寄存器和变量(14第三章实验部分(15实验一二进制转换成十进制实验(15实验二无符号数十进制加法实验(17实验三数据传送实验(18实验四数据排序实验(19实验五流水灯实验(21实验六 I/O 口输入、输出实验(22实验七 PWM 信号产生实验(23实

3、验八继电器控制实验(24实验九定时器实验(25实验十计数器实验(26实验一外部中断实验(27实验十二音频控制实验(28实验十三 7279 键盘显示实验(30实验十四查询式键盘实验(32实验十五 LED 双色点阵显示实验(34实验十六液晶显示实验(36实验十七字符液晶显示实验(38实验十八 RS-232 通信实验(41实验十九 RS-485 通信实验(42实验二十 I2C 总线实验(44实验二一串行 AD 转换实验(46实验二十二串行 DA 转换实验(47实验二十三 片内 ADC 实验(49实验二十四 片内 DAC 实验(50实验二十五 DS18B20 温度测量实验(51实验二十六直流电动机驱动

4、实验(54实验二十七步进电机驱动实验(55 附录一 C8051 核心板和主板 10 的对应关系(57.、八、-刖言MCS-51 单片机及其衍生产品在我国乃至世界范围获得了非常广泛的应用,尤其是在我国,多数大专院校都采用 MCS-51 单片机作为教学机型,单片机系统工程师都 熟悉 MCS-51 单片机,随着一些高集成度,高性能的 8 位和 16 位 RISC 单片机的推出,基于标准 8051 内核的单片机正面临着退出市场的境地,因此一些半导体公司开始对 传统8051 内核进行大的改造,主要是提高速度和增加片内模拟和数字外设,以期大幅 提高单片机的整体性能。美国 Cygnal 集成产品公司推出的

5、C8051F 系列单片机的 出现令业界人士耳目一新,使广大单片机系统设计人员看到了51 单片机新的曙光。MCS-51 单片机引入教学已达 10 年之久,大家一直期盼着有更先进的单片机引 入教学,C805 仆事实上已成为 51 的升级换代产品,必然会成为经典单片机教学的方向,做为中国教育装备第一品牌的天煌科技实业有限公司适时地为各教学单位设计了THGMU-1 型 C8051F 单片机实验开发系统。该设备实现了 C8051F 单片机片上的 全部资源,提供了大量外围接口电路;MCU 核心模块采用可插拔更换的结构,不仅可 以开展传统的 MCS-51 单片机教学,也可以讲授片上系统的概念、体系结构、设计

6、 方法等。可为大专院校教学实验课提供多项实验,使得学生建立单片机系统概念,完 成基础应用的训练,使学生掌握 C8015F 的基本应用。欢迎教学单位选用 THGMU-1 型 SOCC8051F 单片机教学实验设备 第一章实验设备简介1.1 系统实验设备的组成THGMU-1 系统实验设备由 Cygnal 片上系统单片机开发工具、核心模块和系统实验板三部分组成,应用该设备可进行片上系统单片机典型应用的实验A.Cyg nal C8051F 单片机开发工具简介1.2.1 开发工具概述Cygnal 的开发工具实质上就是计算机 IDE 调试环境软件及计算机 RS232 或USB 到 C8051F 单片机 J

7、TAG 口的协议转换器(EC2 的组合。Cygnal C8051F 系列所 有的单片机片内均设计有调试电路,该调试电路通过边界扫描方式获取单片机片内 信息,通过 4 线的 JTAG 接口与开发工具连接以便进行对单片机在片编程调试。THGMU-1 系统实验设备中核心模块上的单片机为C8051F 系列中的 F020。适配器(EC2 一端与计算机相连,另一端与 C8051F 单片机 JTAG 口相连,应用Cygnal 提供的 IDE 调试环境或 Keil 的 uVision2 调试环境就可以进行非侵入式、全 速的在系统编程(ISP 和调试。Cyg nal 开发工具支持观察和修改存储器和寄存器,支持断

8、点、观察点、堆栈指 示器、单步、运行和停止命令。调试时不需要额外的目标 RAM、程序存储器、定 时器或通信信道,所有的模拟和数字外设都正常工作。1.2.2 开发工具主要技术指标目标系统:所有 C805 仆 xxx 系列单片机系统时钟:最大可达 25MHz通过 RS232/USB 接口与 PC 机连接支持汇编语言和 C51 源代码级调试第三方工具支持(Keil C 1.2.3 IDE 软件运行环境要求 PC 机能够运行开发工具软件并能与串行适配器通信。对PC 机有如下要求:Windows 98/Me/NT/2000/XP 操作系统32Mb RAM40Mb 自由硬盘空间空闲的 COM 口(或 US

9、B 口1.2.4 开发工具与 PC 机硬件连接在系统编程和调试环境如下图所示硬件连接及软件安装:将 JTAG 扁平电缆与串行适配器(EC2 连接;将 JTAG 扁平电缆的另一端与目标系统连接 将 RS232/USB 串行电缆的一端与 EC2连接;连接 RS232/USB 串行电缆的一端到 PC;给目标系统上电;插入 CD 并运行“SETUP.EX”将 IDE 软件安装到 PC 机;在 PC 机开始菜单的 程序”项中选择 Cygnal IDE 点击 Cygnal 图标,或双击桌面 快捷方式图标,运行 IDE 软件。1.3 核心模块简介1.3.1 核心模块概述MCU 核心模块采用可插拔更换的结构,

10、可为用户提供两种 MCU 核心模块(选配, 一种为80C51 系列单片机,另一种为 CYGNAL 公司的高速、高性能混合信号处理 C8051 系列单片机。其中 C8051 核心模块选用 C8051F020 芯片,此芯片为现有 C8051 系列单片机中功能最为齐全的一款。模块上设计有连接F020 单片机的JTAG 调试接口,所有 I/O 全部引出,有用于扩展和应用连接的排针、双排针座,可以 和用户的外部电路搭配使用。2C8051F020 片上系统单片机片内资源1模块外设(1 逐次逼近型 8 路 12 位 ADC0转换速率最大 100ksps可编程增益放大器 PGA温度传感器(2 8 路 8 位

11、ADC1 输入与 P1 口复用转换速率 500ksps可编程增益放大器 PGA(3 两个 12 位 DAC(4 两个模拟电压比较器(5 电压基准:内部提供 2.4V,外部基准可输入(6 精确的 VDD 监视器2高速 8051 微控制器内核流水线式指令结构,速度可达 25MIPS22 个矢量中断源1. 存储器片内 4352 字节数据 RAM64KB Flash 程序存储器可作非易失性存储外部可扩展的 64KB 数据存储器接口2. 数字外设 8 个 8 位的端口 I/OI2C、SPI、2 个增强型 UART 串口可编程的 16 位计数器/定时器阵列(PCA5.4 个通用 16 位计数器/定时器专用

12、的看门狗 WDT更详细资料可参见光盘 Cyg nal C8051F02X 数据手册。第二章 Cyganl 单片机开发工具集成开发环境 IDE 使用说明2.Cyg nal 集成开发环境软件简介Cyg nal 集成开发环境软件提供了开发和测试项目所必须的工具。具有如下特占:八、z 源代码编辑器z 项目管理器z 集成 8051 宏汇编器z FLASH 编程器z 支持 Cygnal 的全速、非侵入、在线调试逻辑z 实时断点z 源程序级调试z 有条件的存储器观察点z 存储器与寄存器检查与修改z 单步与连续单步执行方式z 支持第三方开发工具z MCU 程序代码初始化配置向导源代码编辑器编辑器包括所有标准的

13、 Windows 编辑功能,包括剪切、粘贴、复制、取消/重复 查找/替换及书签等。并为 8051 汇编语言和 C 语言提供了彩色句法加亮功能。可 扩充加亮关键字的目录,也可以定义所有使用的颜色,用户可配置字体、文本颜色与 Tab 键设置。项目管理器一个项目由源文件、目标与库文件、工具配置和 IDE 查看等组成。项目管理 保存了查看与工具设置,及在编译中所使用的多卷文件,包括要通过第三方汇编器、 编译器和连接器处理的文件。集成 8051 宏汇编程序8051 宏汇编程序与 IDE 结合成一体。此汇编程序接受 In tel MCS-51 可兼容源 文件并且创立可下载的 In tel 十六进制文件。它

14、也产生所有的必要调试信息,提供汇 编语言源程序级调试。FLASH 编程器编译之后,在 IDE 界面集成的 FLASH 编程器允许代码立即下载至 MCU 在片内 存,使源代码修改与在系统调试之间的时间最小化。非侵入调试连接到 MCU 片上调试电路的 IDE,使用最终应用中安装的 MCU 进行全速、非 侵入式、在系统编程调试。源程序级调试源程序窗口也是工作调试窗口。当监控寄存器与存储器内容时,可在源程序中 观察当前的程序计数器位置,设置并且清除断点,执行单步运行。断点断点可以设置在源程序行中,在执行指定源程序行的第一指令之前,立即停止执 行。断点由 MCU 的片上调试电路支持,并不影响程序的实时执

15、行。存储器观察点当一个或者多个数据存储器位置或寄存器与指定的值符合或者改变时,可以有条件地定义存储器观察点,停止程序执行。第三方工具支持完全支持 FLASH 编程和 Intel 0MF-51 绝对目标文件的源程序级调试,允许在软 件开发时使用第三方链接工具。配置向导配置向导自动地产生 MCU 和片上外设初始化代码。单击检验栏,并且在对话框 中输入数值,产生所需的带注释的汇编语言代码,使能和配置外部设备,设定输入/输 出端口功能并指定 MCU 等操作。3.Cygnal IDE 界面Cygnal IDE 的主界面如下图所示1.窗口Cygnal IDE 的主界面由项目窗口编辑/调试窗口和输出窗口组成

16、项目窗口ProjectffnidowEditerWnidowWat chWnidowut putWnidowIemoryWnidowz 文件察看,用于察看和管理与项目相关的文件。z 符号察看,用于察看项目中使用符号的地址。z 编辑/调试窗口z 编辑窗口 一用于项目中所选文件的编写或编辑。z 调试窗口 一代码下载后在调试期间此窗口用于观察存储器寄存器和变量等。输出窗口输出窗口是由三个复选窗口组成,这些复选窗口用于显示调试过程中的信息。z Build 选项窗口 一显示由汇编/编译/链接工具产生的输出信息。如果在汇编/编 译过程中出错,用户可以双击窗口中的一条错误信息,则在编辑窗口中就会显示发生 错

17、误的代码行。z List 选项窗口 一用来显示最新编译或汇编所产生的列表文件。z Tool 选项窗口中一如果工具输出被重定向到“tool.ou 文件名,此窗口将显示自定义工具所产生的输出。2.2.2 菜单File 菜单菜单项描述New File(新文件创建新文件。Open File(打开文件打开文件对话框,打开所选文件。Close File(关闭文件关闭当前打开的文件,如果打开的文件已被编辑,则将弹出对话框询问是否存盘Save 保存保存当前激活的文件Save As 另存为允许当前打开的文件换名存盘。Save All(保存所有 IDE将保存所有打开的文件。Print Setup 打印设置打开打印

18、机对话框,选择打印机参数。Print(打印打印当前文件。Recent Files 最近文件此菜单区将列出 IDE 最近编辑的文件。Rece nt Projects 最近项目此区域提供一种快捷方式用以打开IDE 的最近打开的项目。Exit(退出退出 IDE。Edit 菜单菜单项描述Un do(撤消此命令使编辑器退回到最近的编辑命令。Redo(重做此命令使编辑器退回到最近的 undo 命令Cut(剪切此命令使选定的文字高亮被删除,但将文字复制到剪切板。Copy(复制 此命令将选定的文字复制到剪切板。Paste 粘贴此命令将剪切板的内容粘贴到当前光标位置。Find(查找此命令打开对话框,用户可键入查

19、找的参数并在当前文件查找。Replace替换此命令打开对话框,允许用户在当前文件查找并替换字符串。View 菜单菜单项描述DebugWindows(调试窗口此菜单包含有子菜单,在子菜单中列出了所有存储器 和寄存器窗口(这些窗口只有在调试时才可见。Project Win dow(项目窗口此菜单项触发显示 IDE 项目观察窗口。Output Win dow(输出窗口此菜单项触发显示 IDE 输出窗口。Toolbars(工具栏此项目菜单允许用户选择工具栏是否可见,也允许用户定制工具栏。Status Bar 状态栏此菜单允许用户触发显示 IDE 状态栏。Workbook Mode(工作薄模式此菜单项允

20、许用户在正常和笔记本模式之间选 择。Project 菜单菜单项描述Add Files to Project(加文件到项目此菜单命令将添加文件到当前项目。Assemble/Compile Curre nt File and Stop Assemble/Compile Curre nt File(汇编/编译当前文件和停止汇编/编译当前文件此菜单将汇编/编译当前文件,汇 编器/编译器输出将显示在输出窗口中的 build 窗。如果编译器/汇编器报告错误输 出窗口中将显示错误概要。用鼠标双击错误,IDE 将显示相应发生错误的源代码 行。Build/Make Project (生成项目此菜单命令将生成目标

21、代码。Ope n Project 打开项目调用浏览对话框浏览项目文件并打开。Save Project 保存项目保存当前打开的项目。Save Project As 另存项目为换名保存项目。Close Project 关闭项目关闭当前打开的文件和窗口Tool Chain In tegratio n(工具链接集成调用集成链接工具对话框,来定义外部汇编 器、编译器和链接器。Target Build Co nfigurati on(目标生成配置调用目标生成配置对话框,用来定义生成过程。Debug 菜单菜单项描述Connenct 连接通过 EC2 将串口目标系统连接起来。Disco nn ect(断开释放

22、计算机串口。Download(下载将下载当前打开项目代码到 Flash。如果当前无文件或项目打开将弹出对话框允许用户选择文件下载。但文件必须是In terHex 或 OMF-51 格式。Go(运行将释放调试中断信号,允许运行用户程序代码。Stop (停止将发出调试中断信号使芯片停止运行程序,并开始执行调试用户程序 代码。Step(单步单步执行用户程序代码。Multiple Step(多步执行 N 步用户程序代码。Step Over(越过单步允许用户程序代码越过当前代码行执行下面的代码。Runto Cursor(运行至 U光标将允许用户程序代码运行到光标所在的代码行。Breakpoints(断点

23、调用断点管理对话框,显示当前所有断点信息,断点可以加入、删除、允许或禁止Watchpoints(观察点调用观察点管理对话框,显示当前所有观察点信息,观察点可 以加入、删除、允许或禁止。Refresh 刷新当在 IDE 中修改某些值后,强制写仿真器,修改存储器或寄存器 值。Reset 复位复位按钮迫使 IDE 和硬件返回到调试初始状态。Tools 菜单菜单项描述Cygnal Configuration Wizard (Cygnal 配置向导调用 Cygnal 配置向导,能快速生成带有外设详细信息的初始化配置代码。Memory Fill (填充存储器此菜单包含有子菜单,调用填充存储器器对话框,填充

24、 RAM代码空间或外部 Memory。Erase Code Space擦除代码空间删除和复位整个 FLASH代码空间。 Output Memoryto File(输出存储器到文件调用输出存储器器到文件对话框。Add/Remove User Tool 加入/移出用户工具调用对话框,管理 IDE 用户工具,可以 添加、移出或修改用户工具。Optio ns 菜单菜单项描述 Multiple Step Configuration(多步配置调用多步配置对话框。Serial Port(串 口选择 RS232 串口。Serial Baud Rate 串口波特率选择串口波特率。Toolbar Configur

25、ation(工具栏配置调用对话框,选择允许那些工具栏可见,按钮配 置还可创建新工具栏。Toolbar Extended Styles 工具栏扩展类型调用对话框,允许选择各种工具类型Editor Font Selection(编辑器字体选择 调用对话框,允许设定编辑器字号和颜 色。Editor Tab Configuration 调用对话框,允许 tab 键设置。 Select Language 选择语 -_:言强制编辑器使用特殊语言配置文件。Debug Win dow Fo nt Selection 调试窗口字体选择调用对话框,允许选择调试/编辑窗口的字体。File Backup Settin

26、gs 文件备份设置 调用对话框,允许选择备份文件的数量。Win dow 菜单菜单项描述Cascade 层迭标准 windows 层迭格式。Tile Horizontal (水平平铺 标准 windows 水平平铺格 式。Tile Vertica (垂直平铺 标准 windows 垂直平铺格式。Help 菜单菜单项描述CYGNAL IDE Help 调用在线帮助程序。Keil Assemble/Link Manual Keil 汇编/链接手册。Keil Compile ManualKeil 编译手册。About CYGNAL IDE 显示 IDE 版本信息223工具栏工具栏按钮描述新建创建一个新

27、文件打开打开一个文件 保存保存当前文件 剪切剪切选定文本到剪切板 复制复制选定文本到剪切板文件/编辑粘贴粘贴剪切板到光标位置 文件/编辑打印打印当前文件 汇编/编译停止生 成汇编/编译当前文件停止生成代码生成代码汇编/编译和链接文件编译和生成代 码连接连接 IDE 和目标板断开断开按钮释放串口下载代码到目标硬件 flash下载开始/停止执行目标处理冷运行/停止器中的程序代码硬件和 IDE 返回调试初复位态执行一条用户代码程序单步执行 N 条用户代码程序多步单步越过函数或子程序单步越过调试运行到光标程序运行到光标处代码行设置/清除光标处断点插入/移出断点移出所有断点移出所有断点激活/禁止当前断点

28、允许/禁止断点禁止所有断点禁止所有断点内部观察打开内部观察点对话框点对话框IDE 改变数值后强制写刷新仿真器SFR 寄存器触发察看窗口察看窗叫叫触发察看窗口寄存器察看窗调试窗口M.M-|触发察看窗口代码察看窗触发察看窗口反汇编察看窗224 状态栏状态栏显示目标系统中使用 MCU 的型号,程序计数器 PC 的值,观察点的状态, 程序的运行状态及光标所在的行和列。2.3 软件的基本操作2.3.1 项目管理(创建和打开项目1创建项目项目是用来保存文件、链接工具、目标代码生成和窗口配置信息的。可以使用“ Project ”菜单中的“New Projec 选项或“Save Project A 选项来创建

29、项目。如果使用“Save Project A 选项:将出现“Save Workspace 寸”舌框来选择项目名称和存放位置(项目文件的扩展名为.wsp。旦项目被保存,将保存如下信息:z 当前所有打开的文件。(如果创建了新文件,且未存盘,则 IDE 将弹出对话框提示你保存文件z 集成链接工具的设置z 目标生成配置z 主 IDE 窗口及已经打开的调试窗口的位置和大小z 编辑器的设置如字体和文字颜色等1. 重新打开项目有两种不同的方法打开项目:1 选择 File 菜单中的“Recent Projec 子菜单区中列出的最近打开过的项目。2 使用“Projec 菜单中的“Open Projec 命令,调

30、用“Open Workspace5”话框允许 你浏览计算机中的项目文件(*.wsp 并打开所选文件。2. 保存一个项目保存项目用“Projec 菜单中的“Save Projec 选项。项目不必每次打开后都保存 遇到下面的情况需保存项目:z 已打开新文件且将作为项目的一部分z 已打开新窗口,且每次打开项目时都需要重新打开这些窗口。z IDE 窗口的位置和/或大小改变了,且在下次项目重新打开时需保留这种变化。3. 在项目中添加文件可用下面的方法向已存在的项目中添加文件2. 在项目窗口的 File 选项窗口中添加文件到项目。1 在项目或组上点击鼠标右键2 在弹出菜单点击“Add Files 菜单选项

31、。3. 从 Project 菜单中加文件到一个打开的项目1 打开项目1. 在 Project 菜单中用 “Add Files to Projects项。”C 从“ Build Button Definition 对话框中添加文件到项目1 从 Project 菜单中打开 “Target BuildConfiguration 对话框。2 点击“ Customize 按钮。2. 使用 “Add Files to Projec 按钮。”4. 从项目中移出文件从已有项目中移出文件可用下面的方法:在项目窗口的文件窗口中在要移出的文件上点击右键,选择 Remove file namefrom project

32、。5.打开项目中的文件在项目窗口的 File 选项窗口中打开文件,鼠标点击项目名称前的“ +双击文件 名。232 源程序的编辑IDE 包括一个全功能的编辑器。可用文件菜单中的“NewFile 命令来新建文件或用文D件工具栏中的“ NeW 按钮,然后开始键入源程序。只有当文件的扩展名为.asm 或.c时才D具有源程序关键字符彩色显示功能。可用文件保存按钮,或用文件菜单中的“Sav 或“Save As 命令保存文件。然后再将编辑好的源代码添加到项目中。2.3.3 源程序的编译和链接1.汇编和编译D可用生成工具栏中的汇编/编译按钮或“Project 菜单中的“Assemble/Compile Fil

33、e命令来汇编/编译一个文件。如果一个项目或文件是打开的,那幺当前活动的文 件将被汇编/编译。当汇编/编译完成后,将在输出窗口的“Build 选项窗中显示汇编/编译结果,如果 源程序有错误,将在输出窗口中提示,双击错误提示,在编辑窗口中将显示源代码错误 行。如果产生列表文件,那么将在输出窗口的“List 选项窗中显示。2.链接可用生成工具栏中的生成按钮,或用项目菜单中的“ Build/Make Project 命令来生成项目。如果没有打开的项目,此命令是被禁止的。当汇编/编译和链接完成后,结果将显示在输出窗口的“Build 选项窗口。如果产 生列表文件,文件将显示在输出窗口的“List 选项窗中

34、。234 集成开发环境与目标系统连接在 IDE 与硬件连接之前,要确保:aRS232 串行电缆已经连接 PC 机和 EC2bJTAG 扁平电缆已经连接 EC2 和目标硬件c 电源已经接到目标硬件(注意:EC2 不向目标板供电,但目标板可向 EC2 供电。d在IDE的Options菜单的Serial Port子菜单中选定的串行口 (COM1,COM2,COM3,COM4 与硬件连接的一致。e 在 IDE 的 Optio ns 菜单中的 Debug In terface 子菜单中选择正确的调试接口:z 如果是 C8051F3XX 器件选择 “ Cygnal 2Wire ”。z 如果是 C8051F

35、 系列的其它器件选择“JTAG。当所有的硬件已连接,并在 IDE 中选择了串行接口,即可将 IDE 与硬件连接。可 用生成工具栏中的连接按钮或使用调试菜单中的“ Connec 命令来完成连接。如果IDE 不能访问串行口将报告出错。这可能是由于串口被其它程序占用,如果是这种情况,应关闭其它应用程序重试连接注意:如果其它应用需要使用串口,可以用“Disconnec 命令或生成工具栏中的断 开来断开连接。连接按钮2.3.5 下载代码到 FLASH简单地按下生成工具栏中的下载按钮或使用Debug 菜单中的“ Download 命令,就可以下载程序到目标处理器的 flash 中(注意:只有在执行“Con

36、ne 命令后才能下载 代码到目标硬件。如果调用下载命令时有项目或文件已打开,相关的目标文件将被下载。如果当前无文件或项目打开,则将弹出一个对话框要求选择需要下载的文 件。IDE 下载的文件格式为 Inter Hex 或 OMF-51 格式 (默认。 如果下载的文件是 OMF-51文件并带有调试信息,则 IDE 将打开所有相关的源文件并开始源级调试。 这一功能不支持不带调试信息的十六进制或 OMF-51 文件。一旦程序被下载,就可以在目标硬件上调试和运行程序,而不是在仿真器上。(一旦程序被下载到目标硬件,所有的调试按钮,如 Go,Stop 和 Step 等都将被允许。2.3.6 设置断点和观察点

37、1.设置断点简单地按下工具栏中的断点设置按钮,即可在源代码所在的行处设置和取消断 点 (注意此断点为硬件断点,最多可设置 4 个。2.设置观察点观察点是由用户设置的软件断点,当设定值在程序运行时匹配使程序停止运如果要察看 SFR 存储单元跳到下一步。打开项目窗口的“ Symba 选项窗,找到你想要观察的符号/变量打开观察点对话框,在四个观察点位置选择 RAM 或 SFR 并复制 RAM 单元到相 应的观察点地址或从框中选择 SFR。注意:可按十六进制或十进制指定 RAM 地可选择是否与你指定的值相匹配或不相匹配时停止。指定与符号/变量的比较值。注意:可按十六进制或二进制指定值。如果只观察某些位

38、而忽略其它位,指定要屏蔽的位。逻辑 1 察看,反之,逻辑 0 忽略。注意:可按十六进制或二进制指定屏蔽位。在四个位置重复上述过程加入要观察的变量在观察点配置框中选择 ANY 或 ALL。如果选择 ANY,当四个观察点中有一个 匹配时,IDE 将停止并显示观察点对话框。如果选择 ALL,当所有的四个观察点都匹 配时,IDE将停止并显示观察点对话框。在 Internal Watchpoint Control 中选择 Internal Watchpoints Enabled点击 OK 按钮,可单步或运行代码,当观察点匹配时,IDE 将停止运行并显示观察 点对话框。一旦遇到匹配值,IDE 停止并显示观

39、察点对话框,为了 IDE 能够继续运行而不会 因当前匹配而再次停止,匹配值必须清除或改变。 Internal Watchpoints 对话框提供了 ClearAll 和 Clear Matched 按钮,使清除更加容易。Internal Watchpoints 对话框如下 图所示:237 运行和停止GO” “Stop 按钮一开始和停止目标用户代码执行IntStep 按钮一单步执行代码一次一条源级指令可配置的 Multiple Step 按钮一执行 N 步Step Over按钮越过函数或子程序和 Run to Cursor 按钮运行到光标处。238 查看和修改存储器寄存器和变量1打开调试窗口查看

40、和修改存储器、寄存器和变量是在 Debug Windows 中实现的。集成开发 环境包含很多调试窗口,在调试期间用它来察看和修改存储器和寄存器的信息。可 通过“View 菜单的 Debug Windows 来激活调试窗口,也可通过点击工具栏中的图标 按钮激活某些调试窗口。1. 修改存储器和寄存器值在光标处键入数值来修改寄存器原值。修改后的值可以在执行用户代码点击“GO 或 “StepS钮前下载到硬件。方法是用“ Refresh强制写入。这样修改后的值被写入仿真器,寄存器窗口将重读仿真器,窗口将被刷新,所有变化的值以红色显 示。注意:修改寄存器的值只能在调试器处于停止状态时进行。目标处理器正在执

41、 行用户代码时不允许写入。2. 如何向观察窗口 (Watch Window 中添加变量在生成和下载程序代码后可以将要观察的变量加到观察窗口,有两种方法可将变量加到观察窗口:1 在符号观察窗口中找到要加入的变量,在变量上点击鼠标右键并选择变量类 型。2 在源程序代码中找到要加入到观察窗口的变量,然后在变量上点击鼠标右键。 从弹出菜单选择“Add 变量名到观察窗口,并选择变量类型。窗口大小是可调整的 在窗口中删除变量的方法是选定变量,然后按下 Delete 键。第三章实验部分实验一二进制转换成十进制实验一、实验设备THGMU-1 型多种单片机开发综合实验箱-套;PC 机一台注:1.其它实验与此相同

42、,此项以后不再累述2实验程序放在 Soundcode/C8051 的文件夹中。二、实验目的掌握汇编语言设计和实验步骤,熟悉在 CYGNAL IDE 环境下观察内部 RAM 的 方法。三、实验内容单片机中的数值有各种表达方式,这是单片机的基础。掌握各种数制之间的转 换是一种基本功。本实验内容是将一个给定的一字节二进制数,通过编程将其转换 成十进制码。四、实验步骤1 启动 PC 机,打开 CYGNAL IDE 集成软件。在CYGNAL IDE 环境下打开二十进制转换文件夹下 toBCD.wsp 项目文件打开项目中的文件,双击项目窗口中 toBCD.ASM 文件,阅读、分析、理解程序。用适配器连接

43、PC 机和系统 MCU,编译、生成项目、下载程序。2 在 “ View/Debug windows 打开 RAM 观察窗口 根据示例程序注释设置断点(把鼠标点到要设置断点的语句后面再点设置断点图标即可,运行程序。程序具体功能是将累加器 A 的值拆为三个 BCD 码,并存入 RESULT 开始 的三个单元例程 A 赋值#Offh。观察 RAM 地址 30H、31H、 32H 的数据变化,30H 更新为 02,31H 更新为05,32H 更 新为 05。3 修改源程序中给累加器 A 的赋值,重复实验,观察 实验效果。4 打开 CPU 寄存器窗口,选择单步或跟踪执行方式运 行程序,观察各寄存器的变化

44、,可以看到程序执行的过程,加深对实验的了解。五、实验程序参考框图六、实验参考程序RESULT EQU 30H$INCLUDE(C8051F020.INCORG 0000HJMP STARTORG 0100HSTART:MOV SP,#40HMOV A,#0FFHCALL BINTOBCDNOP 此处设置断点,察看 RAM 30H,31H,32HLJMP $BINTOBCD:MOV B,#100DIV ABMOV RESULT,A ;除以 100 得百位数MOV A,BMOV B,#10DIV ABMOV RESULT+1,A ;余数除以 10 得十位数MOV RESULT+2,B ;余数为个位

45、数RETEND实验二无符号数十进制加法实验一、实验目的掌握无符号数、十进制加法,熟悉在 CYGNAL IDE 环境下观察内部 RAM 的方 法。二、实验内容编写并调试一个双字节无符号十进制数加法程序,其功能为将被加数写入30H、31H 单元,加数写入 40H、41H 单元,运行程序结果写入 52H、51H、50H 单元 中则加法程序功能为(31H (30H+(41H (40H=(52H (51H (50H(都是高位在前、低位 在后。三、实验步骤1 在 CYGNAL IDE 环境下打开 加法文件夹下项目文件 ADD.wsp,打开项目中 的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统

46、MCU,编译、生成项 目、下载程序。2 在“ View/Debug windows 打开 RAM 观察窗口,根据示例程序注释设置断点,运 行程序,观察 RAM 地址 30H、31H、40H、41H、50H、51H、52H 的数据变化。示例程序执行:3412H+7856H,结果为 0AC68H。四、实验参考程序DATA0 EQU 12HDATA1 EQU 34HDATA2 EQU 56HDATA3 EQU 78HORG 0000HAJMP STARTORG 0100HSTART:MOV 30H,#DATA0MOV 31H,#DATA1 ;被加数送 31H,30HMOV 40H,#DATA2MOV

47、 41H,#DATA3 ;力卩数送 41H,40HMOV A,30HADD A,40H ;(30H+(40HAMOV 50H,A ;保存低位结果MOV A,31HADDC A,41H ;(40H+(50H+CYAMOV 51H,A ;保存高位结果MOV 52H,#0MOV A,#0ADDC A,52HMOV 52H,A ;进位52HNop ;设置断点观察 RAM 50H,51H,52HSJMP $END实验三数据传送实验一、实验目的掌握对 C8051F020 内部 RAM 及外部 RAM 的数据操作。掌握对 C8051F020 片内外扩 RAM 的操作方法。二、实验内容本例程将内部 RAM 7

48、0H7FH 的 16 个数据送到外部 RAM 7000H700FH。三、实验步骤1 在 CYGNAL IDE 环境下打开 数据传送文件夹下项目文件 TRAN.wsp,打开项 目中的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统 MCU,编译、生成 项目、下载程序。2 在 “ View/Debug windows 中打开 RAM、EXTERRANL RAM 数据窗 口 ,RAM、EXTERRANL RAM 地址分别观察 70H、7000H(输入 70、7000 按回车。 运行程序,观察内外 RAM 相对应的数据区的数据是否一致。3 可单步执行程序,观察数据传送过程。四、实验参考程序OR

49、G 0000HJMP MAINORG 0100HMAIN: MOV R7,#16MOV R1,#70H ;内部 RAM 地址 70H 送 R1MOV DPTR,#7000H ;DPTR 指向 XRAM 地址 7000HLOOP: MOV A,R1 ;内部 RAM 内容送累加器 AMOVX DPTR,A ;将累加器 A 的值送到 XRAMINC DPTRINC R1DJNZ R7,LOOP;判断数据是否送完STOP: AJMP STOPEND实验四数据排序实验一、实验目的掌握排序程序的设计方法。二、实验内容本例程采用交换排序法将内部 RAM 中的 5059H 单元中的 10 个单字节无符号二进制

50、数按从小到大的次序排列,并将这一列排序后的数据从小到大依次存贮到外部RAM 1000H 开始处。MOV R0,#5AH三、实验步骤1 在 CYGNAL IDE 环境下打开 排序文件夹下项目文件 Order.wsp 打开项目中 的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统 MCU,编译、生成项 目、下载程序。2 打开 RAM、EXTERRANL RAM 数据窗口 ,RAM、EXTERRANL RAM 地址 分别观察 50H、1000H(输入 50、1000 按回车。3 可在程序指令 NOP 处设置断点,在第一个断点处可观察 5059H 单元内容是 否为 10 个任意排列原始数据。4

51、 在第二个断点处可观察每次排序的结果。5 可单步执行程序观察排序过程。四、实验参考程序ORG 0000HJMP MAINORG 0100HMAIN: MOV R0,#50HMOV R0,#5FHINC R0MOV R0,#56HINC R0MOV DPTR,#1000HINC ROMOV R0,#5EHINC ROMOV R0,#51HINC ROMOV R0,#5BHINC ROMOV R0,#53HINC R0MOV R0,#58HINC R0MOV R0,#57HINC R0MOV R0,#55H ;将 10 个随机数送入内部 RAM 的 5059H 单元NOP ;可在此处设置断点ACA

52、LL QUE ;调用排序子程序OUT:MOV R0,#50HMOV R7,#10MOV A,R20UT1:M0V A,ROMOVX DPTR,AINC ROINC DPTRDJNZ R7,OUT1HERE:AJMP HEREQUE:CLR OOH ;清交换标志MOV R1,#50HMOV R6,#09HI3:MOV A,R6MOV R7,AMOV A,R1MOV R0,AMOV A,R0I2:INC R0MOV R2,ASUBB A,R0JC I1SETB OOHXCH A,R0I1:DJNZ R7,I2NOP ;可在此处设置断点,观察每次排序结果JNB 00H,STOPMOV R1,AINC

53、 R1DJNZ R6,I3STOP:RETEND实验五流水灯实验一、实验目的1 学习 C51 的 P1 口的使用方法。2 学习延时子程序的编写和使用。二、实验说明C8051F020 有 64 个通用的 I/O 口,分为 P0、P1、P2、P3、P4、P5、P6、P7 每组都是 8 位,它们是准双向口,它作为输出口时与一般的双向口使用方法相同。本实 验使用 P1 口做输出口,控制 LED用 P1 口做输出口,接八位逻辑电平显示,程序功能使发光二极管循环点亮。1 把 C8051 核心板插到 MCU 最小系统中,用扁平数据线连接 MCU 的 P1 口与 八位逻辑电平显示模块 JD3。2 在 CYGN

54、AL IDE 环境下打开打开 803 文件夹下 8031.wsp 项目文件,打开项 目中的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统 MCU,编译、生成 项目、下载程序。3 运行程序,程序功能使发光二极管循环点亮显示流水灯的效果。注:在做完实验时记得养成一个好习惯:把相应单元的短路帽和电源开关还原到原来的位置!以下将不在重诉。四、源程序(见光盘五、电路图RP1B7 VCCVCC理理-pTvccC1B7O.luF实验六 I/O 口输入、输出实验一、实验目的掌握单片机 I/O 口输入、输出数据的方法;熟悉 C8051F020 I/O 口交叉开关设置。二、实验内容以 P1 口为输入口,

55、接八位逻辑电平输出,以 P2 口为输出口,接八位逻辑电平显示 编写一个程序,读入 P1 口状态并在 P2 口输出显示。三、实验步骤1 把 C8051 核心板插到 MCU 最小系统中,用 8 位数据线连接八位逻辑电平输出 模块的 JD14 到 MCU 的 P1 口,MCU 的 P2 口连接到八位逻辑电平显示模块的JD3。2 在 CYGNAL IDE 环境下打开 LED 文件夹下项目文件 LED.wsp,打开项目中 的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统 MCU,编译、生成项 目、下载程序,全速运行。3 观察发光二极管的亮灭与拨动开关的状态是否一致。设拨动开关拨下输出为 低电平

56、,发光二极管点亮。改变拨动开关的状态,发光二极管的亮灭随之变化。四、源程序(见光盘五、电路图实验七 PWM 信号产生实验、实验目的1了解脉宽调制(PWM 的原理学习用 PWM 输出模拟量熟悉 C51 系列单片机的延时程序、实验说明PWM 信号如果经外接的转换电路,可以将脉冲的占空比变成电压。通过调整程 序可以调整占空比。占空比是调制脉冲中高电平与低电平的宽度比。三、实验内容及步骤P1.0 输出 PWM 信号。1 把 C8051 核心板插到 MCU 最小系统中,用导线将 P10 接到 PWM 转换电压输 入端,电压输出接电压表“ +端,电压表端接地。(或者用示波器观测2 在 CYGNAL IDE

57、 环境下打开 PWM 文件夹下 PWM.wsp 项目文件,打开项目 中z ino |R2B5 VCC|-册-VCD HR1EJYCC1|.K*_ VCCHnr-1 IT的文件,阅读、分析、理解程序。用适配器连接 PC 机和系统 MCU,编译、生成项 目、下载程序。3了解用弱电控制强电的方法。、实验说明3 全速运行程序,观察电压表显示值,并做记录,程序默认是占空比 5:5 的 PWM。修改源程序 LOOP 程序段两次给累加器 A 的赋值,改为“MOV A,#1“MOV A,#9”重新编译后运行,记录电压表显示值,这是占空比 1:9 的 PWM。同样,用户可做 占空比 9:1 的 PWM,并做记录

58、。比较三种 PWM 信号转换电压的大小,与理论值相比 较。四、流程图及源程序流程图分析 PWM 转换电路的原理。2改变延时子程序 R0 的值,观察转换电压如何改变六、实验电路图实验八继电器控制实验、实验目的学习 I/O 端口的使用方法。掌握继电器的控制的基本方法。现代自动控制设备中,都存在一个电子电路的互相连接问题,一方面要使电子电 路的控制信号能控制电气电路的执行元件(电动机,电磁铁,电灯等,另一方面又要为 电子线路和电气电路提供良好的电气隔离,以保护电子电路和人身的安全,继电器便 能完成这一任务。继电器电路中一般都要在继电器的线圈两头加一个二极管以吸收继电器线圈断 电时产生的反电势。本电路的控制端为高电平时,继电器常开触点吸合,当控制端口为低电平时,继电 器不工作。三、实验内容及步骤用 P1.0 作为控制输出口

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论