单片机实验二、MCS-51单片机并行端口实验
- 格式:doc
- 大小:37.00 KB
- 文档页数:2
目录实验一系统认识实验 (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其他点亮功能。
51单片机实验-实验二P1口输入、输出实验实验二 P1口输入、输出实验一、实验目的学习Pl口的使用方法。
学习延时子程序的编写和使用。
进一步熟悉星研Star16L仿真器系统的操作,和EL-Ⅱ型通用接口板实验电路结构,学习使用PROTEUS仿真软件实现单片机的虚拟仿真。
掌握虚拟仿真与实际系统仿真的有机衔接。
二、实验仪器和设备PC机、星研Star16L仿真器系统+仿真头PODPH51(DIP)、EL-Ⅱ型通用接口板实验电路,PROTEUS仿真软件。
三、实验内容1)P1口做输出口,经过74LS04反相器接八只发光二极管,编写程序,使发光二极管循环点亮。
2)(选作)P1口既做输入又做输出,在P1.0~P1.3口接四个平推开关,通过开关的不同位置向P1.0~P1.3输入不同的状态,然后利用输入指令读取所设开关状态,为验证输入结果的正确与否,将它们输出到P1.4~P1.7,经过74LS04反相器驱动发光二极管。
四、实验结果1)循环点亮八只发光二极管。
取P1.0口接出第一个二极管,以此类推,第八个接P1.7口。
Proteus 仿真图①循环左移,即从第一个二极管开始点亮到第八个二极管实验程序:ORG 0000HSTART:MOV R2,#8MOV A,#01H ;先让第一个发光二极管点亮LOOP: MOV P1,A ;从P1口输出到发光二极管LCALL DELAYRL A ;循环左移(从第一个发光二极管开始一直往下一个二极管)DJNZ R2,LOOP ;判断移动是否超过8位,未超过则继续循环LJMP START ;循环发光DELAY:MOV R5,#5 ;延时0.5秒子程序DEL1: MOV R6,#200DEL2: MOV R7,#126DEL3: DJNZ R7,DEL3DJNZ R6,DEL2DJNZ R5,DEL1RETEND仿真结果:发光二极管从D1开始发光,依次往下到D8,然后循环这一过程。
实验结果:发光二极管从第一个开始发光,依次往左到第八个,然后循环这一过程。
MCS51系列单片机双机并行互连的实现方法介绍了在同一系统内,MCS51系列两单片机之间采用单向并行通信接口、主从双向并行通信接口、无主从双向并行通信操作实现双机互连的方法,分析了在每一种通信接口工作方式下数据传送的特点。
在三种并行通信接口为单片机应用系统扩充硬件资源的设计提供了新的途径。
由于MCS51系列单片机具有性能稳定、工作可*、价格低廉等特点,因此其应用相当广泛。
一个MCS51系列的单片机(如Atmel89cxx)内部包含有RAM、FLASH ROM、两个或者三个16位的定时器/计数器、一个通用异步串行通信控制器(UART)等多种资源。
但即便如此,在一些相对复杂的单片机应用系统中,仅仅一个单片机资源还是不够的,因此而常常需要扩充I/O接口、定时器/计数器、串行通信接口、RAM、ROM等。
采用通用的标准器件进行扩充是通常的做法,但将单片机本身作为一个通用的扩充器件来使用,也不失为一个好的方法。
在这种情况下,一个系统中就使用了两个或两个以上的单片机,而单片机之间就要通过互连来进行数据通信。
MCS51系列的单片机(以下简称单片机)都带有串口,利用串口进行互连通信极为方便,其各种连接方式在许多书籍和资料上都有介绍,在此不再重述。
但如果系统要求扩充的资源是对外连接的串口,或对相互之间的数据传送有一定的速度要求,则单片机的串口就不能用作系统内两单片机的通信接口了。
所幸的是,单片机的并行端口也能相互连接来进行数据通信。
根据单片机端口内部结构的特点,这些端口的端口线可以直接相连,从而使两单片机之间并行通信接口的实现不用另外的硬件电路设备。
基于这种情况,设计时,可根据不同的使用要求,来采用不同的并行连接方法。
下面介绍在两个单片机之间进行三种并行通信接口的实现方法。
1 单向并行通信接口的实现在应用中,如果只需一个单片机向另一个单片机传送数据,则可以采用单向并行通信接口方式,这种方式较为简单。
图1所示为单向并行通信接口的组成方法。
华中科技大学光学与电子信息学院单片机( 2015 -- 2016学年度第一学期)题目:MCS-51单片机并行端口结构与操作院系:光学与电子信息学院班级:学号:学生姓名:指导教师:成绩:日期: 2015年 9月 21日MCS—51单片机并行口的结构与操作一、MCS—51单片机简介MCS—51单片机是美国INTE公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍与MCS—51单片机作为代表进行理论基础学习.MCS-51系列单片机主要包括8031、8051和8751等通用产品,其主要功能如下:8位CPU、4kbytes 程序存储器(ROM)、128bytes的数据存储器(RAM)、32条I/O口线、111条指令,大部分为单字节指令、21个专用寄存器、2个可编程定时/计数器、5个中断源,2个优先级、一个全双工串行通信口、外部数据存储器寻址空间为64kB、外部程序存储器寻址空间为64kB、逻辑操作位寻址功能、双列直插40PinDIP封装、单一+5V电源供电。
如图所示:1。
结构(1)中央处理单元(8位)数据处理、测试位,置位,复位位操作(2)只读存储器(4KB或8KB)永久性存储应用程序,掩模ROM、EPROM、EEPROM(3)随机存取内存(128B、128B SFR)在程序运行时存储工作变量和资料(4)并行输入/输出口(I / O)(32条)作系统总线、扩展外存、I / O接口芯片(5)串行输入/输出口(2条)串行通信、扩展I / O接口芯片(6)定时/计数器(16位、加1计数)计满溢出、中断标志置位、向CPU提出中断请求,与CPU之间独立工作(7)时钟电路内振、外振。
(8)中断系统五个中断源、2级优先。
MCS-51单片机接口技术实验(Proteus)适用:电气自动化类专业本科学生实验报告基本要求与书写格式如下:学年:学期:专业:姓名:学号:日期:同组成员: (若单人一组,此项略)实验___ _ 实验名称:一、实验目的:二、实验环境三、实验要求(实验内容与步骤):四、实验总结(由同学们做完实验后写)说明:(1)画出硬件连接图和程序流程图。
(2)编写程序,且给出详尽注释。
(3)本次实验收获是什么?有些什么想法?遇到什么问题等?五、建议与意见说明:对于此实验内容或在实验过程中有任何问题或建议,以及对于改善实验效果有什么建议,均可提出。
在书写实验报告的过程中,主要是帮助自己回顾和总结实验。
重点放在第四项,前三项可以十分简要地列写,第五项有则提出,无则不写。
实验一熟悉Proteus,最小系统,显示、读键子程序与简单监控一、实验目的掌握单片机最小系统,显示、读键子程序编写方法与简单监控程序结构;熟悉Proteus的环境。
二、实验环境1.个人微机,Windows操作系统2.Proteus仿真模拟器3.伟福(WAVE)编程、汇编集成环境三、实验题目基本题:在1个7段数码管上显示1个按键的次数,计到10后回到0。
提高题:使用2个键分别控制2个数码管显示2位数字的增一与减一。
四、实验类型:学习、设计型。
五、实验要求:要将显示与读键分别写成显示子程序与读键子程序;附,可能用到的元件名称:CPU:AT89C51或任一种MCS-51家族CPU;晶振:Crystal;电容器:CAP,选22pf,电解电容:CAP-ELEC或GENELECT10U16V 复位电阻:MINRES10K,限流电阻:MINRES330R按键:BUTTON,数码管:7SEG-COM-AN-BLUE/GRN/ANODE附2,参考电路:实验二系统扩展结构,扩展I/O端口,动态显示一、实验目的掌握系统扩展基本结构,扩展外部I/O端口;编写动态显示子程序;熟悉监控程序结构。
大连理工大学实验报告
实验时间:2014年6月30日星期1时间:10:00~ 11 :40
实验室(房间号):420实验台号码:班级:姓名:
指导教师签字:成绩:
实验二 MCS-51单片机并行端口实验
一、实验目的和要求
1.目的:进一步熟悉、掌握KEIL软件和DP-51PROC综合试验系统的使用。
掌握单片机并行端口的编程和使用方法。
2.要求:编制简单的程序,利用P1口的8位端口使用排线与LED1~LED8按顺序连接,使用一条单独连线将P
3.2与SW1连接,编制一个P1口的输出程序,实现8个LED灯依次点亮的流水灯效果。
二、实验算法
本程序属于无限循环结构,循环中通过判断P3.2的电平来决定彩灯的右移还是左移。
主程序中主要变量是A,P3.2,P1,其中A作为数据移动寄存器,P3.2作为按键输入口,为高电平右移A,低电平则左移A,P1由A传送数据,外接LED1~8,实现彩灯移动现象。
由于不加延时的循环在时钟频率作用下是很快的,现象是所有的灯一直是亮的状态。
,解决这个问题就是在程序里面加延时函数。
三、实验流程图
四、程序清单
ORG 8000H
LJMP START
ORG 8100H START: MOV SP,#60H
SETB P3.2
MOV A,#0FEH LED: JB P3.2,RIGHT
RL A
AJMP RUN RIGHT: RR A
RUN: MOV P1,A CALL DELAY
AJMP LED DELAY: PUSH 01H
PUSH 02H
MOV R1,#00H DELAY1: MOV R2,#00H
DJNZ R2,$
DJNZ R1,DELAY1
POP 02H
POP 01H
RET
END
五、实验结果与分析
实验现象:拨动开关闭合,彩灯左移;拨动开关断开,彩灯右移。
无问题。
实验中,我们通过控制开关SW1能够控制彩灯移位的方向,SW1=1,即将P3.2口置一,理论上使小灯循环右移;SW1=0,即将P3.2口置零,理论上小灯应循环左移,但是由于实验仿真系统中的LED灯的高位和低位位置刚好相反,导致我们操作时看到的结果正好相反,但实际上实验是成功的。
六、实验体会和建议
通过本次单片机的并行输入输出端口实验,我对Keil仿真调试软件的操作更为熟练;也对单片机的P1等端口的应用有了更清楚的认识,同时学会了分支程序的设计,JB指令的方便和实用性。
七、主要仪器设备。