鍩轰簬鍗曠墖鏈虹殑鍏矾鏅鸿兘鎶㈢瓟鍣ㄧ殑璁捐_姣曚笟璁捐 - 鐧惧害鏂囧簱 联系客服

发布时间 : 星期二 文章鍩轰簬鍗曠墖鏈虹殑鍏矾鏅鸿兘鎶㈢瓟鍣ㄧ殑璁捐_姣曚笟璁捐 - 鐧惧害鏂囧簱更新完毕开始阅读4e11329fdb38376baf1ffc4ffe4733687e21fc94

选择怎么样的单片机对产品的整体结果影响很大,选择时一般考虑以下问题。

了解被开发产品的需求和任务:

搞清楚被开发产品的使用环境、供电方式、功能要求、成本要求和开发周期等需求非常重要。第一时间有了产品的需求和任务,才能选择更合适的单片机。

根据任务选机型:

若所设计的产品是在恶劣环境下使用,则要选择工业级或军级产品,可考虑STC公司、Philips公司和WinBond公司的系列单片机;若在常规环境下使用,可选择民品,民品产品多,选择范围大;若是干电池供电,需要低功耗应用场合,可考虑TI公司的MSP430系列、Microchip公司的PIC系列、STC公司的L系列单片机;若要去控制速度快并有A∕D转换、存储器等需求,可考虑ST公司的uPSD3200系列、Silicon Labs公司的C8051F系列单片机等产品;若功能单一、成本要低,可考虑STC公司、PIC公司、WinBond公司、ATMEL公司的单片机产品。选择不同的单片机,其片内程序存储容量、数据存储器、E2PROM的大小都有差异。

综合性能的考虑:

对于产品的设计,在选择单片机时,要充分利用片内存储空间,万一不够,可以通过扩展片外存储器的方法已达到要求,或者更换已有的大容量其他机型,兼容性好。如WinBond公司、ATMEL公司、STC公司的绝大部分产品都很兼容。但如果程序太大,超过了一般的64KB时,只好选择ST公司的uPSD3200系列产品了。另外,单片机的接口能力、接口方式和I∕O口的多少也得考虑。

开发环境的考虑:

在选用单片机时,还要注意有没有配套的开发系统。由于单片机的应用系统一般比较紧凑小巧,不像其他微机系统有较多的外设,因此,在自行设计组装时,必须具备专门的工具来帮助单片机的开发应用。

其他因素的考虑:

在选择单片机时,其封装形式也得考虑。双列直插、PLCC有对应插座适合产品开发阶段或学习时使用,SOP、QFP、SSP、TSSP等表贴封装更适合最终产品选用。

本课题根据以上五点单片机选型规则来看,AT89C51单片机是最好的选择。首先本课题的设计产品使用环境为常规环境,并且实现的功能相对来说比较简

单;其次软件程序不是非常的多,4k存储空间做够使用,常见的开发软件和工具我们称为8051开发系统或环境,常见的汇编程序ASM51、Keil C51、MedWin 等均是针对8051内核单片机的开发软件,AT89C51完全兼容,可以使用;再次该系列单片机的发展相对较成熟,会使用的人很多,容易被人接受;最后,在众多的51系列单片机中, ATMEL 公司的AT89C51更实用,因他不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写。显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机内的程序还可以进行加密。AT89C51有PDIP、PLCC和PQFP/TQFP等封装,AT89C51目前的售价比8031还低,市场供应也很充足。 3.1.2 AT89C51单片机的介绍

AT89C51单片机主要有以下部件构成:八位微处理器CPU、振荡电路、总线控制部件、中断控制部件、片内Flash存储器、片内RAM、并行I/O接口、定时器和串行I/O接口。AT89C51单片机内部由CPU、4KB的FPEROM ,128B的RAM,两个16位的定时/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。单片微机内部最核心的部分是CPU,CPU按其功能可分为运算器和控制器两部分。控制器由程序计数器PC、指令储存器、指令译码器、实时控制与条件转移逻辑电路等组成。它的功能是对来自存储器中的指令进行译码,通过实时控制电路,在规定的时刻发出各种操作所需的内部和外部的控制信号,使各部分协调工作,完成指令所规定的操作。运算器由算术逻辑器部件ALU、累加器ACC、暂存器、程序状态字寄存器PSW,BCD码运算调整电路等组成。为了提高数据处理和位操作功能,片内增加了一个通用寄存器B和一些专用寄存器,还增加了位处理逻辑电路的功能。

AT89C51的主要性能包括:AT89C51与MCS—51控制器系列产品兼容,片内有4K可在线重复编程闪速电擦除存储器(Flash Memory),存储器可循环写入/擦除1000次;存储器数据保存时间可达10年;工作电压范围宽:Vcc可由2.7V到6V;全静态工作可由0Hz到16MHz;程序存储器具有3级锁存保护;128*8位内部RAM;32条可编程I/O线;两个16位定时器/计数器;中断结构具有5个中断源和2个中断优先级;可编程全双工串行通信;空闲状态维持低功耗和掉电状态保存存储内容。

AT89C51引脚图如图3-1所示。

图3-1 AT89C51引脚图

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8个TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输

入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE∕P:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。

PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。

EA/VPP:当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA/VPP将内部锁定为RESET;当EA/VPP端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3.1.3 AT89C51特殊功能寄存器

特殊功能寄存器也称专用寄存器,是具有特殊功能的所有寄存器的集合,简称SFR(Special Function Register)。特殊功能寄存器共含有22个不同寄存器。它们的地址分配在80H~FFH中,即在RAM地址中。这些寄存器的名称和地址见表3-1所示。

表3-1 AT89C51特殊功能寄存器列表

符合 *ACC *B *PSW SP 地址 E0H F0H D0H 81H 注释 累计器 乘法寄存器 程序状态字 堆栈指针