51单片机数据采集系统[1]1.doc

51单片机数据采集系统[1]1.doc
51单片机数据采集系统[1]1.doc

课程设计报告书

设计任务书

一、设计任务

1一秒钟采集一次。

2把INO口采集的电压值放入30H单元中。

3做出原理图。

4画出流程图并写出所要运行的程序。

二、设计方案及工作原理

方案: 1. 采用8051和ADC0809构成一个8通道数据采集系统。

2. 能够顺序采集各个通道的信号。

3. 采集信号的动态范围:0~5V。

4. 每个通道的采样速率:100 SPS。

5.在面包板上完成电路,将采样数据送入单片机20h~27h存储单元。

6.编写相应的单片机采集程序,到达规定的性能。

工作原理:

通过一个A/D转换器循环采样模拟电压,每隔一定时间去采样一次,一次按顺序采样信号。A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示电压路数和数据值。

目录

第一章系统设计要求和解决方案

第二章硬件系统

第三章软件系统

第四章实现的功能

第五章缺点及可能的解决方法

第六章心得体会

附录一参考文献

附录二硬件原理图

附录三程序流程图

第一章系统设计要求和解决方案

根据系统基本要求,将本系统划分为如下几个部分:

●信号调理电路

●8路模拟信号的产生与A/D转换器

●发送端的数据采集与传输控制器

●人机通道的接口电路

●数据传输接口电路

数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。系统框图如图1-1所示

1.1 信号采集分析

被测电压为0~5V 直流电压,可通过电位器调节产生。 1.1.1 信号采集

多路数据采集系统多采用共享数据采集通道的结构形式。 数据采集方式选择程序控制数据采集。

程序控制数据采集,由硬件和软件两部分组成。,据不同的采集需要,在程序存储器中,存放若干种信号采集程序,选择相应的采集程序进行采集工作,还可通过编新的程序,以满足不同采样任务的要求。如图1-3所示。

程序控制数据采集的采样通道地址可随意选择,控制多路传输门开启的通道地址码由存储器中读出的指令确定。即改变存储器中的指令内容便可改变通道地址。

由于顺序控制数据采集方式

缺乏通用性和灵活性,所以本设计中选用程序控制数据采集方式。

采集多路模拟信号时,一般用多路模拟开关巡回检测的方式,即一种数据采集的方式。利用多路开关(MUX )让多个被测对象共用同一个采集通道,这就是多通道数据采集系统的实质。当采集高速信号时,A/D 转换器前端还需加采样/保持(S/H)电路。

待测量一般不能直接被转换成数字量,通常要进行放大、特性补偿、滤波等环节的预处理。被测信号往往因为幅值较小,而且可能还含有多余的高频分量等原因,不能直接送给A/D 转换器,需对其进行必要的处理,即信号调理。如对信号进行放大、衰减、滤波等。

通常希望输入到A/D 转换器的信号能接近A/D 转换器的满量程以保证转换精度,因此在直流电流电源输出端与A/D 转换器之间应接入放大器以满足要求。

本题要求中的被测量为0~5V 直流信号,由于输出电压比较大,满足A/D 转换输入的要求,故可省去放大器,而将电源输出直接连接至A/D 转换器输入端。

多路数据采集输入通道的结构图1-4所示。

图1-3 程序控制数据采集原理 图1-1 一般系统框图

图1-4 多路数据采集输入通道结构

ADC0809是TI公司生产的8位逐次逼近式模数转换器,包括一个8位的逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑,为模拟通道的设计提供了很大的方便。

用它可直接将8个单端模拟信号输入,分时进行A/D转换,在多点巡回监测、过程控制等领域中使用非常广泛,所以本设计中选用该芯片作为A/D转换电路的核心。

1.2.1 单片机系统分析

1.复位电路

单片机在开机时都需要复位,以便中央处理器CPU以及其他功能部件都处于一个确定的初始状态,并从这个状态开始工作。51的RST引脚是复位信号的输入端。复位电平是高电平有效,持续时间要有24个时钟周期以上。本系统中单片机时钟频率为6MHz则复位脉冲至少应为4us。

在MCS-51单片机系列芯片中,用8051或8751芯片可以构成最小系统。因为8051和8751是片内有ROM/EPROM的单片机,用这种芯片构成的单片及最小系统简单、可靠。

8051构成的最小系统特点:

●受集成度所限,只能用于小型控制单元。

●有可供用户使用的大量的I/O口线。

●仅有芯片内部的存储器,故存储器的容量有限。

●8051的应用软件要依靠半导体掩膜技术植入,适于在大批量生产的应用系统中使用。

第二章硬件系统

2.1 信号调理电路

信号调理的任务将被测对象的输出信号变换成计算机要求的输入信号。

对于多通道数据采集系统的输入通道,设置多路选择开关,可降低硬件开销。如图2-1所示。为避免小信号通过模拟开关造成较大的附加误差,在传感器输出信号过小时,每个通道应设前置

放大环节(本文可不加以考虑)。

图2-1 信号调理过程

2.2 数据采集电路

把连续变化量变成离散量的过程称为量化,也可理解为信号的采样。

把以一定时间间隔T 逐点采集连续的模拟信号,并保持一个时间t ,使被采集的信号变成时间上离散、幅值等于采样时刻该信号瞬时值的一组方波序列信号,即采样信号。

2 ADC0809内部功能与引脚介绍

分辨率和精度在第一章中已作了相应的计算和分析。

ADC0809八位逐次逼近式A /D 转换器是一种单片CMOS 器件,包括8位模拟转换器、8通道转换开关和与微处理器兼容的控制逻辑。8路转换开关能直接连通8个单端模拟信号中的任何一个。其内部结构如图2-2所示。

1.ADC0809主要性能

◆ 逐次比较型

◆ CMOS 工艺制造 ◆ 单电源供电

◆ 无需零点和满刻度调整

◆ 具有三态锁存输出缓冲器,输出与TTL 兼容 ◆ 易与各种微控制器接口

◆ 具有锁存控制的8路模拟开关 ◆ 分辨率:8位 ◆ 功耗:15mW

◆ 最大不可调误差小于±1LSB (最低有效位)

◆ 转换时间(500CLK f KHz =)128us ◆ 转换精度:0.4%±

◆ ADC0809没有内部时钟,必须由外部提供,

其范围为10~1280kHz 。典型时钟频率为640kHz

2.引脚排列及各引脚的功能,引脚排列如图2-3所示。

图2-2 ADC0809内部结构

各引脚的功能如下:

IN0~IN7:8个通道的模拟量输入端。可输入0~5V 待转换的模拟电压。 D0~D7:8位转换结果输出端。三态输出,D7是最高位,D0是最低位。 A 、B 、C :通道选择端。当CBA=000时,IN0输入;当CBA=111时,IN7输入。 ALE :地址锁存信号输入端。该信号在上升沿处把A 、B 、C 的状态锁存到内部的多路开关的地址锁存器中,从而选通8路模拟信号中的某一路。

START :启动转换信号输入端。从START 端输入一个正脉冲,其下降沿启动ADC0809开始转换。脉冲宽度应不小于100~200ns 。

EOC :转换结束信号输出端。启动A/D 转换时它自动变为低电平。 OE :输出允许端。

CLK :时钟输入端。ADC0809的典型时钟频率为640kHz ,转换时间约为100μs 。 REF(-)、REF(+):参考电压输入端。ADC0809的参考电压为+5V 。 VCC 、GND :供电电源端。ADC0809使用+5V 单一电源供电。

当ALE 为高电平时,通道地址输入到地址锁存器中,下降沿将地址锁存,并译码。在START 上升沿时,所有的内部寄存器清零,在下降沿时,开始进行A/D 转换,此期间START 应保持低电平。在START 下降沿后10us 左右,转换结束信号变为低电平,EOC 为低电平时,表示正在转换,为高电平时,表示转换结束。OE 为低电平时,D0~D7为高阻状态,OE 为高电平时,允许转换结果输出。

2.2.3 ADC0809与MCS-51系列单片机的接口方法

ADC0809与8051单片机的硬件接口有3种形式,分别是查询方式、中断方式和延时等待方式,本题中选用中断接口方式。

由于ADC0809无片内时钟,时钟信号可由单片机的ALE 信号经D 触发器二分频后获得。ALE 引脚得脉冲频率是8051时钟频率的1/6。该题目中单片机时钟频率采用6MHz,则ALE 输出的频率是1MHz ,二分频后为500Hz,符合ADC0809对频率的要求。

由于ADC0809内部设有地址锁存器,所以通道地址由P0口的低3位直接与ADC0809的A 、B 、C 相连。通道基本地址为0000H ~0007H 。其对应关系如表

2-1所示。表2-1 0809输入通道地址

地址码 输入通道 C B A 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 图2-3 A/DC0809引脚

控制信号:将P2.7作为片选信号,在启动A/D 转换时,由单片机的写信号和P2.7控制ADC 的地址锁存和启动转换。由于ALE 和START 连在一起,因此ADC0809在锁存通道地址的同时也启动转换。

在读取转换结果时,

用单片机的读信号RD 和

P2.7引脚经或非门后,产生正脉冲作为OE 信号,用一打开三态输出锁存器。 START 信号和OE 信号的逻辑表达式为

当8051通过对0000H ~0007H (基本地址)中的某个口地址进行一次写操作,即可启动相应通道的A /D 转换;当转换结束后,ADC0809的EOC 端向8051发出中断申请信号;8051通过对0000H ~0007H 中的某个口地址进行一次读操作,

即可得到转换结果。

1 0 1 IN5 1 1 0 IN6 1 1 1 IN7

ADC0809时序图

第3章软件系统

ORG 0000h

MOV r1,#20h ;取数20h送 r1中

MOV r2,#8h ; channel number! ;取数8h送r2

MOV TL0,#0h ;启动 TL0

MOV TH0,#0b8h ;设置定时初值THO

;MOV tmod,#1h ;选择工作方式1

clr et0 ;清零

setb tr0 ;启动T0工作

MOV scon,#40h ;设置串口工作方式1

MOV dptr,#78ffh ;取源数据地址送dptr loop: MOV a,r2 ;将r2中的数据送累加器a中

SUBB a,r1 ;将r1中的数据与a中数

据进位减法运算

jnz loop2 ;结果不为零则转loop2

MOV r1,#0h ;对r1清零

MOV dptr,#78ffh ;取源数据地址送dptr

MOV r1,#0h ;对r1清零

MOV dptr,#78ffh ;取源数据地址送dptr

loop1: jnb tf0,loop1 ;定时器无溢出则转入loop1

clr tf0 ;对tf0清零

MOV TL0,#0h ;对tlo清零

MOV TH0,#0b8h ;设置定时初值TH0

loop2: MOVx @dptr,a ;start A/D ;启动模数转换器

loop3: jb p1.0,loop3 ;p1.0为1则转loop3

loop4: jnb p1.0,loop4 ;check flag ;p1.0为0则转loop4

MOVx a,@dptr ;读取结果

MOV @r1,a ;保存结果

inc dph ; ;选取下一个

inc r1 ;计数器减1

ljmp loop ;返回到loop

end

整个系统软件设计分为两个部分,作为主控的PC端的软件设计及作为数据采集器的单片机终端节点的软件设计。系统采用模块化编程,将各部分功能分别实现,主要的功能子程序有:数据采集、部分中断子程序。主程序流程图如图3-1所示

开始

系统初始化

调用数据采集子程序

调用标度变换子程序

取相应通道数据

模数转换

中断方式使用EOC信号作为向8051的中断申请。在主程序中,向ADC发出首次启动转换信号后,并计数管理转换通道数。当检测到EOC的请求后,转去执行中断服务程序,读取转换结果,并启动下一次转换,后继续执行。图3-2为A/D转换程序流程图。

开始

定义A/D转换缓冲区首地址

开中断

置通道数

置DPTR

启动转换

等待中断

中断处理

N

各通道采完?

以下是8路数据采集程序

开始

取转换量

存入A/D转换数据缓冲区

通道号+1

缓存单元地址+1

通道数-1

启动下次转换

返回

图3-3 数据采集中断程序流程图

第四章实现的功能

数据采集系统,从严格的意义上来说,应该是用计算机控制的多路数据自动检测或巡回检测,并且能够对数据实行存储、处理、分析计算以及从检测的数据中提取可用的信息,供显示、记录、打印或描绘的系统。

数据采集系统一般由数据输入通道,数据存储与管理,数据处理,数据输出及显示这五个部分组成。输入通道要实现对被测对象的检测,采样和信号转换等工作。数据存储与管理要用存储器把采集到的数据存储起来,建立相应的数据库,并进行管理和调用。数据处理就是从采集到的原始数据中,删除有关干扰噪声,无关信息和必要的信息,提取出反映被测对象特征的重要信息。另外,就是对数据进行统计分析,以便于检索;或者把数据恢复成原来物理量的形式,以可输出的形态在输出设备上输出,例如打印,显示,绘图等。数据输出及显示就是把数据以适当的形式进行输出和显示。

本电路采用AT89C52的时钟电路进行数据的定时采集并且把数据上传到A\D转换ADC0809转换器进行数据的转换,再把数据转存到30H单元中,实现A\D定时采集功能。

第五章缺点及可能的解决方法

本文采用RS-232标准实现单片机与PC机间的通信。RS-232是目前最常用的一种串行通讯接口。由于RS-232-C接口标准出现较早,难免有不足之处,

主要表现在:

1.接口的信号电平值较高,易损坏接口电路的芯片,又因为与TTL电平不兼容,故需使用电平转换电路才能与TTL电路连接。

2、传输速率较低,在异步传输时,波特率为20Kbps。

3、接口使用一根信号线和一根信号返回线而构成共地的传输形式,这种共地传输容易产生共模干扰,所以抗噪声干扰性弱。

4、传输距离有限,最大传输距离标准值为50英尺,实际上也只能用在50米左右。

信号采集过程中,被测量一般由传感器供给,常为微弱信号,需要对其进行适当的调整。由于此处输入信号满足A/D转换器的输入要求,所以本文并为详细讨论。但在实际工程设计中必不可少。

因此建议使用RS-485标准实现,RS-485接口具有良好的抗噪声干扰性,

长的传输距离和多站能力等优点就使其成为首选的串行接口。

第六章心得体会

随着计算机技术的飞速发展和普及,数据采集系统在多个领域有着广泛的应用。数据采集是工、农业控制系统中至关重要的一环,在医药、化工、食品、等领域的生产过程中,往往需要随时检测各生产环节的温度、湿度、流量及压力等参数。同时,还要对某一检测点任意参数能够进行随机查寻,将其在某一时间段内检测得到的数据经过转换提取出来,以便进行比较,做出决策,调整控制方案,提高产品的合格率,产生良好的经济效益。

随着工、农业的发展,多路数据采集势必将得到越来越多的应用,为适应这一趋势,作这方面的研究就显得十分重要。在科学研究中,运用数据采集系统可获得大量的动态信息,也是获取科学数据和生成知识的重要手段之一。总之,不论在哪个应用领域中,数据采集与处理将直接影响工作效率和所取得的经济效益。

此外,计算机的发展对通信起了巨大的推动作用.计算机和通信紧密结合构成了灵活多样的通信控制系统,也可以构成强有力的信息处理系统,这样对社会的发展产生了深远的影响。数据通信是计算机广泛应用的必然产物。

通过这次的课程设计的制作让我对单片机的理论有了更加深入的了解,同时通过这次实践使我更深刻的体会到了理论联系实际的重要性,我们在今后的学习工作中会更加的注重实际理论与实际的结合!

附录一参考文献

参考文献

[1] 徐爱卿,孙涵芳,盛焕鸣单片微型计算机应用和开发系统北京航空航天大学出版社1992年

[2] 邬宽明单片机外围器件实用手册数据传输接口器件分册北京航空航天大学出版社1998年

[3] 何立民,余永权,李小青,陈林康单片机应用系统的功率接口北京航空航天大学出版社1992年

[4] 张毅刚,彭喜元,孟升卫,刘兆庆MCS-51单片机实用子程序设计(第二版)哈尔滨工业大学出版社2003年

[5] 胡汉才单片机原理及接口技术(第2版)清华大学出版社2004年

[6] 求是科技单片机通信技术与工程实践人民邮电出版社2005年

附录二原理图

附录三程序流程图

Y N

开始

定义A/D转换缓冲区首地址

开中断

置通道数

置DPTR

启动转换

等待中断

各通道采完?

中断处理

关中断

单片机简易数字计算器汇编

基 于 单 片 机 的 简 易 计 算 器 设 计 自动化控制一班 kaoyanbaomu521

摘要: 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。 本任务是个简易的两位数的四则运算,程序都是根据教材内和网络中的程序参考编写而成,在功能上还并不完善,限制也较多。本任务重在设计构思与团队合作,使得我们用专业知识、专业技能分析和解决问题全面系统的锻炼。 关键词: 单片机计算器范围加减乘除 1 引言 1.1 计算器的历史 说起计算器,值得我们骄傲的是,最早的计算工具诞生在中国。中国古代最早采用的一种计算工具叫筹策,又被叫做算筹。这种算筹多用竹子制成,也有用木头,兽骨充当材料的。约二百七十枚一束,放在布袋里可随身携带。直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的"纳皮尔算筹",英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。 1.2 电子计算器的特殊键 在使用电子计算器进行四则运算的时候,一般要用到数字键,四则运算键和清除数据键。除了这些按键,还有一些特殊键,可以使计算更加简便迅速。 2 单片机概述 单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。 通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。 单片机经过1、2、3、3代的发展,目前单片机正朝着高性能和多品种方向发展,它们的CPU功能在增强,内部资源在增多,引角的多功能化,以及低电压底功耗。 3 芯片简介 3.1 MSC-51芯片简介 MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,我们以这一代表性的机型进行系统的讲解。

单片机课后习题答案

第一章单片机的概述 1、除了单片机这一名称外,单片机还可称为(微控制器)和(嵌入式控制器)。 2、单片机与普通微型计算机的不同之处在于其将(CPU)、(存储器)和(I/O口)三部分,通过内部(总线)连接在一起,集成于一块芯片上。 3、在家用电器中使用单片机应属于微型计算机的(B)。 A、辅助设计应用 B、测量、控制应用 C、数值计算应用 D、数据处理应用 4、微处理器、微计算机、微处理机、CPU、单片机、嵌入式处理器它们之间有何区别? 答:微处理器、微处理机和CPU它们都是中央处理器的不同称谓,微处理器芯片本身不是计算机。而微计算机、单片机它们都是一个完整的计算机系统,单片机是集成在一个芯片上的用于测控目的的单片微计算机。嵌入式处理器一般意义上讲,是指嵌入系统的单片机、DSP、嵌入式微处理器。目前多把嵌入式处理器多指嵌入式微处理器,例如ARM7、ARM9等。嵌入式微处理器相当于通用计算机中的CPU。与单片机相比,单片机本身(或稍加扩展)就是一个小的计算机系统,可独立运行,具有完整的功能。而嵌入式微处理器仅仅相当于单片机中的中央处理器。为了满足嵌入式应用的特殊要求,嵌入式微处理器虽然在功能上和标准微处理器基本是一样的,但在工作温度、抗电磁干扰、可靠性等方面一般都做了各种增强。 5、MCS-51系列单片机的基本型芯片分别为哪几种?它们的差别是什么? 答:MCS-51系列单片机的基本型芯片分别为:8031、8051和8751。它们的差别是在片内程序存储器上。8031无片内程序存储器、8051片内有4K字节的程序存储器ROM,而8751片内有集成有4K字节的程序存储器EPROM。 6、为什么不应当把8051单片机称为MCS-51系列单片机? 答:因为MCS-51系列单片机中的“MCS”是Intel公司生产的单片机的系列符号,而51系列单片机是指世界各个厂家生产的所有与8051的内核结构、指令系统兼容的单片机。 7、AT89S51单片机相当于MCS-51系列单片机中哪一种型号的产品?“s”的含义是什么? 答:相当于MCS-51系列中的87C51,只不过是AT89S51芯片内的4K字节Flash 存储器取代了87C51片内的4K字节的EPROM。“s”表示含有串行下载的Flash 存储器。 8、什么是嵌入式系统? 答:广义上讲,凡是系统中嵌入了“嵌入式处理器”,如单片机、DSP、嵌入式微处理器,都称其为“嵌入式系统”。但多数人把“嵌入”嵌入式微处理器的系统,称为“嵌入式系统”。目前“嵌入式系统”还没有一个严格和权威的定义。目前人们所说的“嵌入式系统”,多指后者。 9、嵌入式处理器家族中的单片机、DSP、嵌入式微处理器各有何特点?它们的应用领域有何不同? 答:单片机体积小、价格低且易于掌握和普及,很容易嵌入到各种通用目的的系统中,实现各种方式的检测和控制。单片机在嵌入式处理器市场占有率最高,最大特点是价格低,体积小。DSP是一种非常擅长于高速实现各种数字信号处

基于51单片机的简易计算器制作

基于51单片机的简易计算器制作专业:电气信息班级:11级电类一班 姓名:王康胡松勇 时间:2012年7月12日 一:设计任务 本系统选用AT89C52单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LED 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LED上提示八个0;当除数为0时,计算器会在LED上会提示八个负号。 设计要求:分别对键盘输入检测模块;LED显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 二.硬件设计 单片机最小系统 CPU:A T89C52 显示模块:两个4位7段共阴极数码管 输入模块:4*4矩阵键盘 1.电路图

电路图说明 本电路图采用AT89C52作为中处理器,以4*4矩阵键盘扫描输入,用两个74HC573(锁存器)控制分别控制数码管的位于段,并以动态显示的方式显示键盘输入结果及运算结果。为编程方便,以一个一位共阴极数码管显示负号。 三,程序设计 #include #define Lint long int #define uint unsigned int #define uchar unsigned char sbit dula=P2^6; //锁存器段选sbit wela=P2^7; sbit display_g=P2^0; //负号段选 sbit display_w=P2^1; //负号位选uchar code table[]={0x3f,0x06,0x5b,0x4f, //0,1,2,3

微机原理习题库(51单片机)含答案

第一章单片机概述与结构 一、选择题 1.访问片外部数据存储器时,不起作用的信号是(C)。 A./RD B./WE C./PSEN D.ALE 2.51单片机P0口用作输出时,应外接(A )。 A.上拉电阻B.二极管C.三极管D.下拉电阻 3.进位标志CY在( C )中。 A.累加器B.算逻运算部件ALU C.程序状态字寄存器PSW D.DPTR 4.堆栈数据的进出原则是(D )。 A.先进先出B.进入不出C.后进后出D.先进后出 5.51单片机系统中,若晶振频率为6MHz,一个机器周期等于(D )μs。 A.1.5 B.3 C.1 D.2 6.在家用电器中使用单片机应属于微计算机的( B )。 A.辅助设计应用B.测量、控制应用C.数值计算应用D.数据处理应用7.PC的值是(C )。 A.当前正在执行指令的前一条指令的地址B.当前正在执行指令的地址 C.当前正在执行指令的下一条指令的地址D.控制器中指令寄存器的地址 8.单片机应用程序一般存放在( B )中。 A.RAM B.ROM C.寄存器D.CPU 9.在堆栈操作中,当进栈数据全部弹出后,这时SP应指向( D ) A.栈底单元B.7FH单元C.栈底单元地址加1 D.栈底单元地址减1 10.51单片机的并行I/O口信息有两种读取方法:一种是读引脚,还有一种是(A )。 A.读锁存器B.读数据库C.读A累加器D.读CPU 二、填空题 1.单片机复位后,SP、PC和I/O口的内容分别为07H\000H\FFH 。 2.单片机有四个工作寄存器区,由PSW状态字中的RS1和RS0两位的状态来决定。单片机复位后,若执行SETB RS0指令,此时只能使用 1 区的工作寄存器,地址范围是08H---0FH 。 3.51单片机驱动能力最强的并行端口为P0端口。 4.51单片机PC的长度为16位,SP的长度为___8____位,DPTR的长度为_16__位。 5.访问51单片机程序存储器地址空间、片内数据存储器地址、片外数据存储器地址的指令分别为__movc_____,MOV和_movx______。 6.若A中的内容为63H,那么P标志位的值为1 。 7.当扩展外部存储器或I/O口时,P2口用作高八位地址总

基于51单片机的数字计算器的设计

《单片机技术及其应用》课程设计报告 专业:通信工程 班级:09312班 姓名:某某某 学号:09031069 指导教师: 二0一二年六月十八日

目录 1设计目的 (1) 2 设计题目描述与要求 (1) 3 设计过程 (2) 4硬件总体方案及说明 (6) 5 软件总体方案及设计流程 (9) 6 调试与仿真 (13) 7 心得体会 (14) 8 指导老师意见 (15) 9 参考文献 (16) 附录一 (16) 附录二 (21)

基于51单片机的数字计算器的设计 1设计目的 简易计算器的原理与设计是单片机课程设计课题中的一个。在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用和单片机完整程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。单片机课程设计既巩固了课本学到的理论,还学到了单片机硬件电路和程序设计,简易计算器课程设计通过自己动手用计算机电路设计软件,编写和调试,最后仿真,来加深对单片机的认识,充分发挥我们的个人创新和动手能力,并提高我们对单片机的兴趣,同时学习查阅资料、参考资料的方法。 本设计是基于51系列的单片机进行的简易计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED 上相应的显示结果。 设计过程在硬件与软件方面进行同步设计。硬件选择AT89C51单片机和74ls164,输入用4×4矩阵键盘。显示用5位7段共阴极LED静态显示。软件从分析计算器功能、流程图设计,再到程序的编写进行系统设计。选用编译效率最高的Keil软件进行编程,并用proteus仿真。 2 设计题目描述与要求 基于AT89C51数字计算器设计的基本要求与基本思路: (1)扩展4*4键盘,其中10个数字,5个功能键,1个清零 (2)使用五位数码管接口电路

第1章 MSC-51单片机结构

第1章MCS-51单片机结构 1.1 MCS-51 单片机内部结构 1.2 存储器 1.3 特殊功能寄存器 1.4 时钟电路与复位电路 1.5 引脚功能 1.6 小结

1.1 MCS-51 单片机内部结构1.1.1 概述 MCS-51系列单片机型号: 普通型(51子系列) 8031、8051、8751、89C51、89S51等。 增强型(52子系列) 8032、8052、8752、89C52、89S52等。 它们的结构基本相同,其主要差别反映在存储器的配置上。 8031:片内没有程序存储器 8051:内部有4KB的掩模ROM程序存储器 8751:内部有4KB EPROM 89C51: 有4KB的FLASH EEPROM 89S51:有4KB的FLASH EEPROM,可在线编程增强型的存储容量为普通型的一倍。 本课以8XX51 系列的单片机为代表讲授。

图中“/” 两边分别为基本型/增强 P3P1P2可编程串行I/O 口P0基准频率源128/256B 数据存储器4KB/8KB 程序存储器2/3个16位定时/计数器振荡器及 时钟电路 CPU 64KB 总线扩展控制 可编程并行I/O 口内部中断计数脉冲串行输出串行输入MCS-51系列单片机内部结构

1.1.2 CPU CPU是单片机的核心部件,由运算器和控制器等部件组成。 1. 运算器 运算器的功能: 算术运算:加、减、乘、除、加1、减1、比较、BCD码十进制调整等。 逻辑运算:与、或、异或、求反、循环等逻辑操作。 位操作:内部有布尔处理器,它以进位标志位C为位累加器,用来处理位操作。置‘1’、清‘0’ 、取反、位判断等。 操作结果的状态信息送至状态寄存器(PSW Program Status Word Register)。

基于51单片机的红外数码管计算器

基于51单片机的数码管应用 一、设计要求 1、基本要求 (1)焊接一个单片机最小系统,接通电源后,至少能在四位数码管上同时显示四个非0的相同的数字。 (2)至少四位数码管能动态显示出[0,1,2,3],达到一定的效果。 (3)能用按键改变显示的数字。 2、发挥部分 (1)增加数码管至8位。 (2)增加4*4矩阵按键,实现简易的8位计算器功能。 (3)增加红外接收模块,实现遥控功能。 (4)增加蜂鸣器,当有按键按下时发声。 (5)利用遥控器实现倒计时功能。

二、系统硬件配置 本系统采用STC89C52RC单片机作为微控制器,分为6个模块(如下图所示):按键电路,红外感应电路,蜂鸣器响应电路,数码管显示电路,晶振以及复位电路。 下面是电路图部分 :

三、系统软件设计 1、主程序模块 主程序需要调用5 个子程序,各模块程序功能如下: ●数码管显示程序:向数码的显示送数,控制系统的显示部分。 ●按键消抖程序:采用检验连续四次按键状态的方式软件消抖。 ●矩阵按键扫描程序:每4*4 ms扫描一次按键。 ●中断设定程序:实现定时功能。 ●数值计算程序:实现8位计算四则运算功能。 主程序流程见图如下:

四、系统源代码 Main.c部分代码如下: #include sbit BUZZ = P3^3; sbit KEY_IN_1 = P2^3; sbit KEY_IN_2 = P2^2; sbit KEY_IN_3 = P2^1; sbit KEY_IN_4 = P2^0; sbit KEY_OUT_1 = P2^4; sbit KEY_OUT_2 = P2^5; sbit KEY_OUT_3 = P2^6; sbit KEY_OUT_4 = P2^7; unsigned char code LedChar[]={ 0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E }; unsigned char code KeyCodeMap[4][4]={ {0x31,0x32,0x33,0x25}, {0x34,0x35,0x36,0x26}, {0x37,0x38,0x39,0x27}, {0x1B,0x30,0x0D,0x28} }; unsigned char KeySta[4][4]={ {1,1,1,1}, {1,1,1,1}, {1,1,1,1}, {1,1,1,1} };

(完整版)单片机第一章习题

第一章 一、判断题 ()1.MCS—51单片机是高档16位单片机。 ()2.单片机的CPU从功能上可分为运算器和存贮器。 ()8.MCS—51的程序存贮器用于存放运算中间结果。 ()9.MCS—51的数据存贮器在物理上和逻辑上都分为两个地址空间:一个是片内的256字节的RAM,另一个是片外最大可扩充64K字节的RAM。 ()10.单片机的复位有上电自动复位和按钮手动复位两种,当单片机运行出错或进入死循环时,可按复位键重新启动。 ()11.CPU的时钟周期为振荡器频率的倒数。 ()12.单片机的一个机器周期是指完成某一个规定操作所需的时间,一般情况下,一个机器周期等于一个时钟周期组成。 ()13.单片机的指令周期是执行一条指令所需要的时间。一般由若干个机器周期组成。 ()14.单片机系统扩展时使用的锁存器,是用于锁存高8位地址。 ()15.MCS—51单片机上电复位后,片内数据存储器的内容均为00H。 ()16.当8051单片机的晶振频率为12MHZ时,ALE地址锁存信号端的输出频率为2MHZ的方脉冲。()17.8051单片机片内RAM从00H~1FH的32个单元,不仅可以作工作寄存器使用,而且可作为RAM 来读写。 ()18.MCS—51单片机的片内存贮器称为程序存贮器。 ()19.MCS—51单片机的数据存贮器是指外部存贮器。 ()20.MCS—51单片机的特殊功能寄存器集中布置在片内数据存贮器的一个区域中。 ()6.8051的累加器ACC是一个8位的寄存器,简称为A,用来存一个操作数或中间结果。 ()7.8051的程序状态字寄存器PSW是一个8位的专用寄存器,用于存程序运行中的各种状态信息。 二、单项选择题 1.MCS—51单片机的CPU主要的组成部分为。 A.运算器、控制器 B.加法器、寄存器 C.运算器、加法器 D.运算器、译码器 2.单片机能直接运行的程序叫。 A.源程序 B。汇编程序 C。目标程序 D。编译程序 3.单片机中的程序计数器PC用来。 A.存放指令 B.存放正在执行的指令地址 C.存放下一条指令地址D.存放上一条指令地址 4.单片机上电复位后,PC的内容和SP的内容为。 A.0000H,00H B。0000H,07H C。0003H,07H D。0800H,08H 5.单片机8031的ALE引脚是。 A.输出高电平 B。输出矩形脉冲,频率为fosc的1/6 B.C.输出低电平 D。输出矩形脉冲,频率为fosc的1/2 6.单片机8031的EA引脚。 A.必须接地 B。必须接+5V C。可悬空 D。以上三种视需要而定 7.访问外部存贮器或其它接口芯片时,作数据线和低8位地址线的是 A 。 A.P0口 B。P1口 C。P2口 D。P0口和 P2口 8.PSW中的RS1和RS0用来。 A.选择工作寄存器区号 B。指示复位 C。选择定时器 D。选择工作方式

C51单片机实验总结报告

HEFEI UNIVERSITY 单片机实验报告 系别电子信息与电气工程系专业 班级 学号 姓名 指导老师 完成时间

实验一构建单片机最小系统和实验环境熟悉 一、预习要求 1.构建单片机最小系统,熟悉51单片机的结构及编程方法 2.按照程序流程图编写出程序 二、实验目的 1.熟悉星单片机最小系统的组成和工作原理,熟悉Keil C51集成环境软件的使用方法。 2.熟悉MCS51汇编指令,能自己编写简单的程序,控制硬件。 三、实验内容 单片机最小系统实验: 1、熟悉单片机最小系统的组成和工作原理,熟悉Keil C51集成环境软件的安装和使用方法。 2、作出单片机最小系统的组成原理图,分析其各构成单元的工作原理。 存储单元数据传输实验 1、熟悉MCS51汇编指令。 2、进行存储单元数据传输实验,编写程序。 3、运行程序,验证译码的正确性。 四、实验原理 1、作出单片机最小系统的组成原理图

2.最小系统版的组成: 时钟电路,复位电路,电源电路。 3.软件编译环境的熟悉 实验中我们使用keilC环境编译程序。其窗口界面如下: 4.测试程序 ;将从外部RAM3000H单元开始连续存放的 ;50个单字节数据传送到内部RAM30H单元的50个单元中。 ORG 0000H MOV R0,#32H ;计数初值50 MOV A,#78H ;(A)=78H送外部3000H--3050H MOV DPTR,#3000H ;外部数据存储器首地址3000H送DPTR LOOP0: MOVX @DPTR,A ;送78H到外部数据存储区3000H INC DPTR ;外部数据存储区地址增一 DJNZ R0,LOOP0 ;循环次数减一不为零转LOOP0 SETB P1.2 CLR P1.3 CLR P1.4 ;74HC138输入为100,使CS2=0选中62256 MOV R0,#32H ;循环次数50送R0 MOV R1,#30H ;内部数据存储区首址30H送R1 MOV DPTR,#3000H ;外部数据存储区首址3000H送DPTR

基于51单片机的计算器设计说明

目录 第一章引言 (3) 1.1 简述简易计算器 (3) 1.2 本设计主要任务 (3) 1.3 系统主要功能 (4) 第二章系统主要硬件电路设计 (4) 2.1 系统的硬件构成及功能 (4) 2.2 键盘电路设计 (5) 2.3 显示电路设计 (6) 第三章系统软件设计 (7) 3.1 计算器的软件规划 (7) 3.2 键盘扫描的程序设计 (7) 3.3 显示模块的程序设计 (8) 3.4 主程序的设计 (9) 3.5 软件的可靠性设计 (9) 第四章调试 (9) 第五章结束语 (10) 参考文献 (11) 附录源程序 (11)

第一章引言 1.1 简述简易计算器 近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。计算器是日常生活中比较的常见的电子产品之一。如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器呢? 本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用4×6矩阵键盘,可以进行加、减、乘、除9位带符号数字运算,并在LCD1602上显示操作过程。 科技的进步告别了以前复杂的模拟电路,一块几厘米平方的单片机可以省去很多繁琐的电路。现在应用较广泛的是科学计算器,与我们日常所用的简单计算器有较大差别,除了能进行加减乘除,科学计算器还可以进行正数的四则运算和乘方、开方运算,具有指数、对数、三角函数、反三角函数及存储等计算功能。计算器的未来是小型化和轻便化,现在市面上出现的使用太阳能电池的计算器, 使用ASIC设计的计算器,如使用纯软件实现的计算器等,未来的智能化计算器将是我们的发展方向,更希望成为应用广泛的计算工具。 1.2 本设计主要任务 以下是初步设定的矩阵键盘简易计算器的功能: 1.扩展4*6键盘,其中10个数字,5个功能键,1个清零 2.强化对于电路的焊接 3.使用五位数码管接口电路 4. 完成十进制的四则运算(加、减、乘、除); 5. 实现结果低于五位的连续运算; 6. 使用keil 软件编写程序,使用汇编语言; 7. 最后用ptoteus模拟仿真; 8.学会对电路的调试

51单片机C语言程序设计复习资料

2013-2014学年上期51单片机C语言程序设计重修复习提纲考试方式:闭卷考试。 考试题型: 填空题(每空1分,共18分);单项选择题(每空2分,共18分);问答及计算题(每题4分,共16分);编程及程序阅读题(5小题,共48分)。 考试分数: 卷面成绩70%+平时成绩15%+实验成绩15%,未缺席、无课堂违纪、作业全交且认真完成的同学平时成绩可获得满分,缺席一次平时成绩扣30分,实验好评次数3次以上且实验报告全优的同学实验成绩可得满分,实验缺席一次扣30分。缺席实验和旷课共3次以上者,无考试资格。 考试时间: 18周周一(12月30日)下午14:00:16:00,考试地点:具体考室另行通知希望大家认真复习,认真听讲,不懂就问,考试成绩不及格允许查卷,如查卷卷面批阅无误成绩不做更改。 编程题为实验或实验类似的题目有3题,其余2题也取自课堂讲授例题,请务必认真复习。第一章单片机概述及单片机知识回顾 掌握什么是单片机、单片机的应用、常见单片机类型、十进制、十六进制、二进制数制转换知识。掌握单片机的硬件组成、CPU的结构、程序计数器PC的功能、存储器结构、机器周期的计算、会画出单片机的最小系统电路图及回答单片机最小系统的组成。 第二章C51语言程序设计基础(本章填空题和选择题比重较大请务必认真复习)掌握C51语言进行软件开发与汇编语言相比的优点、掌握C51的数据类型、特殊功能位的定义、C51的基本运算(位运算重点复习)、数组的定义、C51的结构及函数。 第三章AT89S51片内并行端口及编程(本章有编程题) 掌握P0-P3并行端口的特点,会开关量检测及流水灯程序的编程。 第四章AT89S51单片机的中断系统(本章有编程题) 掌握中断系统的结构、中断请求响应被满足的条件、外部中断的触发选择方式、外部中断的使用与编程。 第五章AT89S51单片机的定时器/计数器(本章有编程器) 掌握定时器的结构,TOMD及TCON的使用,定时器方式0和方式1的特点、会计算定时器初值,会用定时器中断产生PWM波形,会用定时器对外部事件进行计数。 第六章AT89S51单片机的串行口(本章有计算题) 掌握串行通信的基础知识(课本没有的内容请参照课堂讲授笔记或PPT)、串行口的四种工作方式的特点、会计算奇偶校验码、会根据波特率计算T1的初值。 第七章AT89S51单片机与输入/输出外设接口(本章有编程题) 掌握数码管动态显示的原理、掌握矩阵式键盘的原理与编程(矩阵键盘编程必考,但不会考4X4键盘)。 第八章AT89S51单片机与D/A与A/D转换器的接口(本章有编程题) 掌握AD与DA转换的接口、ADC和DAC的技术指标、常用AD和DA转换器。掌握ADC0809和TLC2543的使用与编程(2器件其中之一有编程题)。 第九章AT89S51单片机应用系统与调试(本章有编程题) 掌握单片机应用系统的软件抗干扰方法。

51单片机实训报告

“51单片机”精简开发板的组装及调试实训报告

为期一周的单片机实习已经结束了。通过此次实训,让我们掌握了单片机基本原理的基础、单片机的编程知识以及初步掌握单片机应用系统开发实用技术,了解“51”单片机精简开发板的焊接方法。同时培养我们理论与实践相结合的能力,提高分析问题和解决问题的能力,增强学生独立工作能力;培养了我们团结合作、共同探讨、共同前进的精神与严谨的科学作风。 此次实训主要有以下几个方面: 一、实训目的 1.了解“51”精简开发板的工作原理及其结构。 2.了解复杂电子产品生产制造的全过程。 3.熟练掌握电子元器件的焊接方法及技巧,训练动手能力,培养工程实践概念。4.能运用51单片机进行简单的单片机应用系统的硬件设计。 5.掌握单片机应用系统的硬件、软件调试方法 二、实验原理 流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。 它的电气性能指标:输入电压:DC4.5~6V,典型值为5V。可用干电池组供电,也可用直流稳压电源供电。 如图所示: 本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。 三、硬件组成 1、晶振电路部分 单片机系统正常工作的保证,如果振荡器不起振,系统将会不能工作;假如振荡器运行不规律,系统执行程序的时候就会出现时间上的误差,这在通信中会体现的很明显:电路将无法通信。他是由一个晶振和两个瓷片电容组成的,x1和x2分别接单片机的x1和x2,晶振的瓷片电容是没有正负的,注意两个瓷片电容相连的那端一定要接地。 2、复位端、复位电路 给单片机一个复位信号(一个一定时间的低电平)使程序从头开始执行;一般有两中复位方式:上电复位,在系统一上电时利用电容两端电压不能突变的原理给系统一个短时的低电平;手动复位,同过按钮接通低电平给系统复位,时如果手按着一直不放,系统将一直复位,不能正常。当要对晶体重置时,只要对此引脚电平提升至高电平并保持两个及其周期以上的时间便能完成系统重置的各

51单片机总结上拉电阻

51单片机总结——上拉电阻 单片机2009-07-28 14:56:05 阅读961 评论1字号:大中小 上拉电阻的作用: (1)用于为OC和OD门电路,提供驱动能力。 以OC(集电极开路)电路为例: 例如,达林顿管(其实就是复合三级管)集成块ULN2003. 内部一路的电路如图,就是一个集电极开路电路。 如果不加上拉电阻是无法高电平驱动其他器件的。因为当三极管截至市没有电流流通的路径,更谈不上驱动了。这个跟单片机P0口加上拉电阻的原理一样。 (2)提高高电平电位: 单片机P1口外接4×4矩阵键盘。另外复用P1.0~P1.3外接ULN2003控制驱动步进电机。 实验中遇到的问题:当接入ULN2003时键盘无法工作,去掉ULN2003后键盘工作正常。ULN2003工作正常。(注,两个部分不同时工作) 问题分析:由于键盘的结构,无非就是两个金属片的接通或断开。但是接入ULN2003 后无法正常工作,说明是接入ULN2003影响到了P1口电平的变化。用万用表测的电压,当单片机输出高电平时,P1.0~P1.3电压1V左右,P1.4~P1.7电压4.3V左右,于是测A T89s52高低电平的判决电位,在1.3V左右。这样P1.0~P1.3始终是低电平,键盘根本无法实现扫描功能。 解决方法,只要抬高P1口高电平时的电位,就可以正常工作, 1.在P1口到ULN2003上串接电阻,起到分压的作用,就可以抬高电平。 2.给P1口接上拉电阻,跟P1口内部电阻并联,减小上拉电阻阻值,减小分得的电压,从而抬高P0口高电平电位。 采用第二种方案可以抬高电平到2.5V左右。键盘工作正常。 另外:我在做液晶显示实验的时候,数据线用的P0口,无法正常工作,不显示字符。但是乱动一下数据线就可以完成显示,但是显示现象并不正常,字符不是一次写入,而是乱动几次才能写完全部内容,正常应该一次全部显示。原因是由于,我的P0口中有六个端口都外接并联三个发光二极管。,因为从资料上查到,P0口每一个端口最大可以吸收10MA 电流,总电流不能超过26MA电流。这样算我的总电流已经到了40MA,呵呵。见笑了。所以怀疑是驱动的问题。于是去掉了几个二极管。显示一切正常。似乎问题已经解决,但总觉得还是有点问题,于是又经过几次试验,发现只有当P0.7端口的并联二极管去掉一个,再在其他端口接上一个发光二极管。此时也可以正常显示。但是这样P0口吸收电流在38MA,也超过了26MA不少。所以不是吸收电流太大的问题。仔细分析当端口并联外接三个二极管的时候等效于加了一个700欧左右的电阻,于是把二极管去掉换成一个1k电阻,液晶也无法显示。

基于51单片机的简易计算器设计

河南##############学校 毕业设计(论文) 基于51单片机的简易计算器 系部: 自动控制系 专业: 电气自动化 班级: 自083 姓名: 崔 # # 学号: 091415302 指导老师: 许 # 二零一二年五月八日

基于51单片机的简易计算器 摘要 工程实践教学环节是为了学生能够更好地巩固和实践所学专业知识而设置的,在本次工程实践中,我以《智能化测量控制仪表原理与设计》、《MCS-51系列单片微型计算机及其应用》课程中所学知识为基础,设计了简易计算器。本系统以MCS-51系列中的8051单片机为核心,能够实现多位数的四则运算。该系统通过检测矩阵键盘扫描,判断是否按键,经数据转换把数值送入数码管动态显示。本系统的设计说明重点介绍了如下几方面的内容:基于单片机简易计算器的基本功能,同时对矩阵键盘及数码管动态显示原理进行了简单的阐述;介绍了系统的总体设计、给出了系统的整体流程框图,并对其进行了功能模块划分及所采用的元器件进行了详细说明;对系统各功能模块的软、硬件实现进行了详细的设计说明。 关键词:MCS-51;8051单片机;计算器;加减乘除

Based on the simple calculator 51 SCM Abstract The engineering practice teaching is to students better to consolidate and practice have set up by the professional knowledge, in this engineering practice, I to the intelligent measurement control instrument principle and design ", "the MCS-51 series single chip computer and its application" course knowledge as the foundation, the design the simple calculator. This system to MCS-51 of the 8051 series single chip microcomputer as the core, can realize the connection arithmetic. The system through the test matrix keyboard scan, judge whether key, the data transfer the numerical into digital tube dynamic display. This system mainly introduced the design that the following aspects of content: based on single chip microcomputer simple calculator basic functions, and the matrix keyboard and a digital tube dynamic display of the principle of a simple expatiated; introduced the design of the whole system, the whole process of the system are discussed, and its function module partition and the components for a detailed explanation; the functional modules of the system hardware and software of the implementation of the detailed design instructions. Key words: MCS-51;8051 single chip microcomputer;Calculator;Add, subtract, multiply and divide:

51单片机C语言入门教程详细解说

单片机c语言入门 相信很多爱好电子的朋友,对单片机这个词应该都不会陌生了吧。不过有些朋友可能只听说他叫单片机,他的全称是什么也许并不太清楚, 更不用说他的英文全称和简称了。单片机是一块在集成电路芯片上集成了一台有一定规模的微型计算机。简称为:单片微型计算机或单片机 (Single Chip Computer)。单片机的应用到处可见,应用领域广泛,主要应用在智能仪表、实时控制、通信、家电等方面。不过这一切都没 什么关系,因为我(当然也包括任何人)都是从不知道转变成知道的,再转变成精通的。现在我只想把我学习单片机的经历,详细地讲叙给大 家听听,可能有些大虾会笑话我,想:那么简单的东西还在这里卖弄。但是你错了,我只是把我个人学习的经历讲述一遍而已,仅仅对那些想 学习单片机,但又找不到好方法或者途径的朋友,提供一个帮助,使他们在学习过程中,尽量少走些弯路而已! 首先,你必须有学习单片机的热情,不是说今天去图书馆看了一个下午关于单片机的书,而明天玩上半天,后天就不知道那个本书在讲什 么东西了。还是先说说我吧,我从大二的第一个学期期末的时候才开始接触单片机,但在这之前,正如上面所说的:我知道有种芯片叫单片机, 但是具体长成什么样子,却一点也不知道!看到这里很多朋友一定会忍不住发笑。嘿嘿,你可千万别笑,有些大四毕业的人也同样不知道单片 机长成什么样子呢!而我对单片机的痴迷更是常人所不能想象的地步,大二的期末考试,我全放弃了复习,每当室友拿着书在埋头复习的时候, 我却捧着自己从图书馆借的单片机书在那看,虽然有很多不懂,但是我还是坚持了下来,当时我就想过,为了单片机值不值得我这样去付出, 或许这也是在一些三流学校的好处吧,考试挂科后,明年开学交上几十元一门的补考费,应该大部分都能过了。于是,我横下一条心,坚持看 我的单片机书和资料。 当你明白了单片机是这么一回事的时候,显而易见的问题出来了:我要选择那种语言为单片机编写程序呢?这个问题,困扰了我好久。具 体选择C51还是A51呢?汇编在我们大二之前并没有开过课,虽然看着人家的讲解,很容易明白单片机的每一时刻的具体工作情况,但是一合上 书或者资料,自己却什么也不知道了,根本不用说自己写程序了。于是,我最终还是决定学C51,毕竟C51和我们课上讲的C语言,有些类似, 编程的思想可以说是相通的。而且C51还有更大的优点就是编写大程序时的优越性更不言而喻,当然在那时,我并没有想的那么深远,C51的特 点,还是在后来的实践过程中,渐渐体会到的!朋友如果你选择了C51,那么请继续往下看,如果你选择了A51,那么你可以不要看了!因为下面讲 的全是C方面的,完全在浪费你的时间! 呵呵^_^ 第二,既然你想学好单片机,你必须得舍得花钱,如果不买些芯片回来自己动手焊焊拆拆的(但是在后期会介绍给大家一个很好用的硬件 仿真软件,并不需要你用实验板和仿真器了,直接在你的PC上完成,但是软件毕竟是软件,从某个特定的意义上来说是并不能代替硬件的),即使

51单片机c语言总结.

入门有针对性的解决一些简单的实际问题,边理论边实践学一样会一样 基本实验:LED流水灯,数码管显示,键盘控制,音乐播放,继电器控制I2C通信实验,串口通信实验,红外线遥控信号解码实验等 单片机的定义分类和内部组成 1单片机就是中央处理器CPU,随机存储器RAM。只读存储器ROM。定时、计数器和各种输入输出接口I/o接口电路等部件集成在一块电路芯片上的微型计算机。 2,1分类按制造工艺分:HMOS和CHMOS CHMOS包括80c51等中间加了C功耗要小适合便携式手提式和野外作业。 2分类按不同容量的存储器配置分:51子系列和52子系列 51表示单片机最后一位数字为1作为标志。片内带有4KbROM或EPROM(Erasable Programmable ROM,可擦除可编程ROM,128BRAM,两个16位定时器/计数器和5个中段器52系列是增强型各项指标都高。 AT89S51是AT89C51的升级版支持ISP在线更新程序ISP(Internet Service Provider 内部集成看门狗计时器等。 3.1串行接口就是接口数据传送 3.2中断控制系统接收中断请求如定时时间到,需要鸣笛报警类似stop to do 停下来去执行ROM中特定的每段程序,执行完后再继续执行先前中断的程序 时钟电路控制节拍工作。 一个典型的单片机应用系统包括输入电路,单片机,输出电路 把他想象成电脑。 单片机的应用: p5 十六进制A10B11C12D13E14F15 记A10和D13点得13点F15不是F16 十六进制加H 逻辑数据的运算 逻辑与。。。两个输入一个输出中间加一个恒定5v电压 有0为0,全1出1 逻辑或有1为1,全0出0; 字长通常与计算机内部的寄存器和运算器数据总线的宽度一致 实例1功能感受protues仿真单片机播放《渴望》主题曲 运用protues打开仿真原理图。 对单片机进行处理编辑edit component,选取目标文件hex Clock frequency 时钟频率 Ok 原理图编辑窗口没有滚动条,可通过预览窗口该表原理图的可视范围。 Protues双击右键删除 先单击鼠标右键,可通过鼠标左键可以编辑元器件的属性 鼠标右键来删除画错的连线 中键缩放原理图 新建即保存新建设计文件

51单片机计算器设计

1引言 当今时代,是一个新技术层出不穷的时代。在电子领域,尤其是自动化智能控制领域,传统的分立元件或数字逻辑电路构成的控制系统正以前所未见的速度被单片机智能控制系统所取代。单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。目前,一个学习与应用单片机的高潮正在工厂、学校及企事业单位大规模地兴起。过去习惯于传统电子领域的工程师、技术员正面临着全新的挑战,如不能在较短时间内学会单片机,势必会被时代所遗弃,只有勇敢地面对现实,挑战自我,加强学习,争取在较短的时间内将单片机技术融会贯通,才能跟上时代的步伐。 它所给人带来的方便也是不可否定的,它在一块芯片内集成了计算机的各种功能部件,构成一种单片式的微型计算机。20世纪80年代以来,国际上单片机的发展迅速,其产品之多令人目不暇接,单片机应用不断深入,新技术层出不穷。20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 本设计是由单片机实现的模拟计算器,它不仅能实现数据的加减乘除运算,而且还能使数据及其计算结果在数码管上显示出来,能够实现0-256的数字四则运算。本设计是用单片机AT89C51来控制,采用共阳极数码显示,软件部分是由C语言来编写的。设计任务利用键盘和数码管设计一个简单的数学计算器,可以完成简单的如加,减,乘,除的四则运算,并将运算结果在数码管上显示出来。 2.方案论证与设计 根据功能和指标要求,本系统选用MCS 51 单片机为主控机。通过扩展必要的外围接口 电路,实现对计算器的设计。具体设计考虑如下: ①由于要设计的是简单的计算器,可以进行四则运算,对数字的大小范围要求不高,故 我们采用可以进行四位数字的运算,选用8 个LED 数码管显示数据和结果。 ②另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16 个按键即可。系统模块图: 2.1 输入模块: 键盘扫描计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O 口资源,因此在很多情况下都不采用这种方式。为此,我们引入了矩阵键盘的应用,采用四条I/O

相关文档
最新文档