单片机电子万历系统的设计与研究.doc

上传人:仙人指路1688 文档编号:4147570 上传时间:2023-04-07 格式:DOC 页数:42 大小:1.07MB
返回 下载 相关 举报
单片机电子万历系统的设计与研究.doc_第1页
第1页 / 共42页
单片机电子万历系统的设计与研究.doc_第2页
第2页 / 共42页
单片机电子万历系统的设计与研究.doc_第3页
第3页 / 共42页
单片机电子万历系统的设计与研究.doc_第4页
第4页 / 共42页
单片机电子万历系统的设计与研究.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《单片机电子万历系统的设计与研究.doc》由会员分享,可在线阅读,更多相关《单片机电子万历系统的设计与研究.doc(42页珍藏版)》请在三一办公上搜索。

1、引 言电子时钟已成为人们日常生活中必不可少的物品,广泛用于家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来了极大的方便。随着电子技术的发展,人们已不再满足于钟表原先简单的计时功能,希望出现一些新的功能,诸如日历的显示、闹钟的应用等,以带来更大的方便。因此,研究实用电子时钟及其扩展应用,有着非常现实的意义,具有很大的实用价值。由于数字集成电路技术的发展和采用了先进的石英技术,现代电子时钟具有走时准确、性能稳定、制作维修简单等优点,弥补了传统钟表的许多不足之处。我们利用单片机技术设计制作的电子万年历, 可以很方便的由软件编程进行功能的调整和改进,使其在能够准确显示年、

2、月、日、时间、星期的同时,还能具有很多其他的功能。如设定闹钟、重要节日的显示等,有一定的新颖性和实用性,同时体积小、计时准确,使用也更为方便,具有技术更新周期短、成本低、开放灵活等优点。单片机自1976年由Intel公司推出MCS-48开始,迄今已有二十多年了。由于单片机集成度高、功能强、可靠性高、体积小、功耗地、使用方便、价格低廉等一系列优点,目前已经渗入到人们工作和生活的方方面面,几乎“无处不在,无所不为”。单片机的应用领域已从面向工业控制、通讯、交通、智能仪表等迅速发展到家用消费产品、办公自动化、汽车电子、PC机外围以及网络通讯等广大领域。其应用于仪器仪表中显得更为优越。以单片机制成的电

3、子时钟具有计时准确,功耗低的优点。从而得到了各界领域的广泛应用。单片机正处在微控制器的全面发展阶段,各公司的产品在尽量兼容的同时,向高速,强运算能力,寻址范围大以及小型廉价方面发展。单片机的发展推动了应用系统的发展,应用系统的发展又反过来对单片机提出了更高要求,从而促进单片机的发展。单片机正向着功能更强,速度更快,功耗更低,辐射更小的方向发展。随着集成度的不断提高,把众多的外围功能器件集成在片内已经具备了充分的条件。这也是单片机以后发展的重要趋势。AT89S52是美国Atmel公司生产的低电压、高性能CMOS 8位单片机,片内含8KB的可反复檫写的程序存储器和256B的随机存取数据存储器(RA

4、M),器件采用Atmel公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内配置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89S52单片机可灵活应用于各种控制领域。美国DALLAS公司推出的低功耗实时时钟芯片DS12C887。它可以对年、月、日、周日、时、分、秒进行计时,还具有闰年补偿等多种功能,而且DS12C887的使用寿命长,误差小。对于数字电子万年历采用直观的数字显示,可以同时显示年、月、日、周日、时、分、秒和温度等信息,还具有时间校准等功能。该电路采用AT89S52单片机作为核心,功耗小,能在3V的低压工作,电压可选用35V电压供电。本文通过对一

5、个基于单片机的能实现万年历功能电子时钟的设计,从而达到学习、了解单片机相关指令在各方面的应用。系统由主控制器AT89S52、时钟电路DS12C887、数字式温度传感器DS18B20、点阵式LCD12863显示电路、按键电路等部分构成,能实现时钟日历显示,能进行时、分、秒的显示,重要节日的显示等功能。1 设计要求与方案论证1.1 设计要求 具备年、月、日、星期、时、分、秒等功能; 时间与阳历能够自动关联; 具备温度计量与重要节日显示功能; 具备年、月、日、星期、时、分、秒校准功能。1.2 系统基本方案选择和论证1.2.1 单片机芯片的选择方案和论证方案一: 采用89C51芯片作为硬件核心,采用F

6、lash ROM,内部具有4KB ROM 存储空间,能以3V的超低压工作,而且与MCS-51系列单片机完全兼容,但是运用于电路设计中时由于不具备ISP在线编程技术, 当对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,对芯片的多次拔插会对芯片造成一定的损坏。方案二:采用AT89S52,片内ROM全都采用Flash ROM;能以3V的超低压工作;同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM 存储空间,同样具有89C51的功能,且具有在线编程可擦除技术,当对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,由此不会对

7、芯片造成损坏。所以选择采用AT89S52作为主控制系统。1.2.2 显示模块选择方案和论证方案一:采用LED数码管动态扫描,LED数码管价格适中,对于显示数字合适,而且采用动态扫描法与单片机连接时,占用的单片机口线少。但LED数码管不能显示汉字且连线复杂,所以此设计不采用LED数码管作为显示。方案二: 采用点阵式数码管显示,点阵式数码管是由八行八列的发光二极管组成,对于显示文字也比较适合,但线路连接相当复杂,所以也不用点阵式数码管作为显示。方案三: 采用点阵式LCD12864显示,点阵式LCD12864的显示功能强大,可显示大量文字,图形,显示多样,清晰可见,且线路连接方便,所以在此设计中采用

8、点阵式LCD12864。1.2.3 时钟芯片的选择方案和论证方案一:直接采用单片机定时计数器提供秒信号,使用程序实现年、月、日、星期、时、分、秒计数。采用此种方案虽然减少芯片的使用,节约成本,但是,实现的时间误差较大。所以不采用此方案。方案二:采用DS12C887时钟芯片实现时钟,DS12C887芯片是一种高性能的时钟芯片,可自动对秒、分、时、日、周、月、年以及闰年补偿的年进行计数,而且精度高,位的RAM做为数据暂存区,工作电压2.5V5.5V范围内,2.5V时耗电小于300Na。1.2.4 温度传感器的选择方案与论证方案一:使用热敏电阻作为传感器,用热敏电阻与一个相应阻值电阻相串联分压,利用

9、热敏电阻阻值随温度变化而变化的特性,采集这两个电阻变化的分压值,并进行A/D转换。此设计方案需用A/D转换电路,增加硬件成本而且热敏电阻的感温特性曲线并不是严格线性的,会产生较大的测量误差。方案二:采用数字式温度传感器DS18B20,此类传感器为数字式传感器而且仅需要一条数据线进行数据传输,易于与单片机连接,可以去除A/D模块,降低硬件成本,简化系统电路。另外,数字式温度传感器还具有测量精度高、测量范围广等优点。1.3 电路设计最终方案决定综上各方案所述,对此次作品的方案选定: 采用AT89S52作为主控制系统;时钟芯片DS12C887提供时钟计数;点阵式LCD12864为显示。2 系统的硬件

10、设计与实现2.1 电路设计框图 模键盘块AT89S52主控制模块点阵式LCD12864显示模块 温度采集模块DS12C887时钟模块图2.1 电路设计框图2.2 系统硬件概述本电路是由AT89S52单片机为控制核心,具有在线编程功能,低功耗,能在3V超低压工作;时钟电路由DS12887提供,它是一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS12C887内部有一个31*8的用于临时性存放数据的RAM寄存器。可产生年

11、、月、日、周日、时、分、秒,具有使用寿命长,精度高和低功耗等特点,同时具有掉电自动保存功能;显示部份由液晶显示屏12864构成。2.3 主要单元电路的设计2.3.1 单片机主控制模块的设计AT89S52单片机为40引脚双列直插芯片,有四个I/O口P0、P1、P2、P3, MCS-51单片机共有4个8位的I/O口(P0、P1、P2、P3),每一条I/O线都能独立地作输出或输入。单片机的最小系统如图2.2所示,18引脚和19引脚接时钟电路,XTAL1接外部晶振和微调电容的一端,在片内它是振荡器倒相放大器的输入,XTAL2接外部晶振和微调电容的另一端,在片内它是振荡器倒相放大器的输出。第9引脚为复位

12、输入端,接上电容,电阻及开关后够上电复位电路,20引脚为接地端,40引脚为电源端。图2.2 主控制系统2.3.2 时钟电路模块的设计图2.3示出DS12887的引脚排列,GND、 VCC:直流电源,其中VCC接+5V输入,GND接地,当VCC输入为+5V时,用户可以访问DS12C887内RAM中的数据,并可对其进行读、写操作;当VCC的输入小于+4.25V时,禁止用户对内部RAM进行读、写操作,此时用户不能正确获取芯片内的时间信息;当VCC的输入小于+3V时, DS12C887会自动将电源发换到内部自带的锂电池上,以保证内部的电路能够正常工作。MOT是模式选择脚,接地选用Intel模式。AD0

13、AD7是复用地址数据总线,与单片机P0口连接。CS是片选输入,低电平有效。图2.3 DS12C887的引脚图2.3.3 温度采集模块设计如图2.4所示。采用数字式温度传感器DS18B20,它是数字式温度传感器,具有测量精度高,电路连接简单特点,此类传感器仅需要一条数据线进行数据传输,使用P3.1口与DS18B20的I/O口连接加一个上拉电阻,Vcc接电源,Vss接地。图2.4 DS18B20温度采集2.3.4 电路原理及说明(1) 时钟芯片DS12C887的工作原理DS12C887能够自动产生世纪、年、月、日、时、分、秒等时间信息,其内部又增加了世纪寄存器,从而利用硬件电路解决子“千年”问题;

14、 DS12C887中自带有锂电池,外部掉电时,其内部时间信息还能够保持10年之久;对于一天内的时间记录,有12小时制和24小时制两种模式。在12小时制模式中,用AM和PM区分上午和下午;时间的表示方法也有两种,一种用二进制数表示,一种是用BCD码表示;DS12C887中带有128字节 RAM,其中有11字节RAM用来存储时间信息,4字节RAM用来存储DS12C887的控制信息,称为控制寄存器,113字节通用RAM使用户使用;此外用户还可对DS12C887进行编程以实现多种方波输出,并可对其内部的三路中断通过软件进行屏蔽。 (2) DS12C88的引脚功能 GND、 VCC:直流电源,其中VCC

15、接+5V输入,GND接地;MOT:模式选择脚,接GND选用的是Intel模式;AD0AD7:复用地址数据总线,与P0口相连接;IRQ:中断请求输入,低电平有效,与外部中断INT0连接;DS/RD:数据选择或读输入脚,与P17口连接;R/W:读/写输入端,与P16口相连接;AS:地址选通输入脚,与P15口连接;CS:片选输入,低电平有效,与P14口连接.(3) DS12C887的存储功能表2.1 DS12C887的存储功能地址功能取值范围十进制数取值范围二进制BCD码0秒059003B00591秒闹钟059003B00592分059003B00593分闹钟059003B0059412小时模式01

16、2010C AM,818C PM0112AM,8192PM24小时模式023001700235时闹钟,12小时制112010C AM,818C PM0112AM,8192PM时闹钟,24小时制023001700236星期几(星期天=1)17010701077日131011F01318月112010C01129年0990063009910控制寄存器A11控制寄存器B12控制寄存器C13控制寄存器D50世纪099NA19,202.3.5 显示模块的设计(1) 点阵式LCD12864的工作原理点阵式LCD12864-0402B是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二

17、级简体中文字库的点阵图形液晶显示模块;其显示分辨率为12864, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多。(2) 点阵式LCD12864的读写时序图图2.6 串口数据线模式数据传输过程(3) 点阵式LCD12864显示如图2.7所示,采用点阵式LCD12864显示,VSS、R/W(SID)、K接地;VDD

18、、RESET、PSB、A接高电平;RS(CS)、E(SCLK)分别与P10和P11连接;DB0DB7与P2口相连。图2.7 点阵式LCD12864显示3 系统的软件设计3.1 程序流程框图图3.1主程序流程图 图3.2 计算阳历程序流程图图3.3时间调整程序流程图3.2 子程序的设计3.2.1 DS18B20温度子程序 CONFIG12 EQU 7FH TEMPH EQU 21H TEMPL EQU 20H REG2 EQU 22H REG3 EQU 23H REG4 EQU 24H DAT EQU P0.7TOUTOU: LCALL CHUSHI LCALL RDTEMP MOV A,TEM

19、PL ANL A,#11110000B MOV TEMPL,A MOV A,TEMPH ANL A,#00000111B ORL A,TEMPL SWAP A MOV 25H,A MOV A,25H MOV B,#64H DIV AB MOV A,B MOV B,#0AH DIV AB SWAP A ORL A,B MOV 10H,A RETCHUSHI: LCALL RESET MOV A,#0CCH LCALL WRITE111 MOV A,#4EH LCALL WRITE111 MOV A,#CONFIG12 LCALL WRITE111 RETRDTEMP: LCALL RESET M

20、OV A,#0CCH LCALL WRITE111 MOV A,#44H LCALL WRITE111 LCALL DL1MS LCALL RESET MOV A,#0CCH LCALL WRITE111 MOV A,#0BEH LCALL WRITE111 LCALL ERAD111 MOV TEMPL,A LCALL ERAD111 MOV TEMPH,A RETRESET:LA: SETB DAT MOV 52H,#200LB: CLR DAT DJNZ 52H,LB SETB DAT MOV 52H,#30LC: DJNZ 52H,LC CLR C ORL C,DAT JC LB MO

21、V 58H,#80LD: ORL C,DAT JC LP DJNZ 58H,LD SJMP LALP: MOV 52H,#250LF: DJNZ 52H,LF RETWRITE111: MOV 53H,#8W51HA: SETB DAT MOV 54H,#8 RRC A CLR DATW52HA: DJNZ 54H,W52HA MOV DAT,C MOV 54H,#30W53HA: DJNZ 54H,W53HA DJNZ 53H,W51HA SETB DAT RETERAD111: CLR EA MOV 58H,#8RD1A: CLR DAT MOV 54H,#6 NOP SETB DATRD

22、2A: DJNZ 54H,RD2A MOV C,DAT RRC A MOV 55H,#30RD3A: DJNZ 55H,RD3A DJNZ 58H,RD1A SETB DAT RET3.2.2 DS12C887子程序写12C887程序WRITE: CLR SCLK NOP SETB RST NOP MOV A,32H MOV R4,#8WRITE1: RRC A ;送地址给12C887 NOP NOP CLR SCLK NOP NOP NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP DJNZ R4,WRITE1 CLR SCLK NOP MOV A,31H

23、 MOV R4,#8WRITE2: RRC A NOP ;送数据给12C887 CLR SCLK NOP NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP DJNZ R4,WRITE2 CLR RST RET;读12C887程序READ: CLR SCLK NOP NOP SETB RST NOP MOV A,32H MOV R4,#8READ1: RRC A ;送地址给12C887 NOP MOV IO,C NOP NOP NOP SETB SCLK NOP NOP NOP CLR SCLK NOP NOP DJNZ R4,READ1 MOV R4,#8R

24、EAD2: CLR SCLK NOP ;从12C887中读出数据 NOP NOP MOV C,IO NOP NOP NOP NOP NOP RRC A NOP NOP NOP NOP SETB SCLK NOP DJNZ R4,READ2 MOV 31H,A CLR RST RET4 结 论4.1 在实际中遇到的问题及解决方案4.1.1 硬 件电子万年历的电路系统较大,对于连线方面不可轻视,庞大的电路系统中只要出现一处错误,则会对系统运行造成很大的不便,而且电路的交线较多,对于各种芯片的引脚要特别注意处理,否则很容易接错引脚而是电路不能正常工作。在电子万年历的设计最初调试中遇到了很多的问题。回

25、想这些问题只要认真多思考都是可以避免的,以下为主要的问题:(1) 点正式LCD12864A、K脚连接混淆,致使显示屏显示微弱。解决:A管脚接电源,K管脚接地,即可解决此为题。(2) 对万年历修改时间或日期时,有时按键下去并无任何作用。解决:对系统断电,用万用表测试,发现按键与单片机接口处出现多处断路,重新连接此处线路,即可解决问题。(3) 点正式LCD12864显示屏时常出现显示停滞或显示乱码。解决:检查线路,DS12C887的AD1-AD7管脚与P0口相连接,P0口出未加上;上拉驱动电阻,故选用九针500欧姆排阻作为P0口驱动电阻,即可解决此问题。4.1.2 软 件电子万年历是多功能的数字型

26、、可以看当前日期、时间、温度的仪器。电子万年历功能繁多,对于它的程序也较为复杂,所以在编写程序和调试时出现了相对较多的问题。最后经过多次的模块子程序的修改,一步一步的完成,最终解决了软件。在软件的调试过程中主要遇到的问题如下:(1)烧入程序后,点阵式LCD2864显示闪动,而且亮度不均匀。解决:首先对调用的延时进行逐渐修改,可以解决显示闪动问题。其次,由于本设计使用动态扫描方式显示的数字,动态扫描很快,人的肉眼是无法看出,但是调用的显示程序时,如果不在反回时屏蔽掉最后的附值,则会出现很亮的现象,所以在显示的后面加了屏蔽子令,最后解决了此问题。(2)修改时间、日期时时间与日期没有自动对应上。解决

27、:把不相关的程序暂时屏蔽,日历的子程序独立调试,发现在调用日历自动更新时,对十进制和十六进制处理不好,所以会造成错乱。最后把相应的十进制进行修改,使得可以与十六进制对应,最后解决了此问题。 (3)加入温度的程序后,温度显示部分只显示DS18B20的初始值85.0。 解决:由于DS18B20是串行通信数据,只用一个口线传输,在处理采集的模拟信号时需要一定的时间,当把万年历的程序相接入时,会对延时有很大的影响。所以在调用温度子程序时,先关闭定时器1中断允许,在温度子程序返回时再打开定时器1中断允许。最终解决了此问题。4.2 调试小结经过多次反复的测试与分析,对电路的原理及功能更加熟悉,同时提高了电

28、路设计能力以及对电路分析能力.尤其在软件的编程方面得到进一步提高,对编程能力得到加强.最重要的是所学的理论知识得到了很大的提高与巩固。4.3 万年历部分成品图片图4.2 万年历实物图片 总结本文的电子万年历系统以单片机AT89S52为基础,加以外围电路。利用时钟芯片DS12C887作为时钟计时电路,做到计时准确无误;数字传感器DS18B20作为温度采样系统,采集处理温度:点阵式LCD12864作为信息显示屏,工作稳定,字符清晰,字体美观,亮度适中。三个月的毕业设计,在老师的指导下已经顺利结束了。通过对本课题的研究和设计,从中了解到进行一项工程设计的大体过程,了解了如何根据项目的指标要求,分析实

29、现设计方案,并且优选,了解如何通过硬件、软件设计实现这一方案。在设计的过程中,我学到了好多在书本里没有的知识,知道了接手一个新项目时应该如何去考虑它,采取什么样的方法,如何去确定,如何去取舍。我不仅较好的完成了毕业设计的任务要求,而且积累了一些实践经验,具有一定的实用价值。在实践过程中,发觉自己过去所学在实际应用中还是远远不够的,且有时软件的理论设计是可行的,但在客观实践中往往会出现人为干扰等一系列不可预知的问题。但通过自己不断的查阅资料和询问老师和同学,并不断实践,这样,理论与实际就很好的联系起来,最终克服了困难。这点我感受颇深。最后,这次设计可以说是对自己在大学四年中所学知识的一次总结和检

30、验,所学的东西基本上用到了,从而才觉得原来所学的每门功课都是有联系的,在实际设计与操作中增加了新知识。但是因此也让自己了解到自己的一些薄弱环节,这就促使我必须弥补它们。这对以后的工作学习,也是很有益处的。总之,这次设计让我受益匪浅,我将在今后的工作学习中继续发扬努力进取的精神,使自己的知识储备和实践能力得到更大的提高!致 谢在毕业设计即将完成之际,我向曾经给于我帮助和支持的人表示衷心的感谢!感谢我的母校陕西理工学院,给我提供了这么好的学习和生活环境,在学校学习和生活的日子是我一生中一段难忘的经历!感谢我的导师张立众老师。本次毕业设计是在张立众老师的亲切关怀和悉心指导下完成的。他严肃的科学态度,

31、严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。张老师不仅在学业上给我以精心指导,同时还在思想、生活上给我以无微不至的关怀,在此谨向张老师致以诚挚的谢意和崇高的敬意。我还要感谢在一起愉快的度过毕业论文小组的同学们,正是由于你们的帮助和支持,我才能克服一个一个的困难和疑惑,直至毕业设计的顺利完成。同时,我要感谢电气工程系的各位老师,正是由于他们的传道、授业、解惑,让我学到了专业知识,并从他们身上学到了如何求知治学、如何为人处事。另外,感谢电气工程系10届同学的帮助和勉励。同窗之谊和手足之情,我将终生难忘!路漫漫其修远兮,吾将上下而求索。我愿在未来的学习和工作过程中,以更加丰厚的成果来答

32、谢曾经关心、帮助和支持过我的所有领导、老师、同学、和朋友。在毕业设计即将完成之际,我的心情无法平静,从开始进入课题到论文的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意!最后,我要感谢培养我长大含辛茹苦的父母,谢谢你们! 参考文献1 华成英.模拟电子技术基础.高等教育出版社,20052 阎 石.数字电子技术基础.高等教育出版社,20063 邱关源.电路.高等教育出版,20064 何立民.单片机原理应用与接口技术.北京航空航天大学出版社,20045 谭浩强.C语言程序设计(第三版).清华大学出版社,20066 李建忠.单片微型机原理与应用.西安电子科技大学出版社

33、,2004.7 李增国.传感器与检测技术.北京航空航天大学出版社.2009.8 房小翠 ,王金凤.单片微型计算机与机电接口技术.北京国防工业出版社,2002.9 孙育才.ATMEL新型AT89S52系列单片机及其应用.清华大学出版社,2005.AT89S52 英文资料DescriptionThe AT89s52 is a low-power, high-performance CMOS 8-bit microcomputer with 8K bytes of Flash programmable and erasable read only memory (PEROM). The device

34、 is manufactured using Atmels high-density nonvolatile memory technology and is compatible with the industry-standard 80C51 and 80C52 instruction set and pinout. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory programmer. By combining

35、a versatile 8-bit CPU with Flash on a monolithic chip, the Atmel AT89s52 is a powerful microcomputer which provides a highly-flexible and cost-effective solution to many embedded control applications.Pin ConfigurationsThe AT89s52 provides the following standard features: 8K bytes of Flash, 256 bytes

36、 of RAM, 32 I/O lines, three 16-bittimer/counters, a six-vector two-level interrupt architecture, a full-duplex serial port, on-chip oscillator, and clock circuitry. In addition, the AT89s52 is designed with static logic for operation down to zero frequency and supports two software selectable power

37、 saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port, and interrupt system to continue functioning. The Power-down mode saves the RAM contents butfreezes the oscillator, disabling all other chip functions until the next hardware reset.Pin DescriptionVCC Supp

38、ly voltage.GNDGround.Port 0Port 0 is an 8-bit open drain bi-directional I/O port. As an output port, each pin can sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as highimpedance inputs. Port 0 can also be configured to be the multiplexed loworder address/data bus dur

39、ing accesses to external program and data memory. In this mode, P0 has internalpullups.Port 0 also receives the code bytes during Flash programming and outputs the code bytes during program verification. External pullups are required during program verification. Port 1Port 1 is an 8-bit bi-direction

40、al I/O port with internal pullups. The Port 1 output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins, they are pulled high by the internal pullups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current() because of the i

41、nternal pullups. In addition, P1.0 and P1.1 can be configured to be the timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively, as shown in the following table.Port 1 also receives the low-order address bytes during Flash programming and verifi

42、cation.Port PinAlternate FunctionsP1.0 T2(external count input to Timer/Counter2)P1.1T2EX(Timer/Counter2 capture/reload trigger and direction control)Port 2Port 2 is an 8-bit bi-directional I/O port with internal pullups. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written

43、 to Port 2 pins, they are pulled high by the internal pullups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current () because of the internal pullups. Port 2 emits the high-order address byte during fetches from external program memory and during

44、 accesses to external data memory that use 16-bit addresses (MOVX DPTR). In this application, Port 2 uses strong internal pullups when emitting 1s. During accesses to external data memory that use 8-bit addresses (MOVX RI), Port 2 emits the contents of the P2 Special Function Register. Port 2 also receives the high-order address bits and some control signals during Flash programming and verification.Port 3Port 3 is an 8-bit bi-directional I/O port with internal pullups. The Port 3 output buffers ca

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号