单片机接口技术与实验附原理图及源程序
《单片机原理及接口技术》课程实验大纲
《单片机原理及接口技术》课程实验大纲课程名称:《单片机原理及接口技术》实验英文名称:《MCU principles and interface technologies》experiment课程性质:专业选修课程课程编号:0510085所属系部:机电工程学院总学时:14学时预备知识:电路、数字电子技术课程在教学计划中的地位作用:本课程是机械电子工程专业的一门重要专业选修课程。
目前单片机技术开发和应用水平已成为一个国家工业化发展水平的标志之一。
单片机原理及其应用已成为从事电子技术的工程技术人员必须掌握的基础理论和基本技能之一。
通过本课程的学习使学生实践上掌握单片计算机的基本组成、工作原理及常用接口技术,建立单片机系统整体概念,使学生具备单片机应用系统软、硬件开发的初步能力。
教学方式:理论与实践相结合教学的目的与要求:通过本课程的学习,使学生掌握单片机的硬件结构、MCS-51的指令系统、MCS-51汇编语言程序设计、MCS-51的中断系统、MCS-51的定时器/计数器、MCS-51的串行口、MCS-51单片机扩展存储器的设计、MCS-51扩展I/O接口的设计、MCS-51 与键盘、显示器的接口设计、MCS-51单片机与D/A转换器和A/D转换器的接口、MCS-51的功率接口、MCS-51的串行通信技术及其扩展接口。
进一步理解MCS-51单片机的开发装置、工作原理、编程方法,学会使用开发机进行程序。
课程教材:《单片机原理及接口技术》蔡美琴主编高等教育出版社参考书目:1.《单片机程序设计基础》周航慈主编北京航天航空大学出版社2. 《单片机原理及其接口技术》胡汉才主编清华大学出版社编写日期:2012年6月制定课程内容及学时分配:发光二极管显示各相状态。
要求:掌握步进电机控制系统的硬件设计方法;熟悉步进电机驱动程序的设计与调试,提高单片机应用系统设计和调试的能力。
正确连接电路,编写程序,调试运行。
实验一P1口亮灯实验一、实验目的1.学习P1口的使用方法;2.学习延时子程序的编写。
单片机原理及接口技术
单片机原理及接口技术在当今数字化时代,单片机已经成为嵌入式系统设计中不可或缺的重要组成部分。
本文将介绍单片机的工作原理以及与外部设备进行通信的接口技术。
单片机工作原理单片机是一种集成了处理器、存储器和输入输出设备等功能模块的微型计算机系统。
它通常由中央处理器(CPU)、存储器(RAM和ROM)、计时器(Timer)、串行通信接口(UART)和引脚(Port)组成。
单片机的工作原理可以简要描述为以下几个步骤:1.初始化:单片机在上电时会执行初始化程序,设置各种工作模式、配置寄存器等。
2.执行程序:单片机会根据存储器中存储的程序指令序列来执行相应的操作,包括算术逻辑运算、控制流程等。
3.输入输出操作:单片机通过输入输出接口与外部设备进行通信,如传感器、执行器等。
4.中断处理:单片机可以在特定条件下触发中断请求,暂停当前执行的程序,转而执行中断服务程序,处理相应的事件或信号。
单片机接口技术单片机与外部设备的通信主要依赖于接口技术,包括数字输入输出接口、模拟输入输出接口以及通信接口等。
数字输入输出接口数字输入输出接口用于与二进制设备进行通信,通过配置相应的引脚工作在输入或输出模式,实现信号的采集与输出。
常用的数字输入输出方式包括GPIO口、SPI接口、I2C接口等。
模拟输入输出接口模拟输入输出接口用于处理模拟信号,包括模拟输入端口和模拟输出端口。
模拟输入端口通过模数转换器将模拟信号转换为数字信号,模拟输出端口则通过数模转换器将数字信号转换为模拟信号。
通信接口通信接口是单片机与外部设备进行数据交换的重要手段,主要有串行通信接口(UART)、并行通信接口(Parallel)、CAN接口等。
通过这些通信接口,单片机可以实现与其他设备的数据交换与通信。
结语单片机原理及接口技术是嵌入式系统设计的基础知识,通过深入了解单片机的工作原理和接口技术,可以更好地应用单片机进行系统设计与开发。
希望本文对读者有所帮助,谢谢!以上是关于单片机原理及接口技术的简要介绍,希望能对读者有所启发。
单片机实验报告 附含说明书
第一章 DICE-5208K开发型单片机综合实验仪概述一、系统简介DICE-5208K型单片机实验系统由DICE-5208K开发型单片机综合实验箱、DICE-3000型仿真器、扩展卡和DICE-51仿真开发系统软件等组成。
是《MCS-51单片机原理与接口》、《单片机控制技术》、《C8051Fxxx高速SOC单片机原理及应用》、《EDA》、《VHDL硬件描述语言》、《CPLD/FPGA应用基础》等课程教学的配套实验设备。
新增加了几乎所有最实用、新颖的接口电路(如1 WIRE /I2C/SPI总线等)和通讯类接口实验(如USB2.0通讯/TCP/IP网络通讯/CAN总线/红外线收发等)。
可进行MCS-51、C8051F嵌入式单片机、CPLD/FPGA等课程的开放式实验教学。
二、主要特点1.该实验系统配置DICE-3000型高性能MCS-51硬件仿真器,64K数据空间,64K程序空间全部开放,不占用CPU资源,采用双CPU模式,仿真CPU和用户CPU独立运行,上位仿真软件支持汇编、C语言、PL/M语言。
可运行于WIN98/2000/NT/XP操作系统平台。
2.实验系统带有ISP在线下载电路,学生在完成实验后可脱离仿真机和PC机独立运行学生自行设计的单片机系统。
(可在线编程AT89S51/52/53系列单片机)。
3.该实验系统可扩展C8051F020嵌入式实验开发模块, 并配有DICE-EC5型USB高速通讯仿真器,通过4脚的JTAG接口可以进行非侵入式、全速的在线系统调试、仿真;集成开发环境支持Silicon Labs IDE和KEIL C软件。
4.该实验系统可扩展CPLD/FPGA模块,并配有相应的并口下载电路,轻松变成一台EDA实验开发平台。
5.该实验系统可扩展“数控式电子演示装置”,该装置是本公司的专利产品,结合上位演示软件和USB接口,可为该实验系统扩展多达十五个生动、形象、复杂的实验,其中大部分是闭环实验,实验践性非常强。
单片机及其接口技术实验报告
单片机及接口技术实验报告实验一数据传送程序一、实验目的1、掌握汇编语言设计和调试方法。
2、掌握DVCC实验系统的操作步骤。
二、实验内容1、编程实现,把7000H~70FFH单元的内容清零。
2、编程实现,把源地址为6000H开始的单元内容,传送到目的地址7000H开始的单元中,传送个数为0FFFH个。
三、DVCC实验系统操作说明1、接通DVCC实验系统电源,在DVCC实验箱上应显示闪动的“P”,否则按Reset键。
2、运行DVCC软件。
(程序DVCC598H实验系统DVCC实验系统)3、单击工具栏上“新建”或“打开”按钮,编写源程序。
单击“编译”按钮,使其形成可执行文件。
4、单击工具栏上“联接”按钮,同时按下DVCC实验箱上PCDBG键(键盘上最右边第2个),实现PC机和实验箱的联接。
联机成功,屏幕上出现:.反汇编窗口、寄存器标示位窗口。
5、在成功联机后,单击工具栏上“调试”按钮,把最终目标文件装载到实验系统RAM区;或者通过单击菜单栏中的“动态调试”,选择“传送(.EXE)文件”来实现。
6、单击工具栏上“运行”或“单步”按钮,运行实验程序。
7、单击工具栏上“窗口”,选择“显示内部数据窗口”或“显示外部数据窗口”可显示数据窗口。
鼠标右击数据窗口的数据,可设置数据块新地址;鼠标左键单击数据,可修改数据数值。
8、运行完毕,先按实验箱上的复位按钮Reset键,再按PCDBG键,并且点击屏幕上OK,即可退出运行状态。
四、实验程序代码1、把7000H~70FFH单元的内容清零。
程序代码:ORG 0000HAJMP STARTORG 70HSTART: MOV P2, #70H ;送地址高8位到P2端口MOV R0, #00H ;R0=00H,表地址低8位CLR A ;将累加器A清0LOOP: MOVX @R0, A ;将A送入以R0内容为地址的外部RAM.INC R0 ;R0+1-->R0CJNE R0,#00H,LOOP;比较条件转移指令,若R0不等于0,则跳转到LOOPAJMP $ ;暂停END2、编程实现,将源地址为6000H开始的单元,传送到目的地址7000H开始的单元,传送个数为0FFFH个。
教学课件 单片机原理及接口技术(第二版)李全利
输入设备
存储器
输出设备
控制器
运算器
2023/3/2
5
电子计算机经历了五个年代
电子管计算机 晶体管计算机 集成电路计算机 大规模集成电路计算机 超大规模集成电路计算机
结构仍然没有突破冯·诺依曼提出的计算机的经 典结构框架。
2023/3/2
6
1.1.2 微型计算机的组成及其应用形态
微处理器
1971年1月,INTEL将: ❖ 运算器 ❖ 控制器 ❖ 一些寄存器 集成在一个芯片上 --------微处理器
2023/3/2
3
1.1 电子计算机概述
1.1.1 电子计算机的经典结构
1946年2月 15日,第一 台电子数字 计算机问世。
ENIAC
标志着计算机时代的到来,对人类的生产和生活方式产生了 巨大的影响 。
2023/3/2
4
冯·诺依曼提出“程序存储”和“二进制运 算”的思想,构建了计算机经典结构:
特点:结构体系完善,性能已大大提高,面向控制 的特点进一步突出。现在,MCS-51已成为公认的单 片机经典机种 。
2023/3/2
14
性能提高阶段
近年来,不断有单片机新品出现。如ATMEL公司推出 的单片机AT89C51RD2:
8位CPU;64K字节ROM(有ISP能力);256字节RAM+1K 字节的XRAM+2K字节EEPROM;1个全双工串行口;3个 16位定时/计数器;7个中断源,4个优先级;硬件看 门狗等。
20
指令的表示形式
指令是让单片机执行某种操作的命令,按 一定的顺序以二进制码的形式存放于程序存 储器。如:
0000 0100B
04H
04H:累加器A的内容加1,难记! INC A,记忆容易。称为符号指令。
单片机与接口技术实验报告冒泡排序实验
单片机与接口技术实验报告冒泡排序实验本实验旨在通过单片机的接口技术,实现冒泡排序算法的实践与理解。
通过实际操作,掌握单片机与接口技术的基本应用,理解冒泡排序算法原理,提升实践能力和编程技能。
冒泡排序是一种简单的排序算法,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。
走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。
这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
在单片机与接口技术的实验中,我们可以使用LED灯等外部设备来模拟冒泡排序的过程。
通过改变LED灯的亮灭状态,反映出排序过程中数据的交换结果。
确定单片机型号并连接硬件电路。
选择合适的单片机,如8051系列,并搭建相应的硬件电路。
主要包括电源、晶振、输入输出端口、LED灯等。
编写程序代码。
根据冒泡排序算法,编写适用于所选单片机的程序代码。
代码应该能够控制LED灯,根据排序结果改变其亮灭状态。
调试与运行程序。
将程序下载到单片机中,开启电源,观察LED灯的亮灭情况。
检查程序是否能够正确地实现冒泡排序。
记录与分析实验结果。
详细记录LED灯的亮灭状态,分析排序结果是否正确。
同时,对程序进行优化,提高排序效率。
经过实验,我们成功地在单片机上实现了冒泡排序算法。
观察LED灯的亮灭情况,我们可以看到排序过程中的数据交换过程。
通过对比理论结果与实际结果,我们发现二者基本一致,说明我们的程序正确地实现了冒泡排序。
在实验过程中,我们遇到了一些问题,如初始时端口设置不正确导致LED灯无法正常显示、数据交换过程中出现异常等。
针对这些问题,我们通过查阅资料和讨论,对程序进行了相应的修改和优化,最终解决了问题。
通过本实验,我们不仅加深了对冒泡排序算法的理解,还掌握了单片机与接口技术的应用。
同时,实验过程中的问题也锻炼了我们的解决问题的能力。
本实验还提高了我们的实践能力和编程技能,为后续的学习和实践打下了坚实的基础。
盐城工学院单片机实验指导书.doc
单片机原理及接口技术实验指导书周云龙编写盐城工学院电气工程学院二○一五年四月实验一KEIL集成开发环境应用实验一、实验目的1.掌握C51开发环境keil软件项目创建方法2、汇编程序编写2.C51程序编写3、主函数、自定义函数和中断函数编写二、实验备件PC和单片机IDE集成开发软件三、实验要求1、建立一个汇编程序工程2、汇编工程调试3、建立一个C语言程序工程4、C语言工程调试实验二Proteus单片机系统仿真实验一、实验目的1.掌握Proteus 界面功能2、原理图绘制方法2.住址仿真调试3、Proteus与Keil联调二、实验备件PC、单片机IDE集成开发软件和Proteus仿真软件三、实验步骤1、学习Proteus软件2、绘制教材中第150页上图5-73、Keil与Proteus联调实验三单片机最小系统的熟悉一、实验目的在进行其他硬件实验之前,先熟悉实验装置的核心模块——单片机最小系统模块。
掌握该实验模块的电路原理和接口的使用方法。
1.掌握单片机振荡器时钟电路及CPU工作时序;掌握复位状态及复位电路设计;掌握单片机各引脚功能及通用I/O口的使用;掌握单片机基本指令的使用。
2.掌握uVision3 IDE集成开发环境,Proteus仿真软件和STC单片机下载软件ISP的使用。
3.将仿真现象和实验结果进行对比,体会仿真软件的用处。
二、实验设备1.51仿真器或者串口线2.单片机系统板三、实验要求1.连接实验电路,编写简易单片机汇编程序达到下述工作要求:P3.3口做输入口,外接一脉冲,每输入一个脉冲,P1口按十六进制加一输出,编写程序使P1口接的8个发光二极管L0—L7按16进制加一的方式点亮发光二极管。
2.将编写的程序经过编译后在uVision3 IDE软件中生成*.hex机器语言,通过ISP将*.hex下载到单片机芯片中,观察实验现象。
3. 用Proteus仿真软件画出实验电路图,将在uVision3 IDE软件中生成*.hex 下载到Proteus仿真电路图中的单片机芯片中,观察实验现象,比较该现象和在实验台上的现象是否相同。
单片机原理及运用和单片机接口技术
单片机原理及运用和单片机接口技术1. 单片机的原理及运用:单片机(Microcontroller)是一种集成电路,包含了处理器(CPU)、存储器(RAM 和ROM)、输入输出接口(I/O)、定时器/计数器等功能模块。
单片机通过内部程序的控制实现各种功能,广泛应用于嵌入式系统中。
单片机的工作原理是通过执行内部程序指令来完成各种任务。
单片机的内部存储器(ROM)中存储了一段程序代码,CPU会按照程序指令的顺序执行这些代码。
通过编写适当的程序代码,可以实现各种功能,如控制外部设备、处理数据等。
单片机可以应用于各种领域,如家电控制、工业自动化、电子仪器仪表和通信设备等。
在家电控制方面,单片机可以实现对电灯、电视、空调等设备的控制;在工业自动化方面,单片机可以用于控制机器人、生产线等;在电子仪器仪表方面,单片机可以实现对传感器的数据采集和处理;在通信设备方面,单片机可以用于控制无线通信模块等。
2. 单片机接口技术:单片机接口技术是指将单片机与外部设备连接起来的技术。
通过合适的接口技术,单片机可以与各种外部设备进行通信和控制。
常见的单片机接口技术包括以下几种:2.1 并行接口(Parallel Interface):并行接口是一种多线接口,通过多根线同时传输数据。
在单片机中,常用的并行接口是通用并行接口(GPIO),可以用来连接并行设备,如LED显示屏、液晶显示模块等。
2.2 串行接口(Serial Interface):串行接口是一种逐位传输数据的接口,通过少量的线路传输数据。
常见的串行接口有串行通信接口(UART)、SPI(Serial Peripheral Interface)和I2C(Inter-Integrated Circuit)接口。
串行接口适用于连接串行设备,如串口设备、传感器等。
2.3 模拟接口(Analog Interface):模拟接口用于连接模拟设备,如传感器、电机等。
单片机通过模拟输入输出口(ADC和DAC)与模拟设备进行通信,实现模拟信号的采集和输出。
单片机原理与接口技术--实验报告
专业: 学号:
年级:
实验时间:
组:_______ 指导教师:
一、实验目的 1.进一步熟悉Kiel C软件的使用方法。 2.掌握proteus软件的使用方法。 3.熟悉C语言数据与运算 4.熟悉C语言程序结构
二、实验内容 1.程序一:按键K0~K3,用三种分支语句实现P0口的多值输出 2.程序二:用三种循环语句实现P0口的多值输出。
if(num==0x40) { for(j=3;j>0;j--) { P0=num; //将 num 赋值给 P0 口 num>>=2; //变量右移二位 delay(100); //延时一段时间 } } }
}
} void delay(unsigned char i) //延时子程序 {
unsigned char j,k; for(k=0;k<i;k++) for(j=0;j<255;j++);
英文提示
中文含义
可能发生的错误
五、Proteus 仿真电路图 (用屏幕硬 COPY 在 WORD 上粘贴后打印)贴在这里
六、仿真观测到的现象
七、心得体会 (一定要写,内容是学习这部分课和实验后的收获,还有什么地方不懂,对教学的意见、
建议等。如果不写,降分处理)
学院: 姓名:
实验二 并行 I/O 端口的应用一
三、实验程序 1、程序一:
2、程序二:
四、Proteus 仿真电路图 (用屏幕硬 COPY 在 WORD 上粘贴后打印)贴在这里
五、心得体会 (一定要写,内容是学习这部分课和实验后的收获,还有什么地方不懂,对教学的意见、
建议等。如果不写,降分处理)
学院: 姓名:
单片机原理及接口技术讲解
单片机原理及接口技术讲解单片机(Microcontroller)是一种集成电路芯片,内含有中央处理器(CPU)、存储器、输入输出端口、定时器计数器、串行通信接口等核心模块,可用于控制、计算、存储和通信等多种功能。
单片机的工作原理是通过处理器执行存储在存储器中的指令来实现各种功能。
它的内部包含一个由晶体管、逻辑门等构成的微处理器,负责执行计算和控制指令。
单片机的芯片上还集成了存储器,用于存储程序指令和数据。
输入输出端口可以与外部设备进行数据交互,定时器计数器可以实现精确的定时和计数功能。
通过串行通信接口,单片机可以与其他设备进行数据传输和通信。
单片机的接口技术是指单片机与外部设备进行数据传输和通信的技术。
常见的接口技术包括并行接口、串行接口、模拟接口等。
并行接口是通过多个并行数据线同时传输数据的接口技术。
常见的并行接口有通用并行接口(GPIO)、地址总线、数据总线等。
通用并行接口(GPIO)是一组可编程的并行输入输出线,可以被程序员控制来进行数据的输入输出。
地址总线用于传输内存或外设的地址信息,数据总线用于传输数据信息。
串行接口是通过单个数据线按照一定的时间顺序传输数据的接口技术。
常见的串行接口有串行通信接口(UART)、串行外设接口(SPI)、I²C接口等。
串行通信接口(UART)是一种通用的串行数据通信接口,用于将数据转换为串行格式进行传输。
串行外设接口(SPI)是一种高速串行接口,用于在单片机与其他外设之间进行数据传输和通信。
I²C接口是一种双线制的串行接口,用于在多个设备之间进行数据传输和通信。
模拟接口是通过模拟信号进行数据传输和通信的接口技术。
模拟接口包括模数转换接口、数字模拟转换接口等。
模数转换接口用于将模拟信号转换为数字信号,数字模拟转换接口用于将数字信号转换为模拟信号。
单片机接口技术的选择取决于具体应用的需求。
并行接口适合需要大量数据同时进行传输的场景,串行接口适合需要高速传输的场景。
(MCS-51单片机实验系统
1 系统框图
4*LED
Байду номын сангаас
主实验板线路图
LED数码显示器原理图 数码显示器原理图
6、LED数码显示器 、 数码显示器
• 单片机系统中,通常用LED数码显示器来显示各种数 字或符号。由于它具有显示清晰、亮度高、使用电压 低、寿命长的特点,因此使用非常广泛。
(1)共阳极接法。把发光二 极管的阳极连在一起构成公共 阳极,使用时公共阳极接+5V, 每个发光二极管的阴极通过电 阻与输入端相连。当阴极端输 入低电平时,段发光二极管就 导通点亮,而输入高电平时则 不点亮。
3、89S51 、
• 该系列单片机是采用高性能的静态80C51 设计 该系列单片机是采用高性能的静态80C 由先进CMOS 工艺制造并带有非易失性Flash 由先进 CMOS 工艺制造并带有非易失性 Flash 程序存储器全部支持12 时钟和6 程序存储器全部支持12 时钟和6 时钟操作 • P89S51和 P89S52分别包含 128字节和 256字节 89S51 和 89S52 分别包含128 字节和256 字节 RAM、32条I/O口线、 RAM、32条I/O口线、3个16位定时/计数器、 6 16位定时/计数器、 输入4优先级嵌套中断结构、 个串行I/O口 输入4优先级嵌套中断结构、1个串行I/O口(可 用于多机通信、I/O扩展或全双工UART) 用于多机通信、I/O扩展或全双工UART)以及 片内振荡器和时钟电路。 片内振荡器和时钟电路。 • 该系列单片机是80C51微控制器的派生器件, 该系列单片机是80C51微控制器的派生器件, 采用先进CMOS工艺制造,指令系统与80C51 采用先进CMOS工艺制造,指令系统与80C51 完全相同。
单片机实验指导书
实验一、输入输出接口编程一、实验目的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种模式。
单片机与接口技术实验报告--双字节BCD加法实验
本科实验报告课程名称:单片机原理与接口技术实验项目:双字节BCD加法实验实验地点:跨越机房专业班级:学号:学生姓名:指导教师:2012 年4 月10 日一、实验目的和要求(1)熟悉MCS-51单片机汇编指令系统。
(2)学习子程序的编写和使用。
二、实验内容和原理完成有进位位的双字节BCD的加法实验,两个加数分别放于40H~41H和45H~46H,结果存于50H~52H中。
(两个加数为9388H和7287H)三、主要仪器设备计算机一台;伟福6000四、操作方法与实验步骤(上机源程序)ORG 0000HMOV 40H,#88H ;88H→(40H)MOV 41H,#93H ;93H→(41H)MOV 45H,#87H ;87H→(45H)MOV 46H,#72H ;72H→(46H)MOV R0,#40H ;40H→R0MOV R1,#45H ;45H→R1START: MOV A,@R0 ;((R0))→AADD A,@R1 ;((R1))+A→AMOV 50H,A ;A→(50H)INC R0 ;(R0)+1→(R0)INC R1 ;(R1)+1→(R1)CLR A ;A清0ADDC A,@R0 ;((R0))+A+Cy→AADD A,@R1 ;((R1))+A→AMOV 51H,A ;A→(51H)CLR A ;A清0ADDC A,#0H ;0H+A+Cy→AMOV 52H,A ;A→(52H)SJMP $ ;循环END五、实验数据记录和处理本程序进行了两个双字节BCD数的加法,中途出现两次进位,每次进位参与下一次的进位加法计算。
六、实验结果与分析通过两次进位加法计算,两个双字节BCD数加法的结果变为三字节BCD数,并存于50H~52H单元中,其中52H单元中存结果的最高位1。
七、讨论、心得实验成功,通过本实验的练习,学会了带进位位的BCD加法的使用和对命令ADDC的使用。
微机原理与接口技术实验
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
试验程序框图
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
试验六: A/D转换试验
Flying College of BinZhou University
用8255PA口控制PB口。
试验接线
PA0~PA7→K1~K7;(开关量输入模块) PB0~PB7→L1~L8;(发光管输出模块) 8255数据、控制线内部已线连好。
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验
编程指南
⒈ 8255A芯片简介:8255A可编程外围接口芯片是INTEL企业 生产旳通用并行接口芯片,它具有A、B、C三个并行接口,用 +5V单电源供电,能在下列三种方式下工作: 方式0:基本输入/ 输出方式 方式l:选通输入/ 输出方式 方式2:双向选通工作方式 ⒉ 使8255A端口A工作在方式0并作为输入口,读取Kl-K8个开 关量,PB口工作在方式0作为输出口。
© 2009 Yuanwei
微机原理与接口技术实验
试验目旳
1、学习微机系统中扩展简朴I/O口旳措施。 2、学习数据输入输出程序旳编制措施。
试验内容
利用74LS244作为输入口,读取开关状态,并将此状态经过 74LS273再驱动发光二极管显示出来。
Flying College of BinZhou University
© 2009 Yuanwei
微机原理与接口技术实验指导书(带程序)
《微机原理与接口技术》实验指导书计算机与信息工程系2012年9月目录实验概述............................................. 错误!未定义书签。
实验仪器使用简介 (5)实验项目一学生考试成绩统计实验 (11)实验项目一两个多位十进制数相减实验............... 1错误!未定义书签。
实验项目一 8259中断控制器实验.. (16)实验项目一具有优先通行权的十字路口交通灯控制设计 (21)实验项目一 8253定时器/计数器实验 (26)实验项目一继电器控制实验 (28)实验概述一、实验的目的本实验课是配合理论教学内容,帮助学生加深理解和掌握本门课程内容的重要手段。
由于本课程具有理论与实际相结合紧密的特点,通过实验使学生掌握微型计算机的原理及接口电路的设计应用技术。
二、实验前的准备工作1.了解所用的计算机系统(包括汇编编译系统)的性能和使用方法。
2.复习和掌握与本实验有关的DOS命令以及相关指令。
3.准备好上机所需的程序,切忌不编程或抄别人的程序去上机。
三、实验的步骤上机实验应一人一组,独立实验。
上机过程中出现的问题,除了是系统的问题以外,不要轻易举手问老师。
上机实验一般应包括以下几个步骤:1、编辑汇编语言源程序使用一种文本编辑软件(word、记事本、写字板等),编辑保存一个“文件名.ASM”的汇编语言源程序文件2、汇编源程序用宏汇编(MASM)对汇编源程序进行汇编,产生目标程序(文件名.OBJ3、连接程序用连接程序(LINK)将若干目标模块连同库子程序连接在一起,产生可执行文件(文件名.EXE)4、运行调试DEBUGDEBUG 程序是专门为汇编语言设计的一种调试工具,它通过单步、跟踪、断点和连续等方式为程序员提供了非常有效的调试手段。
格式:DEBUG [驱动器][路径][文件名][参数]四、实验报告实验报告应包括以下内容:实验目的、实验内容、程序清单、运行结果、对运行结果的分析以及本次调试程序所取得的经验。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《单片机接口技术与实验》姓名:学号:年级:专业:电子信息科学与技术实验二并行口输入输出实验——循环彩灯控制一、实验功能(1).P1 口接8 个开关,P0 口接8 个灯,每个开关对应一个灯,实时读取开关状态,开关闭合时,灯亮。
开关断开时,灯灭。
二、实验原理图注意:因为P0口作为输出口时必须接上拉电阻,为简化起见,此处接到P2口上三、实验程序org 0000hljmp mainorg 0100hmain: mov p1,#0ffhmov p2,p1ajmp mainend(2)一、实验功能用5 个开关K0~K4,控制P0 口所接8 个灯的循环,各开关的功能要求如下:(1)K1~K2 分别选择灯的四种闪动方式;(2)K3 用于控制灯的循环方式(顺时针或逆时针);(3)K4 用于选择灯的两种循环速度(4)K0 用于引发外部中断,在外部中断子程序中,读取通过K1-K4 所设定的循环彩灯的工作方式,并按所设定的工作方式控制彩灯运行。
二、实验原理图三、实验流程图四、实验程序ORG 0000HLJMP MAINORG 0003HLJMP INT0PR0ORG 0100H MAIN: MOV P1,#0FFHMOV SP,#60HSETB EX0SETB IT0SETB EAMOV C,MOV 50H,CMOV C,MOV 51H,CJB ,NEXT1JNB ,NEXT2NEXT1: JB ,CIRCLE1JNB ,CIRCLE2 NEXT2: JB ,CIRCLE3JNB ,CIRCLE4 CIRCLE1: MOV A,#80HLJMP STEP0 CIRCLE2: MOV A,#0C0HLJMP STEP0 CIRCLE3: MOV A,#0AAHLJMP STEP0 CIRCLE4: MOV A,#0E0HLJMP STEP0 STEP0: MOV P2,AJB 50H,S1JNB 50H,S2 STEP1: JB 51H,LOOP1JNB 51H,LOOP2 S1: LCALL DELAY1LJMP STEP1S2: LCALL DELAY2LJMP STEP1 DELAY1: MOV R7,#100 D1: MOV R6,#100D2: MOV R5,#10D3: DJNZ R5,D3DJNZ R6,D2DJNZ R7,D1RETDELAY2: MOV R7,#200 D4: MOV R6,#100D5: MOV R5,#10D6: DJNZ R5,D6DJNZ R6,D5DJNZ R7,D4RETLOOP1: RL ALJMP STEP0 LOOP2: RR ALJMP STEP0ORG 0400H INT0PR0:MOV C,MOV 50H,CMOV C,MOV 51H,CJB ,WORK1JNB ,WORK2WORK1: JB ,L1JNB ,L2WORK2: JB ,L3JNB ,L4L1: MOV A,#80HLJMP PASSL2: MOV A,#0C0HLJMP PASSL3: MOV A,#0AAHLJMP PASSL4: MOV A,#0E0HLJMP PASSPASS: RETIEND实验三七段LED 数码管控制实验一、实验功能1.实验采用4 位一体的数码管,用P1 口通过驱动芯片控制段码输出信号线,P0 口通过驱动芯片控制位选线:(1)当开关K0 接低电平时,第一位依次显示0~F,然后第二位、第三位、第四位,再循环回第一位。
(2)当开关K0 接高电平时,四位动态显示“HELP”二、实验原理图三、实验流程图四、实验程序org 0000hljmp mainorg 0100hmain:mov p2,#0ffhsetbmov dptr,#tabmov r0,#0mov a,#00hloop1: mov r0,#00hjnb ,hsjmp loop2h: mov p2,#0fehlcall lightmov p2,#0fdhlcall lightmov p2,#0fbhlcall lightmov p2,#blcall lightsjmp loop1light: jb ,loop2mov a,r0movc a,@a+dptrinc r0mov p0,alcall delay1cjne r0,#16,lightmov r0,#0retloop2: mov p2,#0fehmov p0,#73hlcall delay1jnb ,loop1mov p2,#0fdhmov p0,#38hlcall delay1jnb ,loop1mov p2,#0fbhmov p0,#79hlcall delay1jnb ,loop1mov p2,#bmov p0,#76hlcall delay1jnb ,loop1sjmp loop1tab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71hdelay1:MOV R3,#10D2: MOV R2,#100D1: MOV R1,#100D0: DJNZ R1,D0DJNZ R2,D1DJNZ R3,D2RETend实验四定时器中断实验一、实验功能1.用 T0 定时器实现1 秒定时,控制一个LED 亮1 秒,灭1 秒,并不断循环。
二、实验原理图三、实验流程图四、实验程序org 0000h ljmp main org 000bh ljmp t0pr0 org 0100h main: mov sp,#60h mov tmod,#01h mov th0,#0b8h mov tl0,#00h mov r0,#100 setb ea setb et0 setb tr0 loop: sjmp $ ljmp loopt0pr0: djnz r0,wcplmov r0,#100w: mov th0,#0b8hmov tl0,#00hretiend2.一、实验功能实现一个4 位秒表:(1)用开关K0 模拟秒表的启动、停止、清零功能,按一次启动计时,按一次停止,再按一次清零,在三个状态中循环。
(2)最低位按1/10 秒计数,依次计数单位为1/10 秒,1 秒,1 分(3) 要求K0 使用外部中断,优先级高于T0 的优先级二、实验原理图三、实验流程图四、实验程序org 0000hljmp mainorg 0003hljmp intx0org 000bhljmp t0pr0org 0100hmain: mov tmod,#01hmov th0,#0b8hmov tl0,#00hmov p2,#0ffhmov r0,#1mov r1,#0mov r2,#0mov r3,#0mov r4,#0mov r5,#0mov a,#0mov dptr,#tabsetb easetb ex0setb it0setb tr0setb px0setb et0k: lcall aaajmp kaaa: mov p2,#0fehmov a,r2lcall looplcall mmmov p2,#0fdhmov a,r3lcall looplcall mmmov p2,#0fbhmov a,r4lcall looplcall mmmov p2,#bmov a,r5lcall looplcall mmretmm: djnz acc,$djnz acc,$retloop: movc a,@a+dptrmov p0,arettab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh intx0: inc r0cjne r0,#1,stsetb tr0retist: cjne r0,#2,wclr tr0retiw: mov a,#0mov r0,amov r1,amov r2,amov r3,amov r4,amov r5,aretit0pr0: mov th0,#0b8hmov tl0,#00hinc r1cjne r1,#10,exitmov r1,#0inc r2cjne r2,#10,exitmov r2,#0inc r3cjne r3,#10,exitmov r3,#0inc r4cjne r4,#6,exitmov r4,#0inc r5cjne r5,#10,exitmov r5,#0exit: retiend实验五脉冲宽度与周期测量实验一、实验功能同时测量脉冲宽度和周期,由开关K0 选择显示脉冲宽度还是显示脉冲周期。
二、实验原理图三、实验流程图四、实验程序ORG 0000Hlimp mainorg 000bhljmp torg 0100hmain: mov tmod,#oahmov th0,#48hmov tl0,#48hsetb easetb et0mov dptr,#tabmov a,#0mov r0,#0mov r1,#0mov r2,#0mov r3,#0mov r4,#0jb ,b0loop0: jb ,loop0setb tr0loop1: jnb ,loop1loop2: jb ,loop2 loop3: jnb ,loop3 loop4: jb ,loop4clr tr0ljmp loopb0: jb ,b0setb tr0b1: inb ,b1b2: jb ,b2clr tr0 loop: mov a,tl0subb a,#48hmov b,#2div abmov r1,bmov r2,amov a,r0mov b,#10div abmov r3,badd a,#10mov r4,amov p2,#bmov a,r1lcall wwwlcall zmov p2,#bmov a,r2lcall wwwlcall zmov p2,#bmov a,r3lcall wwwlcall zmov p2,#bmov a,r4lcall wwwlcall zljmp main www: movc a,@a+dptrmov p0,aretz: djnz acc,$djnz acc,$rettab: db 3fh,06h,5bh,4fh,66h,6dh,7dh,,6fhdb0bfh,86h,0d8h,0cfh,0e6h,0edh,0fdh,87h,0ffh,0efhorg 0200ht: inc r0retiend实验六串行通信实验一、实验功能利用串行口方式0 实现一个七段数码管的显示控制,轮流显示0~9十个数码二、实验原理图三、实验流程图四、实验程序org 0000hajmp main main: mov scon,#00hmov dptr,#tablemov r0,#10clrNEXT: djnz r0,sendajmp main send: clr amovc a,@a+dptrmov sbuf,ajnb ti,$clr tiinc dptracall delayajmp nextdelay: mov r1,#50loop1: mov r2,#100loop2: mov r3,#50djnz r3,$djnz r2,loop2djnz r1,loop1rettable: DB 3Fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh end。