51单片机实验指导书
单片机51实验指导书
第一章系统概述1.1 系统组成Dais系列单片机微机仿真实验系统的MCS-51单片机实验与仿真由管理CPU 89C52系统单元、目标CPU 8032或仿真CPU438单元、接口实验单元和稳压电源(外接或内置)组成,通过RS232C串行接口与PC微机相连,系统硬件主要内容如下:1.2 系统功能与特点(1)自带键盘、显示器,能独立运行,也可以PC机为操作平台。
两种工作方式任意选择,均全面支持《单片机原理与应用》等课程的实验教学。
(2)系统采用紧耦合多CPU技术,用89C52作为系统管理CPU,8032或仿真CPU438作为目标机仿真与实验CPU,其软硬件资源100%出借。
(3)目标CPU8032/438采用主频为6MHz,向用户提供实验方式和两种仿真方式(RAM 方式和EPROM方式)。
(4)配有一片RAM 61C256构成系统的32K程序空间,地址范围为0000H~7FFFH,还配一片61C256(32K)作为用户设置的断点区(BPRAM)。
(5)实验项目完整丰富,与课程教学紧密结合,同时配有电机、温压、音响等实验对象,可支持控制应用类综合实验。
(6)系统接口实验电路为单元电路方式,电路简捷明快,一体机的8位数据总线以排线形式引出,这样既减轻繁琐的连线工作,又提高学生的实验工作能力。
(7)通过RS232通信接口,在Windows/DOS集成软件的支持下,利用上位机丰富的软件硬件资源,实现用户程序的编辑、编译、调试运行,提高实验效率。
(8)具有最丰富的调试手段,系统全面支持硬件断点,可无限制设置断点,同时具有单步、宏单步、连续运行及无限制暂停等功能,100%保护用户现场,返回监控。
(9)自带EPROM编程器,可对2764/27128快速读出(软硬件实验所需的代码文件)。
1.3 系统资源分配实验系统寻址范围定义如下:系统已定义的I/O地址如下:第二章安装使用2.1硬件安装(1)对卡式结构的机型而言应把8032/8789CPU卡更换到主机板的CPU-SUB(36)总线接口位置。
51单片机实验指导书
MCS-51单片机基础综合实验板实验指导书李家庆2009年2月目录第1章实验箱功能简介1.1 实验箱外观 (1)1.2 实验箱配置 (2)1.3 仿真下载使用说明 (3)1.4 电路图 (4)第2章实验箱使用快速入门2.1 KEIL C51 简介 (5)2.2 uVision使用入门 (5)2.3 实验箱的仿真 (10)2.4 实验箱的下载 (13)第3章单片机实验3.1 基本实验 (23)实验一熟悉Keil C51开发环境 (23)实验二熟悉实验箱的仿真与下载 (26)实验三 I/O口延时实现流水灯 (27)实验四蜂鸣器驱动实验 (29)实验五定时器中断实验 (32)实验六外部中断实验 (33)实验七数码管显示123456 (34)实验八 8155扩展实验 (35)实验九 ADC0809实验 (37)实验十 DAC0832实验 (41)实验十一串口通信实验 (42)3.2 高级实验 (51)实验十二 100位计数器实验 (51)实验十三矩阵键盘实验 (53)实验十四实时时钟实验 (56)实验十五数字温度计实验 (64)实验十六 I2C总线实验 (68)实验十七单片机实钟实验 (74)注:实验书只是提供了部分参考实验,供用户初次使用时熟悉各模块电路,更多实验源代码详见光盘,另外,您也可根据自己的思路编写各种各样的实验代码,均可以非常方便的在此实验箱上运行。
其它相关资料,请参考光盘第1章 实验板功能简介1.1 单片机实验板概览实物图如图1.1所示:1.2 实验箱配置 基础板配置:1、STC89C51支持在线下载程序。
.2、8位LED 发光二极管(可做流水灯实验)。
3、4位数码管(可做动态扫描及静态显示实验)。
图1.1 单片机实验板实物图图1.2 单片机实验板功能组成4、4 *4矩阵键盘。
(也可将其中的行或列接地,将独立按键实验)。
5、MAX232芯片RS232通讯接口(可以做为与计算机通迅的接口,同时也可做为STC单片机下载程序的接口,SST单片机仿真接口)6、USB供电系统,直接插接到电脑USB口即可提供电源,此时不需另接直流电源。
51单片机实验指导书
实验一扩展存储器读写实验一.实验要求编制简单程序,对实验板上提供的外部存贮器(62256)进行读写操作。
二.实验连线将P1.0接至L1。
三.实验说明单片机系统中,对片外存贮器的读写操作是最基本的操作。
用户藉此来熟悉MCS51单片机编程的基本规则、基本指令的使用和使用本仿真实验系统调试程序的方法。
用户编程可以参考示例程序和流程框图。
本示例程序中对片外存贮器中一固定地址单元进行读写操作,并比较读写结果是否一致。
不一致则说明读写操作不可靠或该存储器单元不可靠,程序转入出错处理代码段(本示例程序通过熄灭一个发光二极管来表示出错)。
为了全面检验对该存储器单元各位的读写,程序中使用55H和AAH两个数值(请思考为何选用这两个数值)来验证写存贮器和读存贮器的操作。
用户调试该程序时,可以灵活使用单步、断点和变量观察的等方法,来观察程序执行的流程和各中间变量的值。
四.实验程序及框图实验示例程序流程框图如下:实验二P1口输入、输出实验一.实验要求编写程序,使从P1口的低四位读入四位拨动开关的电平,再用P1口的高四位点亮四个发光二极管,使得发光二极管的亮灭变化与四位拨动开关的状态相一致。
二.实验连线1.使用专用实验连线,将拨动开关的低四位K1-K4与单片机P1口的低四位P1.0 –P1.3,依次对应连接起来。
2.将单片机P1口的高四位P1.4 – P1.7与发光二极管L1 — L4,依次对应连接起来。
三.实验说明P1口是准双向口。
它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20KΩ~40KΩ,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
四.实验程序及框图实验示例程序见配套盘片中的EXP2.ASM实验示例程序流程框图如下:实验三A/D转换实验一.实验要求利用实验板上的ADC0809做A/D转换器,利用实验板上的电位器W1提供模拟量输入。
51单片机实验指导书
目录目录 0第一章实验装置 (1)一.伟福开发环境的使用 (1)二.LJD-SY-5100学习实验开发板的使用 (17)第二章微机原理及应用实验 (22)实验一开发环境的使用 (22)实验二数据传送 (23)实验三数码转换 (23)实验四数值运算 (24)实验五堆栈操作 (25)实验六查表操作 (25)实验七逻辑运算操作 (26)实验八中断及I/O口实验 (26)实验九串行通讯实验 (28)第一章实验装置一.伟福开发环境的使用1.菜单文件菜单选项●文件 | 打开文件打开用户程序,进行编辑。
如果文件已经在项目中,可以在项目窗口中双击相应文件名打开文件。
●文件 | 保存文件保存用户程序。
用户在修改程序后,如果进行编译,则在编译前,系统会自动将修改过的文件存盘。
●文件 | 新建文件建立一个新的用户程序,在存盘的时候,系统会要求用户输入文件名。
●文件 | 另存为将用户程序存成另外一个文件,原来的文件内容不会改变。
●文件 | 重新打开在重新打开的下拉菜单中有最近打开过的文件及项目,选择相应的文件名或项目名就可以重新打开文件或项目。
●文件 | 打开项目打开一个用户项目,在项目中,用户可以设置仿真类型。
加入用户程序,进行编译,调试。
系统中只允许打开一个项目,打开一个项目或新建一个项目时,前一项目将自动关闭。
伟福开发环境的项目文件包括仿真器设置,模块文件,包含文件。
仿真器设置包括仿真器类型,仿真头(POD)类型,CPU类型,显示格式和产生的目标文件类型,可以用以下几种方法设置仿真器。
✧在项目窗口中双击第一行,将打开仿真器设置窗口,对仿真器进行设置。
✧按鼠标右键,在弹出菜单中选择[仿真器设置]。
✧主菜单| 仿真器| 仿真器设置。
加入模块文件✧按鼠标右键,在弹出菜单中选择[加入模块文件]。
✧主菜单| 项目| 加入模块文件。
加入包含文件✧按鼠标右键,在弹出菜单中选择[加入包含文件]。
✧主菜单| 项目| 加入包含文件。
Keil-C51单片机实验指导2015.5.4
Keil C51实验项目Keil C51实验项目 (1)一、单片机的IO编程 (4)实验1 IO开关量输入实验 (4)实验2 IO输出驱动继电器(或光电隔离器)实验 (4)实验3 IO输入/输出---半导体温度传感器DS18B20实验 (5)二、单片机的中断系统 (7)实验1 外部中断----脉冲计数实验 (7)实验2 外部中断----故障报警实验 (8)三、单片机的定时器/计数器 (10)实验1 计数器实验 (10)实验2 秒时钟发生器实验 (11)四、单片机的串口特点和编程 (12)实验1 PC机串口通讯实验 (12)实验2 RS485通讯实验 (14)五、存储器 (15)实验1 RAM存储器读写实验 (15)六、PWM发生器 (16)实验1 PWM发生器(模拟)实验 (16)实验2 蜂鸣器实验 (18)七、WDG看门狗 (19)实验1 外扩WDG(MAX705)实验 (19)实验2 WDG(内部)实验 (19)八、SPI总线 (20)实验1 SPI(模拟)实验-----TLC2543 AD转换实验 (20)实验2 SPI(模拟)实验-----TLV5616 DA转换实验 (21)九、I2C总线 (23)实验1 I2C(模拟)实验-----IC卡(AT24C01)读写实验 (23)十、综合实验 (24)实验1 HD7279LED数码管显示实验 (24)实验2 HD7279键盘实验 (25)实验3 电机转速实验 (26)十一、步进电机实验 (27)实验1 步进电机正反转实验 (27)十二、TFT液晶显示实验 (28)实验1 TFT液晶显示彩色条纹实验 (28)十三、16X16LED点阵显示汉字实验 (29)实验1 16X16LED点阵显示汉字实验 (29)一、单片机的IO编程实验1 IO开关量输入实验目的:学习单片机读取IO引脚状态的的方法。
内容:编程读取IO引脚状态。
设备:EL-EMCU-I试验箱、EXP-89S51/52/53 CPU板。
单片机实验指导书-51分册(精)
目录第一章系统安装与启动 (2第二章MCS-51单片机硬件接口实验部分 (3 实验一I/O口输入、输出实验 (3实验二扩展输入、输出实验 (5实验三扩展存储器读写实验 (7实验四FlashMemory读写实验 (9实验五定时/计数器实验 (11实验六8253定时/计数器实验 (12实验七外部中断实验 (14实验八串转并与并转串实验 (16实验九串行静态数码显示实验 (18实验十8255输入、输出实验 (20实验十一8255控制键盘与显示实验 (22实验十二8279控制键盘与显示实验 (24实验十三音频驱动实验 (26实验十四LED点阵显示实验 (29实验十五LCD显示实验 (31实验十六电子钟实验 (33实验十七电子琴实验 (34实验十八交通灯控制实验 (35实验十九单片机串行口与PC机通信实验 (37实验二十8251可编程串行口与PC机通信实验 (39 实验二十一并行A/D转换实验 (41实验二十二并行D/A转换实验 (43实验二十三串行A/D转换实验 (45实验二十四串行D/A转换实验 (47实验二十五并行打印机实验(选 (49实验二十六I2C串行EEPROM读写实验 (51实验二十七IC卡读写实验 (56第三章MCS-51单片机应用实验部分 (60实验二十八V/F转换与F/V转换实验 (60实验二十九语音芯片控制实验 (63实验三十日历时钟芯片控制实验 (68实验三十一直流电机测速与控制实验 (77实验三十二步进电机控制实验 (79实验三十三压力测量显示实验 (81实验三十四温度传感器与温度控制实验 (83实验三十五红外数据发送与接收实验 (85实验三十六485通信实验 (88实验三十七CAN总线通信实验 (90实验三十八USB总线通信实验 (941第一章系统安装与启动一、实验系统工作在51实验模式当用户需要进行MCS-51单片机实验内容时,应进入这种工作模式。
1将JD2(CPU插座与JD3(CPU51插座用“CPU转接板”连接起来,JD1(CPU88插座空置。
51系列单片机实验系统指导书
51系列单片机实验系统指导书目录前言第1章下载式实验系统的使用方法1.1 软件安装与启动1.1.11.1.2 文件操作1.1.3 建立工程项目(汇编)1.1.4 调试程序第2章软件实验2.1 数据传送实验2.2 清0实验2.3 数据转换实验2.4 拆字、拼字实验2.5 散转程序实验2.6 时钟实验2.7 计数器实验2.8 无符号十进制数加法实验2.9 数据排序实验2.10 单字节BCD码除法实验2.11 查找相同个数实验第3章硬件实验3.1 P1口彩灯控制实验3.2 数码管显示实验3.3 顺序控制实验3.4 8031和8155接口扩展与数码管显示实验3.5 键盘、数码管显示综合实验3.6 A/D转换实验3.7 D/A转换实验3.8 A/D与D/A转换综合实验第4章89C51系列实验4.1 顺序控制实验4.2 数码管显示实验4.3 键盘、数码管显示综合实验4.4 A/D转换实验4.5 D/A转换实验前言目前,51系列单片机在我国的各行各业得到了广泛应用,各大专院校、职业培训学校,均开设了单片机原理与应用方面的课程,这是一门技术性和实践性很强的学科,必须通过一系列的软硬件实验、理论联系实际,才能学好、学懂,取得较好的学习效果。
为了适应这一学习上的要求,国外厂家开发了多种实验、开发系统,但普遍存在集成度高,严重脱离实际的情况。
作者集多年理论教学、实验教学、产品开发的经验,完全摒弃了以前各种实验设备的那种思维模式,重新开发出一种实验、开发系统,专从产品开发角度出发,安排各种硬件实验,并且做到每一个实验就是一个小产品,每个实验就是一个产品开发的过程,从单片机最小系统开始,逐步扩展功能,从单一功能到功能多样,从小到大,从简单到复杂,自成系统给人一种完整的学习思路,让学习者概念清晰、直观明了、易学易懂,特别是加强了硬件故障排除方法的指导,解决了学习者中普遍对硬件故障排除难的问题;其次是加强了软件调试的指导,提供了一些软件调试方法和步骤,帮助初学者很快入门,帮助熟练者更加深化。
51单片机实验手册
51单片机实验手册一、概述51单片机是一种经典的8位微控制器,具有广泛的应用领域。
本实验手册旨在提供详细的实验指导,帮助初学者快速入门,并为进一步的学习提供基础。
二、实验准备在进行51单片机实验之前,我们需要准备以下材料:1. 一块51单片机开发板2. USB数据线或者串口线3. 电脑及编程软件4. 面包板及对应的连接线5. 红、绿、蓝LED以及相应的电阻三、实验一:LED闪烁LED闪烁是最基础的实验之一,通过控制51单片机的I/O口状态,使LED灯交替亮灭。
1. 连接电路将51单片机的VCC引脚连接到正极,GND引脚连接到负极,将LED的长脚连接到P1.0引脚,短脚连接到GND引脚。
2. 编写程序使用C语言编写如下程序:```c#include <reg52.h>void main() {while(1) {P1 = 0x00; // P1置低电平,LED灯熄灭Delay(1000); // 延时1秒P1 = 0xFF; // P1置高电平,LED灯点亮Delay(1000); // 延时1秒}}void Delay(unsigned int t) {while (t--);}```3. 烧录程序将编写好的程序通过编程软件下载到51单片机中。
4. 运行实验将USB数据线或串口线连接到51单片机开发板和电脑,将开发板上的开关打开,观察LED灯的闪烁情况。
四、实验二:数码管显示通过控制51单片机的I/O口状态,驱动数码管显示数字。
1. 连接电路将51单片机的VCC引脚连接到正极,GND引脚连接到负极,将数码管的A、B、C、D、E、F、G引脚分别连接到P1.0、P1.1、P1.2、P1.3、P1.4、P1.5、P1.6引脚。
2. 编写程序使用C语言编写如下程序:```c#include <reg52.h>unsigned char code segment[] = { // 数码管段码表0x3F, // 数字00x06, // 数字10x5B, // 数字20x4F, // 数字30x66, // 数字40x6D, // 数字50x7D, // 数字60x07, // 数字70x7F, // 数字80x6F // 数字9};void main() {unsigned int i;while(1) {for(i = 0; i < 10; i++) {P1 = segment[i]; // 依次在数码管上显示数字0-9 Delay(1000); // 延时1秒}}}void Delay(unsigned int t) {while (t--);}```3. 烧录程序将编写好的程序通过编程软件下载到51单片机中。
51单片机实验指导书
51系列单片机原理与应用实验目录实验一交通灯控制实验 (4)实验二现实人体视觉暂留特性测试实验 (7)实验三实施时钟制作实验 (9)实验四简易电子琴制作实验 (10)实验五EEPROM应用—数字密码锁 (13)实验六综合实验:教学板自检程序设计 (15)实验七数据采集—火灾报警装置的软硬件设计 (17)附录一实验教学板 (17)附录二实验用软件使用说明 (18)实验须知一、预习要求1.实验前认真阅读实验指导书的相关内容,明确实验目的和实验任务。
2.实验前应做好预习报告,在报告中,要求画出所设计的实验电路原理图、程序流程图,编写好程序,并对程序加以注释,还要拟订好实验步骤。
二、实验要求1.按实验中心安排的时间到指定实验室上实验课,不要迟到、缺席。
有特殊原因不能在原安排时间来实验时,须提前一天通知实验中心负责教师。
2.认真完成每次实验的各项任务,实验结果要请指导教师检查。
教师对实验内容提问,并对完成者进行记录。
3.爱护设备,保持清洁,不得在实验室内大声喧哗,不要将食物带入实验室,不擅自更换设备。
4.在实验箱(板)通电状态下,不要用手随意触摸电路板上除按键和开关以外的芯片等其它元器件。
,严禁带电操作,即所有接线、改线和拆线操作均应在不带电的状态下进行。
5.实验中若发生异常情况应立即切断电源,并向指导教师报告,检查原因,避免再次发生类似情况。
6.实验完毕,请整理好实验设备后再离开实验室。
三、实验报告要求实验报告必须使用实验报告专用纸,书写要工整、清楚,并在下一次实验时交给指导教师。
实验报告应包括以下内容:1.实验名称、实验人姓名、学号、班级、同组人姓名。
2.实验目的、任务(内容)。
3.各任务程序流程图、自编程序清单,对程序须给出适量注释(例如:变量和某些寄存器的作用,关键程序段的功能等)。
4.应画出所设计的完整实验电路图。
5.记录和分析实验调试过程中遇到的问题并给以合理的解释,简述是如何解决的。
记录实验结果,6.解答思考题。
MCS-51单片机实验指导书
目录第一部分前言 (1)第二部分调试软件LCA51快速入门 (3)1.启动运行环境 (3)2.程序编写 (5)3.程序编译 (6)4.加载 (6)5.运行 (6)第三部分实验一P1口输入、输出实验 (7)一.实验目的 (7)二.实验要求 (7)三.实验原理 (7)四.实验原理与连线 (7)五.实验程序及框图 (8)六.实验收报告 (8)实验二 P3口输出控制实验 (9)一.实验目的 (9)二.实验要求 (9)三.实验原理 (9)四.实验电路及连线 (9)五.实验框图 (10)六.实验报告 (10)实验三简单I/O实验(交通灯控制) (11)一.实验目的 (11)二.实验要求 (11)三.实验原理 (11)四.实验电路及连线 (11)五.实验框图 (12)六.实验报告 (12)实验四外部中断实验 (13)一.实验目的 (13)二.实验要求 (13)三.实验原理 (13)四.实验连线 (13)五.实验程序及框图 (13)六.实验报告 (13)实验五定时器实验 (14)一.实验目的 (14)二.实验要求 (14)三.实验原理 (14)四.实验电路及连线 (14)五.实验框图 (15)六.实验报告 (15)实验六计数器实验 (16)一.实验目的 (16)二.实验要求 (16)三.实验说明 (16)四.实验电路及连线 (16)五.实验框图 (17)六.实验报告 (17)实验七扩展存储器读写实验 (18)一.实验目的 (18)二.实验要求 (18)三.实验原理 (18)四.实验电路及连线 (18)五.实验程序框图 (18)六.实验报告 (19)实验八单片机串行口与PC机通讯实验 (20)一.实验目的 (20)二.实验要求 (20)三.实验说明 (20)四.实验电路及连线 (20)五.实验程序框图 (20)六.实验报告 (21)实验九 8255输入、输出实验 (22)一.实验目的 (22)二.实验要求 (22)三.实验原理 (22)四.实验电路及连线 (22)五.实验程序及框图 (23)六.实验报告 (23)第四部分选做实验实验十 D/A转换实验 (24)一.实验目的 (24)二.实验要求 (24)三.实验说明 (24)四.实验电路及连线 (24)五.实验程序框图 (25)六.实验报告 (25)实验十一 A/D转换实验 (26)一.实验目的 (26)二.实验要求 (26)三.实验电路及连线 (26)四.实验原理 (26)五.实验程序及框图 (27)六.实验报告 (27)第五部分附录第一节实验箱结构与安装使用 (28)一.实验箱结构图 (28)二.安装使用 (28)第二节高级语言编译器安装 (29)第三节实验箱部分电路模块与开关插座说明 (30)一.开关与插座说明 (30)二.实验模块原理图 (31)第四节汇编错误码原因说明 (33)第五节MCS51实验箱自检测方法 (33)一.实验接口模块检测 (34)二.扩展实验模块测试 (34)第一部分绪言一、课程性质、目的和任务本课程主要讲述当前国内外广泛应用的系列单片机的结构、原理、接口技术、扩展应用等知识。
51实验指导书27页word文档
目录实验一指令和汇编语言 (1)实验二C51序程序设计 (3)实验三I/O和中断实验 (4)实验四定时器计数器实验 (7)实验五键盘显示电路实验 (8)实验六综合设计实验 (16)附录1 C51编程简介 (20)附录2 Keil C51常用库函数原型 (23)附录3 Keil实例教程 (26)实验一指令和汇编语言一、实验目的1、了解单片机开发系统的各主要组成部分,包括PC、仿真器和实验开发系统;2、掌握仿真器及其软件的使用,初步掌握程序的调试方法,包括跟踪、单步运行和断点设置等;3、熟悉51单片机的指令系统,掌握汇编语言程序的设计方法。
二、实验仪器1、自制的C51实验开发板 1块2、直流稳压电源 1台3、仿真器(EASYPROBE) 1只4、PC机 1台三、实验内容1、认识51单片机开发系统的结构。
图1-1 51单片机开发系统的结构2、初步认识仿真器软件和Keil C51软件界面。
3、简单程序调试(1) 传送指令设置内部RAM的值,(30H)=40H, (40H)=10H,单步执行下列程序,检查结果。
MOV R0,#30HMOV A,@R0MOV R1, AMOV B, @R1STOP: SJMP STOP执行后:(R0)= ,(R1)= ,(A)= ,(B)= ,(30H)= ,(40H)= 。
(2) 运算指令单步执行MOV A, #0BFHMOV 20H, #85HMOV A, #0BFHMOV 20H, #85HMOV A, #0BFHMOV 20H, #85HMOV A, #0BFHMOV B, #85H40芯扁平电缆PC机仿真器C51实验开发板(目标板)电源SETB C ADD A, 20H SETB CADDC A, 20HSETB CSUBB A, 20HMUL ABSJMP $结果标志(A)=CY= AC=OV= P=(A)=CY= AC=OV= P=(A)=CY= AC=OV= P=(A)= (B)=CY= AC=OV= P=4、多字节十进制数加法被加数加数结果低位20H 67 30H 6520H21H 45 31H 72 21H22H 23 32H 98 22H23H 01 33H 89 23H 高位图1-2 4字节十进制数相加两个4字节十进制数1234567和89987265相加,将其8421-BCD码按低位到高位存放在地址为20-23H、30-33H的RAM中,运算结果存放在20-23H的地址中,如上图示。
51单片机实验指导书
实验一、80C51存储器数据传输实验:1、实验目的:1)熟悉嵌入式交叉开发环境,结合简单的应用实例,完成工程的建立、应用程序的编写,并进行编译、调试,观察相关寄存器及存储空间的使用情况。
2)熟悉51单片机的开发环境Keil C51,掌握80C51单片机内部数据存储器、外部数据存储器的数据传送特点和应用。
2、实验内容:第三章思考与练习(p87),从12、14、15、16中任选2题进行实验验证要求:回答题目中问题,并列写出程序执行完后所涉及的各寄存器的值。
实验二、80C51汇编语言编程实验:1、实验目的:1)熟悉80C51单片微机汇编语言设计及编程技巧。
2)掌握逻辑运算程序的设计方法。
3)掌握多字节无符号十进制数加、减法程序的设计。
2、实验内容:1)逻辑运算设:A=63H ,B=82H ,C=C5H ,D=36H ,根据下列逻辑运算式,编写程序计算运算结果。
Y =A⨁B ∙C ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅∙D +A̅̅̅̅̅̅̅̅ 2)十进制加、减运算286729 + 652430 -752196 = ?在8051片内数据存储器的20H~22H 中放入3字节被加数(低位在先)、23H~25H 放入加数(低位在先)、26~28H 放入减数,结果存入29H~2BH 单元(低位在先)。
附:实验二参考例程1)逻辑运算:ORG 0000HAJMP MAINORG 0080HMAIN: M OV A, #63H;将A 值给累加器A MOV R0, #36H;将D 值给R0 ORL A, R0;将A 与D 逻辑或,即A+D 存入累加器A CPL A;求A +D ̅̅̅̅̅̅̅̅ MOV R1, A;将A +D ̅̅̅̅̅̅̅̅存入R1 MOV A, #82H;将B 值给累加器A MOV R0, #0C5H;将C 值给R0 ANL A, R0;B 与C 逻辑与,结果存入累加器A CPL A;求反,即B ∙C ̅̅̅̅̅̅ MOV R0, #63H;将A 值存入RO XRL A, R0;A⨁B ∙C ̅̅̅̅̅̅,存入累加器A CPL A;A⨁B ∙C ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅ ANL A, R1;A⨁B ∙C ̅̅̅̅̅̅̅̅̅̅̅̅̅̅̅∙D +A̅̅̅̅̅̅̅̅ END2)十进制加、减运算:ORG 0000HAJMP MAINORG 0080HMAIN: M OV 20H, #29H ;将被加数放入片内数据存储器20H~22HMOV 21H, #67HMOV 22H, #28HMOV 23H, #30H ;将加数放入片内数据存储器23H~25HMOV 24H, #24HMOV 25H, #65HMOV 26H, #96H ;将减数放入片内数据存储器26H~28HMOV 27H, #21HMOV 28H, #75HMOV A, 20HADD A, 23H ;最低字节相加DDA ;二-十进制调整MOV 2DH, A ;将相加结果存入2DHMOV A, 21HADDC A, 24H ;次低字节带进位相加DAA ;二-十进制调整MOV 2EH, A ;将次低字节相加结果存入2EHMOV A, 22HADDC A, 25H ;最高字节带进位相加DA A ;二-十进制调整MOV 2FH, A ;将最高字节相加结果存入2FHCLR C ;清零C标志位MOV A, #9AH ;求26H中的十进制补码SUBB A, 26HADD A, 2DH ;加上补码DA A ;二-十进制调整MOV 2DH, A ;将最低字节运算结果存入2DHCPL C ;标志位取反MOV A, #9AH ;求27H中的十进制补码SUBB A, 27HADD A, 2EH ;加上补码DA A ;二-十进制调整MOV 2EH, A ;将次低字节运算结果存入2EHCPL C ;标志位取反MOV A, #9AH ;求28H中的十进制补码SUBB A, 28HADD A, 2FH ;加上补码DA A ;二-十进制调整MOV 2FH, A ;将最高字节运算结果存入2FHEND注:○1字节减法改为加该字节的补码,如减1,改为加99H。
51系列单片机实验系统指导书
51系列单片机实验系统指导书目录前言第1章下载式实验系统的使用方法1.1 软件安装与启动1.1.11.1.2 文件操作1.1.3 建立工程项目(汇编)1.1.4 调试程序第2章软件实验2.1 数据传送实验2.2 清0实验2.3 数据转换实验2.4 拆字、拼字实验2.5 散转程序实验2.6 时钟实验2.7 计数器实验2.8 无符号十进制数加法实验2.9 数据排序实验2.10 单字节BCD码除法实验2.11 查找相同个数实验第3章硬件实验3.1 P1口彩灯控制实验3.2 数码管显示实验3.3 顺序控制实验3.4 8031和8155接口扩展与数码管显示实验3.5 键盘、数码管显示综合实验3.6 A/D转换实验3.7 D/A转换实验3.8 A/D与D/A转换综合实验第4章89C51系列实验4.1 顺序控制实验4.2 数码管显示实验4.3 键盘、数码管显示综合实验4.4 A/D转换实验4.5 D/A转换实验第1章下载式实验系统的使用方法1.1 软件安装与启动下载式实验系统,是一套既可脱离硬件仿真又可与实验系统联机仿真的实验装置,对于硬件实验,只要将软件调试好后就可将程序用串行口直接在线写入芯片,再不必象以前那样要专用的编程器来固化程序。
1.1.1 软件安装1. 为使QTH 调试器能够正常运行,您必须提供以下软硬件环境:586 以上的PC 及兼容机;100M 以上的剩余硬盘空间;分辨率为800×600 以上的显示器;具有SPP功能的打印机接口;使用符合Intel 标准的汇编器、编译器和连接器。
如Franklin/Keil V3.2 或keil V6.02 及以上版本。
2.使用:单击开始/程序,在程序条中选QTH2008XS下载式单片机实验仪V2004.1或直接双击桌面上QTH-2008XS 快捷图标。
图1-1连机出错提示框如果已经连接仿真器或实验仪,则直接进入 QTH 调试器窗口。
如果没有连接仿真器,等一下屏幕上会出现图1-1所示的连机出错提示框:可以选择是否进入模拟调试:“是”——进入调试;“否”——请检查并使仿真器正常工作后,再按调试菜单上的复位钮,进入仿真调试。
MCS-51单片机实验指导书
实验一清零程序一、实验目的掌握汇编语言设计和调试方法,熟悉键盘操作。
二、实验内容把2000~20FFh的内容清零。
三、程序框图四、实验步骤1、LED环境⑴在“P.”状态下按“0→EV/UN”,装载实验所需的代码程序。
⑵在“P.”状态下键入0640,然后按“STEP”或“EXEC”进入实验项目的调试与运行。
2、PC环境在与PC联机状态下,编译、连接、下载PH51\se01.asm,用连续或单步方式运行程序。
3、运行结果检查⑴在单步运行时,每走一步可观察其运行结果。
⑵在连续运行状态下,应按“暂停图标”或实验箱上的“暂停按钮”,使系统无条件退出用户运行状态返回监控,然后再用相应的命令键观察与检查2000~20FFH中执行程序前后的内容变化。
五、思考假使把2000H~20FFh中的内容改成FFh,如何修改程序。
实验一 P1口亮灯实验一、实验目的(1)学习P1口的使用方法;(2)学习延时子程序的编写。
二、实验预备知识(1)P1口对准双向口,每一位都可独立地定义为输出或输入。
(2)本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。
三、实验内容P1口作为输出口,接八个发光二极管,编写程序,使发光二极管循环点亮。
四、程序框图五、实验电路六、实验步骤1、实验连线P1.0~P1.7用插针连至L1~L8。
2、LED环境(1)在“P.”状态下按“0→EV/UN”,装载实验所需的代码程序。
(2)在“P.”状态下键入0790,然后按“EXEC”进入实验项目的运行。
3、PC环境在与PC联机状态下,编译、连接、下载PH51\he01.asm,用连续方式运行程序。
4、观察运行结果在连续运行状态下,观察发光二极管闪亮移位情况。
5、终止运行按“暂停图标”或实验箱上的“暂停按钮”,使系统无条件退出该程序的运行返回监控状态。
七、思考改变延时常数,使发光二极管闪亮时间改变。
51单片机实验指导书
第一章 51系统部分及仿真器使用说明一、51CPU系统部分的组成51CPU系统部分由仿真电路、上电复位电路、用户晶振插座、低位地址锁存器74LS373、地址译码器74LS138、存储器电路、电源开关和指示电路、仿真插座、全部总线(P0口作数据总线D0~D7、P1口、P2口作高位地址总线A8~A15、P3口) 引出插孔和排线引出等组成。
实验程序可以在线下载、在线调试。
二、51CPU系统部分接口介绍1、在CPU仿真区里的JFZ:连接51仿真器的专用插座。
使用时插上51仿真器。
2、在CPU仿真区里的FZ1:接插51CPU芯片STC89C51,在仿真完成后,关闭电源,取下仿真器,在FZ1位置插上51CPU芯片STC89C51,用导线将P3.0和RS232通信区域的RXD_232相连, 将P3.1和RS232通信区域的TXD_232相连,打开电源,运行STC-ISP.EXE软件,即进入在线下载,下载完成自动进入连续运行状态。
3、在51仿真区里的JJZ:在外接仿真器使用时,JJZ上不插任何元件。
在不用仿真器,直接在FZ1位置插上51CPU芯片STC89C51进行在线下载运行时,需在JJZ圆孔座的两边插上11.0592MHZ晶振。
4、在51仿真区里的JR:在外接仿真器时,JR上跳线连右边两脚。
三、51单片机仿真部分使用说明系统专配的仿真器是一个支持keil c51设计软件的软件断点仿真机。
该仿真器使用一片SST89C58单片机和一片A T90S8515单片机来实现仿真功能(主CPU 和用户CPU),两片CPU之间通过一根I/O引脚通讯(通讯速率在33兆晶振时约100KBPS),主CPU负责跟keil c51通讯,用户CPU只跟主CPU通讯,仿真器结构框图如下:A、仿真器主要功能和特性1、支持串口的仿真功能2、串口中断用户可以使用3、不占用定时器24、完全仿真p0,p2口5、支持89C52等嵌入式CPU仿真6、占用用户堆栈2个字节7、占用1条 I/O : P3.58、ISP 在线编程,在线下载9、仿真频率最高33兆10、支持同时最多10个断点11、支持单步,断点,全速运行12、支持汇编,c语言,混合调试13、支持KEIL C51的IDE开发仿真环境UV1 UV2(V5.20 V6.02 V6.10 V6.12 V6.14)14、单步执行时间(60毫秒)15、程序代码载入(可以重复装载,无需预先擦除用户程序空间)16、SFR读取速度(128个)200毫秒17、跟踪记录(trace record)256条18、可以仿真标准的89c51,89c52,89c58等51内核的单片机。
第三章MCS-51单片机实验指导
第三章MCS-51单片机实验指导本实验指导可使学生基本掌握MCS-51单片机的结构原理、程序框图和实验步骤。
一、实验指导书中所列的实验程序已经固化到系统管理CPU中,在呼.”状态下,按动W键T再按“EV/UN”键,将程序传送到以(Xx)OH为起始地址的RAM中。
因实验程序中采用子程序形式较多,要互相调用,所以必须把程序全部传送到实验系统中,对中断入口等地址的指令按照实验要求输入。
其中MCS-51实验程序地址范围:(XXX)~1FFFH,可以通过系统自带的键盘显示输入各种命令运行系统RAM中的实验程序,显示实验结果完成各个实验项目。
二、实验接线图上的粗实线表示用户在实验时要用导线连接起来。
三、所有实验都是相互独立的,次序上也没有固定的先后关系,在使用本书进行教学时,选择相应实验。
四、每个实验程序的序号、实验名称、入口地址见下表。
硬件部分实验多CPU系列教学实验系统状态设置DaiS-多CPU实验系统有多种工作模式,系统对各模式的状态设置定义如下:1.接口实验模式:上电或复位系统无条件进入接口实验模式,显示闪动的叩」。
2.串口出借模式:在叩.”状态按F2功能键,系统进入串口出借模式,显示呼……”,该状态用户可以自行定义串行口。
按F1功能键或按复位按钮,均使系统返回初始状态叩3.下载仿真模式:在“PJ状态按F1功能键,系统进入下载式仿真模式,显示“HJ,在该状态只有按F2功能键才能返回状态叩在联机状态下,通过菜单栏“设置→仿真模式”,在对话框中设置:(1).接口实验模式:片外RAM=系统,片外ROM=系统(2.)串口出借模式:片外RAM=用户,片外RoM=系统(3.)下载仿真模式:片外RAM=系统,片外RoM=用户五、注意事项(1)实验时应注意观察,若发现有破坏性异常现象(例如有元件冒烟、发烫或有异味)应立即关断电源,保持现场,报告指导老师。
找出原因、排除故障后,经指导老师同意再继续实验。
(2)实验过程中需改接线时,应关断电源后才能拆、接线。
MCS-51单片机实训指导书
目录目录 (1)单片机微机实验须知 (2)前言 (3)Proteus ISIS 和Keil软件入门学习 (4)一Proteus ISIS 设计单片机电路的基本步骤: (4)二用Keil开发单片机程序 (9)实训项目 (17)实验一单片机彩灯控制器的电路设计与仿真 (17)实验二查表程序设计—通过LED显示数字 (20)实验三用位操作实现逻辑功能——开关监测报警装置 (24)实验四分支程序设计与应用——简单的温度控制 (26)实验五用T0实现电子计数器功能 (28)实验六方波信号发生器 (31)实验七利用中断技术实现前后台程序并行处理 (32)实验八利用中断技术实现的数字时钟 (33)实验九LED显示和键盘的实现 (35)综合实训项目 (38)项目1:数字频率计的设计与实现 (38)项目2:程序控制方波信号发生器 (41)项目3:数字时钟与作息时间自动控制器 (42)项目4:模拟量采集控制装置 (43)项目5:汉字LED点阵显示 (44)项目6:多功能智能仪表(小组集体项目) (46)项目7:自选项目 (46)实训成果与成绩评定: (46)程序附录 (48)单片机微机实验须知单片机实验是学好单片机课程的重要环节之一,因为通过各次实验可以使我们书本中学到的单片机理论知识更巩固,可学会常用的编程方法,学会连接线路和检查故障、排除故障,为我们从事生产及进行科研等工作打下基础。
为了达到上述目的,对同学们提出如下要求:1、每次老师告知实验时间和做什么实验后,在实验前要进行预习,仔细阅读实验指导书和该次实验有关的课本中内容或其他参考书,做到对实验的目的、内容、方法、步骤和应注意的事项都充分了解心中有数,并按指导老师提出的要求完成预习报告,在规定的时间交给老师检阅。
2、为了人身和设备安全,进入实验室后要遵守实验室的规章制度,不可动与该次实验无关的设备。
3、实验时要严肃认真,尤其要注意人身及设备安全。
讨论问题声音尽量小,以免相互干扰。
C51单片机实验指导(300本)
《单片机原理及应用》实验指导书(试用版)张明编严辉审安徽建筑工业学院电子与信息工程学院计算机工程系目录实验一P1口输入输出实验 (1)实验二T0定时器的定时实验 (3)实验三T1定时器定时中断实验 (5)实验四扩展可编程并行口8255实验 (7)实验五CPU串行口通讯实验 (9)实验六DAC0832实验 (11)实验七ADC0809实验 (13)实验八单脉冲外部中断实验 (15)附录EL实验系统的结构 (17)硬件实验操作指南一、根据实验内容进行硬件连线注意:连线及拆线时必须关闭实验箱电源。
二、编写程序并运行1.运行桌面上“MCS51”应用程序;2.按确定,串口及波特率设定为默认值;3.下拉菜单选择文件—新建—ASM51文档;4.在空白处输入源程序(以下为P1口输入输出实验的部分参考程序,横线处须补充指令):CSEG AT 0000HLJMP STARTCSEG AT 4100HSTART:MOV A,P1----------------JMP STARTEND5.输入完毕后选择文件—保存路径保存在D盘根目录下即可;6.下拉菜单选择编译—汇编弹出的窗口中会显示编译结果,如果程序有语法错误,弹出窗口中会提示在何处有错误,此时须根据提示修改程序,再次保存后重新编译,直至程序没有错误为止;7.打开实验箱电源,稍等片刻后实验箱左上角数码管会显示“P-”,如果实验箱始终显示乱码,则实验箱有问题,请更换机位进行实验;8.下拉菜单选择调试—单片机复位;9.根据弹出窗口提示,点击确定后按下实验箱右下角黄色按钮“PRESET”,此时数码管显示“C-”代表电脑与实验箱通信正常,若显示不对请重复8、9步操作;10.下拉菜单选择调试—调试可将程序下载入实验箱平台;11.下拉菜单选择调试—运行即可运行所编写程序;12.观察实验结果并记录;13.实验完毕,关闭实验箱电源,拆线时注意按住CPU小板进行拆线。
注意:CPU小板的锁紧座有一个锁定拨杆,如果CPU小板松动不可强行进行插拔!实验一 P1口输入输出实验一、实验目的掌握P1口的操作方法。
MCS51_单片机实验指导书
实验1 汇编语言简单试验---Keil C51的使用一、实验目的:熟悉Keil C51 集成开发环境的使用方法,初步掌握Keil C51基本的操作和使用,能够输入、编译和仿真调试简单的程序。
二、实验内容:在Keil C51 集成开发环境编写程序,实现P1.0口单灯闪烁的功能(假设P1.0口所接发光二极管低电平点亮),编写程序后在Keil C51 集成开发环境完成编译和仿真,实现全速运行、单步运行、并学会设置断点、查看相关寄存器等操作。
三、实验设备:安装Keil C51的计算机一台。
四、实验步骤:(参考教材第11章)1)建立一个工程项目选择芯片确定选项。
执行Keil C51软件的菜单“Project | New Project…”,弹出一个名为“Create New Project”的对话框。
先选择一个合适的文件夹准备来存放工程文件,最后,为工程取名,并保存。
如图1-1所示,紧接着,Keil C51提示您选择CPU器件。
在这里可以选择Atmel公司的AT89S52。
图1-1 Keil C51 工程的建立2)编写(或加入)汇编源文件或C 源文件,并添加到工程中。
执行菜单“File | New…”,出现一个名为“Text n”(其中n表示序号)的文档。
如图1-2所示。
执行菜单“File | Save”,弹出一个名为“Save As”的对话框。
将文件名改为你事先起好的名称,然后保存。
注意:扩展名“.ASM或.c”不可省略。
单击Keil C51软件左边项目工作窗口“Target 1”上的“+”,将其展开。
然后右击“Source Group 1”文件夹,会弹出如图 1.7所示的选择菜单。
单击其中的“Add Files to Group 'Source Group 1'”项,将源程序文件添加到工程中。
然后编写如下程序源文件,并再次保存。
ORG 0000HMAIN: CLR P1.0 ;(1)点亮LEDMOV 30H,#255LCALL DELAY ;(2)调用延时子程序SETB P1.0 ;(3)熄灭LEDMOV 30H,#200LCALL DELAY ;(4)调用延时子程序AJMP MAIN ;(5)返回MAIN处执行DELAY:MOV R7,30H ;(6)延时程序D1:MOV R6,#250 ;(7)D2:DJNZ R6,D2 ;(8)R6存放内循环次数DJNZ R7,D1 ;(9)R7存放外循环次数RET ;(10)END3)设置参数单击“Option”选项,在“Output”标签页,选中“Create HEX File”项,然后“确定”。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录目录 (1)第一章设备介绍 (2)第一节总体结构 (2)第二节上位机 (2)第三节仿真器 (3)第四节开发板 (5)第五节实验箱的使用 (6)第六节思考题 (7)第二章软件平台 (8)第一节总体框架 (8)第二节创建工程 (8)第三节添加源文件 (12)第四节编译连接生成目标文件 (16)第五节下载程序 (18)第六节运行并调试 (19)第七节平台使用中需特别注意的问题 (24)第八节思考题 (26)第三章运算程序 (27)第一节算数运算 (27)1.程序一 (27)2.程序二 (29)3.程序三 (30)第二节布尔运算 (30)1.程序一 (30)2.程序二 (35)3.程序三 (36)第四章I/O接口 (37)第一节I/O接口特性 (37)第二节I/O接口程序 (37)1.程序一 (37)2.程序二 (39)第一章设备介绍第一节总体结构单片机开发实验系统由三部分构成,上位机,仿真器,开发板。
他们通过各自的接口相互连接,实现相互之间的通讯。
下面三节将予以分别介绍。
图1-1 总体结构第二节上位机上位机是指人可以直接发出操控命令的计算机。
本套实验设备所使用的上位机是PC机,即个人电脑台式机。
在整个单片机开发实验系统中的地位相当于《自动控制原理》中所讲的控制器的状态观测器。
RS232串口(COM口):上位机与仿真器通讯所使用的接口为RS232串口(又称COM 口),如下图所示,RS232串口有9个针脚。
上位机通过该接口实现与仿真器的通讯。
图1-2 串口图1-3 串口线RS232串口线:图1-3是RS232窜口线,一端与上位机的RS232串口连接,另一端与仿真器的RS232串口连接,实现计算机与仿真器的通讯。
上位机接口管理:每一个通过接口与电脑连接的器件对电脑来说都称之为设备,仿真器所使用的RS232串口也不例外,如果查看自己所使用的串口,方法如下图所示。
右键点击我的电脑,然后点管理。
然后选择左侧的设备管理器。
可以看到自己电脑的RS232接口(电脑中显示为COM 口)的使用情况,如果电脑有两个RS232串口,则在设备连接时,应当区分自己使用的是COM1口还是COM2口。
图1-4 图1-5第三节仿真器仿真器是一个可以模拟单片机运行的器件,它不是单片机,但是它能模拟单片机的运行状态。
在整个单片机开发实验系统中的地位相当于《自动控制原理》中所讲的控制器。
仿真器接口:如图1-6所示,仿真器有三个接口,分别是右下角的RS232串口,右上角的供电口和左侧的40针IDE数据线。
图1-6 仿真器仿真器的RS232串口与上位机的RS232串口通过RS232串口线连接,实现与上位机的通讯。
如图1-7所示。
仿真器的供电口为仿真器提供5V直流电,如图1-8所示。
另一端与电脑的USB接口通过接线连接,5V电压由电脑的USB口提供。
图1-7 仿真器串口图1-8仿真器供电口图1-9为仿真器右端的40针IDE数据线连接的另一端,引出了40个引脚。
它和单片机的引脚布局是相同的,当仿真器内部的程序和单片机内部固化的程序相同时,单片机和仿真器具有相同的运行效果,也就是说,把仿真器拔下来,然后插上具有相同程序的单片机,效果是一样的。
图1-9 40针IDE数据线另一端第四节开发板开发板是指用来进行单片机开发的硬件外围电路,在整个单片机开发实验系统中的地位相当于《自动控制原理》中所讲的广义被控对象。
打开单片机开发综合实验箱,呈现的便是开发板,如图1-10所示。
图1-10 开发板开发板接口:最中心的部分是开发板与控制器的接口,可插入单片机或者仿真器40针IDE数据线的引脚。
本次实验采用第二种方案,如图1-12所示。
图1-11 开发板接口图1-12开发板接口注意:单片机或40针IDE数据线的引脚的放置是有方向的,具体判断方法是豁口向上。
如图1-13所示。
大部分的芯片都有豁口,豁口的目的就是为了辨别芯片插入的方向。
图1-13 豁口第五节实验箱的使用试验箱由供电电源,芯片,器件,接口组成。
试验箱通过白线人为的分成了很多模块,每个模块的功能在后续的硬件接口实验中会一一介绍。
这里只强调几点需要特别注意的地方。
图1-141.整个试验箱上电是需要两个开关同时打开。
下图是实验箱上电时开关的状态。
图1-152.请勿在上电状态下进行导线和芯片的插拔,否则会烧坏芯片。
不要在仿真器工作时拔掉与电脑,实验箱的连线,如需断开,则需要关掉电脑和实验箱,断电顺序是先断实验箱的电源,在断电脑的电源。
上电顺序相反。
第六节思考题1,请说出单片机仿真器和真实单片机之间的相同之处和不同之处。
第二章软件平台第一节总体框架在硬件电路搭建完毕的基础上,既可以对单片机程序进行开发与调试。
所谓开发,是指通过编程使系统实现所要达到的逻辑要求。
所谓调试,是指编好程序后,用各种手段进行查错和排错的过程。
程序的开发与调试需要建立在开发软件平台上。
本次试验所使用的MCS-51单片机开发调试软件平台为Keil uVision2,我们将在如下几节对软件进行详细介绍。
程序的开发与调试一般分为如下步骤。
1,创建工程2,导入源文件3,编译连接生成目标文件4,下载程序5,运行并调试下面的章节将逐一介绍这几个步骤。
名词解释:工程:软件开发平台中的工程指的是源文件,库文件等多种类型文件的通过一定的调用关系组织在一起的集合。
当添加源文件,调用的库文件增多时,工程的意义变得明显。
源文件:源文件就是用汇编语言或高级语言写出来的代码保存为文件后的结果。
编译链接:利用开发软件的编译程序产生目标程序的过程。
编译就是把高级语言变成单片机可以识别的二进制语言。
目标文件:目标文件是指源文件经过编译程序产生的能被单片机直接识别二进制文件。
下载:通过编译链接后生成的目标文件仍在上位机中,需要下载到单片机或者仿真器中才能观察程序运行的结果。
调试:编好程序后,用各种手段进行查错和排错的过程。
如果出现错误,则需要从第二步重新开始。
第二节创建工程1.启动软件仿真软件平台主要实现编写调试程序等功能,我们使用Keil uVision2这款软件。
点击图标运行Keil uVision2或者在开始菜单中运行。
弹出主界面如图所示。
图2-12.新建一个工程选择菜单栏中的Project,再下拉菜单中选择New Project…,创建一个新工程并保存。
这时在所保存工程的文件夹中产生一个后缀为.uv2的工程文件。
图2-2点击保存工程后出现如下菜单。
这里展示了开发软件所能模拟的单片机列表。
图2-3选择单片机型号,这里我们选择Atmel公司的A T89C51单片机,这样仿真器会模拟这款单片机。
右端对单片机进行了简单的描述,8051基于静态CMOS工艺,有32个I/O口,2个定时/计数器,6个中断源,4K Flash以及128B的片内RAM。
图2-4点击确定,然后工程创建完毕。
界面显示如下。
图2-53.设置工程参数3.1设置时钟晶振:设置时钟晶振与开发板提供的时钟晶振保持同步。
右键点击Target1,然后选择Options for Target ’Target 1’选项对工程进行设置。
图2-6在Target面板的Xtal(MHz)栏中输入晶振频率,这里输入11.0592,使软件所设置的晶振与实际晶振保持同步,否则程序有可能出现错误。
图2-73.2选择仿真设备:在Debug面板中选择用Keil Monitor-51 Driver进行仿真。
图2-83.3选择上位机接口在Settings中设置上位机所使用的端口,并对应选择,如果端口匹配错误,将导致无法通讯。
图2-9第三节添加源文件下面介绍如何通过仿真软件平台添加源文件。
1.创建源文件点击菜单栏中的File,选择New…弹出如下对话框,再对话框中输入程序。
当输入程序,或者程序有改动的时候,标题Text1后面会多一个星号。
图2-10图2-11然后保存程序,这里要更改文件扩展名,既把文件名改为Text1.asm,这里必须人工添加.asm后缀,否则会产生错误。
图2-122.导入源文件将编写好的文件导入工程:右键点击Source Group1,选择Add Files to Group ‘Source Group 1’图2-13选择查看全部文件类型,并添加源文件。
图2-14图2-15添加完毕后,可看到左侧工作栏出现Text1.asm,如图所示:图2-16为了入门方便,我们只留下最必须的文件,移除STARTUP.A51文件,方法如下,右键点击STARTUP.51,然后选择Remove File’STARTUP.51。
图2-17第四节编译连接生成目标文件在源程序已经添加到工程之后,对源程序进行调试,首先要进行编译链接等一系列工作。
其中下方的工作栏,显示编译连接的状态。
图2-181.编译程序点击translate current file按钮对文件进行编译,观察状态栏,当提示没有错误时表示编译完毕。
如果出现错误,请修改源文件。
图2-19图2-202.连接程序:当编译过程没有错误时可以进行下一步工作,链接,生成目标文件。
点击Bulid target按钮,显示连接状态,当没有错误的时候,即目标文件已经生成。
可以进行下一步工作,下载程序。
图2-21图2-22第五节下载程序下载目标文件到仿真器时,请确保上位机与仿真器的连接正确,仿真器POWER灯亮(即供电正常),设置正确,当下载或者调试程序时,如不需要使用实验箱上的硬件设备,实验箱可以不供电,然后点击Start/Stop Debug Session按钮。
这个按钮使上位机开发软件编译链接后的目标文件下载到仿真器中,下载完毕后进入调试状态。
图2-23进入调试状态的界面如下图所示:图2-24仿真器复位:需要对仿真器进行复位时,按住RESET按钮几秒钟即可。
仿真器复位相当于仿真器重新上电。
图2-25第六节运行并调试仿真器相比单片机实物最大的优点就是可以进行单步运行或断点运行,方便对程序进行调试。
如果不需要单步或断点运行调试程序,则可以进行全速运行,运行效果同单片机实体。
1.单步运行:下面介绍单步运行的方法,在调试状态下,点击step over按键。
其中黄色箭头代表的是当前状态下即将执行的语句。
图2-261.1 CPU寄存器观测可以注意到,寄存器A由0x00变成了0x25。
图2-27其实变化的并不只有A寄存器,还有PC指针寄存器,由0x0000变成了0x0002。
在这个状态下继续点击step over按键,仿真器的状态将不发生变化,原因是,当前指令SJMP $是跳转到自身,相当于一个死循环,单片机运行到这里就不会继续执行其他的指令了,除非中断发生或重新上电。
1.2存储器内容的观测单片机除了CPU内的寄存器存储数据外,还在程序存储器存储数据。
程序存储器存储的是程序,下面介绍查看程序存储器的方法。