最新单片机原理实验教案参考程序

最新单片机原理实验教案参考程序
最新单片机原理实验教案参考程序

单片机原理实验教案

参考程序

广东松山职业技术学院《MCS-51单片机原理》实验指导书

宁玉珊黄晓林

使用Proteus辅助设计与仿真

实训项目1 Proteus辅助设计与仿真的使用

一、实训目的

学习并熟练掌握PROTEUS辅助设计与仿真软件的使用。通过使用Proteus的ISIS组件绘制AT89C51功能接口原理图,并对原理图编写程序和调试程序,观察在仿真条件下的实现功能的效果。

二、实训内容

在PROTEUS仿真环境下实现一个发光二极管(LED)闪烁。要求LED亮0.5s灭1s,并绘制原理图和编写实现程序,同时用虚拟的示波器观察硬件和软件实现的效果。

三、实训器材

安装有Proteus7软件的计算机 1 台。

四、实训步骤

1)在硬盘建立文件夹用来保存新建项目的所有文件。如在D盘建立PROJECT文件夹。

2)选择‘开始→程序→Proteus7 professional→ISIS professional(或者双击桌面图标ISIS)’,进入Proteus仿真环境,如图P1_1和P1_2所示。

图P1-1

图P1-2

3)选择菜单【File/New Design】创建一个新的设计项目,如图P1_3所示。

图P1-3

4)此时系统会弹出模板选择窗口,选择‘DEFAULT’点击【OK】即可,如图P1_4所示。

图P1_4

5)点击界面左侧工具栏中的图标,接着点击元件池上方的按钮,将要用到的元器件从系统库调到当前设计文件库中。在弹出的Pick Devices对话框左上角的‘Keywords’文本框中键盘输入元件名(或元件的其它关键词)搜索到需要的元器件。双击‘Results’栏下的目标元件,该元件即调出到当前设计文件库的元件列表中,如图P1_5所示。本实训中所要用到的元件如表PS1_1所示。

图P1_5

元件名称搜索关键词元件序

数值备注

电阻器Resistor R1 10k

电阻器Resistor R2 1k

电解电容器MINELECT1U63V C1 4.7μ

陶瓷电容器CERAMIC22P C2、C3 22p

晶振CRYSTAL X1 12MHz

单片机AT89C51 U1

发光二极管 LED-YELLOW D1

表PS1_1元件列表

6)点击界面左侧工具栏中的图标,选择元件列表中的元件,在原理图编辑框中放置元件、布局及连线,构成原理图主体,如图P1_6所示。放置元件、布局及连线的方法与Protel 大致相同。

X T A L 2

18

X T A L 1

19

A L E 30E A

31

P S E N 29R S T

9

P 0.0/A D 039P 0.1/A D 138P 0.2/A D 237P 0.3/A D 336P 0.4/A D 435P 0.5/A D 534P 0.6/A D 633P 0.7/A D 7

32

P 1.01P 1.12P 1.23P 1.34P 1.45P 1.56P 1.67P 1.7

8P 3.0/R X D 10P 3.1/T X D 11P 3.2/I N T 012P 3.3/I N T 113P 3.4/T 014P 3.7/R D

17

P 3.6/W R 16P 3.5/T 115P 2.7/A 15

28

P 2.0/A 821P 2.1/A 922P 2.2/A 1023P 2.3/A 1124P 2.4/A 1225P 2.5/A 1326P 2.6/A 1427U1

AT89C51

C1

22p

C2

22p

X1

CRYSTAL

R1

10k

C3

4.7u

D1

LED-YELLOW

R2

1k

VCC

A

B

C

D

图P1_6

7)点击ISIS 界面左侧工具栏Terminals Mode 图标,选择元件列表中的元件为整幅原理图添加地端和电源端。电源为Power ,幅值可以默认为VCC ,地为Ground ,如图P1_7所示。

图P1_7 图P1_8

8)点击ISIS界面左侧工具栏Virtual Instruments Mode图标,选择元件列表中的元件为整幅原理图添加虚拟示波器,观察系统运行时P1.0口的波形。虚拟示波器为Oscilloscopeund,如图P1_8所示。

9)选择菜单【File/Save Design】保存刚才的设计项目,如图P1_9所示。

图P1_9 图P1_10 10)此时系统会弹出保存文件的窗口,选择好指定保存文件的位置,并在文件名文本框中输文件名,点击【保存】即可,如图P1_10所示。

11)选择菜单【Soure/Add/Remove Soure Files】为CPU添加源程序。如图P1_11所示。

图P1_11

单片机原理keil使用教程

单片机原理k e i l使用教 程 Prepared on 22 November 2020

k e i l教程 Keil 软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编,PLM 语言和 C 语言的程序设计,界面友好,易学易用。下面介绍Keil软件的使用方法,这应该算一个入门教程,进入 Keil 后,屏幕如下图所示。几秒钟后出现编辑界 启动Keil uVision4时的屏幕。 简单程序的调试学习程序设计语言、学习某种程序软件,最好的方法是直接操作实践。下面通过简单的编程、调试,引导大家学习Keil C51软件的基本使用方法和基本的调试技巧。 1) 对于单片机程序来说,每个功能程序,都必须要有一个配套的工程(Project),即使是点亮LED这样简单的功能程序也不例外,因此我们首先要新建一个工程,打开我们的Keil软件后,点击:Project-- >New uVision Project...然后会出现一个新建工程的界面,如图2-8所示。 2)因为是第一个实验,所以我们在硬盘上建立了一个实验1 的目录,然后把LED这个工程的路径指定到这里,这样方便今后管理程序,不

同的功能程序放到不同的文件夹下,并且给这个工程起一个名字叫做LED,软件会自动添加扩展名。如图2-9所示。 下次要打开LED这个工程时,可以直接找到文件夹,双击这个.uvproj 文件就可以直接打开了。 图2-9 保存工程 3)保存之后会弹出一个对话框,这个对话框让我们选择单片机型号。因为Keil软件是外国人开发的,所以我们国内的STC89C52RC并没有上榜,但是只要选择同类型号就可以了。Keil 几乎支持所有的51核的单片机,这里还是以大家用的比较多的Atmel 的AT89S51来说明,如下图2-10、图2-11所示,选择AT89S51之后,右边栏是对这个单片机的基本的说明,然后点击确定。 图2-10 选择芯片公司 图2-11 选择具体芯片

单片机原理及其接口技术实验报告

单片机原理及其接口技术实验指导书 实验1 Keil C51的使用(汇编语言) 一.实验目的: 初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。 二.实验设备: ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。 三.实验原理及环境: 在计算机上已安装Keil C51软件。这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。 四:实验内容: 1.掌握软件的开发过程: 1)建立一个工程项目选择芯片确定选项。 2)加入C 源文件或汇编源文件。 3)用项目管理器生成各种应用文件。 4)检查并修改源文件中的错误。 5)编译连接通过后进行软件模拟仿真。 6)编译连接通过后进行硬件仿真。 2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。 3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。 五:程序清单: ORG 0000H AGAIN:CPL P1.0 MOV R0,#10 ;延时0.5秒 LOOP1:MOV R1,#100 LOOP2:MOV R2,#250 DJNZ R2,$ DJNZ R1,LOOP2 DJNZ R0,LOOP1 SJMP AGAIN END 六:实验步骤: 1.建立一个工程项目选择芯片确定选项 如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)

《单片机原理及应用》实验指导

《单片机原理及应用》实验指导 控制技术实验室

实验一 熟悉 Keil c51 集成开发环境及常用指令实验 (2 课时,验证型) 一、实验目的 1) 了解 8051 典型应用系统的开发过程,熟悉 Keil C51集成开发环境。 2) 掌握单步执行程序,查看专用寄存器和单片机 RAM 的执行结果。 3) 掌握 8051 的寻址方式及常用指令的使用方法。 二、实验内容 1) 基本指令练习。 2) 数据传送(循环方式) 。 3) 位操作指令。 4) 8051 内部 RAM 的 40H~4FH 置初值 A0H~AFH,然后将 40H~4FH 的内容 传送到外部 RAM 中的 C000H~C00FH 单元,再把外部数据 RAM 中的 C000H~C00FH 单元的内容传送到 8051 内部 RAM 中的 50H~5FH 单元。 5) 调试下列程序,熟悉程序调试手段,观测程序运行结果。 ORG 0000H SJMP MAIN ORG 0030H MAIN: MOV SP,#6FH MOV R0,#40H MOV R1,#30H MOV 30H,#40H MOV A,#40H MOV @R0,A ?哪一个存储单元的内容与 A 中内容相等 INC A MOV A,@R1 ?A 中的内容?哪一个存储单元的内容传给 A PUSH ACC POP 32H ?SP 指针的变化?32H 中的内容 MOV A,#5FH SWAP A ?A 中的内容 ?上面程序为顺序执行的程序 XUNHUAN1: MOV R0,#30H MOV R7,#10H CLR A ?这 3 条指令的作用 LOOP1: MOV @R0,A INC A INC R0 DJNZ R7,LOOP1 ?R7 的作用 ?循环程序执行完之后,指出 32H,37H,3BH, 3FH 存储单元中的值,为什么? XUNHUAN2: MOV R0,#30H MOV R1,#40H

单片机原理及应用实验指导书

单片机原理及应用实验指导书 湖南人文科技学院 二00一年三月

实验一I /O口输出实验—LED流水灯实验 一、实验目的 1、掌握单片机最小系统的构成; 2、掌握I/O口的使用及驱动能力的概念; 3、熟悉移位指令和软件延时程序。 二、实验设备与器件 1、计算机1台 2、PROTEUS单片机教学实验箱FB-EDU-P51A 三、实验原理 如下图所示,用单片机控制LED的亮与灭,在实验图中将MCU的P1口与LED的阴极相连,当P1口给低电平时,LED发亮,当P1口给高电平时,

四、实验内容 1、利用51单片机及8个发光二级管等器件,构成一个流水灯单片机系统。 2、用Keil C51软件创建程序 3、对程序进行编译与链接,建立实验程序并编译,加载hex文件,仿真; 4、实验板验证 (1)用ISP下载hex程序到CPU (2)按连接表连接电路 (3)检查验证结果 五、实验报告 在预习报告的基础上写出详细实验过程;画出实验原理图,写出单片机控制程序,写出调试步骤与仿真方法,观察实验现象,得出实验结果,并分析实验结果的正确性。 六、预习要求 1、单片机最小系统的构成 2、单片机I/O口的使用以及软件延时程序的编写。 七、实验参考程序 ORG 00H START: MOV R2,#8 MOV A,#0FEH LOOP: MOV P1,A LCALL DELAY RL A ;循环左移 DJNZ R2,LOOP ;判断移动是否超过8 位, 未超过继续循环 LJMP START DELAY: MOV R5,#20 ;延时程序,延时0.2s D1: MOV R6,#20

单片机原理及应用实验报告

单片机原理实验报告 专业:计算机科学与技术 学号: :

实验1 计数显示器 【实验目的】 熟悉Proteus仿真软件,掌握单片机原理图的绘图方法 【实验容】 (1)熟悉Proteus仿真软件,了解软件的结构组成与功能 (2)学习ISIS模块的使用方法,学会设置图纸、选元件、画导线、修改属性等基本操作 (3)学会可执行文件加载及程序仿真运行方法 (4)理解Proteus在单片机开发中的作用,完成单片机电路原理图的绘制【实验步骤】 (1)观察Proteus软件的菜单、工具栏、对话框等基本结构 (2)在Proteus中绘制电路原理图,按照表A.1将元件添加到编辑环境中(3)在Proteus中加载程序,观察仿真结果,检测电路图绘制的正确性 表A.1

Switches&Relays BUT BUTTON 【实验原理图】 【实验源程序】 #include sbit P3_7=P3^7; unsigned char x1=0;x2=0 ; unsigned char count=0; unsigned char idata buf[10]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay(int time) { int k,j;

for(;time<0;time--) for(k=200;k>0;k--) for(j=500;j<0;j--); } void init() { P0=buf[x1]; delay(10); P2=buf[x2]; delay(10); } void main() { init(); while(1) { x1=count/10; x2=count%10; P0=buf[x1]; delay(10);

单片机原理与应用技术实验报告(实验项目:发光二极管闪烁)

***数学计算机科学系实验报告 专业:计算机科学与技术班级:实验课程:单片机原理与应用技术姓名:学号:实验室:硬件实验室 同组同学: 实验时间:2013年3月20日指导教师签字:成绩: 实验项目:发光二极管闪烁 一实验目的和要求 1.使用单片机的P1.5口做输出口,使该位发光二极管闪烁。 2.掌握单片机使用。 二实验环境 PC机一台,实验仪器一套 三实验步骤及实验记录 1.在pc机上,打开Keil C。 2.在Keil C中,新建一个工程文件,点击“Project->New Project…”菜单。 3.选择工程文件要存放的路径 ,输入工程文件名 LED, 最后单击保存。 4. 在弹出的对话框中选择 CPU 厂商及型号。 5.选择好 Atmel 公司的 89c51 后 , 单击确定。 6.在接着出现的对话框中选择“是”。 7.新建一个 C51 文件 , 点击file菜单下的NEW,或单击左上角的 New File快捷键。 8.保存新建的文件,单击SAVE。 9.在出现的对话框中输入保存文件名MAIN.C,再单击“保存”。 10.保存好后把此文件加入到工程中方法如下 : 用鼠标在 Source Group1 上单击右键 , 然后再单击 Add Files to Group ‘Source Group 1'。 11.选择要加入的文件 , 找到 MAIN.C 后 , 单击 Add, 然后单击Close。 12.在编辑框里输入代码如下: #include "reg51.h" //包含头文件 sbit led=P1^5; //表示用led等效于P1^5, P1^0就是指头文件里定义的P1寄存器的第5BIT #define uchar unsigned char #define uint unsigned int

单片机原理实验指导书(2012.10)

《单片机原理》实验指导书 计算机科学与技术系2012年8月

目录 第一部分单片机仿真实验 (1) 实验一:流水灯实验 (1) 实验二:中断实验 (4) 实验三:定时器中断实验 (6) 实验四:串行口实验 (9) 实验五:矩阵式键盘输入识别 (13) 实验六:LCD循环显示设计 (19) 第二部分单片机硬件实验............................错误!未定义书签。第一章试验箱系统概述 ...................................错误!未定义书签。 一、系统地址分配........................................... 错误!未定义书签。 二、系统接口定义........................................... 错误!未定义书签。 三、通用电路简介........................................... 错误!未定义书签。第二章实验指导...............................................错误!未定义书签。实验七P1口亮灯和P1口加法器实验........... 错误!未定义书签。实验八简单I/O口扩展(选作).................. 错误!未定义书签。实验九8255控制交通灯................................ 错误!未定义书签。实验十128*64LCD液晶显示 .......................... 错误!未定义书签。

第一部分单片机仿真实验 实验一:流水灯实验 一、实验目的: 通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的存储器。 二、实验原理图 实验参考电路图如下: 三、参考实验程序 //流水灯实验 #include //包含单片机寄存器的头文件 sfr x=0xb0; //P3口在存储器中的地址是b0H,通过sfr可定义8051内核单片机 //的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的

西南科技大学单片机原理实实验四及代码

2.1实验四中断实验 一、实验目的 加深对MCS-51单片机中断系统基础知识的理解。 二、实验设备 Keil C单片机程序开发软件。 Proteus仿真软件 DP51-PROC单片机综合实验仪。 三、实验容和步骤 容: 利用外部中断输入引脚(以中断方式)控制步进电机的转动。要求:每产生1次中断,步进电机只能步进1步。 实验程序: 使用INT0的中断服务程序控制步进电机正向步进;使用INT1中断服务程序控制步进电机反向步进。 设计思路: ①主程序在完成对INT0和INT1的设置后,可进入死循环(等待中断请求)。 ②为便于实验观察和操作,设INT0和INT1中断触发方式为边沿。 ③步进电机的转动控制由外部中断的服务程序来实现。 ④当前步进电机的相位通电状态信息可以使用片RAM中的一个字节单元来存储。 设计参考: ①主程序需要设置的中断控制位如下: IT0和IT1 外部中断触发方式控制0=电平1=边沿(下降沿) EX0和EX1 外部中断允许控制0=屏蔽1=允许 PX0和PX1 中断优先级级别控制0=低级1=高级 在同级别(PX0=PX1)时INT0的优先级高于INT1 EA 中断允许总控制0=屏蔽1=允许 ②外部中断服务程序的入口地址: 0003H 外部中断0 0013H 外部中断1 预习: 1)编写好实验程序。 2)根据编写的程序和实验步骤的要求制定调试仿真的操作方案。 实验单元电路:

1) 步进电机驱动电路。 步进电机共有4相,当以A →B →C →D →A →B …的顺序依次通电时,电机就会正转,若按相反的顺序依次通电,电机就会反转。每顺序切换一相(1步),电机旋转18°,切换的频率决定电机的转速(切换的频率不能超过电机的最大响应频率)。根据图2.4中的电路,当BA (插孔)输入为高时,对应的A 相通电。 2) SW 电路 开关SW X 拨在下方时,输出端SWX 输出低电平,开关SW X 拨在上方时,输出端SWX 输出高电平。其中SW1和SW3具备消除抖动电路,这样,SW1或SW3每上下拨动一次,输出端产生单一的正脉冲(上升沿在前,下降沿在后)。 3) LED 和KEY 电路 步骤: 1) 在S : \ STUDY \ Keil 文件夹中新建Ex04文件夹(该文件夹用于保存本次实验的所 有容),通过网上邻居将服务器上本次实验共享文件夹下的所有文件拷贝到S : \ STUDY \ Keil \ Ex04文件夹中。 2) 在Keil C 中创建一个新工程,新工程保存为S : \ STUDY \ Keil \ Ex04\Ex04.uv2, 然后选择单片机型号为Generic 中的8051。 3) 设置工程选项,将工程选项设置如下: 图2.5 单脉冲电路原理图 +5V +5V 图2.4 步进电机驱动电路原理图 LED1 LED8 +5V 图2.6 LED 和KEY 电路 +5V

单片机原理及应用习题答案

思考与练习题1 1.1单项选择题 (1)单片机又称为单片微计算机,最初的英文缩写是( D ) A.MCP B.CPU C.DPJ D.SCM (2)Intel公司的MCS-51系列单片机是( C )的单片机。 A.1位 B.4位 C.8位 D.16位 (3)单片机的特点里没有包括在内的是( C ) A.集成度高 B.功耗低 C.密封性强 D.性价比高 (4)单片机的发展趋势中没有包括的是( B ) A.高性能 B.高价格 C.低功耗 D.高性价比 (5)十进制数56的二进制数是( A ) A.00111000B B.01011100B C.11000111B D.01010000B (6)十六进制数93的二进制数是( A ) A.10010011B B.00100011B C.11000011B D.01110011B (7)二进制数11000011的十六进制数是( B ) A. B3H B.C3H C.D3H D.E3H (8)二进制数11001011的十进制无符号数是( B ) A. 213 B.203 C.223 D.233 (9)二进制数11001011的十进制有符号数是( B ) A. 73 B.-75 C.-93 D.75 (10)十进制数29的8421BCD压缩码是( A ) A.00101001B B.10101001B C.11100001B D.10011100B (11)十进制数-36在8位微机中的反码和补码是( D ) A.00100100B、11011100B B.00100100B、11011011B C.10100100B、11011011B D.11011011B、11011100B (12)十进制数+27在8位微机中的反码和补码分别是( C ) A.00011011B、11100100B B.11100100B、11100101B C.00011011B、00011011B D.00011011B、11100101B (13)字符9的ASCII码是( D ) A.0011001B B.0101001B C.1001001B D.0111001B (14)ASCII码1111111B的对应字符是( C ) A. SPACE B.P C.DEL D.{ (15)或逻辑的表达式是( B ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (16)异或逻辑的表达式是( C ) A.A?B=F B. A+B=F C. A⊕B=F D.(A?B)=F (17)二进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B ) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.10101010B、00000000B、10101010B (18)二进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D ) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B (19)下列集成门电路中具有与门功能的是( D ) A.74LS32 B.74LS06 C.74LS10 D.74LS08

单片机原理及应用教程第3版习题课后答案

《单片机原理及应用程序》(第三版)习题参考答案 第一章 1. 为什么计算机要采用二进制数?学习十六进制数的目的是什么? 在计算机中,由于所采用的电子逻辑器件仅能存储和识别两种状态的特点,计算机部一切信息存储、处理和传送均采用二进制数的形式。可以说,二进制数是计算机硬件能直接识别并进行处理的惟一形式。十六进制数可以简化表示二进制数。 2. (1) 01111001 79H (2) 0.11 0.CH (3) 01111001.11 79.CH (4) 11101010.101 0EA.AH (5)01100001 61H (6) 00110001 31H 3. (1) 0B3H (2)80H (3) 17.AH (4) 0C.CH 4. (1)01000001B 65 (2) 110101111B 431 5. (1) 00100100 00100100 00100100 (2) 10100100 11011011 11011100 (5) 10000001 11111110 11111111 6. 00100101B 00110111BCD 25H 7. 137 119 89 8.什么是总线?总线主要有哪几部分组成?各部分的作用是什么? 总线是连接计算机各部件之间的一组公共的信号线。一般情况下,可分为系统总线和外总线。 系统总线应包括:地址总线(AB)控制总线(CB)数据总线(DB) 地址总线(AB):CPU根据指令的功能需要访问某一存储器单元或外部设备时,其地址信

息由地址总线输出,然后经地址译码单元处理。地址总线为16位时,可寻址围为216=64K,地址总线的位数决定了所寻址存储器容量或外设数量的围。在任一时刻,地址总线上的地址信息是惟一对应某一存储单元或外部设备。 控制总线(CB):由CPU产生的控制信号是通过控制总线向存储器或外部设备发出控制命令的,以使在传送信息时协调一致的工作。CPU还可以接收由外部设备发来的中断请求信号和状态信号,所以控制总线可以是输入、输出或双向的。 数据总线(DB):CPU是通过数据总线与存储单元或外部设备交换数据信息的,故数据总线应为双向总线。在CPU进行读操作时,存储单元或外设的数据信息通过数据总线传送给CPU;在CPU进行写操作时,CPU把数据通过数据总线传送给存储单元或外设9.什么是接口电路? CPU与接口电路连接一般应具有哪些信号线?外部设备与接口电路连接一般应具有哪些信号线? CPU通过接口电路与外部输入、输出设备交换信息, 一般情况下,外部设备种类、数量较多,而且各种参量(如运行速度、数据格式及物理量)也不尽相同。CPU为了实现选取目标外部设备并与其交换信息,必须借助接口电路。一般情况下,接口电路通过地址总线、控制总线和数据总线与CPU连接;通过数据线(D)、控制线(C)和状态线(S)与外部设备连接。 10. 存储器的作用是什么?只读存储器和随机存储器有什么不同? 存储器具有记忆功能,用来存放数据和程序。计算机中的存储器主要有随机存储器(RAM)和只读存储器(ROM)两种。随机存储器一般用来存放程序运行过程中的中间数据,计算机掉电时数据不再保存。只读存储器一般用来存放程序,计算机掉电时信息不会丢失。 11.某存储器的存储容量为64KB,它表示多少个存储单元?64×1024 12. 简述微型计算机硬件系统组成。

《单片机原理及应用》实验指导书.

单片机原理及应用实验指导书 罗钧付丽编 重庆大学光电工程学院 2010年5月 目录 实验规则 (2 实验一单片机监控程序实验(4学时 (3 附1.1:LAB2000P实验仪 (9 附1.2:验证实验程序 (10 附1.3:K EIL的使用步骤参考 (17 实验二 A/D转换实验 (3学时 (21 附2.1:验证实验程序 (24 实验三 D/A转换实验 (2学时 (25

附3.1:DA转换实验程序 (27 实验四单片机系统综合实验( 3学时 (28 附4.1:实验仪中的温度传感器电路 (30 附4.2:直流电机和步进电机控制接口电路 (31 实验规则 为了维护正常的实验教学次序,提高实验课的教学质量,顺利的完成各项实验任务,确保人身、设备安全,特制定如下实验规则: 一、实验前必须充分预习,完成指定的预习内容,预习要求如下: 1.认真阅读本实验指导书,分析掌握本次实验的基本原理; 2.完成各实验预习要求中指定的内容; 3.明确实验任务。 二、实验时,认真、仔细的写出源程序,进行调试,有问题向指导老师举手提问; 三、实验时注意观察,如发现有异常现象(电脑故障或实验箱故障,必须及时报告指导老师,严禁私自乱动。 四、实验过程中应仔细观察实验现象,认真记录实验数据、波形、逻辑关系及其它现象,记录的原始结果必须经指导教师审阅签字后,方可离开。 五、自觉保持实验室的肃静、整洁;实验结束后,必须清理实验桌,将实验设备、工具、导线按规定放好,并填写仪器设备使用记录。 六、凡有下列情况之一者,不准做实验: 1.实验开始后迟到10 分钟以上者;

2.实验中不遵守实验室有关规定,不爱护仪器,表现不好而又不服从教育者; 七、实验后,必须认真作好实验报告,在规定时间里必须交给实验指导老师,没交实验报告者,视为缺做一次实验。实验报告要求必须包括: 1.写出设计实验程序; 2.总结实验步骤和实验结果; 八、一次未做实验,本实验课成绩视为不及格。 以上实验规则,请同学们自觉遵守,并互相监督。 实验一单片机监控程序实验(4学时 实验预习要求: 1.按照附3学习使用Keil软件。 2.熟悉键盘和显示器接口及工作原理。 3.根据实验原理,读懂验证实验程序,并写出设计性实验源程序。 4.思考题: (1从附1.2监控程序可以看出:六位数码管显示的数据存放在单片机哪个位置? (2参考图1.1A与监控程序,键盘上若数字键7被按下,单片机怎样判断该键被按下? 一、实验目的 1.掌握8031系统中,键盘和显示器的接口方法。 2.掌握键盘扫描和LED八段码显示器的工作原理。

单片机原理实验报告 (格式)

成都工业学院实验报告 评定成绩:评定教师: 课程名称:单片机原理与应用实验类型:验证性 实验项目名称:实验二:基本的输入输出 学生姓名:薛佳伟专业:电子信息工程学号:1603013135 同组学生姓名:谢志宏指导老师:曾一江,袁曦 实验地点:2209 实验日期:2018 年11 月1 日 一、实验目的和要求 进一步熟悉Keil软件的单步和断点的调试方法,熟悉proteus软件的仿真环境,掌握用proteus软件绘制原理图,加载程序进行仿真的基本方法;熟悉片内I/O查询方式输入输出的仿真输出编程方法及无条件指令LJMP与SJMP的应用,完成片内I/O口查询方式输入输出的仿真调试。 二、实验内容和原理 采用查询方式判断SU1开关是否闭合,如果开关闭合,采用循环程序控制方式控制4个灯

轮流点亮,延时方式采用软件延时。 三、主要仪器设备 计算机一台,KEIL仿真软件,Proteus仿真软件,单片机开发板一个。 四、实验步骤 (一)建立设置工程,保存文件 使用keil软件工程建立,输入程序并保存工程SY3.Uv2及SY3.ASM的文件,并对工程进行设置 (二)编译,链接 编译,链接程序,修改编译错误,并生成SY3.HEX文件用于Protues仿真 (三)调用延时程序 将断点设在RET处,设置PC=0100H点击运行,看程序从0100H是否能执行到断点RET 处 (四)调试主程序 1.调试前段程序 调试时,先将“断点”设在LOOP1处,然后按复位按钮使单片机”复位“,程序从0000H 开始执行,看开关为“0”时程序是否停在LOOP1处,若不是,则用单步方式细调。 在调试P0~P3端口时,可选择打开P0~P3口的监视窗口。 2.调试后一段程序 第一步先检查调用指令是否正常。检查调用指令时,将“断点”设在标号DL Y即0100H

单片机原理实验指导书

实验一LED 流水灯 一、实验目的 1. 学习单片机并口的使用方法。 2. 学习延时子程序的编写和使用。 3. 学习集成开发环境MedWin的安装与使用。 4. 学习STC单片机在线下载软件STC-ISP的使用。 二、实验内容 所谓流水灯就是4 个发光二极管(LED)轮流点亮,周而复始。实验板上以P3口作输出口,接有四只发光二极管,当单片机的引脚输出为低电平时发光二极管点亮,为高电平时息灭。编写程序,使4 个发光二极管循环点亮,时间间隔约0.5 秒。 三、实验电路连线 实验板上与本实验有关的硬件如下图所示。4 个LED上串联4 个限流电阻,以防止其电 流过大而烧坏。单片机的主时钟为11.0592MHz。 四、实验说明 1、P3 口是准双向口,它作为输出口时与一般的双向口使用 方法相同。由准双向口结构可知当P1 口用作输入口时必须先对它 置“1”。若不先对它置“1”,读入的数据是不正确的。输出时需 要接上拉电阻,P3 口内部有弱上拉,若将外围电路设计为低有效, 高无效,则无需再外接上拉电阻。 2、为使每次点亮一个LED,应使P3.4~P3.7 4 个端口中有 一个为低,其余均为高,延时一段时间后再点亮另一个LED。 3、编写for 循环构成的软件延时子程序,在MedWin 下模拟 执行,根据MedWin 显示的执行时间,调整循环变量的终值,使延时时间约0.5秒,在晶振频率为11.0592MHz情况下,循环终值约27000。程序如下: void delay(void) { unsigned int i,j,k,l; for(i=0;i<=27000;i++) {j++; k++;l++;}; } #include void main (void) { unsigned char i,c[4] = {0xef,0xdf,0xbf,0x7f};// 从左往右流水 i = 0; while(1) { P3 = c[i & 3]; i++; 11 delay(); } } 五、思考 1、如何使点亮的LED 从右往左移动? 2、如何使点亮的LED 从两边往中间移动?

《单片机原理及应用》实验报告

《单片机原理及应用》 实验报告 2017/2018 学年第1 学期 系别计算机学院 专业软件工程 班级17软件工程班 姓名XXXXXX 学号8888888888 授课老师******

实验一:流水灯实验 1.实验目的 (1)学习编译和仿真环境使用 (2)学习P3口的使用方法 (3)学习延时子程序的编写 2实验内容 (1)通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的接口;(2)通过改变并行口输出电平控制LED灯的点亮与否,通过延时程序控制亮灯时间。 3.实验运行结果图 4.源代码 //流水灯实验 #include //包含单片机寄存器的头文件 sfr x=0xb0; //P3口在存储器中的地址是b0H,通过sfr可定义8051内核单片机 //的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的

操作 /**************************************** 函数功能:延时一段时间 *****************************************/ void delay(void) { unsigned char i,j; for(i=0;i<255i++) for(j=0;j<255j++) ; //利用循环等待若干机器周期,从而延时一段时间 } /***************************************** 函数功能:主函数 ******************************************/ void main(void) { while(1) { x=0xfe; //第一个灯亮 delay(); //调用延时函数 x=0xfd; //第二个灯亮 delay(); //调用延时函数 x=0xfb; //第三个灯亮 delay(); //调用延时函数 x=0xf7; //第四个灯亮 delay(); //调用延时函数 x=0xef; //第五个灯亮 delay(); //调用延时函数 x=0xdf; //第六个灯亮

单片机原理实验报告(详细)

湖南城市学院 实验报告 2018-2019 学年上学期 姓名:*** 班级学号:****** 实验课程:单片机原理及应用 实验室名称:电子工程实验室 湖南城市学院信息与电子工程学院实验中心印制

实验项目名称:实验一指示灯和开关控制器实验 一、实验目的及要求 1、学习51单片机I/O基本输入/输出功能,掌握汇编语言的编程与调试方法; 2、熟悉proteus软件,了解软件的结构组成与功能; 3、学会在ISIS模块中进行汇编程序录入、编译和调试; 4、理解单片机程序控制原理,实现指示灯/开关控制器的预期功能。 二、实验原理 实验电路原理图如图1所示,图中输入电路由外接在P3口的8只拨动开关组成;输出电路由外接在P2口的8只低电平驱动的发光二极管组成。此外,还包括时钟电路、复位电路和片选电路。 图1 实验原理图

在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的灯亮状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。软件编程原理为:(1)8只发光二极管整体闪烁3次 亮灯:向P2口送入数值0; 灭灯:向P2口送入数值0FFH; 闪烁3次:循环3次; 闪烁快慢:由软件延时时间决定。 (2)根据开关状态控制灯亮或灯灭 开关控制灯:将P3口(即开关状态)内容送入P2口; 无限持续:无条件循环。 程序流程图如图2所示。 图2 实验程序流程图

三、实验仪器设备及装置 (1)硬件:电脑一台; (2)仿真软件:Proteus; (3)编程软件Keil uVision4。 其中,仿真软件ISIS元件清单如表1所示。 表1 仿真软件ISIS元件清单 四、实验内容和步骤 (一)实验内容: (1)熟悉ISIS模块的汇编程序编辑、编译与调试过程; (2)完成实验的汇编语言的设计与编译; (3)练习ISIS汇编程序调试方法,并最终实现实验的预期功能。 (二)实验步骤: (1)提前阅读与实验相关的阅读材料; (2)参考指示灯/开关控制器的原理图和实验的元件清单,在ISIS中完成电路原理的绘制; (3)参考程序流程图在Keil uVision4中编写和编译汇编语言程序; (4)利用ISIS的汇编调试功能检查程序的语法和逻辑错误; (5)观察仿真结果,检验与电路的正确性。

单片机原理与应用实验指导书(学生部分)(2009.4修订)

单片机原理与应用实验指导书 2009年5月

第一章实验箱系统概述一、系统地址分配 (1),存贮器地址分配 (2),I/O地址分配 二、系统接口定义 (1),CZ11:用户实验通讯接口; (2),CZ4:打印接口;

(3),JX0,JX17为系统提供的数据总线接口 (4),CZ7:系统提供的扩展接口; (5),JX12、JX14:液晶显示接口 三、通用电路简介 (1)LED发光二极管指示电路:实验台上包括16只发光二极管及相应驱动电路。见图1-1,Ll—L16为相应发光二极管驱动信号输入端, 该输入端为低电平 “0”时发光二极管亮

图1-6 (2)逻辑电平开关电路:见图1-2。实验台上有8只开关Kl-K8, 与之相对应的K1-K8个引线孔为逻辑电平输出端。开关向上拨相应插孔输出高电平“l”, 向下拨相应插孔输出低电平“0”。 图1-7 (3)单脉冲电路:实验台上单脉冲产生电路如图1-3,标有“”和“”的两个引线插孔为正负单脉冲输出端。附近按钮AN为单脉冲产生按钮,每按一次产生一个单脉冲。 图1-8

(4)分频电路:该电路由一片74LS393组成,见图1-4。T0—T7为分频输出插孔。 该计数器在加电时由RESET信号清零。当脉冲输入为8.0MHZ时,T0—T7输出脉 冲频率依次为4.0MHZ,2.0MHZ,1.0MHZ,500KHZ,250KHZ,125KHZ,62500HZ,31250HZ。 图1-9 (5)脉冲发生电路:实验台上提供一8MHZ的脉冲源,见图1-5,实验台上标有8MHZ 的插孔,即为脉冲的输出端。 图1-10 (6)485接口电路: 图1-11

单片机原理与接口技术-C51编程(张毅刚第二版)-习题答案

单片机原理及接口技术(C51 编程)( 第2 版)- 习题答案汇总23 单片机答案 第1章单片机概述 思考题及习题 1 参考答案 一、填空 1. 除了单片机这一名称之外,单片机还可称为()或()。答:微控制器,嵌入式 控制器. 2. 单片机与普通微型计算机的不同之处在于其将()、()和()三部分,通过 内部()连接在一起,集成于一块芯片上。答:CPU、存储器、I/O 口、总线 3. AT89S51 单片机工作频率上限为()MHz。答:24MHz。 4. 专用单片机已使系统结构最简化、软硬件资源利用最优化,从而大大降低()和提 高()。答:成本,可靠性。 二、单选 1. 单片机内部数据之所以用二进制形式表示,主要是 A.为了编程方便 B. 受器件的物理性能限制 C.为了通用性 D. 为了提高运算数度答:B 2. 在家用电器中使用单片机应属于微计算机的。 A.辅助设计应用 B. 测量、控制应用 C.数值计算应用 D. 数据处理应用答:B 3. 下面的哪一项应用,不属于单片机的应用范围。 A.工业控制B.家用电器的控制C.数据库管理D.汽车电子设备答:C 三、判断对错 1. STC 系列单片机是8051内核的单片机。对 2. AT89S52 与AT89S51相比,片内多出了4KB的Flash 程序存储器、128B的RAM、1 个中断源、1 个定时器(且具有捕捉功能)。对 3. 单片机是一种CPU。错 4. AT89S52 单片机是微处理器。错 5. AT89S51片内的Flash 程序存储器可在线写入(ISP),而AT89C52则不能。对 6. 为AT89C51单片机设计的应用系统板,可将芯片AT89C51直接用芯片AT89S51替换。对 7. 为AT89S51单片机设计的应用系统板,可将芯片AT89S51直接用芯片AT89S52替换。对 8. 单片机的功能侧重于测量和控制,而复杂的数字信号处理运算及高速的测控功能则是 DSP的长处。对 第2 章AT89S51 单片机片内硬件结构 思考题及习题 2 参考答案

2012单片机原理及应用实验指导书

《单片机原理与应用》 实验指导书 青岛科技大学信息学院

实验一简单程序设计 一、实验目的 1.熟悉实验环境 2.掌握基本指令的使用方法 3.掌握RAM的操作方法 二、预习知识 1. MCS-51存储器组织 2. 简单指令 3. QTH单片机实验仪和模拟调试器集成开发环境 三、实验设备与环境 1.硬件:QTH单片机实验仪 2.软件:QTH模拟调试器集成开发环境 四、实验内容 1. 设从片内30H和32H开始分别存放两个16位无符号二进制数(低8位在低地址,高8位在高地址),完成两个数相加的程序,并将结果放入34H开始的单元。将1122H和3344H分别送入RAM单元,观察结果和CY标志;再分别将8899H和AABBH放入RAM单元,再观察结果和CY标志。 2.将30H单元内的2个BCD数相乘,乘积为BCD数,并把乘积送入31H单元。 3.实现将无符号数扩大6倍,设扩大6倍后的值不超过255。 4.内部RAM从30H开始的连续10个单元存放着10个无符号数,写一段程序将此十个数按增序列排序 5. 以上编写的程序,进行单步执行,观察相应专用寄存器、RAM空间(包括工作寄存器区、位寻址区、用户RAM区)数据的变化情况以及程序存储器的指令代码。 6. 验证堆栈操作的步骤: PUSH direct:①(SP)←(SP)+1, ②direct地址单元的内容压入SP指向的单元。 POP direct:①SP指向的单元内容弹出到以direct为地址的单元, ②(SP)←(SP)-1。 7. 调试上课所讲的例题。 五、实验要求 掌握程序的设计、调试并保证其正确运行;认真完成实验报告。 六、实验报告1、实验目的2、实验内容3、实验采用的器件和连线4、实验结果和现象5、实验过程分析6、实验总结

单片机原理与接口技术实验指导书

《单片机原理与接口技术》实验指导书 主编李鹏、张杰 西南科技大学制造科学与工程学院 2013年3月

制造科学与工程学院 目录 实验一I/O接口实验 (3) 实验二中断系统实验 (5) 实验三定时器/计数器实验 (8) 实验四串行通信实验 (10) 2

西南科技大学实验指导书 3 实验一 I/O 接口实验 一、 实验目的 了解单片机片内4个8位I/O 端口的使用,掌握I/O 端口的应用及C51的编程方法。 二、 实验仪器和设备 1. 单片机实验板 一台 2. 计算机 一台 三、 实验简介 1. 实验内容 上下来回循环点亮八个发光二极管。 2. 实验线路及其连接 图1-1 发光二极管与P1口的连接电路 3. 实验程序参考流程图

制造科学与工程学院 图1-4程序流程图 四、实验步骤 1. 检查实验板连线是否正确 2. 用USB线连接单片机实验板和PC,利用USB接口对实验板供电 3. 用keil软件编写并调试程序,在程序无误的时候编译成hex文件,使用串口线与电脑的串口相连,运行串口下载工具STC-ISP,下载程序到单片机中。 4.观察发光二极管的闪烁状态,是否与实验要求相符。若不符,请修改程序,直到达到实验需求。 五、实验报告 实验类型为验证型实验,要求学生在实验过程中掌握单片机的输入输出接口技术、单片机的编程方法,为后续实验打下坚实的基础。 本次实验报告的内容主要是: 1. 实验目的:本次实验主要达到的要求及目的 2. 实验设备:本次实验的主要设备 3. 实验内容:本次实验的硬件原理图(要求用Protel或Proteus画出原理图)及原理图的说明、程序流程图及详细说明、实验程序等 4. 实验具体步骤:连接线路、输入程序、调试程序、观察结果、修改程序 5. 实验程序上机验证:写出运行后得到的结果,并分析与预习中的结果是否相同 6. 心得体会:本次实验中遇到的问题、解决方法及收获 六、预习要求 1. 复习单片机输入输出接口技术相关内容。 2. 预习本次实验内容,画出流程图、编写程序 4

单片机原理实验

.. 《单片机原理及应用》 实验报告册 系别:电气学院 班级:自动化142 姓名: 学号:

实验一:熟悉keil c51 集成开发环境及常用指令 一、实验目的: (1)了解80c51典型应用系统的开发过程,熟悉keil c51集成开发环境; (2)掌握单步执行程序,查看专用寄存器和单片机RAM的执行结果; (3)掌握80c51的寻址方式及常用指令的使用方法。 二、实验内容 (1)基本指令练习; (2)数据转送(循环方式)。 三、思考题 1、分别执行以下程序,在调试状态下观察有关单元的内容顺序执行的程序: ORG 00H SJMP MAIN ORG 30H

MAIN: MOV SP,#60H MOV R0,#40H MOV R1,#30H MOV 30H,#50H MOV A,#40H MOV @R0,A ;R0与A内容相等为40H INC A MOV A,@R1 ;A的内容为30H,R1的内容给A PUSH ACC ;61H给A POP 32H ;60H给30H MOV A,#5FH SWAP A ;高四位低四位交换,A为F5H MOV DPTR,#0030H MOVX @DPTR,A 循环程序: XUNHUAN1:

MOV R0,#30H ;要赋值的首地址 MOV R2,#10H ;一共赋值16次 CLR A ;从0开始赋值 LOOP1: MOV @R0,A ;赋值16次后停止赋值 INC A ;32H=2,37H=7,3BH=0B,3FH=0F INC R0 DJNZ R2,LOOP1 XUNHUAN2: MOV R0,#30H MOV R1,#40H MOV R2,#10H LOOP2: MOV A,@R0 ;从40H开始一直赋值 MOV @R1,A ;赋的值从30H开始 INC R0 ;就是40H=30H,41H=31H INC R1 ;一直到R2=0

相关文档
最新文档