自动化单片机实验指导书
- 格式:doc
- 大小:589.00 KB
- 文档页数:47
单片机实验指导书一、实验介绍单片机是一种集成电路,能够完成各种控制和计算任务。
本实验指导书将引导您进行单片机实验,以帮助您了解单片机的基本原理和应用。
在本实验中,您将学习如何搭建实验环境、编写程序以及进行各种实验操作。
二、实验准备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}}六、实验总结通过本次实验,我们学习了搭建实验环境、编写程序以及进行单片机实验操作的基本步骤和注意事项。
单片机原理及应用实验指导书殷爱华南京理工大学实验一62256 SRAM自检一、实验目的:1.熟悉仿真器的使用。
2.了解教学实验系统的结构和地址译码方式。
3.通过62256自检程序实验,掌握数据存储器检测方法。
二、实验要求1.实验内容与方法编写自检程序,要求通过循环程序逐个单元检测62256芯片。
分别由低地址单元到高地址单元写入55H和AAH,并读出后进行比较,以判断存储器单元是否工作正常,如果检测结果正常,则点亮一个发光二极管,若检测结果不正常,则使该二极管以闪烁的方式进行指示。
62256RAM的寻址范围为0000H ~7FFFH 。
2.要求①按实验内容自编程序,并输入计算机进行仿真调试。
②完成I/O口某一位的输出与发光二极管电路的连接。
③注意实验设备、电源的使用安全。
④调试完毕观察发光二极管的工作情况是否满足设计要求。
⑤提交试验报告。
三、注意事项1. 不带电操作。
2. 不要随便用手触摸电路板及元器件。
3. 接插电路时务必注意元件正负方向,以防止元件被击穿。
四、实验器材与设备:1. PC计算机一台2. 单片机教学实验开发系统一套3. 实验器材若干五、实验原理:六、实验步骤:七、程序功能要求:八、程序流程图:九、实验源程序并附简单说明:十、实验感想及建议实验二8255可编程并行口输入/输出一、实验目的:1.熟悉仿真器的使用。
2.了解教学实验系统的结构和地址译码方式。
3.掌握8255可编程并行I/O扩展口编程。
二、实验要求1.实验内容与方法编写8255并行输入输出程序,编写8255按位置位/复位程序。
要求8255工作于基本输入/输出方式,PA口和PC口的高4位为输出口,PB口和PC口的低4位为输入口。
用发光二极管显示工作是否正常。
8255的PA口地址—F228H,PB口地址—F229H,PC口地址—F22AH,控制寄存器地址—F22BH。
2.要求①按实验内容自编程序,并输入计算机进行仿真调试。
②完成8255并行输出口与输入口的对应电路连接。
实验一数制转换实验一、实验目的:(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 认识单片机实验仪一、实训目的:1.了解DJ实验仪的性能和基本构造。
2.学会DJ单片机实验仪的基本操作。
3.完成P1口亮灯试验的操作。
二、预备知识1.仔细阅读单片机DJ单片机实验仪使用手册。
了解试验仪的基本性能。
2.了解DJ试验仪系统的使用方法,学会用户程序的输入方法和运行。
3.P1口为准双向输入/输出口,每一位都可独立地定义为输入或输出线,在作输入口线使用之前,必须向锁存器的相应位写入“1”,该位才能准确输入。
4.实验中延时子程序采用循环指令来实现。
要求操作者对循环程序有比较清楚的理解。
三、实训内容1.在预习的基础上,对照DJ单片机试验仪实物和使用手册,认识实验仪的基本结构。
2.了解实验仪DJ单片机的功能和操作方法。
3.理解实验仪的工作状态及各工作状态的功能。
4.练习用户程序输入、调试和运行的操作。
四、用户程序输入、调试和运行操作练习1.以P1口亮灯试验为例,练习基本操作。
2.亮灯要求:P1口作输出口,接8只发光二极管,编写程序,使8只发光二极管逐一循环发亮。
3.思考题:(1)如何改变延时常数,使发光管的点亮时间改变?(2)如何修改程序,使发光管闪亮的数量和移位方向改变?附程序清单:ORG 0000HLJMP SE18ORG 0790HSE18: MOV P1,#0FFHLO34: MOV A,#0FEHLO33: MOV P1,ALCALL SE19RL ASJMP LO33ORG 07A0HSE19: MOV R6,#0A0HLO36: MOV R7,#0FFHLO35: DJNZ R7,LO35DJNZ R6,LO36RETEND实训项目2 数据排序实验一、实训目的:1.学会“寄存器读写状态”的操作方法。
2.熟悉MCS-51单片机的指令系统,掌握程序设计方法。
3.完成数据排序试验的操作。
二、预备知识:1.仔细阅读DJ单片机实验仪的使用手册,熟悉“寄存器读写状态”的功能和操作方法。
《单片机原理》实验指导书徐迎曦张松灿河南科技大学电子信息工程学院自动化系2007年4月前言......................................................1 试验一 清零程序.........................................2 试验二 拆字程序..........................................4 试验三 拼字程序..........................................6 试验四 数据区传送子程序..................................8 试验五 数据排序程序.....................................10 实验六 8031单片机P3、Pl口应用.........................12 实验七 工业顺序控制器...................................14 实验八 并行接口芯片8255应用............................18 实验九 8279 键 盘、显 示 实 验...........................22 附录 DVCC实验装置及实验系统说明..........................27《单片机原理及应用》课程不仅是自动化专业的专业课,还是计算机应用等非电专业的选修课。
由于单片机具有良好的控制性能和灵活的嵌入品质,单片机在各种领域都得到了极为广泛的使用,这也使我们必须学好这门课程。
《单片机原理及应用》课程的主要内容包括单片机的结构、时序、指令系统与程序设计、中断系统、定时器/计数器、存储器扩展、接口技术(包括用户界面技术、串行通信技术、A/D及D/A转换接口技术)、开发系统的组成和功能等。
在学习本课程的过程中,只有通过上机做实验,能够更好地激发学生的学习兴趣,才能使学生真正掌握单片机原理、工作方式。
单片机实训指导书一、实训目的单片机实训是一门重要的实践课程,旨在通过实际操作和项目实践,让学生深入了解单片机的工作原理、编程方法和应用开发。
通过本次实训,学生将能够掌握单片机系统的设计、调试和维护技能,提高解决实际问题的能力,为今后从事相关领域的工作打下坚实的基础。
二、实训设备1、计算机:用于编写和调试单片机程序。
2、单片机开发板:包含单片机芯片、外围电路和接口,如STC89C52 开发板。
3、编程器:用于将编写好的程序下载到单片机中。
4、示波器:用于观察电路中的信号波形。
5、万用表:用于测量电路中的电压、电流等参数。
三、实训要求1、学生应提前预习相关的理论知识,熟悉单片机的基本结构和编程方法。
2、实训过程中,要严格遵守实验室的规章制度,注意安全,爱护实验设备。
3、认真完成每个实训项目,按时提交实训报告。
4、培养团队合作精神,积极参与小组讨论和项目开发。
四、实训内容(一)单片机基础知识1、了解单片机的发展历程、应用领域和特点。
2、熟悉单片机的内部结构,包括中央处理器(CPU)、存储器(ROM、RAM)、输入输出端口(I/O 口)、定时器/计数器、中断系统等。
3、掌握单片机的指令系统和编程方法,能够使用汇编语言或 C 语言进行简单的程序编写。
(二)单片机开发环境搭建1、安装单片机编程软件,如 Keil C51。
2、学习编程软件的使用方法,包括创建工程、编写代码、编译调试等。
3、安装并使用下载软件,将编写好的程序下载到单片机开发板中。
(三)单片机 I/O 口控制实验1、学习单片机 I/O 口的工作原理和控制方法。
2、编写程序实现对单个 I/O 口的输出控制,如点亮 LED 灯。
3、实现对多个 I/O 口的组合控制,如流水灯效果。
(四)定时器/计数器实验1、了解单片机定时器/计数器的工作原理和计数模式。
2、利用定时器/计数器实现定时功能,如控制LED 灯闪烁的频率。
3、实现计数器功能,如对外部脉冲进行计数。
目录实验一P1口输入、输出实验 (2)实验二继电器控制实验 (8)实验三音频控制实验 (11)实验四程序调试 (14)实验五5LED静态串行显示实验 (16)实验六6LED动态扫描显示实验 (21)实验七查询式键盘实验 (28)实验八阵列式键盘实验 (36)实验九计数器实验 (47)实验十定时器实验 (49)实验十一外部中断实验 (54)实验一P1口输入、输出实验一、实验目的1、学习P1口的使用方法2、学习延时子程序的编写和使用二、实验说明P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口用作输入口时,必须先对口的锁存器写“1”,若不先对它写“1”,读入的数据是不正确的。
三、实验内容及步骤实验(一):用P1口做输出口,接八位逻辑电平显示,程序功能使发光二极管从右到左轮流循环点亮。
1、使用单片机最小应用系统1模块。
关闭该模块电源,用扁平数据线连接单片机P1口与八位逻辑电平显示模块。
2、用串行数据通信线连接计算机与仿真器,把仿真器插到模块的锁紧插座中,请注意仿真器的方向:缺口朝上。
3、打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加P1_A.ASM源程序,进行编译,直到编译无误。
4、进行软件设置,选择硬件仿真,选择串行口,设置波特率为38400。
5、打开模块电源和总电源,点击开始调试按钮,点击RUN按钮运行程序,观察发光二极管显示情况。
发光二极管单只从右到左轮流循环点亮。
实验(二):用P1.0、P1.1作输入接两个拨断开关,P1.2、P1.3作输出接两个发光二极管。
程序读取开关状态,并在发光二极管上显示出来。
1、用导线分别连接P1.0、P1.1到两个拨断开关,P1.2、P1.3到两个发光二极管。
2、添加 P1_B.ASM源程序,编译无误后,运行程序,拨动拨断开关,观察发光二极管的亮灭情况。
向上拨为熄灭,向下拨为点亮。
四、流程图及源程序1.流程图2.源程序:(一)实验一ORG 0000HLJMP STARTORG 0030HSTART: MOV A, #0FEHMOV R2,#8OUTPUT: MOV P1,ARL AACALL DELAYDJNZ R2,OUTPUTLJMP STARTDELAY: MOV R6,#0MOV R7,#0DELAYLOOP:;延时程序DJNZ R6,DELAYLOOPDJNZ R7,DELAYLOOPRETEND(二)实验二KEYLEFT BIT P1.0 ;定义KEYRIGHT BIT P1.1LEDLEFT BIT P1.2LEDRIGHT BIT P1.3ORG 0000HLJMP STARTORG 0030HSTART: SETB KEYLEFT ;欲读先置一SETB KEYRIGHTLOOP: MOV C,KEYLEFTMOV LEDLEFT,CMOV C,KEYRIGHTMOV LEDRIGHT,CLJMP LOOPEND五、思考题(1)对于本实验延时子程序Delay: MOV R6,0MOV R7, 0DelayLoop:DJNZ R6,DelayLoopDJNZ R7,DelayLoopRET如使用12MHz晶振,粗略计算此程序的执行时间为多少?六、电路图实验二继电器控制实验一、实验目的1、学习I/O端口的使用方法2、掌握继电器的控制的基本方法3、了解用弱电控制强电的方法二、实验说明现代自动控制设备中,都存在一个电子电路的互相连接问题,一方面要使电子电路的控制信号能控制电气电路的执行元件(电动机,电磁铁,电灯等),另一方面又要为电子线路和电气电路提供良好的电气隔离,以保护电子电路和人身的安全。
《单片机应用技术》实验指导书向玲编写华北电力大学机械工程系机械电子工程教研室2010年 10月目录实验说明 (1)实验一单片机基本操作实验学时:2 (2)实验二单片机程序设计实验学时:2 (3)实验三 P1口输入输出实验学时:2 (4)实验四信号灯中断定时控制实验学时:2 (6)实验说明单片机实验要求学生熟练掌握51单片机的指令系统,掌握汇编语言的编程方法。
在熟悉MCS-51单片机硬件结构的同时,能掌握单片机的基本输入输出口、定时器/计数器和外部中断技术的使用及编程方法。
其实验内容和学时分配安排如下:实验一单片机基本操作实验(2学时):要求学生熟悉51单片机的指令和熟悉实验系统。
实验二单片机程序设计实验(2学时):进一步熟悉单片机的指令系统;掌握程序设计的方法。
实验三 P1口输入输出实验(2学时):熟悉P1口输入输出的原理和使用;掌握P1口输入输出的编程方法;掌握软件延时子程序的的编程方法。
实验四信号灯中断定时控制实验(综合性实验 2学时):掌握中断的基本使用方法及中断处理程序的编程技巧;掌握定时器的使用方法;结合信号灯用定时器和中断的方法实现循环点亮控制。
实验一单片机基本操作实验学时:2一、实验设备1.D70和D70-1单片机技术实验挂箱或伟福Lab2000P单片机仿真实验系统2.PC机一台二、实验目的1.熟悉51单片机的寻址方式和指令系统。
2.熟悉D70和D70-1单片机实验系统或伟福Lab2000P单片机仿真实验系统。
三、实验内容编写熟悉指令系统的程序。
四、实验步骤1.用串行数据通信线连接好计算机与仿真器。
2.打开仿真软件,建立本实验的源程序,进行编译,直到编译无误。
3.进行仿真软件设置,选择对应的选项。
4.可单步执行程序,观察程序执行过程和结果。
五、填写实验报告书1.要求写出仿真环境的基本使用方法。
2.写出实验源程序和程序执行结果。
实验二单片机程序设计实验学时:2一、实验设备1.D70和D70-1单片机技术实验挂箱或伟福Lab2000P单片机仿真实验系统2.PC机一台二、实验目的1.掌握数据传送程序的设计方法。
目录第一章开发流程、硬件设定一、软件开发流程--------------------------------------------------------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 的用户来讲,一般按照以下流程来完成开发任务。
前言 (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种模式。
北京联合大学实验(实习、实训)报告课程(项目)名称:单片机实验学院:师范学院专业:电子信息工程班级: 2009级(1)班学号: 20090203051姓名:于海兰成绩:2012年 6 月14 日实验一单片机实验系统的学习一、任务与目的熟悉整个系统的功能及系统在WINDOWS环境下的使用方法。
二、原理(条件)认识单片机实验软件系统的操作三、内容与步骤以P3.3口作为开关,控制P1口所接的八个发光二极管做十六进制加1次序点亮或全灭程序为例,对程序进行指定操作,使学生初步了解实验系统的功能及其使用方法。
1.启动系统打开实验箱的电源开关,双击桌面上MCS51的图标,出现提示“请按实验箱上的复位键”时,按下复位键即可进入如图2-2:图2-22.新建文件或打开已有的文件使用文件菜单中的打开命令,将出现一个对话框,在文件类型的对话框中选择汇编语言源程序文件,然后在文件名的对话框中选择D盘的参考程序中的实验一即可,如图2-3图2-33.编译连接源程序使用编译菜单中的汇编(shift+F3)命令对源程序进行汇编连接,查看程序是否有错,若有错,一定要更改到没有错为止才能联机调试程序,如图2-4。
图2-44.调试程序使用调试菜单中的调试(F5)命令如图2-5,对程序进行调试。
图2-5调试菜单中又包括许多和调试有关的命令,阅读以下命令行的功能,并在所调试的程序中操作,以加深对它们的理解。
(1)程序复位(ctrl+F2):当所调试的程序出现问题时,需要使用此项。
(2)单步执行(F8):指一步一步的执行所调试的程序,不跟踪子程序。
(3)跟踪调试(F7):跟踪执行程序,跟踪子程序。
(4)运行(F9):全速运行程序,程序将从当前PC处开始往下执行,遇到断点,返回监控。
无断点时,程序将失去控制。
(5)执行到光标行(F4):从当前PC处开始运行到当前光标行,忽略程序中的所有断点。
如果不能执行到光标行,程序将失去控制。
注意:光标不能放在跳转目标语句之前的三字节代码内,否则,将不能正常返回监控。
实验1(流水灯)//串行口工作在方式0下,利用4094串入并出移位寄存器// 显示流水灯效果ORG 0000H;程序从0000开始运行LJMP MAIN;跳到主程序ORG 064HMAIN:;主程序循环点亮MOV SCON, #00HCLR P3.2MOV A,#0FEHMOV SBUF,AMOV P0, ALCALL DELAYLIGHT://SETB P3.2ACALL DELAYRL ACLR P3.2MOV SBUF,AMOV P0, ASJMP LIGHTDELAY:MOV R5,#20;延时子程序1闪烁灯调用D1: MOV R6,#20D2: MOV R7,#250DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND实验1ORG 0000HJMP MAINMAIN:MOV P0,#00HLCALL DELAYMOV A,#0FEHLOOP:MOV P0,ALCALL DELAYRL AAJMP LOOPDELAY:MOV R5,#20D1: MOV R6,#20D2: MOV R7,#250DJNZ R7,$DJNZ R6,D2DJNZ R5,D1RETEND实验2;****************************************************************************** **; 跑马灯试验: 定时器T1方式1控制*;*; 开机8个灯循环点亮。
*; 硬件连接:p0口8路指示灯,*; 连接方法:JP11(P2)和JP1(LED灯) 用8PIN排线连接起来*;****************************************************************************** **/*T1,方式1,晶振12MHZ,控制P1.0端口第1秒变换电平1次TC=65530-50000=15530=3CB0H*/ORG 0000H;程序从0000开始运行JMP MAIN;跳到主程序ORG 001BH ;定时1中断入口地址LJMP INTRUPT1ORG 0100HMAIN:;主程序循环点亮MOV P0, #00H;全亮MOV R5, #00H;R5用于中断计数每20次中断为1秒MOV A, #0FEH;每次只亮一个灯。
《单片机与接口技术》实验指导书广东技术师范学院自动化学院目录实验一:了解Keil、MedWin软件与单片机实验板 (3)实验二:(实验板性能测试)I/O端口实验 (5)实验三:数制转换程序设计 (8)实验四:查表散转实验 (14)实验五:外中断实验 (18)实验六:定时/计数实验 (20)实验七:数码显示实验 (23)实验八:A/D转换实验 (28)实验九:可编程接口芯片82C55 (32)附录1:学习使用MedWin集成开发环境及数据传送 (36)附录2:软件延时程序设计 (38)附录3:定时/计数的中断响应实验 (40)附录4:串行通讯实验 (42)附录5:综合实验(汽车方向灯应用实例) (46)实验一:了解Keil、MedWin软件与单片机实验板一、实验目的与要求了解Keil、MedWin二种软件各自特点,掌握它们的基本使用方法。
了解单片机实验板,结合实验板原理图认识板上基本器件,增加感性认识,为学习和掌握单片机内容打下基础。
二、实验类型验证三、实验原理及说明1. MedWin 是万利电子有限公司Insight® 系列仿真开发系统的高性能集成开发环境。
集编辑、编译/ 汇编、在线及模拟调试为一体,VC 风格的用户界面,内嵌自主版权的宏汇编器和连接器,并完全支持Franklin/Keil C 扩展OMF 格式文件,支持所有变量类型及表达式,配合Insight® 系列仿真器,是开发80C51 系列单片机的开发工具。
具体使用方法可参见提供的MedWin使用指导手册。
2. Keil Software 的8051开发工具提供以下功能,可以用来编译C源码汇编、汇编源程序连接和重定位目标文件和库文件,创建HEX文件调试目标程序。
Windows应用程序Keil uVision2是一个集成开发环境它把项目管理源代码编辑程序调试等集成到一个功能强大的环境中。
功能如下:1)C51标准优化C交叉编译器从C源代码产生可重定位的目标文件。
2)A51宏汇编器从8051汇编源代码产生可重定位的目标文件。
3)BL51连接/重定位器组合由C51和A51产生的可重定位的目标文件生成绝对目标文件。
4)LIB51库管理器组合目标文件生成可以被连接器使用的库文件。
5)OH51目标文件到HEX格式的转换器从绝对目标文件创建Intel HEX 格式的文件。
深入学习Keil uVision2所用资料可参见提供的keil uvision2_入门教程、Keil C51使用详解。
3. 单片机实验板内容,可参见提供的有关资料:实验板说明与电原理图。
四、实验主要仪器设备和材料五、实验内容和步骤1.结合实验板的原理图介绍实验板器件。
1.了解二个软件基本内容,掌握基本使用方法,运行一段程序。
2.应用Keil软件,进行单片机实验板调试。
参考程序流水灯实验:org 0000hajmp mainorg 0050hmain: mov a,#0fehloop: mov p1,alcall delayrl aajmp loopdelay: mov r7,#0ffhdelay1: mov r6,#0f5hde: djnz r6,dedjnz r7,delay1end六、实验数据处理与分析七、注意事项八、实验报告要求实验报告应按学校所规范格式书写。
含实验报告与预习报告二部分。
九、预习与思考题1.请谈谈你对MedWin与Keil Software二种软件的理解。
2.请谈谈你对单片机这门课程的认识,对这门课程的理论教学与实验安排有何建议?实验二:(实验板性能测试)I/O端口实验一、实验目的与要求1)测试焊接的实验板性能;2) 了解I/O端口的作用;3) 学会通过I/O端口控制外部设备。
4)实验板与仿真器连接,输入参考程序,各指示灯和蜂鸣器能正常工作。
二、实验类型验证三、实验原理及说明任何控制I/O都是最基本的,而且大部分的应用程序也都需要用到I/O,8051共有4个I/O口,分别是P0、P1、P2、P3。
此四个接口都可以做为单独的输入或输出使用,即每一支I/O脚位都可以做输入用,也可以做为输出使用。
当做为输出时,则每一支脚的外部电路可以高平“1”驱动或低电平“0”驱动,如本程序中的I/O通过限流电阻接发光二极管阴极,要使发光二极管发光,8051的I/O口就必须输出低电平。
当P1.0输出为“1”时,则LED熄,当P1.0输出为“0”时,则LED亮。
8051的P3又同时做其它功能端口使用,当用于其它功能时,则不能做为I/O使用,当作为I/O使用,则就无法做为其它功能使用了。
四、实验主要仪器设备和材料五、实验内容和步骤通过I/O控制发光二极管亮或灭、蜂鸣器响或停。
注意SW2跳线器的跳线方式.1)建立一个IOLED.ASM;2)编写录入程序;3)查看发光二极管亮或灭、蜂鸣器响或停的实际效果。
实验参考原理图,如附图3-11所示。
附图3-11 I/O控制端口原理图(需更换图。
新实验板没有器件U11,蜂鸣器由P1.3控制)参考程序:程序:ORG 0000HLJMP MAINORG 0030HMAIN: MOV R0,#0AH ;给R0送0AH(设置LED第一种亮法的次数)MOV R1,#0AH ;给R1送0AH(设置LED第二种亮法的次数)MOV R2,#08H ;给R0送08H(设置LED第三种亮法的次数)MOV R3,#08H ;给R0送0AH(设置LED第四种亮法的次数)LED: MOV P1,#00H ;给P1送低电平,灯全亮,蜂鸣器响LCALL DLAY ;延时LCALL DLAY ;延时MOV P1,#0FFH ;给P1送低电平,使发光二极管全灭,蜂鸣器停(P1.3为“1”).LCALL DLAYLCALL DLAYDJNZ R0,LED ;重复10次,开始第二种亮法LED1: MOV P1,#AAH ;给P1送0AAH,LED的D4、D6、D8、D10灯亮。
LCALL DLAYLCALL DLAYMOV P1,#055H ;给P1送055H,LED的D5、D7、D9、D11灯亮。
;蜂鸣器响LCALL DLAYLCALL DLAYDJNZ R1,LED1 ;重复10次,开始第三种亮法MOV P1,#0F7H ;灯熄,仅蜂鸣器响LCALL DLAYLCALL DLAYAJMP MAIN;软件延时子程序DLAY: MOV R7,#0FFHDLA0: MOV R6,#0FFHDLA1: DJNZ R6,DLA1DJNZ R7,DLA0RETEND六、实验数据处理与分析七、注意事项认真预习实验内容,搞清实验中的每一个环节,实验结果验收时要能描述实验原理、过程等内容,并能回答提出的相关问题。
实验中的设计提倡创新。
八、实验报告要求实验报告应按学校所规范格式书写。
写出所编的程序,并作注释。
写出实验结果与对本实验的改进意见。
写出思考题答案。
九、预习与思考题1)8051系列单片机的四个并行口的作用是什么?2)P3口除作基本I/O外,还能作什么使用?实验三:数制转换程序设计一、实验目的与要求1)理解计算机中二进制码、BCD码、ASCII码制的使用;2)学会通过程序处理二进制码、BCD码、ASCII码制之间的转换。
二、实验类型设计三、实验原理及说明1)在计算机内部,任何数据都以二进制形式出现。
当计算机使用标准编码键盘和标准CRT显示器时使用的都是ASCII码;LED显示用的是八段字型码;由于人们习惯使用十进制数,所以在计算机的输入输出中,还常采用BCD码。
2)BCD码与二进制数之间的转换:●(X2X1X0)BCD= X2*100+ X1*10+ X0●(X3X2X1X0)BCD=(X3*10+X2)*100+(X1*10+X0)将X3*10+X2编制成子程序,通过调用子程序再乘100,即可完成编程工作。
3)二进制与BCD码之间的转换:●原数=(a7a6a5…a1a0)2算法:百位数=原数除100;十位数=余数除10;个位数=新的余数。
●(a15a14a13…a1a0)2=((…((0*2+a15)+a14…a1)*2+a0,所以将二进制数从最高位逐次左移入BCD码的最低位,并且每次都实现(…)*2+ai的运算,共循环16次。
同理,若是32位二进制数,则应循环32次。
四、实验主要仪器设备和材料五、实验内容和步骤实验内容:1)将存于21H、20H单元的压缩BCD码(X2X1X0)转换成二进制数,结果存于22H。
BCD 码数小于255。
2)将存于20H单元的二进制数转换成BCD码,结果以压缩形式存于22H、21H。
3)把内部RAM 30H~3FH共 16个单元中的ASCII码依次转换为十六进制数,并拼装压缩存入内部40H~47H共8个单元中。
实验步骤:1)-3)中:①建立码制转换程序;② 编写录入程序;③ 调试、验证结果。
实验参考:1)单字节BCD转换为二进制码方法:例:入口:BCD码存于R2(十位,个位)中。
出口:转换成的二进制数存于R2中。
BCDBIN1: MOV A,R2 ;取BCD码送AANL A,#0F0H ;保留高位SWAP A ;高四位移至低四位MOV B,#0AH ;高位BCD乘以10MUL ABMOV R3,AMOV A,R2ANL A,#0FH ;保留低位ADD A,R3 ;高位BCD乘以10+低位MOV R2,A ;转换结果送R2ENDBCD码数(X2X1X0)小于255转换成二进制方法:X2*100+X1*10+X02)单字节二进制数转换成BCD码的方法。
例:将累加器A中无符号二进制整数(00~FFH) 转换为3位压缩BCD码(0~255) ,并存入内存30H和31H单元。
BINBCD:MOV B,#100DIV AB ;A÷100 百位数在A,余数在BMOV 30H,A ;百位数送30HMOV A,BMOV B,#0AHDIV AB ;余数÷10 ,十位数在A低4位,;个位数在BSW AP A ;十位数放A的高4位ADD A,B ;十位数和个位数组合后送31HMOV 31H,AEND3)ASCII码依次转换为十六进制数的方法:例:把外部RAM 30H~3FH共16个单元中的ASCII码依次转换为十六进制数,并拼装压缩存入内部60H~67H共8个单元中。
ASCTOH:MOV R0,#30H ;设ASCII码地扯指针MOV R1,#60H ;设十六进制数地址指针MOV R7,#08H ;拼装的十六进制数字节个数。
AB:ACALL TRAN ;调用转换子程序。
SWAP AMOVX @R1,AINC R0ACALL TRAN ;调用转换子程序。
XCHD A,@R1INC R0INC R1DJNZ R7,ABHALT:SJMP HALTTRAN:CLR C ;ASCII码数转换为十六进制数子程序MOVX A,@R0SUBB A,#30HCJNE A,#0AH,BBAJMP BCBB:JC DONEBC:SUBB A,#07H ;≥0AH,则再减07HDONE:END六、实验数据处理与分析七、注意事项认真预习实验内容,搞清实验中的每一个环节,实验结果验收时要能描述实验原理、过程等内容,并能回答提出的相关问题。