单片机实验

单片机实验
单片机实验

*课题:I /O口输出实验—LED流水灯实验

实验要求:利用51单片机及8个发光二级管等器件,构成一个流水灯单片机系统。

实验目的:1、掌握单片机最小系统的构成;

2、掌握I/O口的使用及驱动能力的概念;

3、熟悉移位指令和软件延时程序。

教学课时:2

教学方法:板书,多媒体

教学内容与步骤:

1、实验电路及连线

2、主要知识点概述:

本实验涉及到三个知识点:单片机最小系统的构成、单片机I/O口的使用以及软件延时程序的编写。

1)单片机最小系统由单片机芯片、时钟电路以及复位电路构成。

2)I/O口的使用:P1口是准双向口。它作为输出口时与一般的双向口使用

方法相同,即当P1口用为输入口时,必须先对它置“1”。若不先对它置“1”,读入的数据可能是不正确的。

3)延时子程序的延时计算问题。对于程序

DELAY:MOV R6,#200

DEL1:MOV R7,#250

DEL2:DJNZ R7,DEL2

DJNZ R6,DEL1

RET

由指令表可知MOV、DJNZ指令均需用两个机器周期,在采用12MHz晶振时,一个机器周期时间长度为1us,所以该段程序执行时间约为:[(250*2+2)*200+2]*1us=1000402≈100ms

3、实验流程图

4、实验步骤

a、建立实验程序并编译,加载hex文件,仿真;

b、如不能正常工作,打开调试窗口进行调试

参考程序:

ORG 0030H

START: MOV R2,#8

MOV A,#0FEH

LOOP: MOV P1,A

LCALL DELAY

RL A

DJNZ R2,LOOP

LJMP START

DELAY: MOV R5,#20 ;延时程序,延时0.2s D1: MOV R6,#20

D2: MOV R7,#248

DJNZ R7,$

DJNZ R6,D2

DJNZ R5,D1

RET

END

课题:BCD码译码的多位数码管扫描显示实验

实验要求:利用51单片机、BCD译码芯片74LS47和两位LED构成一个数码管扫描显示系统。

实验目的:1.掌握BCD译码电路的工作原理。

2.掌握多位数码管显示的编程。

教学课时:2

教学方法:板书,多媒体

教学内容与步骤:

1、实验电路及连线

2、主要知识点

二进制编码的十进制数,简称BCD码(Binary coded Decimal),此例中,74LS47完成BCD编码的功能。+

多位LED显示,先往段码端口输出段码,再选通位选,对应的LED显示。3.实验效果说明

两个数码管同时循环显示0~9。

4、实验程序流程图

5、实验步骤

a.建立实验程序并编译,加载hex文件,仿真;

b.如不能正常工作,打开调试窗口进行调试。

参考程序:

ORG 00H

L: MOV A, #0 ;设置显示初值

MOV R0, #10 ;设置显示个数START:MOV P0, A ;向P0口输出显示段码SETB P3.0

SETB P3.1 ;位选

LCALL DELAY

INC A

DJNZ R0, START

JMP L

DELAY: MOV R5, #50 ;延时程序

D1: MOV R6, #20

D2: MOV R7, #248

DJNZ R7, $ DJNZ R6, D2 DJNZ R5, D1 RET

END

课题:8051与PC之间串行通信实验

实验要求:51单片机的串行口经MAX232(实际使用MAX202,二者功能一样)电平转换后,与PC串口相连,实现51和PC的通信。

实验目的:1.掌握8051单片机串行口软件编程和硬件使用方法;

2.了解PC超级终端(串口调试助手)和RS232的使用。

教学课时:2

教学方法:板书,多媒体

1、实验电路图

使用CPU板,用串口延长线将其和PC相连。使用06板接入一按键到P3。5口线。

2、主要知识点概述

在简单的应用中,最常用的是MAX232电路。它只需要有3条线即可完成通信,分别是第二脚RXD , 第3脚TXD ,第5脚GND。串行通信与单片机之间的接口:由于串行通信的电平逻辑定义是+15V(高电平1)-15V(低电平0) 而单片机中分别用5V ,0V 来表示1,0 它们之间必须通过电平转换才可以完成通信。

实验流程图:

3、步骤

a、建立实验程序并编译,加载hex文件,仿真;

b、如不能正常工作,打开调试窗口进行调试

参考程序:

ORG 0000H

MOV SCON,#50H

MOV TMOD,#20H

MOV PCON,#00H

MOV TH1,#0FdH ;预置初值,设波特率为9600K

MOV TL1, #0FdH

SETB TR1

WRIT: JB P3.5,$

ACALL DELAY10

JB P3.5,WRIT

JNB P3.5,$

MOV A, #01H ;将16进制的字符01发送到串口去

MOV SBUF,A

AJMP WRIT

DELAY10: MOV R1,#20 ;10毫秒延时子程序

D2: MOV R2,#248

DJNZ R2,$

DJNZ R1,D2

RET

END

课题:8255I/O扩展实验

实验要求:利用8255可编程并行口芯片,实现输入/输出实验,实验中用8255 PA 口做输出,PB口作输入。

实验目的:1.了解8255芯片结构及编程方法;

2.了解8255输入/输出实验方法。

教学课时:2

教学方法:板书,多媒体

1、实验电路

2、实验说明

可编程通用接口芯片8255A有三个八位的并行I/O口,它有三种工作方式。本实验采用的是方式0:PA、PC口输出,PB口输入。很多I/O实验都可以通过

8255来实现。

3、实验程序流程图

4、实验步骤

a.建立实验程序并编译,加载hex文件,仿真;

b.如不能正常工作,打开调试窗口进行调试。

参考程序:

PA->PB:流水灯:

ORG 00H ORG 00H

MAIN: ACALL DELAY MAIN: ACALL DELAY MOV DPTR,#7003H MOV DPTR,#7003H MOV A,#82H MOV A,#82H

MOVX @DPTR,A MOVX @DPTR,A LOOP: MOV DPTR,#7001H MOV A,#11111110B MOVX A,@DPTR MOV DPTR,#7000H MOV DPTR,#7000H LOOP: MOVX @DPTR,A MOVX @DPTR,A RL A

SJMP LOOP ACALL DELAY DELAY: MOV R1,#00H SJMP LOOP

DLP: MOV R2,#50H DELAY: ….

DJNZ R2,$ END

DJNZ R1,DLP

RET

课题:A/D转换实验

实验要求:利用ADC0808/(0809)做A/D转换器,由实验板上的电位器提供模拟量输入,编制程序将模拟量转换成二进制数字量,用P1口输出到发光二极管显示,或通过八段码数码管将数值显示出来。

实验目的:1.了解A/D转换与单片机的接口方法;

2.了解ADC0809转换性能及编程方法;

3. 通过实验了解单片机如何进行数据采集

教学课时:2

教学方法:板书,多媒体

1、实验电路及连线

2、实验说明

A/D转换器大致有三类:一是双积分A/D转换器,优点是精度高,抗干扰性好,价格便宜,但速度慢;二是逐次逼近A/D转换器,精度、速度、价格适中;三是并行A/D转换器,速度快,价格也昂贵。

3、实验效果说明:

实验用的ADC0808属第二类,是8位A/D转换器,每采集一次一般需s

100。本实验可采用延时方式或查询方式读入A/D转换结果,也可以采用中断方式读入结果,在中断方式下,A/D转换结束后会自动产生EOC信号,将其与CPU的外部中断相接。

调整电位计,得到不同的电压值,转换后的数据通过发光二级管输出。

4、实验程序流程图

5、实验步骤

a、建立实验程序并编译,加载hex文件,仿真;

b、如不能正常工作,打开调试窗口进行调试。

参考程序:

ADCDATA E QU 35H ;存放转换后的数据

START BIT P2.1

OE BIT P2.7

EOC BIT P2.3

CLOCK BIT P2.0

ADD_A BIT P2.4

ADD_B BIT P2.5

ADD_C BIT P2.6

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN:

CLR ADD_A

CLR ADD_B

CLR ADD_C ;选择ADC0808的通道0

WAIT: CLR START

SETB START

CLR START ;启动转换CLOOP: CPL CLOCK

JNB EOC,CLOOP ;等待转换结束SETB OE ;允许输出

MOV ADCDATA,P1 ;暂存转换结果

CLR OE ;关闭输出

MOV P0,ADCDATA

LJMP WAIT

END

课题:D/A转换实验

实验要求:利用DAC0832 D/A转换电路,输出0--2.5V的电压,并使用电压表查看电压的变化。

实验目的:1.了解D/A转换的基本原理及DAC0832的性能和编程方法;

教学课时:2

教学方法:板书,多媒体

1、实验电路及连线

2、主要知识点概述:

本实验用到的主要知识点是:DAC0832的工作原理。

DAC0832是采用先进的CMOS工艺制成的单片电流输出型8位D/A转换器。它采用的是R-2R电阻梯级网络进行DA转换。电平接口与TTL兼容。具有两级缓存。

3、实验效果说明

通过电压表测量DAC转换出来的电压值

4、实验程序流程图

5、实验步骤

a、建立实验程序并编译,加载hex文件,仿真;

b、如不能正常工作,打开调试窗口进行调试。

参考程序:

DAC_CS BIT P2.0

DAC_WR BIT P2.1

DAC_BUS EQU P1

ORG 0000H

LJMP MAIN

ORG 0100H

MAIN:

MOV R0,#0x00

DAC_OUT:

MOV P1,R0

CLR DAC_CS

CLR DAC_WR

SETB DAC_CS

SETB DAC_WR

INC R0

DJNZ R1,$

LJMP DAC_OUT

END

单片机实训心得体会

单片机实训心得体会 篇一: 通过今次单片机实训,使我对单片机的认识有了更深刻的理解。系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。 由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。 踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。我相信其中的酸甜苦辣最终都会化为甜美的甘泉。 但在这次实训中同时使我对汇编语言有了更深的认识。当我第一次接触汇编语言就感觉很难,特别是今次实训要用到汇编语言,尽管困难重重,可我们还是克服了。这次的实训使培养了我们严肃认真的做事作风,增强了我们之间的团队合作能力,使我们认识到了团队合作精神的重要性。 这次实训的经历也会使我终身受益,我感受到这次实训是要真真正正用心去做的一件事情,是真正的自己学习的过

程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。希望这次的经历能让我在以后学习中激励我继续进步。 篇二:单片机实验心得 通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。 作为一名自动化专业的快大三学生,我觉得做单片机实习是十分必要的。在已度过的大学时间里,我们大多数接触的是专业课。我们在课堂上掌握的仅仅是专业课的理论知识,如何去锻炼我们的实践能力,如何把我们所学的专业基础课理论知识运用到实践中去,我想做类似实习就为我们提供了良好的实践平台 学习单片机没有捷径,不能指望两三天就学会,要坚持不懈,重在积累单片机是一门应用性和实践性很强的学科,要多动手,多做实验。 (4)要学会参考别人的程序,减少自己琢磨的时间,迅速提高自己的编程能力。 (5)碰到问题可以借助网络来搜寻答案和对自己有帮助的问题,一定会有所收获。

单片机实验项目及要求

单片机实验项目 实验一 LED闪烁灯设计(参照实验指导书实验一) 要求:1、完成一个LED亮、灭循环(间隔0.2秒)修改间隔时间为0.01秒 2、完成2个指示灯同时亮、灭循环(间隔0.2秒) 3、完成8个指示灯同时亮、灭循环(间隔0.2秒) 实验二广告灯左右移设计(参照实验指导书实验四) 要求:1、完成8个LED 单一灯(LED)的左移、右移(间隔0.2秒) 2、完成8个LED的从左到右、从右到左依次点亮(间隔0.2秒) 3、完成8个指示灯从两边倒中间依次点亮(间隔0.2秒) 4、完成8个指示灯从中间倒两边中间依次点亮(间隔0.2秒) 创新:实验一与实验二结合完成连续6个花色的广告灯运行过程 实验三单键识别设计(参照实验指导书实验八) 要求:1、完成独立按键的单次识别、去抖、等待弹起的原理与方法(利用8个LED实现BCD码变换)。 2、完成16进制、20进制等计数器编程方法 3、完成计数器的加、减法的计数过程及原理 4、完成一键多功能设计(参照实验指导书实验九) 5、完成4*4矩阵键盘的设计(参照实验指导书实验十四) 6、增加键盘音 实验四动态数码显示设计(参照实验指导书实验十三) 要求:1、完成2个动态数码管的设计(利用按键手动计数,实现20进制计数器的设计)(参照实验指导书实验十) 实验五六十秒计时器设计(参照实验十三)动态数码显示设计 1、完成8个动态数码管的设计(利用按键手动计数,实现60进制计数器的设计)(参照实验指导书实验十一) 2、利用4个动态数码管的完成20进制可逆计数器的设计(参照实验指导书实验十二) 实验七定时器中断实验(参照实验十六)定时计数器T0作定时应用设计(二) 要求:1、完成秒计数器,并在数码管上显示秒计数过程 2、完成进制控制(20秒),并在数码管上显示循环过程 实验八智能电子钟设计(参照实验二十)智能电子钟设计 要求:1、完成智能电子钟的自动走时设计,并在数码管上显示走时过程,时、分、秒中间采用“-”分开。 2、利用四个独立按键完成时、分、秒的初始化过程,要求第一个按键设置功能“0”代表时间设置功能、“1”代表分钟设置功能、“2”代表秒设置功能;第二、三个按键在不同的功能下分别控制各自的时、分、秒计数器;第四个按键完成设置退出。

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

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路与相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度与精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度与精度也相对要低一些。例如,现在的单片机产品的CPU 大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量与CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术与段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠标、打印机、硬盘、光盘等)。用户通过标准总线连接外设,能达到即插即用。单片机应用系统的外设都就是非标准的,且千差万别,种类很多。单片机的I/O接口实际上就是向用户提供的与外设连接的物理界面。用户对外设的连接要设计具体的接口电路,需有熟练的接口电路设计技术。 另外,单片机的微处理器(CPU)、存储器、I/O接口电路集成在一块芯片上,而通用微机的微处理器(CPU)、存储器、I/O接口电路一般都就是独立的芯片 1-4 IAP、ISP的含义就是什么? ISP:In System Programable,即在系统编程。用户可以通过下载线以特定的硬件时序在线编程(到单片机内部集成的FLASH上),但用户程序自身不可以对内部存储器做修改。 IAP:In Application Programable,即在应用编程。用户可以通过下载线对单片机进行在线编程,用户程序也可以自己对内部存储器重新修改。 1-6 51单片机与通用微机相比,结构上有哪些主要特点? (1)单片机的程序存储器与数据存储器就是严格区分的,前者为ROM,后者为RAM; (2)采用面向控制的指令系统,位处理能力强; (3)I/O引脚通常就是多功能的; (4) 产品系列齐全,功能扩展性强; (5) 功能就是通用的,像一般微处理机那样可广泛地应用在各个方面。 1-7 51单片机有哪些主要系列产品? (1)Intel公司的MCS-51系列单片机:功能比较强、价格比较低、较早应用的单片机。 此系列三种基本产品就是:8031/8051/8751; (2)ATMEL公司的89系列单片机:内含Flash存储器,开发过程中可以容易地进行程

单片机实验报告

实验报告 专业:计算机科学与技术班级:C093 姓名:孙丽君 学号:098677

实验一:数据传送实验 1.实验内容: 将8031内部RAM 40H—4FH单元置初值A0H—A FH,然后将片内RAM 40H—4FH单元中的数据传送到片内RAM 50H—5FH单元。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG 0000H RESET:AJMP MAIN ORG 003FH MAIN:MOV R0,#40H MOV R2,#10H MOV A,#0A0H A1:MOV@R0,A INC R0 INC A DJNZ R2, A1 MOV R1,#40H MOV R0, #50H

MOV R2, #10H A3: MOV A, @R1 MOV @R0, A INC R0 INC R1 DJNZ R2, A3 LJMP 0000H 3.实验结果: 4. CPU 对8031内部RAM存储器有哪些寻址方式? 答:直接寻址,寄存器寻址,寄存器间接寻址,位寻址。

5. 执行程序后下列各单元的内容是什么? 内部RAM 40H~4FH内容:A0~AF 内部RAM 50H~5FH内容:A0~AF 实验二多字节十进制加法实验 1.实验内容: 多字节十进制加法。加数首地址由R0 指出,被加数和结果的存储单元首地址由R1指出,字节数由R2 指出。将程序经模拟调试通过后,运行程序,检查相应的存储单元的内容。 2. 源程序清单: ORG0000H RESET: AJMP MAIN ORG0100H MAIN: MOV SP, #60H MOV R0, #31H MOV@R0, #22H DEC R0 MOV@R0, #33H

单片机实验总结

单片机实验总结

程序由410出品,与老师的不大一样,此处省去1万字-----最终解释归410所有 1.试编写程序。统计片内RAM 30H~50H单元中FFH的个数,并将统计结果存51H。 mov r0,#30h //把30h赋给R0 mov r1,#00h //把00h赋给R1 loop: cjne @r0,#0ffh,next //把R0所指的地址里的数(地址30h中的数)与0ffh比较 inc r1 //若为0ffh则R1加1(计算0ffh的个数) next: inc r0 //若不一样则R0加1(即把R0里的地址加1,R0将指向下一个地址) cjne r0,#51h,loop //比较R0所存的地址与51h,若不等则跳回loop 继续执行 mov 51h,r1 //若相等(R0里的数就为51h,完成30h到50h的计数)将R1里的值赋到地址51h里,即地址51h 中存储着0ffh的个数 sjmp $ //等待 end 2、从片内RAM 30H单元开始存放着一组无符号数,其个数存在21H单元中。试编写程序,找出其中最小的数,并将其存入20H单元中。 mov r0,#30h //把30h赋给R0 mov a,@r0 //把R0所指30H中的数赋给a(a中就是地址30h中的无符号数) mov r1,21h //把21h中的数赋给R1 loop: inc r0 //R0加1(即R0将指向下一个地址) mov 30h,@r0 //把R0所指地址的数给到地址30h中 cjne a,30h,chk //比较a中的数与地址30h中的数的大小,若a中的数>30H中的数,则Cy=0;否则相反 chk: jc lop //判断Cy是否为1,若是,则执行下面程序,否则跳至lop 继续执行 mov a,@r0 //把R0所指地址中的数给a,即把最小数赋给了a lop: djnz r1,loop //R1减一,程序跳至loop继续执行,循环直至R1减到0 mov 20h,a //把a中的数赋到地址20h中 end 3、设片外RAM 2000H单元中有一个8位二进制数,试编程将该数的低四位屏蔽掉,并送回原存储单元。 mov dptr,#2000h //将片外地址2000h给dptr movx a,@dptr //将片外地址2000h中的数赋给a anl a,#0f0h //将a中的数与0f0h与下,屏蔽低四位的数 movx @dptr,a //将屏蔽好的数送回到片外地址2000h中 end

2019单片机实验要求指导书13页word

海南师大物理与电子工程学院 电子信息科学与技术专业《单片机应用技术》 实验指导 2019年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文件,进行仿真测试。 4、实验开发板的使用 (1)认真研读本学期所用实验开发板(普中HC6800EM3 V2.2单片机开发板)的使用说明及电路原理图。(实验前须预习) (2)安装开发板驱动软件:CH340驱动程序。(如已装过,略过本步骤)(3)连接开发板和电脑,打开开发板电源,运行开发板专用烧录下载程序“PZISP自动下载软件”,设置正确的参数,将前面所生成的.hex文件下载到开发板单片机上。 (4)接线:P1口接开关,P0口接led灯。具体是开发板上的JP10接J12,JP8接JP5,如下图所示:

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

第一章习题参考答案 1-1:何谓单片机?与通用微机相比,两者在结构上有何异同? 答:将构成计算机的基本单元电路如微处理器(CPU)、存储器、I/O接口电路和相应实时控制器件等电路集成在一块芯片上,称其为单片微型计算机,简称单片机。 单片机与通用微机相比在结构上的异同: (1)两者都有CPU,但通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的进一步提高。例如,现今微机的CPU都支持浮点运算,采用流水线作业,并行处理、多级高速缓冲(Cache)技术等。CPU的主频达到数百兆赫兹(MHz),字长普遍达到32位。单片机主要面向控制,控制中的数据类型及数据处理相对简单,所以单片机的数据处理功能比通用微机相对要弱一些,计算速度和精度也相对要低一些。例如,现在的单片机产品的CPU大多不支持浮点运算,CPU还采用串行工作方式,其振荡频率大多在百兆赫兹范围内;在一些简单应用系统中采用4位字长的CPU,在中、小规模应用场合广泛采用8位字长单片机,在一些复杂的中、大规模的应用系统中才采用16位字长单片机,32位单片机产品目前应用得还不多。 (2) 两者都有存储器,但通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。现今微机的内存容量达到了数百兆字节(MB),存储体系采用多体、并读技术和段、页等多种管理模式。单片机中存储器的组织结构比较简单,存储器芯片直接挂接在单片机的总线上,CPU对存储器的读写按直接物理地址来寻址存储器单元,存储器的寻址空间一般都为64 KB。 (3) 两者都有I/O接口,但通用微机中I/O接口主要考虑标准外设(如CRT、标准键盘、鼠

单片机实验内容

实验一P1口输入输出实验、继电器控制、音频控制 一、实验目的: 1.学习I/O端口的使用方法 2.掌握继电器控制的基本方法,了解用弱点控制强电的工作原理 3.学习单片机汇编语言源程序的编制方法和调试方法,学习延时子程序的编写和使用 4.了解音频发声原理 二、实验要求: 1.P1口做输出口,接8只发光二极管,编写程序使发光二极管循环点亮。 2.P1.0、P1.1作输入口,接两个拨动开关,P1.2、P1.3作输出口接两个发光二极管,编程 读取开关状态,并在二极管上显示出来。 3.利用单片机的端口,输出电平控制继电器的吸合和断开,实现对外部装置的控制。 4.用端口输出不同频率的脉冲,控制喇叭发出不同音调。 5.用P1.0和延时子程序实现占空比可调的PWM电压波形。 三、实验说明: 1. P1口用为输入口时,必须先对它置“1”才能正确读入数据。 2. 继电器可以实现电子电路和电气电路的连接桥梁。其控制电压是5V,控制端为高电平时继电器的工作常开触点吸合,电气线路连接;控制端为低电平时,触点断开,电气线路切断。 3. 声音的频率由端口输出时延时时长来控制,输出的方波经放大滤波后驱动扬声器发声。 4. PWM是脉宽调制电压信号,可以通过占空比(脉冲中高电平与低电平的宽度比)来输出可调模拟电压,是单片机上常用的模拟量输出方法。例如50%(5:5),10%(1:9),90%(9:1)占空比。 四、实验思考题: 将1位十六进制数存放在40H单元中,利用查表法将其转换为相应的ASCII码 实验二外部中断实验 一、实验目的: 1.学习外部中断技术的基本使用方法 2.学习中断处理程序的编程方法 二、实验要求: 1.用单次脉冲申请中断INT0,在中断处理程序中对输出信号进行反转。 2.用单次脉冲申请中断INT1,在中断处理程序中实现8个小灯左移点亮1次。 三、实验思考题: 1. 相应中断请求的条件是什么? 2. 写出同级中断的查询优先次序。

单片机实验总结

程序由410出品,与老师的不大一样,此处省去1万字-----最终解释归410所有 1.试编写程序。统计片RAM 30H~50H单元中FFH的个数,并将统计结果存51H。 mov r0,#30h //把30h赋给R0 mov r1,#00h //把00h赋给R1 loop: cjne r0,#0ffh,next //把R0所指的地址里的数(地址30h中的数)与0ffh比较 inc r1 //若为0ffh则R1加1(计算0ffh的个数)next: inc r0 //若不一样则R0加1(即把R0里的地址加1,R0将指向下一个地址) cjne r0,#51h,loop //比较R0所存的地址与51h,若不等则跳回loop 继续执行 mov 51h,r1 //若相等(R0里的数就为51h,完成30h到50h 的计数)将R1里的值赋到地址51h里,即地址51h中存储着0ffh的个数 sjmp $ //等待 end 2、从片RAM 30H单元开始存放着一组无符号数,其个数存在21H单元中。试编写程序,找出其中最小的数,并将其存入20H单元中。 mov r0,#30h //把30h赋给R0

mov a,r0 //把R0所指30H中的数赋给a(a中就是地址30h中的无符号数) mov r1,21h //把21h中的数赋给R1 loop: inc r0 //R0加1(即R0将指向下一个地址) mov 30h,r0 //把R0所指地址的数给到地址30h中 cjne a,30h,chk //比较a中的数与地址30h中的数的大小,若a 中的数>30H中的数,则Cy=0;否则相反 chk: jc lop //判断Cy是否为1,若是,则执行下面程序,否则跳至lop 继续执行 mov a,r0 //把R0所指地址中的数给a,即把最小数赋给了a lop: djnz r1,loop //R1减一,程序跳至loop继续执行,循环直至R1减到0 mov 20h,a //把a中的数赋到地址20h中 end 3、设片外RAM 2000H单元中有一个8位二进制数,试编程将该数的低四位屏蔽掉,并送回原存储单元。 mov dptr,#2000h //将片外地址2000h给dptr movx a,dptr //将片外地址2000h中的数赋给a anl a,#0f0h //将a中的数与0f0h与下,屏蔽低四位的数 movx dptr,a //将屏蔽好的数送回到片外地址2000h中 end 4、试编写程序,求出片RAM20H单元中“1”的个数,并将结果存入21H单

单片机实训题目及要求

实训设计说明 一、实训设计的基本要求: 单片机实训设计的主要内容包括:理论设计、调试与仿真、撰写设计报告等。其中理论设计又包括选择总体方案,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括模块化层次结构图,程序流程图。程序设计是实训设计的关键环节,通过调试进一步完善程序设计,使之达到课题所要求的指标,使理论设计更接近于实际产品。实训设计的最后要求是写出设计总结报告,把理论设计内容,调试的过程及性能指标的测试结果进行全面的总结,把实践内容上升到理论高度。 单片机实训设计的教学采用相对集中的方式进行,到单片机实验室(7-710)进行实训,每组配备一台PC机、一套单片机综合实验箱、相关的软件及电子元器件等器材设备。做到实训教学课堂化,严格考勤制度,在实训期间(一周)累计旷课达到6节以上,或者迟到、早退累计达到6次以上的学生,该实训考核按不及格处理。在实训期间需要外出查找资料、购买电子元器件时,必须向指导老师请假,经同意后方可外出。实训设计的任务相对分散,每2名学生组成一个小组,完成一个课题的设计。小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人的设计方法和经验。但每个学生必须单独完成设计任务,要有完整的设计资料,独立撰写设计报告,设计报告雷同率超过50%的实训设计考核按不及格处理。 二、进度安排: 单片机实训设计共安排4周,合计50学时,具体分配如下: ?实训动员、准备工作及选题:2学时 ?总体方案设计:6学时 ?硬件设计及仿真:7学时 ?软件设计:9学时 ?软件调试:6学时 ?整机测试:5学时 ?撰写设计报告:9学时 ?答辩与总结:4学时 该时间只是粗略进行划分,各个组员可依据进度完成情况,适当调整,但需确保整个设计能按期完成。 三、设计报告要求: 设计完成后,必须撰写实训设计报告。设计报告必须独立完成,格式符合要求,文字(不含图形、程序)不少于5000字,图形绘制规范,装订成册。设计报告的格式如下: 1、封面 2、内容提要 3、目录 4、正文 (1)所作题目的意义、原理等,本人所做的工作及系统完成的主要功能; (2)硬件电路设计及描述(要有原理框图和原理图); (3)软件设计流程及描述(要有程序流程图); (4)设计调试过程(分步进行); (5)源程序代码(要有注释); 5、心得体会 6、参考文献

单片机实验考核题目及答案

---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------

---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------

单片机实验心得体会3篇

单片机实验心得体会一:单片机实验心得体会 时间过得真快,不经意间,一个学期就到了尾声,进入到如火如荼的期末考试阶段。 在学习单片机这门课程之前,就早早的听各种任课老师和学长学姐们说过这门课程的重要性和学好这门课程的关键~~多做单片机实验。 这个学期,我们除了在课堂上学习理论知识,还在实验室做了7次实验。将所学知识运用到实践中,在实践中发现问题,强化理论知识。 现在,单片机课程已经结束,即将开始考试了,需要来好好的反思和回顾总结下了。 第一次是借点亮led灯来熟悉keil软件的使用和试验箱上器材。第一次实验体现了一个人对新事物的接受能力和敏感度。虽然之前做过许多种实验。但依旧发现自己存在一个很大的问题,对已懂的东西没耐心听下去,容易开小差;在听老师讲解软件使用时,思路容易停滞,然后就跟不上老师的步骤了,结果需要别人再次指导;对软件的功能没有太大的热情去研究探索,把一个个图标点开,进去看看。所以第一次试验相对失败。鉴于此,我自己在宿舍下载了软件,然后去熟悉它的各个功能,使自己熟练掌握。 在做实验中,第二个问题应该是准备不充分吧。一开始,由于没有课前准备的意识,每每都是到了实验室才开始编程,完成作业,导致每次时间都有些仓促。后来在老师的批评下,认识到这是个很大的问题:老师提前把任务告诉我们,就是希望我们私下把程序编好。于是我便在上机之前把程序编好,拷到u盘,这样上机时只需调试,解决出现的问题。这样就会节约出时间和同学讨论,换种思路,换种方法,把问题给吃透。发现、提出、分析、解决问题和实践能力是作为我们这个专业的基本素质。 三是我的依赖性很大,刚开始编程序时喜欢套用书上的语句,却对语句的理解不够。于是当程序出现问题时,不知道如何修改,眼前的程序都是一块一块的被拼凑整合起来的,没法知道哪里错了。但是编程是一件很严肃的事情,容不得半点错误。于是便只能狠下决心,坚持自己编写,即使套用时,也把每条语句弄懂。这也能激发了学习的兴趣。 还有一次实验是调出电脑里的程序,让它在试验箱上实现其功,让我们去体会别人编程的技巧和程序逻辑美感。看了之后,不得不说我目前的水平简直太小儿科了。还有连线也是个问题,

单片机实验指导书

实验一KEIL 51软件实验 实验目的: 1、掌握KEIL集成开发环境的使用 2、掌握算术运算程序 实验设备:计算机、KEIL51软件 实验内容: 编程实现把片人RAM30H单元和40H单元两个16字节数相加,结果放于30H单元开始的位置处。在KEIL51编译、连接、仿真调试。 实验步骤: 一、运行KEIL51软件,出现图1所示KEIL 51主界面。 图1 KEIL 51主界面 首先用Project菜单下的New Project命令建立项目文件,过程如下。 (1) 选择Project菜单下的New Project命令,弹出如图2所示的Create new Project对话框。 图2 Create New Project对话框 (2) 在Create New Project对话框中选择新建项目文件的位置(最好一个项目建立一个文件夹如E:\project), 输入新建项目文件的名称,例如,项目文件名为example,单击【保存】按钮将弹出如图3所示的Select Device for Target ‘Target 1’对话框,用户可以根据使用情况选择单片机型号。Keil uVision2 IDE几乎支持

所有的51核心的单片机,并以列表的形式给出。选中芯片后,在右边的描述框中将同时显示选中的芯片的相关信息以供用户参考。 图3 Select Device for Target ‘Target 1’对话框 (3) 这里选择atmel公司的A T89c51。单击【确定】按钮,这时弹出如图4所示的Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框,C语言开发选择【是】,汇编语言开发选择【否】。 单击后,项目文件就创建好了。项目文件创建后,在主界面的左侧的项目窗口可以看到项目文件的内容。 这时只有一个框架,紧接着需向项目文件中添加程序文件内容。 图4 Copy Standard 8051 Startup Code to Project Folder and Add File to Project确认框 二、给项目添加程序文件 当项目文件建立好后,就可以给项目文件加入程序文件了,Keil uVision2支持C语言程序,也支持汇编语言程序。这些程序文件可以是已经建立好了的程序文件,也可以是新建的程序文件,这里我们新建的汇编程序文件后再添加。 (1) 选择文件菜单上的new命令,出现新建文本窗口,如图5所示。

51单片机实验报告

51单片机实验报告

实验一 点亮流水灯 实验现象 Led灯交替亮,间隔大约10ms。实验代码 #include void Delay10ms(unsigned int c); void main() { while(1) { P0 = 0x00; Delay10ms(50); P0 = 0xff; Delay10ms(50); } }

void Delay10ms(unsigned int c) { unsigned char a, b; for (;c>0;c--) { for (b=38;b>0;b--) { for (a=130;a>0;a--); } } } 实验原理 While(1)表示一直循环。 循环体首先将P0的所有位都置于零,然后延时约50*10=500ms,接着P0位全置于1,于是LED全亮了。接着循环,直至关掉电源。延迟函数是通过多个for循环实现的。 实验2 流水灯(不运用库函数) 实验现象 起初led只有最右面的那一个不亮,半秒之后从右数第二个led

也不亮了,直到最后一个也熄灭,然后led除最后一个都亮,接着上述过程 #include #include void Delay10ms(unsigned int c); main() { unsigned char LED; LED = 0xfe; while (1) { P0 = LED; Delay10ms(50); LED = LED << 1; if (P0 == 0x00) { LED = 0xfe; } } } void Delay10ms(unsigned int c)

单片机实验报告

南京晓庄学院电子工程学院 实验报告 课程名称:单片机系统设计与应用 姓名:森 专业:电子信息科学与技术 年级:14级 学号:05 2016年12 月1 日

实验项目列表 序号实验项目名称成绩指导教师 1 单片机仿真软件的使用 2 单片机I/O接口应用实验——流水灯 3 外部中断实验——工业顺序控制模拟 4 定时/计数器实验——矩形波 5 定时/计数器实验——计数器 6 综合实验 7 8 9 10 注: 1、实验箱端口为com6。 2、芯片选择切换到51 3、停止运行使用实验箱上的复位按钮

实验室号:___ 实验时间:成绩: 实验一仿真软件的使用 1.实验目的和要求 1)熟悉Keil C51软件界面,以及编辑、编译、运行程序的步骤; 2)掌握单片机仿真软件使用和调试的方法。 2.实验原理 Keil C51软件使用 在Keil C51集成开发环境下,建立一个工程并编辑源程序,熟悉Keil C51集成开发环境下各种菜单、命令的使用。 3.主要仪器设备(实验用的软硬件环境) 安装有Keil C51软件的PC机1台 4.操作方法与实验步骤 Keil C51软件使用 (1)建立用户文件夹 (2)建立工程 (3)建立文件并编码。输入以下源程序,并保存在项目所在的目录中 (4)把文件加入工程中 (5)编译工程。编译时观察在界面下方的“Build”页中的到编译错误信息和使用的系统资源情况等。 (6)调试。利用常用调试命令,如复位、运行、暂停、单步、单步跳过、执行完当前子程序、运行到当前行、下一状态、打开跟踪、观察跟踪、反汇编窗口、观察窗口、代码作用范围分析、1#串行窗口、内存窗口、性能分析、工具按钮等命令进行调试,观察并分析调试结果。 (7)目标代码文件的生成。运行生成相应的.HEX文件。 5.实验内容及程序 1)从DATA区地址起始地址为40H的连续10个内存单元的内容传送到XDATA区起始地址为2000H的10个内存单元中。 注意:DATA区地址起始地址为40H的连续10个内存单元必须先赋初值。 P83-5源程序 #include #define uchar unsigned char xdata unsigned char buffer1[10]_at_ 0x2000; //在xdata区定义数组变量BUF1,首地址为2000H data unsigned char buffer2[10]_at_ 0x40; //在data区定义数组变量BUF2,首地址为40H void main(void)

大学生单片机实习总结

大学生单片机实习总结 ,我们将为大家提供关于20XX年实习报告的信息,敬请期待! :xx :实习报告范文| 实习报告模板| 会计实习报告 | 大学生实习报告 | 顶岗实习报告 | 金工实习报告 | 毕业实习报告 | 土木工程实习报告 | 生产实习报告 |实习周记 | 3000字范文 大学生单片机实习总结 随着电子技术的发展,特别是随着大规模集成电路的产生,给人们的生活带来了根本性的变化,如果说微型计算机的出现使现代的科学研究得到了质的飞跃,那么可编程控制器的出现则是给现代工业控制测控领域带来了一次新的革命。在现代社会中,温度控制不仅应用在工厂生产方面,其作用也体现到了各个方面。本学期我们就学习了单片机这门课程,感觉是有点难呢。也不知道整个学习过程是怎么过来得,可是时间不等人。 时光飞逝,一转眼,一个学期又进尾声了,本学期的单片机实习课题也在一周内完成了。俗话说“好的开始是成功的一半”。说这次实习,我认为最重要的就是做好程序调试,认真的研究老师给的题目。其次,老师对实验的讲解要一丝

不苟的去听去想,因为只有都明白了,做起产品就会事半功倍,如果没弄明白,就迷迷糊糊的去做,到头来一点收获也没有。最后,要重视程序的模块化,修改的方便,也要注重程序的调试,掌握其方法。 虽然这次的实习算起来在实验室的时间只有几天,不过因为我们都有自己的实验板,所以在宿舍里做实验的时间一定不止三天。硬件的设计跟焊接都要我们自己动手去焊,软件的编程也要我们不断的调试,最终一个能完成课程设计的劳动成果出来了,很高兴它能按着设计的思想与要求运动起来。 当然,这其中也有很多问题,第一、不够细心比如由于粗心大意焊错了线,由于对课本理论的不熟悉导致编程出现错误。第二,是在学习态度上,这次课设是对我的学习态度的一次检验。对于这次单片机综合课程实习,我的第一大心得体会就是作为一名工程技术人员,要求具备的首要素质绝对应该是严谨。我们这次实习所遇到的多半问题多数都是由于我们不够严谨。第三,在做人上,我认识到,无论做什么事情,只要你足够坚强,有足够的毅力与决心,有足够的挑战困难的勇气,就没有什么办不到的。 通过这次单片机实习,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。

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

***数学计算机科学系实验报告 专业:计算机科学与技术班级:实验课程:单片机原理与应用技术姓名:学号:实验室:硬件实验室 同组同学: 实验时间: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

C51单片机实验报告

实验报告册 课程名称:单片机原理与应用B 指导老师:xxx 班级:xxx 姓名:xxx 学号:xxx 学期:20 —20 学年第学期南京农业大学工学院教务处印

实验目录实验一:指示灯/开关控制器 实验二:指示灯循环控制 实验三:指示灯/数码管的中断控制 实验四:电子秒表显示器 实验五:双机通信

姓名:学号:班级:成绩: 实验名称:指示灯/开关控制器 一、实验目的: 学习51单片机I/O口基本输入/输出功能,掌握C语言的编程与调试方法。 二、实验原理: 实验电路原理图如图所示,图中输入电路由外接在P1口的8只拨动开关组成;输入电路由外接在P2口的8只低电平驱动的发光二极管组成。此外,还包括时钟电路、复位电路和片选电路。 在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的亮灯状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。 三、软件编程原理为; (1)8只发光二极管整体闪烁3次

亮灯:向P2口送入数值0; 灭灯:向P2口送入数值0FFH; 闪烁3次:循环3次; 闪烁快慢:由软件延时时间决定。 (2)根据开关状态控制灯亮或灯灭 开关控制灯:将P1口(即开关状态)内容送入P2口;无限持续:无条件循环。 四、实验结果图: 灯泡闪烁:

按下按键1、3、5、7:

经检验,其余按键按下时亦符合题目要求。 五、实验程序: #include"reg51.h" void delay(unsigned char time) { unsigned int j=15000; for(;time>0;time--) for(;j>0;j--); } void main(){ key,char i; for(i=0;i<3;i++) { P2=0x00; delay(500); P2=0xff; delay(500) } while(1) { P2=P3;

单片机实验模版

单片机实验模版 本科实验报告 课程名称:单片机综合设计学院(系): 专业:电子 班级: 学号: 学生姓名: 2018 年月日

实验项目列表 注意:独立完成预习报告和实验操作。 专业:班级:学号: 学生签字: 联系:

《单片机原理及应用实验》报告填写要求依照《大连理工大学本科实验报告规范(试行)》提出的各项要求,现规定《单片机原理及应用实验》报告填写要求如下: 一、每次实验前必须完成预习报告。注意:预习报告中的回答问题必须手写,且由 学生本人签名。第一次实验时,课前将预习报告与《实验项目列表》一同交给 实验老师。每次实验时,课前提交预习报告,没有完成预习报告者不得进行实 验。 二、每一个实验项目均须撰写一份实验报告,最后按顺序装订、上交。 三、实验报告内容: 1、实验目的和要求:写明实验的目的和任务要求; 2、实验原理和内容:与实验内容相关的算法描述、程序的结构类型,与实验相关的 接口模块功能描述。 3、算法流程:使用流程图对算法进行描述。流程图应当逻辑正确、简单清晰。流程 图能够采纳打印或手工绘制。 4、使用protel等工具绘制实验系统电路图(也可手工绘制)。系统电路图应正确、 工整。系统电路中应包含单片机以及单片机工作时所必需的外围相关器件(晶 体、上电复位电路等); 5、程序清单:程序清单一律采纳打印的方式,源程序文件的格式要整齐、规范(语 句的标号、指令及注释应在不同列中)。在程序的关键语句上加注释。相关子程 序要在凝视中进行功能说明; 6、实验结果与分析:明确地写出最后结果(是否实现设计要求等),对实验中所遇 到的问题以及解决的方法加以描述; 7、实验体会、建议:通过实验所体会的收成。针对实验内容、教学方法、考核方法 等提出需要解决的问题,提出改进建议; 8、全部文字叙述内容要求简明扼要,思路清晰、用词规范; 9、要紧仪器设备:记录要紧仪器的名称、型号(包括实验运行软件名称)等 10、实验时刻:报告中应标明实验的日期(年、月、日;星期;组号)。 四、要求实验报告字迹工整,文字简练,数据齐全,图表规范,运算正确,分析充分、具体、定量。

相关文档
最新文档