单片机实验指导书
[整理]单片机实验要求指导书
海南师大物理与电子工程学院电子信息科学与技术专业《单片机应用技术》实验指导2014年4月目录实验一单片机仿真与开发系统认识 (1)实验二汇编语言简单编程实验 (3)实验三C51语言简单编程实验 (4)实验四并口实验 (5)实验五定时/计数器实验 (7)实验六单片机中断实验 (9)实验七串口实验 (11)实验八A/D、D/A实验 (13)附录一开发板布局图 (15)附录二开发板各部分电路原理图 (16)实验一单片机仿真与开发系统认识[实验类型] 验证性实验[实验目的]1、掌握51单片机开发软件Keil 的用法;2、掌握单片机硬件仿真软件Proteus的基本用法;3、了解实验所用开发板的电路原理,熟练掌握其基本使用方法。
[实验内容&要求]1、准备工作文件夹在D盘建立一个实验一工作文件夹,文件夹名字自定(英文)。
以下所有步骤建立的文件都存放在这个文件夹内。
2、Keil软件的使用首先打开KEIL软件,然后依次练习汇编程序和C程序的建立和编译。
(1)汇编语言程序练习:1>建立一个项目(建立一个项目文件夹,存在第1步所建立的文件夹内)2>输入课本P127页[例6-1]中的汇编程序(不过把P1和P0口所接器件换一下,即P0口接8个发光二极管,P1口接8个开关),在Keil C中输入,以.asm 做扩展名,保存到项目文件夹内。
3>在项目中添加该文件,编译生成.hex文件。
(2)C语言程序练习:1>再建另外一个项目(也在工作文件夹内另建一个项目文件夹);2>输入课本P127页[例6-1]中的C程序(同样注意把P1和P0换一下),保存、加入项目并生成.hex文件。
3、Proteus软件的使用(1)打开Proteus软件,参考课本P127页[例6-1]的要求建立硬件仿真图,注意把P1和P0所接器件换一下。
仿真文件名自定,保存在第1步所建立的文件夹内。
(2)在Proteus设置单片机属性为使用前面所生成的.hex文件,进行仿真测试。
单片机实验指导书(6个实验)
单片机原理和接口技术实验指导书襄樊学院物理和电子信息技术系实验要求1.进入实验室前完成的部分1)认真阅读实验指导书,弄懂实验原理和实验内容。
2)编写实验所要用到的程序,将其放在U盘上。
3)写出预习报告。
2. 进入实验室后完成的部分1)建立工程,加入已准备好的程序文件。
2)对程序进行调试,修改错误,获得要求的结果。
3)保存调试后的程序。
3.实验结束后的部分对实验结果进行分析、总结,写出实验报告。
实验报告内容及格式1.实验目的2.实验设备3.实验原理及环境4.实验内容只做文字叙述,程序部分放在程序清单中。
流程图也可不画。
5.程序清单本实验使用的完整程序。
如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。
6.实验步骤7.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。
此项为实验成绩评定的重要依据。
实验1 Keil C51的使用(汇编语言)实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
实验原理及环境:在计算机上已安装Keil C51软件。
这个软件既可以和硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不和硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要和硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种使用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
7)I A P 编程操作2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
单片机实验指导书
单片机实验指导书一、实验介绍单片机是一种集成电路,能够完成各种控制和计算任务。
本实验指导书将引导您进行单片机实验,以帮助您了解单片机的基本原理和应用。
在本实验中,您将学习如何搭建实验环境、编写程序以及进行各种实验操作。
二、实验准备1. 实验设备和材料:- 单片机开发板- USB数据线- 适配器- 数字电路元件(如LED、电位器等)2. 软件准备:- 单片机开发软件(如Keil、IAR EWARM等)- 编程软件(如C语言编辑器)- USB驱动程序三、实验步骤1. 搭建实验环境:- 将USB数据线连接单片机开发板和计算机。
- 通过适配器给单片机开发板供电。
- 检查驱动程序是否正确安装。
2. 编写程序:- 打开单片机开发软件,并创建一个新的工程。
- 选择适当的单片机型号和编程语言。
- 编写程序代码,实现所需功能。
- 编译程序并下载到单片机开发板。
3. 实验操作:- 根据实验要求连接相应的电路元件。
- 调试程序,确保程序能正确运行。
- 运行实验并观察结果。
四、实验注意事项1. 请确保您具备基本的电路和编程知识。
2. 在操作实验设备和元件时,请小心谨慎,避免发生触电等事故。
3. 如果遇到问题,请及时咨询实验指导人员或相关专家。
五、实验示例以下是一个简单的实验示例,用于演示如何控制LED灯的亮度:实验电路连接:将一个LED灯连接至单片机开发板的一个GPIO口。
程序代码:#include <reg51.h>sbit LED = P1^0;void delay(unsigned int time){unsigned int i,j;for(i=0;i<time;i++)for(j=0;j<120;j++);}void main(){while(1){LED = 1; // 点亮LEDdelay(200); // 延时200msLED = 0; // 熄灭LEDdelay(200); // 延时200ms}}六、实验总结通过本次实验,我们学习了搭建实验环境、编写程序以及进行单片机实验操作的基本步骤和注意事项。
单片机部分实验指导书
目录1、实验一多路开关实验 (3)2、实验二可编程增益放大器实验 (5)3、实验三A/D转换实验 (7)4、实验四D/A转换实验 (11)5、实验五静态显示实验 (13)6、实验六动态扫描显示实验 (15)7、实验七液晶显示实验 (18)8、实验八矩阵式键盘实验 (23)9、实验九开关量输入输出实验 (28)10、实验十24WC02串行E2PROM的读写实验 (30)11、实验十一PCF8563时钟/日历芯片的应用实验 (37)12、实验十二外部程序存储器EPROM的扩展实验 (45)13、实验十三 SRAM外部数据存储器扩展实验 (47)14、实验十四单片机与PC机的RS232串行通信实验 (50)15、实验十五单片机与PC机的MAX485串行通信实验 (52)16、实验十六打印机实验 (54)17、实验十七 USB通信实验 (57)18、实验十八网络控制器实验 (102)实验一多路开关实验一.实验目的1.掌握多路开关与单片机的接口方法。
了解按键识别的编程方法。
2.通过实验了解单片机如何进行多路开关实验。
二.实验内容利用线路板DSC-SCM01提供CPU处理器,利用线路板DCP-SCM02上的发光二级管显示及查询式键盘完成多路开关实验。
当对应的按键按下时,相应的发光二极管亮。
三.实验器材1.主控屏+5V电源2. DCP-SCM01 单片机电路3. DCP-SCM02 键盘及显示电路四.实验原理图五.实验说明该实验通过线路板DCP-SCM01及线路板DCP-SCM02完成,线路板DCP-SCM02上发光二极管的阳极接正5V电源,所以要使某个发光二极管亮,只要使对应的发光二极管的阴极为低电平即可。
六.实验步骤1.利用导线按表格中的对应关系将DCP-SCM01对应的端口与DCP-SCM02对应的端口连接起来即可DCP-SCM02 DCP-SCM01发光二极管显示单元的插座U3 P0查询式键盘区域的插座U4 P1EA脚接+5VD_SWITCH.C3.输入并编辑D_SWITCH.C文件,并且编译生成HEX文件。
单片机实验指导书
单片机实验指导书一、硬件实验系统介绍(一)电路原理实验板的主要组成有STC-89C51,电源开关、复位电路,发光二极管、数码管、键盘、模/数转换电路(ADC0809电路),数/模转换电路(DAC0832电路)、12232F液晶显示电路,温度检测模块、DS1302时钟电路,I2C总线电路(AT24C02电路),串行接口(MAX232电路、MAX485电路),步进电机调速电路等组成。
详细的电路原理图见附件(二)各模块开关控制简表二、单片机实验板使用说明(一)程序下载1、下载软件为STC-ISP V3.X,建议使用V3.5版本。
2、程序下载前,建议将所有器件的开关置于关闭状态,尤其是MAX485的开关S7,必须关闭;RS232的开关S6必须打开。
3、开始下载程序前,关闭实验板的总电源,等待下载软件提示上电后,再打开实验板电源。
(二)程序运行1、将程序涉及到的元件开关打开,原则上关闭与程序无关的元件开关。
2、各元件的电源开关均靠近本元件。
(三)注意事项由于ADC0809采用了最简化设计,使用液晶模块12232F时,须将DAC0832和ADC0809的电源开关打开,选择开关S13,S14拨向ADC0809侧,同时,程序中将P1.1和P1.2清零。
2. LED显示可采用动态扫描或串行74LS164显示,采用一种显示方式时,须将另一种方式的电源关闭,以免发生冲突。
使用动态扫描显示时,拨码开关均拨向下方与地断开,由74LS14(反向驱动)控制位选;使用串行静态显示时,拨码开关拨向上方与地接通。
3.由于P2.5作了DS1302的片选控制,在电机调速模块应使其清零三、Keil软件使用简要说明1、建立工程文件:单击“工程”菜单中的“新工程”命令。
选择路径、输入项目名称,不需要扩展名。
在Select Device for Target窗口中,选择“Atmel”中的“89C**”系列。
2、工程对象选项设定:单击“工程”菜单中的“options for Target属性”命令。
单片机实验指导书
实验一数制转换实验一、实验目的:(1)、熟悉单片机实验系统板、稳压电源及示波器的使用方法。
(2)、培养程序编制及调试的方法。
(3)、输入自己编写的程序(机器码),并通过实验板和示波器观察程序运行结果。
二、实验要求:(1)、给出程序设计流程图。
(2)、设计数制转换实验程序。
(3)、记录单片机实验板晶体振荡器的波形图。
(4)、记录单片机实验板上电复位电路的波形图。
三、实验原理:以下是把16进制数转换为10进制数的参考程序清单及机器码表:测试程序:四、实验仪器:稳压电源一台HB-51教学实验系统一套五、实验步骤:1、HB-51教学实验系统简介:(1)、+5V电源,+12V电源,-12V电源(2)、CPU、程序存储器、数据存储器、晶体振荡器、手动复位、LED发光管、键盘、显示器(LED 数码管)。
(3)、显示器介绍该系统共有6个数码管,分为两组,左边4个为一组,右边2个为一组。
在大部分情况下,左边4个数码管作为地址显示器,右边2个数码管作为内容显示器。
(4)、键盘介绍0~F 为数字键,用来输入0~F的数字,并且系统默认十六进制输入MEM 为程序存储器内容检查/修改键REG 为寄存器/内部RAM内容检查/修改键LAST 用来向上跳一个地址单元NEXT 用来向下跳一个地址单元EXEC 为连续执行键SCAL 为单步调用键STEP 为单步执行键MON 为返回系统监控状态,相当于让系统回到刚刚上电时的状态。
也是其他功能键的前导按键2、HB-51教学实验系统与稳压电源的连接。
实验系统上的+5V电源与稳压电源正确相连,接好以后,给稳压电源上电。
此时,如果系统工作正常,会在显示器上显示“HB--51”。
如果显示内容不是“HB--51”,则说明系统上电复位过程不正常。
此时按一下红色的手动复位按钮,系统就应当正常工作了。
如果系统还是有问题,甚至,显示器什么都不显示,处于黑屏状态,则立刻关掉稳压电源,然后请实验室老师来解决问题。
单片机实验指导书
单片机实验指导书第一章实验概述本实验指导书旨在帮助学生掌握单片机基本原理和应用技巧。
通过实验的学习,学生将了解单片机的内部结构,学习单片机的编程方法,并能够用单片机实现简单的控制功能。
第二章实验准备2.1 实验器材准备本实验需要准备以下器材:- 单片机开发板- USB线- 电脑2.2 软件安装在开始实验之前,需要安装以下软件:- Keil C51开发环境- STC单片机系列驱动程序第三章实验步骤3.1 硬件连接将单片机开发板通过USB线连接到电脑上,并确保连接正常。
3.2 软件设置打开Keil C51开发环境,点击菜单栏中的“文件”选项,选择“新建”创建新的工程。
设置工程的名称和保存位置,确定后点击“保存”。
3.3 编写程序在Keil C51开发环境中,编写单片机程序。
首先需要包含相应的头文件,然后编写具体的程序逻辑,实现所需的功能。
3.4 编译和烧录程序在编写完程序后,点击菜单栏中的“编译”选项进行编译。
编译成功后,点击菜单栏中的“下载”选项将程序烧录到单片机开发板中。
3.5 实验验证将程序烧录完毕后,将开发板与外部模块连接,观察实验现象是否符合预期。
第四章实验注意事项4.1 安全注意事项在实验过程中,要注意使用安全电压和电流,避免短路和电击风险。
4.2 实验环境实验需要在安静、整洁的环境中进行,以避免干扰和误操作。
4.3 调试和故障排除如果遇到实验效果不理想或者出现故障的情况,可以参考开发板的说明书进行故障排查和调试。
第五章实验总结通过本次实验,我深入了解了单片机的基本原理和应用技巧。
通过编写程序并实际观察实验现象,我成功掌握了单片机编程的方法和技巧,并能够用单片机实现简单的控制功能。
本次实验还让我意识到了实验中的安全注意事项和环境要求的重要性。
在实验过程中,我严格遵守了安全规定,并在安静整洁的环境中进行操作,确保实验顺利进行。
通过反复实践和调试,我不断提高了自己的实验技巧和问题排查能力。
在遇到故障时,我能够通过检查并参考说明书,准确地找到并解决问题。
单片机实验实验指导书
目录实验一P1口输入、输出实验 (1)实验二P3口输出控制继电器实验 (4)实验三简单I/O实验(交通灯控制) (6)实验四外部中断实验(急救车与交通灯实验) (8)实验五定时器实验 (11)实验六8155输入输出实验 (13)实验七矩阵键盘实验 (15)实验八8279显示实验 (17)实验九串并转换实验 (20)实验十A/D转换实验 (22)实验十一步进电机控制实验 (24)实验十二D/A转换实验 (27)实验十三传送带控制系统综合实验 (29)实验十四机械手控制实验 (32)实验一 P1口输入、输出实验一.实验要求1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
延时时间500ms。
2.P1口做输入口,接八个开关,以74LS273作输出口,编写程序读取开关状态,将状态写入P0口,在发光二极管上显示出来。
二.实验目的1.学习P1口的使用方法。
2.学习延时子程序的编写和使用。
三.实验电路及连接实验1-1电路图如下:图1.1实验1-2中:P1.0-P1.7接八个按钮K1-K8,P0.0-P0.7接八个发光二极管L1-L8。
四.实验说明1.P1口是准双向口,它作为输出口时与一般的双向口使用方法相同,由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止,因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响,若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
2.延时子程序的延时计算问题对延时子程序DELAY: MOV R0,#00HDELAY1: MOV R1,#0B3HDJNZ R1,$DJNZ R0,DELAY1查指令表可知MOV,DJNZ指令均需要两个机器周期,而一个机器周期时间长度为12/12MHZ(假设晶振频率是12MHZ),所以该段程序执行时间为:((0B3+1)*256+1)*2*12/12000000=100ms五.实验程序流程图实验要求1的程序框图:实验要求2的程序框图:图1.2 图1.3六、调试方法第一步:打开位于d:\单片机实验\实验一\1_1.uv2,进行实验1_1打开位于d:\单片机实验\实验一\1_2.uv2,进行实验1_2第二步:在资源管理器中如打开.src文件,在程序窗口中输入已编好的程序,保存。
单片机实验指导书
实验一系统认识与程序调试方法一、实验目的1.掌握实验系统的使用方法。
2.掌握集成调试软件的操作与程序调试方法。
3.熟悉单片机指令系统,掌握在单片机开发系统上调试和执行程序的过程。
二、实验原理Lab6000通用微控制器实验系统由板上仿真器、实验单元、开关电源等构成。
接上EX51B仿真板,可进行MCS-51系列单片机的实验。
实验系统通过串行通讯电缆将实验系统上的“仿真器串口”与计算机的串行通讯端口联接,在计算机上运行WAVE 集成调试软件,即可完成实验程序的编写、编译、装载、调试。
WAVE 集成调试软件具有与一般办公和工程软件相似的编辑功能和命令菜单。
可在软件上完成程序的输入、编辑、编译、调试等工作,实现对实验系统的控制。
并可通过相关窗口观察程序运行过程中,单片机各个数据存储单元的变化情况。
三、实验仪器、材料1. Lab6000通用微控制器实验系统。
2.计算机,WAVE 集成调试软件。
四、实验步骤1.按要求进行实验系统的联接与启动。
用配套的串行通讯电缆联接实验系统上的“仿真器串口”和计算机串行口。
将实验系统的电源线与220V 电源相连(实验结束后应拔下)。
打开实验系统电源开关,红色电源指示灯亮。
仿真器初始化成功后,数码管会显示8051,表示仿真系统正常。
2.执行WAVE 集成调试软件。
进入开发环境界面(见上图)后,在“仿真器”下拉菜单,选择“仿真器设置”项。
在弹出的“仿真器设置”窗口中,应作设置如下:•在“语言”标签窗口下,“编译器路径”为“C:\COMP86\”;“ASM命令行”勾选“使用伟福预定义符号”项;“编译器选择”点选“伟福汇编器”项;“缺省显示格式”点选“混合十、十六进制”项。
•在“目标文件”标签窗口下,勾选:“缺省地址(由编译结果确定)”;“生成HEX文件”;“置未用程序存储器为00H”。
•在“仿真器”标签窗口:选择仿真器:Lab6000 通用微控制器实验系统;选择仿真头:MCS51 实验;选择CPU:8031/32;去掉“使用伟福软件模拟器”选项。
单片机实验指导书
目录第一章开发流程、硬件设定一、软件开发流程--------------------------------------------------------2二、硬件接口及开关设置-----------------------------------------------3三、系统地址分配--------------------------------------------------------4 第二章软件实验实验一数据区传送子程序--------------------------------------------5 实验二数据排序实验-------------------------------------------------6实验三查找相同数个数----------------------------------------------7实验四脉冲计数(定时/计数器实验)--------------------------8第三章硬件实验实验一P1口亮灯实验--------------------------------------------------11实验二 P3口输入,P1口输出-----------------------------------------12实验三8255 PA口控制PB口---------------------------------------13实验四8255控制交通灯-----------------------------------------------14 实验五简单I/O口扩展------------------------------------------------17实验六A/D转换实验----------------------------------------------------18 实验七D/A转换----------------------------------------------------------21 实验八8279键盘显示实验--------------------------------------------23 第四章综合性设计实验实验一步进电机控制---------------------------------------------------27实验二128*64 LCD液晶显示----------------------------------------34第一章开发流程、硬件设定一、软件开发流程对于刚刚使用keil 的用户来讲,一般按照以下流程来完成开发任务。
单片机试验指导书
第一章初级软件实验部分实验一二进制转换成十进制实验一、实验设备1.THGQC-1型嵌入式单片机实验开发系统-套。
2.PC机一台。
注:其它实验与此相同,此项以后不再重述。
二、实验目的掌握汇编语言设计和实验步骤,熟悉在KEIL环境下观察内部RAM 的方法。
三、实验内容单片机中的数值有各种表达方式,这是单片机的基础。
掌握各种数制之间的转换是一种基本功。
本实验内容是将一个给定的一字节二进制数,通过编程将其转换成十进制码。
四、实验步骤1)启动PC机,打开KEIL软件,软件设置为模拟调试状态。
在所建的Project文件中添加TOBCD.ASM文件,打开TOBCD.ASM文件,阅读、分析、理解程序,编译程序进行调试。
(如何建立工程请看附录说明)2)打开RAM观察窗口,根据示例程序注释设置断点,运行程序。
程序具体功能是将累加器A的值拆为三个BCD码,并存入RESULT开始的三个单元,例程A赋值#0ffh。
打开MEMORY WINDOW数据窗口,(在MEMORY#1中输入D:30H)观察RAM地址30H、31H、32H的数据变化,30H更新为02,31H更新为05,32H更新为05。
3)修改源程序中给累加器A的赋值,重复实验,观察实验效果。
4)打开CPU寄存器窗口,选择单步或跟踪执行方式运行程序,观察各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。
五、实验程序参考框图六、实验参考程序RESULT EQU 30HORG 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 ;余数为个位数RETEND实验二无符号数十进制加法实验一、实验目的掌握无符号数、十进制加法,熟悉在KEIL环境下观察内部RAM 的方法。
单片机实验指导书
前言 (3)实验一熟悉µ’nSP™ IDE环境下的汇编程序的编写 (4)【实验目的】 (4)【实验设备】 (4)【实验步骤】 (4)【程序流程图】 (5)【程序范例】 (5)【程序练习】 (5)实验二熟悉µ’nSP™ IDE环境下的C语言的编写 (6)【实验目的】 (6)【实验设备】 (6)【实验步骤】 (6)【程序范例】 (6)【程序练习】 (6)实验三使用汇编语言实现A口的输出实验 (7)【实验目的】 (7)【实验设备】 (7)【实验原理】 (7)【实验步骤】 (7)【硬件连接图】 (7)【程序练习】 (8)实验四 FIQ中断实验 (9)【实验目的】 (9)【实验设备】 (9)【实验原理】 (9)【实验步骤】 (9)【程序流程图】 (9)【程序练习】 (10)实验五 A/D转换 (11)【实验目的】 (11)【实验设备】 (11)【实验原理】 (11)【实验步骤】 (11)【硬件连接图】 (12)【程序流程图】 (12)【程序练习】 (13)实验六双通道D/A (14)【实验目的】 (14)【实验设备】 (14)【实验原理】 (14)【实验步骤】 (14)【程序流程图】 (15)【程序练习】 (15)实验七一路输入的录音 (16)【实验目的】 (16)【实验设备】 (16)【实验原理】 (16)【实验步骤】 (16)【程序练习】 (16)实验八 32K Flash 读/写 (17)【实验目的】 (19)【实验设备】 (19)【实验原理】 (19)【硬件连接图】 (19)【实验步骤】 (19)【程序练习】 (20)实验九 0.5S定时刷新数码管显示 (21)【实验目的】 (21)【实验设备】 (21)【实验原理】 (21)【硬件连接图】 (22)【实验步骤】 (22)【程序练习】 (23)前言本教材是结合《µ’nSP™系列SPCE061A单片机基础与应用技术》一书而设计实验,与课堂教学内容结合紧密。
单片机实验指导书
实验一、输入输出接口编程一、实验目的1、掌握Keil软件的基本使用。
2、掌握单片机汇编语言基本编程。
二、实验内容1、学习用Keil软件进行51单片机的软件开发;学习Keil软件的一般操作,步骤为:项目建立、程序录入、添加文件、编译生成HEX文件、仿真调试。
(见参考程序一)2、霓虹灯控制程序设计用P1口控制8个LED,按P3口输入信号的不同模式选择4种16次循环点亮方式,用软件延时实现1秒的扫描周期。
将生成的HEX文件下载到实验板上验证。
(见参考程序二)三、实验原理1、Keil软件使用练习设(R0)=20H,(R1)=25H,(20H)=80H,(21H)=90H,(22H)=0A0H,(25H)=0A0H,(26H)=6FH,(27H)=76H,执行程序后,问程序完成什么功能,写出运行结果。
(见参考程序一)2、霓虹灯控制程序设计电路原理图如下,所需元件为:AT89C51、SW-SPST、LED-RED图中用单片机的P1口作输出口接8个LED ,8个LED 按共阳极连接,端口逻辑值为0点亮LED ;P3口作输入口接2个SW-SPST 开关,P3口内含上拉电阻,当开关打开时逻辑值为1,开关闭合时逻辑值为0。
本实验中要实现循环输出,最常用的方法是循环计数实现循环次数控制,对计数器值进行查表转换得出输出值,输出到P1口进行显示,灯亮表示输出为“0”,灯灭表示输出为“1”。
本实验中的延时,用软件延时方法产生,延时时间=程序总机器周期数*循环次数*机器周期。
输出表格确定发光模式,实验中定义表格如下:TAB1:DB 01H,02H,04H,08H,10H,20H,40H,80H (SW3,SW4为:00) TAB2:DB 03H,06H,0CH,18H,30H,60H,0CH,81H (SW3,SW4为:01) TAB3:DB 80H,40H,20H,10H,08H,04H,02H,01H (SW3,SW4为:10) TAB4: DB 用户自己定义(SW3,SW4为:11)输入信号使用P3口的2个位,如P3.2和P3.3,可以确定4种模式。
单片机实验指导书
单片机实验指导书张春宁编白城师范学院机械电子工程系实验一实验板使用,简单程序设计一、实验目的1. 熟悉单片机实验版、Keil C51软件使用2. 学习简单程序的调试方法3. 掌握存储器读写方法二、实验说明本实验指定某块存储器的起始地址和长度,要求能将其内容置1。
通过该实验学生可以了解单片机读写存储器的方法,同时也可以了解单片机编程、调试方法。
三、实验内容及步骤1.安装好仿真器,用串行数据通信线连接计算机与仿真器,把仿真头插到模块的单片机插座中,打开模块电源,插上仿真器电源插头(USB线)。
2.启动PC机,打开KEIL软件,软件设置为模拟调试状态。
在所建的项目文件中输入源程序,进行编译,编译无误后,执行程序,点击全速执行快捷按钮,点击暂停按钮,观察存储块数据变化情况,点击复位按钮,可再次运行程序。
(KEIL软件使用详见附录)3.打开CPU窗口,选择单步或跟踪执行方式运行程序,观察CPU窗口各寄存器的变化,可以看到程序执行的过程,加深对实验的了解。
四、流程图及参考程序1.参考程序ORG 0000HSTART EQU 30HMOV R0, #START ;起始地址MOV R2, #10 ;设置10字节计数值mov a,#01hLoop:MOV @R0,AINC R0DJNZ R2,LoopNOPEND2.流程图五、思考题如何将存储器块的内容移动到另一位置。
实验二汇编语言程序设计一、实验目的1.进一步熟悉汇编语言编程和程序调试2.学习P1口的使用方法3.学习延时子程序的编写和使用二、实验说明P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。
三、实验内容及步骤实验(一):本实验需要用到单片机最小应用系统(F1区)和十六位逻辑电平显示模块(I4区)。
用P1口做输出口,接十六位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
单片机实验指导书
目录1、keil μVision2基本操作实验2、汇编程序设计实验3、在线编程脱机运行实验4、定时/计数器的应用实验5、中断应用实验6、I2C系统总线实验(E2PROM24C02 )7、串行AD转换实验(ADC0832)8、C51 简单程序设计实验9、C51综合程序设计实验附录 S51E单片机用户板介绍实验一 KeilμVision2基本操作实验一、实验目的1、熟悉KeilμVision2 集成开发环境2、初步掌握KeilμVision2的使用方法二、KeilμVision2使用方法介绍1、KeilμVision2启动从桌面上直接双击KeilμVision2的图标来启动软件。
KeilμVision2启动后,在程序窗口的左边有一个工程管理窗口,该窗口有3个标签,分别是Files、Regs和Books,这三个标签分别显示当前项目的文件结构、CPU寄存器和部分特殊功能寄存器的值(只有在调试的时候才出现)和所选CPU的附加说明文件,如果是第一次启动KeilμVision2,这三个标签都是空的。
2、源文件的建立使用菜单“File→New”或点击工具栏的新建文件按钮,即可在项目窗口的右侧打开一个新的文本编辑窗口,在该窗口中输入以下汇编语言源程序,ORG 0000HMOV A,#0FEHMAIN: MOV P1, ARL ALCALL DELAYAJMP MAINDELAY: MOV R7,#255DL: MOV R6,#255DJNZ R6,$DJNZ R7,DLRETEND保存该文件,注意必须加上扩展名(汇编语言源程序一般使用asm或a51为扩展名,假如是C语言源程序,扩展名为*.c),这里假定文件保存为text1.asm,3、新建一个工程在项目开发中,不仅有一个源程序就可以了,还要为这个项目选择CPU,确定编译、汇编、连接的参数,指定调试的方式,有些项目会友多个文件组成,为了管理和使用方便,Keil使用工程(Project)这一概念,将这些参数设置和所需的所有文件都加在一个工程中,只能对工程而不能对单一的源程序进行编译(汇编)和连接等操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录实验一系统认识实验 (2)实验二端口I/O输入输出实验 (14)实验三外部中断实验 (17)实验四定时器实验 (21)实验五串行口通信实验 (25)实验六串行通信的调试实验 (29)实验七数码管静态显示实验 (34)实验八数码管动态显示实验 (39)实验一系统认识实验一、实验目的1.学习Keil C51编译环境的使用;2.学习STC单片机的下载软件STC-ISP的使用;3.掌握51单片机输出端口的使用方法。
二、实验内容任选单片机的一组I/O端口,连接LED发光二极管,编写程序实现8个LED按二进制加1点亮。
三、接线方案单片机P10~P17/C51单片机接L0~L7/LED显示,如下图:图1-1实验线路四、实验原理51单片机有4个8位的并行I/O端口:P0、P1、P2、P3,在不扩展存储器、I/O端口,在不使用定时器、中断、串行口时,4个并行端口,32根口线均可用作输入或输出。
作为输出时,除P0口要加上拉电阻外,其余端口与一般的并行输出接口用法相同,但作为输入端口时,必须先向该端口写“1”。
例如P0接有一个输入设备,从P0口输入数据至累加器A中,程序为:MOV P0, #0FFHMOV A, P0若将P0.0位的数据传送至C中,程序为:SETB P0.0MOV C, P0.0五、实验步骤1、连接串行通信电缆和电源线;2、根据图1-1实验线路进行电路连接;3、将C51单片机核心板上的三个开关分别拨到“独立”、“运行”“单片机”;4、打开实验箱上的电源开关。
5、利用Keil C51创建实验程序,并进行编译生成后缀为.HEX的文件;6、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、观察实验现象,并记录。
若实验现象有误请重复第5、6步。
六、参考程序ORG 0000H ;程序的开始LJMP MAIN ;转入主程序ORG 0200H ;主程序的开始MAIN: MOV P1,#00H ;P1口做准备M1: INC P1 ;P1口连接输出计数,LCALL DELAY ;转入延时子程序LJMP M1 ;循环DELAY: MOV R5,#255 ;延时子程序D1: MOV R6,#255DJNZ R6,$DJNZ R5,D1RETEND ;程序体结束七、思考题1、利用其他I/O口实现LED加1点亮功能;2、利用P1端口实现流水灯(左移或右移)功能;3、实现LED其他点亮功能。
附录:一、Keil C51编程软件使用说明Keil C51编程软件是众多单片机应用开发的优秀软件之一,它集编辑、编译、仿真于一体,支持汇编、C51语言,界面友好,易学易用。
1、启动Keil C51编程软件,出现编辑界面;2、建立一个新工程,单击Project菜单,在弹出的下拉菜单中选中New uVision Project选项。
3、然后选择保存路径,输入工程文件名,点击“保存”;4、弹出单片机选择框,选择对应的单片机型号,并点“OK”;5、完成后,屏幕出现编辑环境;6、点击“File”菜单,在下拉菜单中点击“New”选项;7、在“Text1”中编写实验程序,完成后保存文件,要保存在所建的工程文件夹中。
在“文件名”栏中输入欲使用的文件名,同时必须输入正确的扩展名。
注意:如果使用C语言编写程序,则扩展名为.C;如果用汇编语言编写程序,则扩展名为.ASM;1”上单击右键,弹出如下菜单;9、单击“Add File to Froup ‘Source Group 1”选择实验程序“SY1.ASM”,然后单击“Add”,则项目中多出SY1.ASM子项;10、单击“Project”菜单,在下拉菜单中单击“Options for Target ‘Target 1’”;11、在“Options for Target ‘Target 1’”的选项中选择“Output”选项,并在“Create HEX File”选项前打上“√”,然后点击“OK”;12、单击“Project”菜单,在下拉菜单中单击“Build target”选项,若程序无误,编程成功后,则生成后缀为.HEX的文件,该文件是单片机下载文件。
二、STC-ISP下载软件的使用说明1、打开“STC-ISP”下载软件,界面如下;单片机型号,如:STC89C52RC;COM1、COM2、USB Serial Port(COM3);4、单击“打开程序文件”,找到所见项目文件夹,选中后缀为.HEX 的文件,并单击打开;5、单击“下载/编程”按钮,将.HEX文件下载到单片机的ROM中,注意,在单击“下载/编程”按钮后,需要将单片机进行一次冷启动(即:将实验箱电源关掉,稍等片刻再打开),程序才能下载成功;6、下载成功后,程序则在单片机内运行,观察实验箱上的实验结果。
实验二端口I/O输入输出实验一、实验目的1.掌握51单片机输入/输出端口的使用方法;2.学习蜂鸣器和继电器的控制电路设计3.掌握51单片机I/O使用的编程方法二、实验内容选择单片机的某个I/O端口,连接实验设备上的按键、蜂鸣器、继电器,编写程序实现按键控制继电器和蜂鸣器。
三、接线方案单片机P0.0接继电器控制端;单片机P0.1接蜂鸣器控制端;P2.6接按键1(单脉冲输出端1);P2.7接按键2(单脉冲输出端2)。
(注:连接蜂鸣器电路不要选用P2和P3口,声音偏小、不响)图2-1实验线路图2-2 继电器电路和蜂鸣器电路四、实验步骤1、连接串行通信电缆盒电源线;2、根据图2-1实验线路进行电路连接;3、将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、打开实验箱上的电源开关。
5、利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、观察实验现象,并记录。
若实验现象有误请重复第5、6步。
五、参考程序KEY1 EQU P2.7 ;定义按键1KEY2 EQU P2.6 ;定义按键2SPK EQU P0.1 ;定义蜂鸣器JDQ EQU P0.0 ;定义继电器ORG 0000HLJMP MAINORG 0100HMAIN: JB KEY1,M2M1: SETB JDQ ;按键1按下,继电器吸合LJMP M3M2: CLR JDQ ;按键1松开,继电器断开M3: JB KEY2,M4SETB SPK ;按键2按下,蜂鸣器响LJMP MAINM4: CLR SPK ;按键2松开,蜂鸣器停LJMP MAIN ;循环扫描按键END六、思考题1、利用其他I/O口实现控制功能;2、利用按键作为实现功能,要求:按键1作为蜂鸣器和继电器的启动按钮;按键2作为蜂鸣器和继电器的停止按钮。
蜂鸣器和继电器启动后自动工作,每隔1秒启动一次(延时方式实现)。
3、实现其他创新功能。
实验三外部中断实验一、实验目的1.掌握51单片机外部中断的使用方法。
二、实验内容1.实验电路如图3-1所示,通过用手动逐个向单片机的输入单脉冲,申请中断。
每中断一次,使8051单片机的P2口的数值加1。
2.接线方案P2.0~P2.7/C51单片机接L0~L7/LED显示;INT0/C51单片机接单脉冲。
图3-1 实验线路三、实验原理当单片机的外部中断口(INT0)有电平变化时,单片机程序会进入中断服务程序,执行中断服务功能,对P2口数值进行加1,实现手动对P2口数值控制。
四、参考程序流程图图3-2程序流程图五、实验步骤1、连接串行通信电缆盒电源线;2、根据图3-1实验线路进行电路连接;3、将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、打开实验箱上的电源开关。
5、利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、观察实验现象,并记录。
若实验现象有误请重复第5、6步。
六、参考程序ORG 0000HLJMP MAINORG 0003H ;中断入口LJMP INTORG 0200HMAIN: MOV P2,#00HSETB EA ;首先开启总中断SETB EX0 ;开启外部中断0,即P32引脚SETB IT0 ;设置成下降沿触发方式M1: SJMP $ ;主程序只等待中断INT: INC P2 ;外部中断0 中断响应,将P2口内容加1 LCALL DELAYRETI ;中断结束返回DELAY: M OV R5,#255 ;延时子程序D1: M OV R6,#255DJNZ R6,$DJNZ R5,D1RETEND七、思考题1、利用外部中断1实现本实验的中断功能;2、两个外部中断的同时应用(外部中断0实现LED流水灯;外部中断1实现LED加1功能)。
实验四定时器实验一、实验目的1.掌握51单片机内部定时器的使用方法。
2.学习单片机控制蜂鸣器电路设计方法。
二、实验内容1.实验电路如图4-1所示,用51单片机内部定时器T0定时,控制蜂鸣器发声,使之发声1秒钟,停止1秒钟,重复循环。
2.接线方案P1.0/51单片机接蜂鸣器图4-1 实验线路三、实验原理当P1.0输出高电平时,三极管导通蜂鸣器发声,P1.0输出低电平时,三极管截止,蜂鸣器不发声。
本实验设备的晶振频率为11.0592MHZ,定时方式时,约1us计数器加1,计数初值15536时,经过50ms溢出,溢出20次约1秒钟。
四、参考程序流程图图4-2 程序流程图五、实验步骤1、连接串行通信电缆盒电源线;2、根据图3-1实验线路进行电路连接;3、将C51单片机核心板上的三个开关分别拨到“独立”、”运行”“单片机”;4、打开实验箱上的电源开关。
5、利用Keil C51创建实验程序,并进行编译生产后缀为.HEX的文件;6、利用STC-ISP软件将后缀为.HEX的文件下载到单片机ROM中;7、观察实验现象,并记录。
若实验现象有误请重复第5、6步。
六、参考程序ORG 0000HAJMP MAINORG 000BH ;定时器0中断服务程序DJNZ R0,EXITCPL P1.0 ;中断20次到1S,对P1.0取反MOV R0,#20 ;重置中断次数计数器EXIT: MOV DPTR,#15536 ;重置T0计数初值15536MOV TH0,DPHMOV TL0,DPLRETIMAIN:MOV TMOD,#01H ;设置定时器0,方式1MOV DPTR,#15536 ;送T0计数初值15536MOV TH0,DPHMOV TL0,DPLSETB EA ;开总中断SETB ET0 ;开定时器0SETB P1.0 ;蜂鸣器发生MOV R0,#20SETB TR0SJMP $七、思考题1、利用定时器1实现本实验定时功能,编写程序;2、使用工作方式2实现本实验定时功能,编写程序。