当前位置:文档之家› AT89S52单片机-孙育才-

AT89S52单片机-孙育才-

AT89S52单片机-孙育才-
AT89S52单片机-孙育才-

第一章绪论

1、什么是单片机?它与微型计算机在结构上有何区别?

答:1)所谓单片机,是指在一块芯片上集成了中央处理器CPU、随机存储器RAM、程序

存储器ROM 或EPROM、定时/计数器、中断控制器以及串行口,并行I/O 接口等部件,构

成的一个完整的微型计算机系统。

2)结构上,微型计算机将CPU、RAM、ROM、输入/输出设备等部分被分成若干芯片,

安装在一个称之为主板的印刷电路板上。而单片机却把它们集成到一块电路芯片中了。

另外,在系统结构方面,单片机使用哈佛或者超级哈佛结构。计算机用冯诺依曼结构。

就是单片机的程序空间和数据空间是分开的,而计算机的是共用一个存储器单元。

2、AT89 系列单片机有哪些主要特点?

答:1)、与AT8051 接插相兼容

2)、以EEPROM 电可擦除和FLASH 技术为主导的存储器

3)、静态时钟方式

4)、可反复进行应用系统试验

5)、高标准的质量检测

3、AT89C 和AT89S 系列结构功能上有何区别?

答:1)结构上:

①、AT89S 系列片内含ISP 的可反复擦写的Flash 只读程序存储器;

②、AT89S 系列新增了断电标志、可编程监视器(看门狗)、中断恢复等。

2)功能上:(部分功能是因为结构的改变而新增)

①、引脚功能:管脚几乎相同,变化的有,在AT89S 中P1.5,P1.6,P1.7 具有第二功能,

即这3 个引脚的第二功能组成了串行ISP 编程的接口;

②、编程功能:AT89C 仅支持并行编程,而AT89S 不但支持并行编程还支持ISP 再线编程。在编程电压方面,AT89C 的编程电压除正常工作的5V 外,另Vpp 需要12V,而AT89S

仅仅需要4-5V 即可;

③、烧写次数更高:AT89S 标称烧写次数是1000 次,实为1000-10000 次,这样更有利开

始学习者反复烧写,降低学习成本;

④、工作频率更高:AT89C 极限工作频率是24MHZ, 而AT89S 最高工作频率是

33MHZ,(AT89S 芯片有两种型号,支持最高工作频率分别为24MHZ 和33MHZ)从而具有更快

的计算速度;

⑤、电源范围更宽:AT89S 工作电压范围,达4-5.5V(或4-6V),而AT89C51 在低于4.8V 和高于5.3V 的时侯则无法正常工作;

⑥、抗干扰性更强:AT89S 内部集成看门狗计时器(Watchdog Timer),而AT89C 需外接看

门狗计时器电路,或者用单片机内部定时器构成软件看门狗来实现软件抗干扰。

4、何谓“兼容性”?AT89 系列单片机的内核与什么系列单片机相兼容?二者有有何重要区别?

答:1)所谓兼容性,是指几个硬件之间、几个软件之间或是几个软硬件之间的相互配合的程度;

2)由于AT89 系列是以MCS-51 为内核,所以它和MCS-51 系列单片机是兼容的。

重要区别:

①、ATMEL 公司将EEPROM 电可擦除和FLASH 技术融入MCS-51 中诞生了AT89 系

列单片机,由于AT89 内部含有FLASH 存储器,因此在开发过程中可以十分容易地进行程序的修改;

②、AT89 系列单片机采用静态时钟方式,可以节省电能;

③、AT89 系列单片机工作性能符合更严格的标准(军品标准)。

5、AT89S51 与AT89S52 二者在功能上有何区别?

答:AT89S52 的存储器容量扩大了一倍,增加了2 个中断源、16 位定时/计数器增加了一个功能极强的定时/计数器2(比AT89S51 多出的定时器具有捕获功能)。

第二章AT89S52系列单片机的基本结构

1、AT89S 系列单片机从功能结构上分有哪几种产品,各类产品在功能上又有哪些差别?答:AT89S 系列AT89S51~ AT89S53 和AT89S8252 这四种机型,其硬件结构基本相同,仅部分模块的功能略有区别,这一档次的机型主要性能如表1.2 所示:

可见:AT89S51 的存储器容量较少,中断源数目也较其它三个少,最重要的是少了16 位定时/计数器中一个功能极强的定时/计数器2(比其它三种少了定时器的捕获功能);AT89S51、AT89S52 较另外两个的工作电压要低,而工作频率要高,中断源数目要少。

2、AT89S52 单片机内部有哪些主要逻辑功能部件?

答:1)、CPU:8 位字长;

2)、存储器:8KB 系统内可编程FLASH 存储器,256KB 内部RAM,20 多个特殊功能

寄存器;

3)、定时器:3 个16 位定时/计数器;

4)、I/0 端口:四个8 位I/0 端口、ISP 端口;

5)、串行口:全双工(UART)串行口;

6)、内部中断系统;

7)、振荡器和时钟电路,全静态操作:0~33MHz;

8)、定时监视器(看门狗)、双数据指针(DPTR)、电源下降标志。

3、何谓专用寄存器和通用工作寄存器?AT89S52 的通用工作寄存器在应用时有何突出特点?为什么要设置通用工作寄存器?

答:1)专用寄存器是单片机内的物理寄存器,如程序计数器PC、堆栈指示器SP 等,它们与数据存储器无关,用来存放地址或地址基值用于特殊用途,例如I/O 断口控制等;通用寄

存器(R0~R7)是用于存放参加运算的数据、中间结果或地址的寄存器。

2)AT89S52 在片内RAM 的00H~1FH(共32B)空间开辟了4 组通用工作寄存器区,

每组共有8 个8 位的寄存器R0~R7,通过软件对PSW 的RS1 和RS0 位进行设置,选择任意

一组作为前台使用,其余3 组被屏蔽,免去进栈保护,可减少堆栈深度,节省出入栈指令和时间。

3)设置通用工作寄存器,就可避免频繁地访问存储器,可缩短指令长度和指令执行时

间,提高机器的运行速度,也给编程带来方便。

4、AT89S52 单片机的时钟周期、机器周期、指令周期是如何划分的?如何计算机器周期?设主振频率f=12MHz,则一个机器周期T 为多少?

答:1)、时钟周期:也称振荡周期,是指为单片机提供时钟脉冲信号的振荡源的周期;

机器周期:一个机器周期包含6 个状态周期S1~S6,也就是12 个时钟周期,在

一个机器周期内CPU 可以完成一个独立的操作;

指令周期:它是指CPU 完成一条指令所需的全部时间。每条指令执行时间都是有

1~4 个机器周期组成。

2)、AT89S52 系统中,有单周期指令、双周期指令和四周期指令。

3)对于标准单片机,一个机器周期由12 个时钟周期构成,时钟周期为1/f。f=12MHz

时,一个机器周期T=1us。

5、何谓“复位”?复位会影响哪些功能寄存器?

答:1)复位是使CPU 以及系统各部件处于确定的初始状态,并使系统从初始态开始工作。复位后寄存器的初始状态如下图2.2 所示:

2)对于部分寄存器复位后的初始值具有重要意义:PC=0000H,表示程序必须从程序存

储器0000H 单元开始执行;PSW=0000H,表示RS1 RS0=00,自动选择工作寄存器0 组;P0~P3 口=0FFH,表示复位后的I/O 是双向的,可以正确输入或输出;SP=07H,表示这时的栈底

是08H,这时必须重新设置堆栈区域。AUXR1=×××××××0,表示自动选择DPTR0。

6、AT89S52 有哪几种省电方式?

答:AT89S52 提供两种省电工作方式:休眠方式和节电保持方式。

7、每个机器周期出现两次ALE 信号有效,意味着什么?在什么情况下只出现一次?

答:1)每个机器周期出现两次意味着一个机器周期内可以读两次程序存储器代码;

2)当主机执行访问外部数据MOVX 类指令时,在第二个机器周期ALE 信号将减少一

次。

8、PSEN 和RD / WR各自选通作用是什么?这样选通有什么重要意义?

答:1)PSEN 是外部程序存储器的读选通信号,RD是外部数据读选通信号,WR是外部数

据写选通信号。

2)在访问外部程序存储器时,每个机器周期两次PSEN 有效(低电平),而访问内部程

序存储器时则不出现;访问外部数据存储器的选通信号是RD、WR,这样就把内部和外部、程序和数据存储器的访问截然分开,从而保证指令的执行不会出错。

第三章AT89S52存储器组织

1、简述半导体存储器的种类及其功能特点。

答:半导体存储器的分类如下图3-1 所示:

图3-1 半导体存储器的分类

1)随机存取存储器RAM

①双极型RAM:特点是存取速度高,但集成度低,功耗大,成本高;

②MOS 型RAM:

静态RAM:不需要刷新,功耗低于双极型RAM,但高于动态RAM;

动态RAM:依靠寄生电容存储电荷来存储信息,因而存在泄漏电流,信息在一定时

间内会自然丢失,故必须定时刷新,功耗较静态RAM 低;

2)ROM 的分类及特点

①掩膜式ROM :用定作掩膜对存储器进行编程,一旦制造完毕,内容不能改变;

②可编程式的PROM :允许用户一次性写入,再也不可更改;

③可擦除式的EPROM:允许用户多次写入信息,写入操作由专用的写入设备完成

写入之前应先擦除原来写入的信息。

2、何谓随机存取存储器RAM?静态RAM 和动态RAM 的本质区别是什么?动态RAM 为

什么要刷新?

答:1)RAM(random access memory)中文译作随机存储器,其存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序;

2)静态RAM 与动态RAM 的本质区别在于存储信息的方式:静态RAM 存储信息新能

稳定,非破坏性读出,不需刷新,只有断电后,所存信息才会丢失;而动态RAM 需定时刷新,另在信息读出时,其原存内容将受到破坏;

3)动态RAM 要刷新是因为存在泄漏电阻使栅极电容上的电荷经过一定时间泄放,从

而使存储信息从“1”变“0”,故必须对原存信息“1”的单元进行电荷补充。

3、何谓只读ROM 存储器?有何功能特点?简述ROM、PROM、EPROM、EEPROM 的本

质区别?

答:1)ROM(Read Only Memory)表示只读存储器,指在微机系统的在线运行过程中,只能对其进行读操作,而不能进行写操作的一类存储器;

2)即使机器掉电,ROM 中的数据也不会丢失;

3)ROM 中的数据在出厂后不能改变;而PROM 用户能且只能固化一次自己信息,数

据写入后,就不能再改变了;可擦除可编程的ROM 又称为EPROM 可以脱机擦写,且全部

被擦除,时间较长,需高压电源;电可擦除可编程序的ROM 也称为EEPROM,可以在线

修改信息,擦除可以按字节分别进行,速度快并且不需特殊装置和高压电源。

4、何谓Flash 存储器?它与EPROM 有何本质区别?它的突出优点是什么?

答:1)Flash 是"Flash Memory"的简称,即电可擦写闪速只读存储器;

2)与EPROM 有何本质区别是可以在线修改信息,擦除可以按字节分别进行;

3)它的优点是其擦写既快又方便,可随机进行,并且不需特殊装置和高压电源。

5、简述AT89S52 单片机内部数据存储器的配置和地址分配。访问外部程序存储器和数据存储器有何本质区别?

答:AT89S52 单片机内RAM,最低32 单元(00H~1FH)为工作寄存器区;工作寄存器上

面的16 个单元(20H~2FH)构成固定的可位寻址存储区;用户RAM 区(30H~0FFH),可

作为数据缓冲区,用于存放各种数据和中间结果,同时没有使用的工作寄存器单元和可位寻址单元都可作为数据缓冲区,同时该区也可作为堆栈区,栈底可以根据片内数据存储器的使用情况由指令设定,80H~0FFH 既是内部数据存储器也是特殊功能寄存器,由寻址方式加以区分。

访问外部程序存储器PSEN 信号有效,而数据则RD、WR信号有效,且访问指令不同,

前者是MOVC 后者是MOVX,后者的ALE 信号在第二个机器周期时少一个。

6、简述AT89S52 片内Flash 存储器的加密和编程。

答:AT89S52 设有LB1、LB2、LB3 三个封锁位,三位有组合功能如下表3-2 所示:

表3-2 程序封锁位及其功能组合

表中“P”表示加密位被编程,“U”表示未被编程,其他组合方式未被定义。对存储器

加密,需对三位加密位按LB1→LB2→LB3 顺序一位一位执行,每位编程时的控制信号不同。AT89S52 有并行和串行两种方式,并行不支持ISP,串行支持;编程是逐个字节进行的。

第四章AT89S52指令系统

1、何谓寻址?简述AT89S52 的寻址方式。试问特殊功能寄存器应采用何种寻址方式?

答:1)寻址是指指令寻找操作数或操作数地址的方式;

2)AT89S52 有7 种寻址方式,分别是寄存器寻址、直接寻址、寄存器间接寻址、立即

寻址、变址间接寻址、相对寻址、位寻址;

3)访问特殊功能寄存器应采用直接寻址方式,也是唯一能访问特殊功能寄存器的方式。2、基址变址间接寻址方式有何特点?主要应用在何种场合?采用DPTR 或PC 作基址寄存

器,其寻址范围有何不同?

答:1)基址变址间接寻址是将基址寄存器内容和变址寄存器内容之和作为目的地址进行寻址的方式,A 通常作为变址寄存器,而A 的内容是随程序的运行而动态变化的,故可实现动态寻址;

2)主要用于程序转移和数据查表;

3)选用PC 作基址寄存器时表格参量必须设置在紧跟查表指令之后,只能一次性查表,

选用DPTR 为首地址指针时表格参量可存放在以DPTR 指针内容为首地址的程序存储器中

的64KB 范围内的任何区段,而且可任意并无限次读取。

3、AT89S52 片内RAM 为256B。对于高128~256B RAM 区域是片内RAM,又是特殊功能

寄存器的地址空间,两者的地址空间是重叠的,如何分别访问?

答:作为片内RAM 区域采用间接寻址方式,对于特殊功能寄存器只能采用直接寻址方式。4、请指出下列指令的本质区别:

MOV A,data

MOV A,#data

MOV data1,#data

MOV 74H,68H

答:MOV A,data ;直接寻址;(A) ←(data)

MOV A,#data ;立即寻址;(A) ←data

MOV data1,#data ;data1 直接寻址,#data 立即寻址;(data1) ←data

MOV 74H,68H ;直接寻址;(74H) ←(68H)

5、设R0 中内容为32H,A 的内容为48H,片内RAM 32H 单元内容为80H,40H 单元内容

为08H。请指出在执行下列程序后上述各单元内容的变化。

MOV A,@R0

MOV @R0,40H

MOV 40H,A

MOV R0,#35H

答:

6、设应用系统,要求根据当前运算结果所给出的数据,到指定的存放在程序存储器中的数据表中读出对应的数据字。

设给出数据存于内部RAM 的30H 单元中,数据表存放在程序存储器的首地址为1000H

的诸单元中,存放的数据为字(双字节)。查表所得数据(高位字节)存于41H 和(低位字节)存于40H 单元中。变比寄存器A 给出数据在00H~0FH 之间,其对应关系为:

A 给出数据:00 01 02 …0D 0E 0F

对应表格数据:00A0 7532 FF09 …1110 8743 5493

请编写该系统查表程序段。

这种查表法有何局限性?如果表格数据长度超过256 个字节单元,则应如何解决?

答:MOV DPTR,#1000H

CLR C

MOV A,30H

RLC A

PUSH ACC

MOVC A,@A+DPTR

MOV 40H,A

INC DPTR

POP ACC

MOVC A,@A+DPTR

MOV 41H,A

此种查表法,表格数据长度不能超过256 个字节单元;若表格数据长度超过256 个字节

单元,则左移一位将产生高位进位,将进位值加到DPH 中去即可。

7、两个4 位BCD 码数相加求和,设被加数存于片内RAM 的40H、41H 单元,加数存于45H、46H,和数存于50H、51H 单元中(前者为低位字节,后者为高位字节),如果最高位产生溢出。要考虑相应处理。请编制求和程序段。

答:

MOV A,40H

ADD A,45H

DA A

MOV 50H,A

MOV A,41H

ADDC A,46H

DA A

指令指令说明结果

MOV A, @R0 (A)←((R0)) (A)=80H

MOV @R0, 40H ((R0)) ← (40H) (32H)=08H

MOV 40H, A (40H) ← (38H) (40H)=80H

MOV R0, #35H (R0) ← 35H (R0)=35H

MOV 51H,A

CLR A

ADDC A, #00H

MOV 52H, A

8、进行BCD 码减法运算。应如何考虑?

答:对于十进制数BCD 码减法,没有专门的指令进行调整,必须变换成补码相加后再进行二—十进制调整。

9、双字节和单字节两数相乘,设被乘数存于片内RAM 的41H、40H(前者为高位字节)单元中,乘数存于R4 中,积存于52H、51H、50H 单元(前者为高字节,顺序排列)请编写此乘法程序段。

答:程序如下页所示:

MOV A,40H

MOV B,R4

MUL AB

MOV 50H,A

MOV 51H,B

MOV A,41H

MOV B,R4

MUL AB

ADD 51H,A

ADDC 52H,B

10、AT89S52 有哪些逻辑运算功能?各有什么用处?设A中内容为10101010B(0AAH),R4 中内容为01010101B(55H),请写出它们的“与”、“或”、“异或”操作的结果。

答:AT89S52 具有位和字节操作数的逻辑运算指令,字节操作数逻辑运算又分单字节和双字节操作数两类。具体指令及其作用(详见教材P58~P61、P71~P74),另注意一些逻辑指令的惯用法:与(屏蔽某些位),或(置位某些位),异或(求反、加密解密)等。

ANL A,R4 ;(A)=00000000 B

ORL A,R4 ; (A)=11111111 B

XRL A,R4 ; (A)=11111111 B

11、AT89S52 的转移指令有何独特优点?

答:AT89S52 设有极丰富的控制转移指令,共分三大类:无条件转移、条件转移和循环转移。能很好的适应复杂的测控系统的需要。

12、AT89S52 的无条件转移指令有哪几条?如何选用?

答:(1)子程序调用指令:ACALL addr11 ;2 字节可实现2KB 范围内调用,省存储空间LCALL addr16 ;3 字节可实现64KB 范围内调用,编程方便

(2)返回类指令:RET ;子程序返回

RETI ;中断服务程序返回,保证返回断点的正确性

(3)转移类指令:AJMP addr11 ;程序转移的目标地址在2KB 范围内,省存储空间

LJMP addr16 ;程序转移的目标地址在64KB 范围内,编程方便

SJMP rel ;转移范围:PC 的当前值为基准-128~127,浮动性

JMP @A+DPTR;适宜用于多分支

(4)空操作指令:NOP ;软件延时、填充空白存储区域、填充存储器边缘

13、AT89S52 的绝对调用和长调用有何本质区别?如何选用?

答:1)绝对调用是双字节指令,用于目的地址在当前指令((PC)+2)在内的2KB 范_______围内

调用;长调用是三字节指令,可调用64KB 存储空间的任一目的地址的子程序。

2)可见,绝对调用可节省1B 的存储单元,但被调用子程序的存放区域受到限制,而

长调用没有此限制,可在64KB 存储空间内任意调用。

14、为什么SJMP 指令的rel=0FEH 时,将实现本指令自身无限循环?有何用途?设程序转向的目的地址为0F75H,当前PC 值为0FEDH,请求出相对偏移量rel 的值。

答:1)因为rel=0FEH 时,其真值为-2,所以PC+2+rel 将使程序转向SJMP 指令本身,使程序进入无限循环;可用作设置断点;

2)∵rel=目标地址-PC 当前地址=0F75H-0FEDH=-78H

换算成补码为88H ∴rel=88H

15、AT89S52 的比较指令有何独特之处?可以在那些量之间比较?

答:执行AT89S52 的比较指令后,可通过查看进位标志位C 的值,知道源操作数和目的操作数之间的大小关系,且此指令不影响两操作数的原值;可进行A 与direct、A 与#data、Rn

与#data、@Ri 与#data 之间的比较。

16、间接转移指令JMP @A+DPTR 有何独特优点?应用中应注意些什么?

答:本指令执行时,内部进行16 位加法((A)+(DPL),如产生最高位进位,则自动进位DPH 中)运算,形成16 位有效目标转移地址;由于一般无条件转移指令是由二字节或三字节组成,因此,必须在指令JMP @A+DPTR 前对变址寄存器A 已确定的内容进行处理,即将A

中内容乘2 或乘3 才正确。

17、AT89S52 的循环转移指令的特殊优点表现在哪里?

答:AT89S52 循环转移指令给某段程序需重复执行若干次带来了方便,另外循环控制寄存器可以是Rn(R0~R7)与直接寻址单元direct,这就派生了很多条循环指令,以满足复杂应用的需要。

18、设逻辑运算表达式为:Y= A?(B +C)+D ?(E +F )。其中变量A、B、C 分别为P1. 0、P1.4,定时/计数器1的溢出标志TF1,D、E、F 分别为22H.0、22H.3、外中断方式标志IT1,输出Y 为P1.5,请编写一程序以软件方法实现上述表达式逻辑功能。

答:程序如下:

A:BIT P1.0

B:BIT P1.4

C1:BIT TF1 ;为了布尔累加器C 区别,将表达式中C 定义为C1

D:BIT 22H.0

E:BIT 22H.3

F:BIT IT1

Y:BIT P1.5

LOGIC: MOV C,B

ORL C,/ C1

MOV F0,C ;将中间结果存于F0 中

MOV C,A

ANL C,/F0

MOV F0,C

MOV C,E

ORL C,/F

ANL C,D

MOV D,C

MOV C,F0

ORL C,/D

MOV Y, C

RET

19、设布尔累加器C 的原值为1,P1 口的内容为10100011B,P3 口的内容为01101100B,

请指出执行下列程序段后,C、P1 口和P3 口内容变化结果。

MOV P1.3,C

MOV P1.4,C

MOV C,P1.6

MOV P3.6,C

MOV C,P1.0

MOV P3.4,C

答:MOV P1.3,C ;(P1.3)=1

MOV P1.4,C ;(P1.4)=1

MOV C,P1.6 ;(C)=0

MOV P3.6,C ;(P3.6)=0

MOV C,P1.0 ;(C)=1

MOV P3.4,C ;(P3.4)=1

执行程序段后,(C)=1, (P1)=1011 1011B, (P3)=0011 1100B

第五章AT89S52 的中断

1、中断的含义是什么?为什么要采用中断技术?

答:1)中断是处理事件的一个过程,这一过程一般是由计算机内部或外部某种紧急事件并向主机发出请求处理信号,主机在允许的情况下响应请求,暂停正在执行的程序,保存好断点处的现场,转去执行中断处理程序,处理完中断服务程序后自动返回到原断点处,继续执行原程序,这一处理过程称为中断。

2)设置中断使单片机能够及时的按事件轻、重、缓、急,依次处理响应并处理运行过

程中内部和外部的突发事件,解决单片机快速CPU 与慢速外设间的矛盾,增强实时性,提高了单片机工作效率及其可靠性。

2、何谓查询中断?何谓矢量中断?何谓中断入口地址?

答:1)查询中断方式是通过软件逐个查询(查询顺序反映了中断源的优先顺序)各中断源的中断请求标志,通过查询并找出其对应的中断入口地址,然后转向该中断服务程序去执行;2)矢量中断以硬件为基础,为每个中断源直接提供对应的中断服务程序入口地址,中

断请求通过优先级排队电路,一旦被响应,立即转向对应的入口地址去执行;

3)中断入口地址即中断矢量地址,主机响应中断就是控制程序转向对应的中断入口地

址处开始执行中断服务程序,直到遇到中断返回(RETI)指令为止。

3、AT89S52 提供哪几种中断?什么是中断优先级?什么是中断嵌套?什么是同级内的优先权管理?

答:1)AT89S52 设有8 个中断源,6 个中断矢量:定时/计数器0、1、2,INT 0、INT1和一个串行通信;

2)为使系统能及时响应并处理发生的所有中断,系统根据引起中断事件的重要性和紧

迫程度,将中断源分为若干个级别,称作中断优先级;

3)当CPU 正在处理一个优先级低的中断源的时候,如果发生另一个优先级比它高的中

断请求,CPU 暂停正在处理的中断源得处理程序,转而处理优先级高的中断请求,待处理完之后,再回到原来正在处理的低级中断程序,这种高级中断源能中断低级中断源的中断处理称为中断嵌套;

4)同级优先管理即当同时有两个或两个以上相同优先级得中断请求时,则由内部查询

顺序决定优先响应得中断请求,排在后面的未被响应的中断请求将被挂起。

4、外部中断请求有哪两种触发方式?对触发信号有什么要求?如何选择和设置?

答:1)低电平触发和跳变触发;

2)电平触发中断请求信号(低电平)至少应保持两个机器周期,跳变触发中断请求信

号至少保持一个周期的高电平,一个周期的低电平;

3)电平触发有比较好的抗干扰性,若中断脉冲请求信号过宽,则有可能多次执行中断

服务程序,此时应接为边沿触发,跳变触发软件置位ITx 选择,当为1 时是跳变触发,为0 时为电平触发。

5、何谓可屏蔽中断?AT89S52 中断系统设有几级屏蔽?如何进行程序控制?

答:可屏蔽中断即可通过软件特殊功能寄存器IE 的设置,实现对中断源请求的开放或屏蔽;AT89S52 设有2 级屏蔽;IE 中EA 为总的中断响应控制位,各对应中断源有相应的中断响应控制位。

6、何谓断点?为什么要进行断点现场保护?有哪些信息应考虑进栈保护?

答:正常程序运行时被中断打断的地方叫断点;为了使中断服务程序处理完正确返回到被中断得原程序得断点处继续往下执行,必须将断点处的现场进行压栈保护;如PC 当前值、累加器ACC 及PSW 等其它内容。

7、主机响应中断时有条件的,为什么要有这些条件?这些条件与主机响应中断的速度有什么关系?

答:有这些条件是为了保证正在执行的程序不因随即出现的中断响应而被破坏或出错,又能正确的保护和恢复现场;这些条件会导致主机响应中断的速度变慢,响应延迟时间为3—8 个机器周期。

8、编制中断服务程序时应注意哪些问题?

答:进入中断服务程序是对断点现场进行保护和中断返回时进行现场恢复(尤其注意返回指令应用RETI 而不能用RET)。

9、在AT89S52 中,哪些中断请求标志可以随着主机响应而自动撤除?哪些中断请求标志需由用户通过程序来撤除?

答:共用中断向量的中断请求标志(TI 和RI,TF2 和EXF2)需软件复位,其余中断请求标志(TF0、TF1、INT 0、INT1)硬件自动清除。

10、请写出INT 0为跳变触发方式的初始化程序段。

答:

SETB IT0

SETB EX0

SETB EA

第六章AT89S52的接口部件结构及其功能

1、什么I/O 是接口?I/O 接口的作用是什么?

答:I/O 接口即输入/输出设备接口;它是CPU 和I/O 设备之间交换信息的媒介和桥梁。2、AT89S52 片内有4 个I/O 端口(并行),使用时有哪些特点和分工?简述各个并行I/O 接口的结构特点。

答:1)特点:在数据输出时可锁存,即在输出新的数据之前,通道口上的原数据一直保持不变,但对输入的信息是不锁存的,所以从外部输入的信息必须保持到取数指令执行完为止;分工:在不需要功能扩展时,P0、P1、P2 口均可作典型的并行I/O 通道口用,P3 口作I/O 口或第二变异功能口用。在需外部功能扩展方式时,则P0 口为地址/数据线分时复用,P2 口作高8 位地址线用,由P0 口和P2 口组成16 位地址线,P0 口又是8 位数据线,P1 口为典型的I/O 口用;

2)P0 口的每一位包括一个输出锁存器、两个三态缓冲器、一个输出驱动电路和一个输

出控制电路,其中输出驱动电路由一对场效应管组成,P0 口既可作地址/数据分时复用总线,又可作通用I/O 口;

P1 口常用作通用I/O 口,可位处理,各位输入或输出均是正确的。其中P0.1 和P0.2 是

多功能的。

P2 口既可作高8 位地址总线,又可作通用I/O 口,内部设置上拉电阻,不需外加。在复

位情况下,直接可以从引脚输入外部数据信息。

P3 口是一个多功能的、且按位操作的端口。当主机扩展外部功能部、器件时,P3 口为

变异功能口。当某些不作变异功能使用时可作通用I/O 口用,其特性是准双向的。

3、何谓准双向I/O 口?在使用中如何正确处理?

答:1)准双向I/O 口:不包含高阻这个状态的双向I/O 口,不是真正的双向I/O 口。

2)在进行输入前,必须置位各锁存器为1(输出FFH),才能保证输出正确。

4、何谓分时复用?在什么情况下出现复用?在硬件应做何处理?

答:1)将时间段进行分片,在不同时间片上引脚作不同功能使用;

2)当应用系统需外部扩展功能部、器件时,并行I/O 口就变成三总线结构,P0 口分时

复用;

3)需将外扩部、器件的地址,数据和控制线分别与相应的总线相连(有时还需配备锁

存器、缓冲器)。

5、AT89S52 的并行I/O 端口信息由哪几种读取方法?读-修改-写操作时针对口的哪一部分进

行的?有什么优点?

答:1)每个并行I/O 口均有两种“读”方式:读锁存器和读引脚

2)锁存器

3)在某种特定场合,输出和输入信号在引脚上会发生变化,产生不一致。为避免这种

错误,故设置了读锁存器和读引脚两种方式。

6、何谓总线?采用总线结构有何突出优点?AT89S52 的4 组并行I/O 口,在什么情况下作三总线用?

答:1)计算机系统是由许多功能部、器件所组成,各功能、器件都受主机(CPU)的控制,为了简化与CPU 的连接,采用公用的连接线,称为总线;

2)采用总线结构,给系统的功能扩展的电路设计带来了方便;

3)当应用系统需外部扩展功能部、器件时,作三总线用。

7、AT89S52 内部设有几个定时/计数器?其核心部件是什么?简述定时/计数器0 和1 的工作方式,为什么只有定时/计数器0 有工作方式3?

答:1)有3 个

2)核心部件是一个16 位的加1 计数器。

3)方式0——13 位定时/计数器,方式1——16 位定时器,方式2——自动再装入8 位

定时/计数器,方式3——将定时/计数器0 分为两个独立的8 位计数器(注意:定时/计数器1

无工作方式3)。

4)由TL0 组成的8 位定时/计数器,占用了全部有关控制等信号,TH0 组成的8 位定时

/计数器占用了定时器/计数器1 的TR1 和TF1 信号位,因此,定时/计数器1 无工作方式3,只有定时/计数器0 有工作方式3。

8、何谓可编程的?如何选择和设计定时、计数和工作方式?设某系统选择定时/计数器0 以定时模式工作于方式1;定时/计数器1 以外部计数模式于方式0,请写出其控制字。

答:1)可编程是指用户根据需要可通过软件对相关硬件进行编程;

2)可以通过对工作方式控制寄存器TMOD 和T2CON 相应位的设置进行选择;

3)MOV TMOD,#41H

MOV TCON, #50H

9、设定时/计数器0 为定时模式工作于方式1,主频fosc=6MHz,要求定时时间Tc=10ms,请计算出定时计数初值,并写出初始化程序段。

答:初值65536-5000=60536;

初始化程序段:

;主程序

START:

……

MOV SP,#60H

MOV TMOD,#01H

MOV TH1,#0ECH

MOV TL1,#78H

SETB EA

……

SETB ET0

SETB TR0

……

10、AT89S52 的定时/计数器2 有何特点?它有哪几种工作方式?

答:1)定时/计数器2 具有3 种不同的工作方式,通过软件编程对T2CON 特殊功能寄存器的相关位进行设置来选择;

2)16 位自动再装入方式、16 位捕获方式、波特发生器方式。

11、AT89S52 的定时/计数器2 与0 或1 的自动再装入工作方式有什么不同?定时/计数器2 的自动再装入工作方式有什么特点?如何使用?

答:1)定时/计数器2 的自动再装入工作方式是16 位,根据控制寄存器T2CON 中EXEN2

标志位的不同状态有两种选择,且根据特殊功能寄存器T2MOD 的DCEN 位是“0”还是

“1”可选择加1 或者减1 计数方式;而定时/计数0 或1 是8 位,只能是加1 计数方式;2)功能更加强大,方便灵活;

3)根据需要对控制寄存器T2CON 和特殊功能寄存器T2MOD 进行软件操作。

12、异步通信和同步通信的主要区别是什么?AT89S52 有没有同步通信功能,是方式几?答:1)同步通讯的基本特征是接受和发送的时钟需保持严格的同步,而异步通信既不需要同步字符,也不要求保持数据流的连续性;

2)有,方式0

13、通信波特率的定义是什么?采用定时/计数器1 的方式2 作为波特率发生器,它所产生的波特率范围是多少?采用定时/计数器2 作波特率发生器又如何?同步通信的波特率如何计算?

答:1)波特率即数据传输的速度,即单位时间内传输位的信息量。

2)设系统主振频率为fosc,采用定时/计数器1 的方式2 作为波特率发生器时,波特率= ×b/s ∈〔fosc/98304~ fosc 2 /192〕b/s (注:SMOD 可取0 或1)

32

SMOD

12 8

OSC f

×(2 ?Ν)

3)设系统主振频率为fosc,采用定时/计数器2 作波特率发生器时,波特率范围是

fosc /2097152 ~ fosc /32 b/s

4)同步通信的波特率为fosc/12

14、AT89S52 如何实现主-从式多机通信?简述其操作过程。

答:AT89S52 单片机的串行通信方式2 和方式3 具有主——从式多机通讯功能。

1) 全部从机设置SM2 为1

2) 主机通信时首先发送呼叫地址帧信息,将TB8 设置为1

3) 所有从机接受呼叫地址帧信号后,与本机地址进行比较,若结果相等,即为被呼叫

从机,复位SM2 为0,回发应答信号,准备接受主机发来的数据帧或相互传输信

息,直至全部传输结束。其它从机保持SM2 为1,对后面接受到的信息不予任何

理睬,直至被寻址为止。

4) 主机接收到寻址从机发回的允许通信的信息后,随之发送一连串的TB8 为0 的数

据帧或相互间传送信息。发送完毕或传输结束后,从机再次置位SM2 为1,等待

下一次的寻呼。

15、如何应用AT89S52 片内定时监视器(Watch Dog Timer)?

答:定时监视器(WDT)的使用必须在WDTRST 寄存器按序列写入01EH 和0E1H 才能使

WDT 有效。要想很好利用WDT,必须定时对这部分的代码周期性地写入WDTRST 寄存器,

以防止WDT 的复位。为保证在中止低功耗过程中,包括退出低功耗状态在内WDT 不产生

溢出,最好在刚刚进入退出低功耗模式前复位WDT。

16、AUXR 辅助功能寄存器的作用是什么?

答:AUXR 辅助功能寄存器是一个多功能选择控制寄存器,其中3 位有定义;其中,DISALE:ALE 允许/禁止控制位,DISRTO:RST 输出/禁止控制位,WDIDLE:在休眠模式WDT

允许/禁止控制位。

第七章程序设计基础

1、什么是伪指令?在汇编语言程序设计中有何作用?

答:伪指令又称汇编程序控制译码指令,属说明性汇编指令;它们在汇编时不产生机器指令代码,不影响程序的执行,它既不控制机器的操作也不被汇编成机器代码,只能为汇编程序所识别并指导汇编如何进行。

2、何谓汇编语言、汇编语言源程序、汇编程序、汇编源程序和汇编语言目标程序?

答:用助记符,符号地址,标号等按一定格式来表示指令和编写程序的语言成为汇编语言;用一种程序专门用于将符号语言源程序自动转换成机器语言程序并执行,这种代真过程称为汇编;专门用于转换的程序成汇编程序;用汇编语言编写的应用程序称为汇编语言源程序;转换后的机器语言程序称为目标程序。

3、汇编语言和C 语言各有何特点?在单片机应用中应如何选择?

答:汇编语言是最接近机器码的一种语言,占用资源少、程序执行效率高,程序运行速度快,但不易移植。缺点是开发速度、软件质量、程序的可读性、结构严谨性和程序坚固性、可移植性等方面,都不如C 语言那么完美。

而C 语言是一种编译型程序设计语言,它兼顾了多种高级语言的特点,并具备汇编语

言的功能。C 语言有功能丰富的库函数、运算速度快、编译效率高、有良好的可移植性,而且可以直接实现对系统硬件的控制。C 语言是一种结构化程序设计语言,它支持当前程序设计中广泛采用的由顶向下结构化程序设计技术。

如果程序量不太大,要求实时性强,或者程序存储空间有限的应用系统多用汇编;对于

程序量大,实时性要求不高时多采用C 语言。

4、请对下列程序段进行手工汇编:

CLR C ;C3

MOV R2,#03H ;7A03

LOOP: MOV A,@R0 ;E6

ADDC A,@R1 ;37

第17 页共21 页

MOV @R0,A ;E2

INC R0 ;08

INC R1 ;09

DINZ R2,LOOP ;DA#LOOP(要自己计算出偏移量Rel)

JNC NEXT ;50#NEXT

MOV @R0,#01H ;7601

SJMP LOOP1 ;80#LOOP1

NEXT: DEC R0 ;18

LOOP1: SIMP LOOP1 ;80#LOOP1

(1)、设(R0)=20H,(R1)=25H,若(20H)=80H,(21H)=90H,(22H)=0A0H,(25H)=0A0H, (26H)=6FH,(27H)=76H,则上述程序段执行后其结果如何?

(2)、若27H 单元内容改为6FH,则结果有何不同?

答:(1)上述程序执行后(R0)=23H,(R1)=28H,(20H)=20H,(21H)=00H,(22H)=17H,(23H)=01H (2)不同在于:程序执行后(22H)=10H

5、AT89S52 有几条查表指令?它们有何本质区别?当表的长度超过256 个字节单元应如何处理?

答:有2 条,分别为MOVC A, @A+DPTR 和MOVC A,@A+PC

本质区别:第一条指令中DPTR 为常数且是表格的首地址,A 为从表格首址到被访问字节地址的偏移量;第二条指令中,PC 是下条指令首地址,而A 则是从下条指令首地址到常数表格中的被访问的偏移量。

当表的长度超过256 个字节单位时只能使用第一条查表指令。

6、循环结构程序有何特点?何谓多重循环结构程序?编程时应注意什么?请编写延时20ms 的延时程序段,设fosc=12MHz。

答::延时程序如下:

DELAY: MOV 20H, N ;占2 个机器周期

AGAIN: NOP ;占1 个机器周期

NOP ;占1 个机器周期

NOP ;占1 个机器周期

NOP ;占1 个机器周期

DJNZ 20H,AGAIN ;占2 个机器周期

因为:TM=1/fosc×12=1us,则(1+1+1+1+2)×N+2=20ms/1us=20000,故N=3333

7、何谓子程序结构程序?在什么情况下适宜选用子程序结构程序?请编写下列子程序段。其数学表达式为

ρn(x)=αnxn+αn-1xn-1+…+α1x+α0

=(…(αnx+αn-1)x+…+α1)x+α0

画出其程序流程图。

答:能被其他程序调用,在实现某种功能后能自动返回到调用程序去的程序,叫子程序结构;对于通用型的问题,且在一个程序中可能要用到多次;

假设结果不超过2 个字节,存于R3R4 中,α0、α1…αn-1、αn存于连续区域存αn 的地址指针

为R0,参数n 存于R2,程序如下:

ADD: PUSH PSW ;现场保护

PUSH ACC

PUSH B

MOV PSW,#08H

MOV R3,#00H

MOV R2,#n ;参数n 给R2

MOV A, @R0 ;αn→R4

MOV R4, A

AGAIN: MOV A, R4 ;(R3R4)×x

MOV B, #x ;→R3R4

MUL A B

MOV R4, A

XCH A, B

MOV B, #x

XCH A, R3

MUL A B

ADD A, R3

XCH A, R4

INC R0 ;(R0)+1→R0

ADD A, @R0 ;(R3R4)+((R0))→R3R4

XCH A, R4

ADDC A, #0

MOV R3, A

DJNZ R2, AGAIN ;重复n 次

POP B ;现场恢复

POP ACC

POP PSW

RET ;返回

8、设在外部数据存储器其首地址为1000H 单元开始,连续存放200 个无符号字节数,请编写查找其中最大值(或最小值)并存放于1100H 单元的程序段。并画出程序流程图。

答:求最大值的程序如下:

START: CLR A ;A 清0

MOV R1, A ;R1 清0

MOV DPTR, #1000H ;数据块首地址送DPTR

MOV R3, 200 ;数据块长度送R3

LOOP: MOVX A, @DPTR ;读数据块

INC DPTR ;指向下一个单元

MOV R2, A ;将读出的数据块送R3

CLR C ;清C 为0

MOV A, R1 ;基准值送A

SUBB A, R2 ;基准数—读出的数

JNC NEXT ;C=0,即(A)>=(R2),跳转

MOV A, R2 ;(C)=1,即(A)<(R2),交换

MOV R1, A

NEXT: DJNZ R3, LOOP ;判搜索完否

MOV 1100H, R1 ;最大数放到1100H 单元中

END

9、设从片外RAM 以1000H 为首地址的连续单元中存放一组带符号数,其符号数的个位存于片内2FH 单元中,要求统计出其中大于0、等于0 和小于0 的符号事故的个数,并将统计结果存入片内RAM 的2AH(大于0)、2BH(等于0)和2Ch(小于0)单元中。请编写上

述统计程序段,并画出程序流程图。

答:其程序段如下:

START:CLR A ;将A 清0

MOV R1, A ;将R1 清0

MOV R2, A ;将R2 清0

MOV R3, A ;将R3 清0

MOV R0, 2FH ;将数据块长度放到R0 中

MOV DPTR, #1000H

LOOP:MOVX A, @DPTR

INC DPTR ;指向下一个单元

CJNE A, #00H, NEXT1 ;将数据与0 比较,不等于0 则转NEXT1

INC R1 ;等于0,R1 加1

SJMP AGAIN

NEXT1: JNC NEXT2 ;C=0 则转NEXT2

INC R3 ;C=1 即A 小于0,则R3 加1

SJMP AGAIN

NEXT2: INC R2 ;A 大于0,则R2 加1

AGAIN: DJNZ R0, LOOP

MOV 2BH, R1 ;将等于0 的个数放到2BH 中

MOV 2AH, R2 ;将大于0 的个数放到2AH 中

MOV 2CH, R3 ;将小于0 的个数放到2CH 中

END

10、编制的应用程序为什么要进行调试?单片机的应用系统为什么必须借助开发仿真器进行开发与调试?

答:一个单片机应用系统从提出任务到正式投入运行涉及到系统的汇编与调试程序,而程序调试是单片机应用系统中极重要的的一环,因为源程序设计中的遗漏或错误以及不完全符合功能或技术指标的部分,都会在调试中暴露出来,所以对应用程序调试是非常重要的;因为单片机只是一块集成芯片,没有其他附带设备,所以单片机的开发与应用必须配备相应的开发仿真系统。

第九章AT89S52单片机的开发与应用

1、简述单片机特别是AT89S52 系列单片机深受广大用户欢迎的技术原因。

答:单片机具有全电脑功能,具有体积小,可靠性高,价格便宜,特别适用于测控系统的特点,对我国各个领域的自动化,智能化具有极大的推动和促进作用。单片机虽然属于高科技产品,涉及到许多基本的计算机技术,但它简单易学,开发运用方便,故而深受各个应用领域广大科技工作者的欢迎。

2、为什么单片机的开发、应用必须配备相应的开发仿真系统(或装置)?

答:因为单片机只是一块集成芯片,没有其他附带设备,所以单片机的开发与应用必须配备相应的开发仿真系统。

3、何谓开发系统?开发系统与仿真开发装置有何区别?何谓仿真?何谓在线仿真?

答:单片机开发系统是一种用来进行单片机系统开发调试维修和分析的专用工具组成的系统;所谓仿真是对目标系统而言的,是指仿真器把它的硬件和软件资源(即被调试的程序和参数)通过仿真插座暂时出借给目标系统,使之成为目标系统的硬件和软件中的一个组成部分或全部,简而言之,即用一个系统来模仿另一个系统;在线仿真就是把和仿真器仿真插座上相连的目标系统置于实时工程环境下。

4、简述单片机应用系统的研制、开发过程。研制、开发的单片机应用系统为什么必须经过严格的测试?

答:单片机应用系统的研制包括确定任务,总体设计。而一个单片机应用系统从提出任务到正式投入运行的过程称为单片机的开发,其涉及到系统的汇编与调试程序等。而程序调试是单片机应用系统中极重要的的一环。因为源程序设计中的遗漏或错误以及不完全符合功能或技术指标的部分,都会在调试中暴露出来。因此,在调试中必须严格把关。

5、何谓“算法”?在程序设计时为什么要十分重视具体算法的设计?

答:算法即解决某一个功能的具体方法。而具体算法反映在程序上即为程序设计的思路。注重算法往往会起到事半功倍的效果。

AT89S52单片机应用中英文翻译

本科毕业设计(论文)AT89S52单片机应用中英文翻译 专业名称:电气工程及其自动化 年级班级: 学生姓名: 指导老师: 二O一二年六月九日

AT89S52 MCU Applications Function Characteristic Description The AT89S52 is a low-power, high-performance CMOS 8-bit microcontroller with 8K bytes of in-system programmable Flash memory. The device is manufactured using Atmel’s high-density nonvolatile memory technology and is compatible with the indus-try-standard 80C51 instruction set and pinout. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory pro-grammer. By combining a versatile 8-bit CPU with in-system programmable Flash on a monolithic chip, the Atmel AT89S52 is a powerful microcontroller which provides a highly-flexible and cost-effective solution to many embedded control applications.The AT89S52 provides the following standard features: 8K bytes of Flash, 256 bytes of RAM, 32 I/O lines, Watchdog timer, two data pointers, three 16-bit timer/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 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 con-tents but freezes the oscillator, disabling all other chip functions until the next interrupt or hardware reset. Pin Description VCC :Supply voltage. GND :Ground. Port 0:Port 0 is an 8-bit open drain bidirectional 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 high-impedance inputs. Port 0 can also be configured to be the multiplexed low-order address/data bus during accesses to external program and data memory. In this mode, P0 has internal pull-ups. Port 0 also receives the code bytes during Flash programming and outputs the code bytes dur-ing program verification. External pull-ups are required during program verification. Port 1:Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 1 output

基于AT89S52单片机的数字温度计设计

基于AT89S52单片机的数字温度计设计 一引言 在生活和生产中,经常要用到一些测温设备,但是传统的测温设备具有制作成本高、硬件电、和软件设计复杂等缺点。基于AT89S52单片机的数字温度计具有制作简单、成本低、读数方便、测温范围广和测温准确等优点,应用前景广阔。 二项目要求 基于AT89S52单片机的数字温度计设计具体要求如下: (1)温度值用LED显示。 (2)围为-30℃~100℃,且测量误差不得大于±0.5℃。 (3)成本的体积、质量要尽可能小。 三系统设计 1 框图设计 根据设计要求分析,基于A T89S52单片机的数字温度计设计由AT89S52单片机控制器、电源、显示电路、温度传感器、复位电路和时钟电路组成,系统框图如图1所示。电源给整个电路供电,显示电路显示温度值,时钟电路为AT89S52提供时钟频率。传感器采用美国DALLAS半导体公司生产的一种智能温度传感器DS18B20,其测温范围为-55~125℃,最高分辨率可达0.0625℃,完全符合设计要求。 图一基于AT89S52单片机的数字温度计系统框图 2 知识点 本项目需要通过学习和查阅资料,掌握和了解如下知识: +5V电源原理及设计。

●单片机复位电路工作原理及设计。 ●单片机晶振电路工作原理及设计。 ●按键电路的设计。 ●数码管的特性及使用。 ●DS18B20的特性及使用。 ●74LS07的特性及使用。 ●AT89S52单片机引脚。 ●单片机C语言程序设计。 四硬件设计 1 电路原理图 控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以动态扫描法实现温度显示,电路图可见仿真图所示。 2 元件清单 基于AT89S52单片机的数字温度计元件清单如表1所示。 五软件设计 1 程序流程图 主程序的主要功能是负责温度的实时显示、读出并处理DS18B20测量的当前温度值,温度测试每1S进行一次。这样可以在1S之内测量一次被测温度,其程序流程图如图3所示。 读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写,其程序流程图如图4所示。

单片机AT S 介绍

AT89S52简介 AT89S52是一个8位单片机,片内ROM全部采用FLASH ROM技术,与MCS-51系列完全兼容,它能以3V的超低电压工作,晶振时钟最高可达24MHz。AT89S52是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,分别记作P0、P1、P2、P3。第31引脚需要接高电位使单片机选用内部程序存储器;第9引脚是复位引脚,要接一个上电手动复位电路;第40脚为电源端VCC,接+5V电源,第20引脚为接地端VSS,通常在VCC和VSS引脚之间接0.1μF高频滤波电容。第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号。 AT89S52单片机说明如下: 此芯片是一种高性能低功耗的采用CMOS工艺制造的8位微控制器,它提供下列标准特征:8K字节的程序存储器,256字节的RAM,32条I/O线,2个16位定时器/计数器, 一个5中断源两个优先级的中断结构,一个双工的串行口, 片上震荡器和时钟电路。 引脚说明: ·V CC:电源电压 ·GND:地 ·P0口:P0口是一组8位漏极开路型双向I/O口,作为输出口用时,每个引脚能驱动8个TTL逻辑门电路。当对0端口写入1时,可以作为高阻抗输入端使用。 当P0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。在这种模式下,P0口具有内部上拉电阻。 在EPROM编程时,P0口接收指令字节,同时输出指令字节在程序校验时。程序校验时需要外接上拉电阻。 ·P1口:P1口是一带有内部上拉电阻的8位双向I/O口。P1口的输出缓冲能接受或输出4个TTL逻辑门电路。当对P1口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。当作为输入端使用时,P1口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(I IL)。 ·P2口:P2是一带有内部上拉电阻的8位双向的I/O端口。P2口的输出缓冲能驱动4个TTL逻辑门电路。当向P2口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL)。 P2口在访问外部程序存储器或16位地址的外部数据存储器(例如MOVX @DPTR)时,P2口送出高8位地址数据。在这种情况下,P2口使用强大的内部上拉电阻功能当输出1时。当利用8位地址线访问外部数据存储器时(例MOVX @R1),P2口输出特殊功能寄存器的内容。当EPROM编程或校验时,P2口同时接收高8位地址和一些控制信号。 ·P3口:P3是一带有内部上拉电阻的8位双向的I/O端口。P3口的输出缓冲能驱动4个TTL逻辑门电路。当向P3口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(I IL)。

AT89S52单片机

AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:40个引脚,8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52。 本次设计是用89S52单片机为核心实现报警控制,所以我们要先对89S52的各个引脚及其功能有一个全面的认识。 89S51单片机的引脚功能介绍 如图2所示为89S52单片机40引脚双列直插形式,各引脚功能如下: 图289S52引脚图 1 电源和晶振: Vcc——AT89S52电源正端输入,接+5V。 Vss——电源地端。

XTAL1——输入到振荡器的反相放大器。 XTAL2——反相放大器的输出,输入到内部时钟发生器。 % 当用外部振荡器时,XTAL2不用,XTAL1接收振荡器信号。 2 控制线,共4根。 (1)输入: RST——复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。 EA/Vpp——访问外部程序存储器控制信号。为使能从0000H 到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。 (2)输入,输出: ALE/PROG——地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。 (3)输出: PSEN——外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。 3 I/O口:4个口,32根 单片机51系列共有四个8位双向并行I/O通道口,分别是P0、P1、P2、P3,各具有特殊的电路结构,每位均有自己的锁存器、输出驱动器和输入缓冲器。这种结构,在数据输出时可锁存,即输出新的数据之前,通道口上原数据一直保持不变,但对输入信息是不锁存的,因此从外部输入的信息必须保持到取数指令执行完为止。在这四个8位双向并行I/O通道口中,我们应该选择哪一个通道口作为输入信号和输出信号的端口呢下面我们先来了解一下四个通道口的结构。 " (1)P0口介绍 P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻

基于AT89S52单片机的发声电子琴的课程设计

模拟电子琴发声控制 系统

摘要 本设计是用AT89S52单片机为核心控制元件,设计一个模拟电子琴发声控制系统。以单片机作为主控核心,与键盘、扬声器、LED显示器等模块组成核心主控制模块。在主控模块上设有11个按键,其中7个按键控制7个音符,1个作为功能转换键使用,具有手动随意弹奏和自动播放乐曲的功能,另外3个按键用来实现高、中、低音的音符发音。下面具体介绍一下单片机各端口的分配功能:单片机的P2.0-P2.6为输入端口,用来控制7个音符的选择弹奏;P2.7为功能转换键,它能切换手动随意弹奏和自动播放乐曲的功能;P2.0-P2.2为单片机控制电子琴实现弹奏高、中、低的功能切换键;P0端口通过上拉电阻接到+5V上,然后接LED共阴数码管;P1.0为单片机的输出端口,它通过限流电阻R与三极管级基极相接,三极管的集电极接有接蜂鸣器。 本设计通过控制单片机定时器的定时时间产生不同频率的音频脉冲,经三极管放大信号后驱动蜂鸣器发出不同音节的声音。要实现7个音符的各自的高、中、低音,需要建立三个表,分别存储高音、中音和低音的频率值;当三个拨码开关中某一个按下,通过软件选择相应的音频。按下弹奏键就可弹奏出不同的声音。 另外用软件延时来控制发音时间的长短,来控制节拍。通过把乐谱中的音符和相应的节拍变换为定时常数和延时常数,作为数据表格存放在存储器中。由程序查表得到定时常数和延时常数,分别用来控制定时器产生的脉冲频率和发出该音频脉冲的持续时间,这样就可以实现乐曲的演奏。 为了实现按键的准确判断和完善电子琴发声的效果,本设计采用了软件防抖的方法,有效的解决了按键抖动的问题。另外当按下功能切换键,切换至音乐自动播放功能时,本系统能实现七首歌曲的有选择播放,另附带数码管显示提醒。这样使得电子琴的功能变的更加强大。 本设计为实物电路板设计开发,报告中详细的阐述了电子琴设计的方法和过程。并经过软硬件的调试,该音乐发生器不但能通过键盘弹奏出很好的音调,而且还可以通过键盘选择播放不同的音乐。除此之外,本电子琴还带有显示功能,能显示哪个按键按下,而且相当准确。 本系统运行稳定,其优点是硬件电路简单,软件功能完善,控制系统可靠,性价比较高等,具有一定的实用和参考价值。

基于AT89S52+单片机控制的直流稳压电源

摘要 本系统以AT89S52单片机作为系统的核心,由D/A数字模拟转换模块、按键、LED串口显示模块等模块组成一个数控电源。该系统实现了输出电压:范围2~+15.0V,步进1V,纹波不大于10mV;输出电流:500mA;输出电压值由数码管显示;由“+”、“-”两键控制输出电压步进增减。输入模块的按键按下之后,对单片机就有了一个输入,单片机将输入的数字一方面给显示模块,让它们在数码管中显示出来;另一部分输给DAC0832,让它转化为模拟量电流输出,通过运算放大器将这模拟量转化为相应的电压,这电压经过放大后控制LM317的控制端,从而实现输出电压的控制。 关键词:AT89S52单片机, 数控电源, D/A,直流电源

Abstract The AT89S52 SCM is the heart of the NC Power,which is made up of Digital-analog converter module,key module and LED display module.The Output voltage of the syetem is between 2V and +15.0V,Stepped by 1V,the ripple is not more than 10mV,and the output current is 500mA,The value of Output voltage is displayed by Digital control,and the stepping change in output voltage is controlled by "+and "-"keys.When you press the button of the input module,the SCM will have an input.On the one hand ,the SCM transfers the figures into the display module,which display the figures,on the other hand, the SCM transfers the rest information into DAC0832,making it into a simulation of output current.By the operational amplifiers the simulation is changed into the appropriate voltage,which is used to control LM317-control ,so it is success in the control of output voltage. Keywords:A T89S52 monolithic integrated circuit, numerical control power source, D/A,direct-current power supply

单片机原理第2章习题解答

第2章思考题及习题2参考答案 一、填空 1. 在AT89S52单片机中,如果采用6MHz晶振,一个机器周期为。答:2μs 2. AT89S52单片机的机器周期等于个时钟振荡周期。答:12 3. 内部RAM中,位地址为40H、88H的位,该位所在字节的字节地址分别为 和。答:28H,88H 4. 片内字节地址为2AH单元最低位的位地址是;片内字节地址为A8H单元的最低位的位地址为。答:50H,A8H 5. 若A中的内容为63H,那么,P标志位的值为。答:0 6. AT89S52单片机复位后,R4所对应的存储单元的地址为,因上电时PSW= 。这时当前的工作寄存器区是组工作寄存器区。答:04H,00H,0。 7. 内部RAM中,可作为工作寄存器区的单元地址为 H~ H。答:00H,1FH 8. 通过堆栈操作实现子程序调用时,首先要把的内容入栈,以进行断点保护。调用子程序返回指令时,再进行出栈保护,把保护的断点送回到,先弹出的是原来中的内容。答:PC, PC,PCH 9. AT89S52单片机程序存储器的寻址范围是由程序计数器PC的位数所决定的,因为AT89S52单片机的PC是16位的,因此其寻址的范围为 KB。答:64 10. AT89S52单片机复位时,P0~P3口的各引脚为电平。答:高 11. AT89S52单片机使用片外振荡器作为时钟信号时,引脚XTAL1接,引脚XTAL2的接法是。答:片外振荡器的输出信号,悬空 12. AT89S52单片机复位时,堆栈指针SP中的内容为,程序指针PC中的内容为 。答:07H,0000H 二、单选 1. 程序在运行中,当前PC的值是。 A.当前正在执行指令的前一条指令的地址 B.当前正在执行指令的地址。 C.当前正在执行指令的下一条指令的首地址 D.控制器中指令寄存器的地址。 答:C 2. 判断下列哪一种说法是正确的?

基于AT89S52单片机的频率计设计

学校代码:11059 学号:0605076022 毕业论文(设计)BACH ELOR DISSERTATION 论文题目:基于单片机的频率计设计 学位类别:学士学位 学科专业:电子信息工程 作者姓名: 导师姓名: 完成时间: 2010年5月25日

简易频率计的设计 中文摘要 频率测量是电子学测量中最为基本的测量之一。频率计主要是由信号输入和放大电路、单片机模块、分频模块及显示电路模块组成。AT89S52单片机是频率计的控制核心,来完成它待测信号的计数,译码,显示以及对分频比的控制。利用它内部的定时/计数器完成待测信号频率的测量。 在整个设计过程中,所制作的频率计采用外部分频,实现10Hz~2MHz的频率测量,而且可以实现量程自动切换流程。以AT89S52单片机为核心,通过单片机内部定时/计数器的门控时间,方便对频率计的测量。其待测频率值使用四位共阳极数码管显示,并可以自动切换量程,单位分别由红、黄、绿3个LED指示。本次采用单片机技术设计一种数字显示的频率计,具有测量准确度高,响应速度快,体积小等优点。 关键词:频率计;单片机;计数器;量程自动切换

The design of simple Frequency Measurement ABSTRACT Frequency measurement is the most basic measurement in Electronic field. A simple frequency meter mainly by the signal input and amplifying circuit, microcontroller module, sub-frequency circuit module and display module. AT89S52 MCU is the control core frequency of dollars to complete its count of the signal under test, decoding, display and control of the frequency division ratio. Using its internal timer or counter to complete the signal of the under test cycle / frequency of measurement. Throughout the design process, periodic measurement of the frequency meter application and the corresponding mathematical treatment to achieve 10Hz ~ 2MHz frequency measurements, and can automatically switch the flow to achieve scale. To the core of AT89S52 microcontroller, with the MCU internal timer / counter gate time, it can be easier for frequency measurement. The use of microcomputer technology to design a digital display of frequency meter, have a measurement of high accuracy, fast response, small size and so on. KEY WORD: Frequency meter; single chip; counter; range automatically switch

AT89S52 基本性能介绍

主要性能 ● 与MCS-51单片机产品兼容 ● 8K字节在线系统可编程Flash存储器 ● 1000次擦写周期 ● 4.0V-5.5V工作电压 ● 全静态操作:0Hz~33Hz ● 三级加密程序存储器 ● 256*8字节的内部数据存储器 ● 32个可编程I/O口线 ● 三个16位定时器/计数器 ● 八个中断源 ● 全双工UART串行通道 ● 低功耗空闲和掉电模式 ● 掉电后中断可唤醒 ● 看门狗定时器 ● 双数据指针 ● 掉电标识符 ● 快速编程周期 ● 灵活ISP编程(字节和模式) ● 绿色(-免费)工作包操作 1功能特性描述 AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在线系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 2. 引脚结构 3. 引脚描述 3.1 VCC : 电源 3.2 GND: 地

基于AT89S52单片机的电机控制C语言程序设计

第一章:设计任务 任务:了解电机的转动原理,能够对直流电机进行简单的控制;能够设计和使用简单的自动化闭环系统;提高多模块硬软件的综合应用能力。 功能主要包括: 1)直流电机的正转; 2)直流电机的反转; 3)直流电机的加速; 4)直流电机的减速; 5)直流电机的停止; 6)直流电机的转速在数码管上显示; 第二章:总体设计方案 总体设计方案的硬件部分详细框图如下图所示: 第三章系统的硬件介绍 一、电机驱动芯片L298N L298N是ST公司生产的一种高电压、大电流电机驱动芯片。该芯片采用15脚封装。内

含两个H桥的高电压大电流全桥式驱动器,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响的情况下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电路部分在低电压下工作;可以外接检测电阻,将变化量反馈给控制电路。使用L298N芯片驱动电机,该芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。 特点: 1、具有信号指示; 2、转速可调; 3、抗干扰能力强; 4、具有过电压和过电流保护; 5、可单独控制两台直流电机; 6、可单独控制一台步进电机; 7、PWM脉宽平滑调速; 8、可实现正反转; 9、采用光电隔离 电机转速的控制主要是运用PWM波形输出实现。由逻辑关系表可知,我们可以用PWM 波形控制ENA(B)端或者是IN1(IN3)和IN2(IN4)。 以ENA端控制为例,当输出为高电平时电机转动,输出为低电平时电机停止。由此我们可以改变高低电平的占空比,进而实现电机转速的调整。 注意:高电平和低电平的时间不能太长,否则电机不能够持续转动,启动时高电平时间也不能太短,否则电机启动较慢。 二、霍尔元件 霍尔传感器是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040等,这种传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路(OC)门输出,工作电压范围宽,使用非常方便。如图1所示是CS3020的外形图,将有字面对准自己,三根引脚从左向右分别是Vcc,地,输出。

基于AT89S52单片机智能电子称的设计

XXXX大学 毕业设计说明书 学生姓名:学号: 学院: 专业: 题目:基于AT89S52单片机智能电子称的设计 指导教师:职称: 职称: 20**年12月5日

摘要 本设计系统以单片机AT89S52为控制核心,实现电子秤的基本控制功能。在设计系统时,为了更好地采用模块化设计法,分步设计了各个单元功能模块。 系统的硬件部分包括最小系统部分、数据采集部分、人机交互界面和系统电源四大部分。最小系统部分主要包括AT89S52和扩展的外部数据存储器;数据采集部分由称重传感器,信号的前期处理和A/D转换部分组成,包括运算放大器AD620和A/D转换器ICL7135;人机界面部分为键盘输入,四位LED数码显示器,可以直观的显示重量的具体数字以及方便的输入数据,使用方便;系统电源以LM317和LM337为核心设计电路以提供系统正常工作电源。 系统的软件部分应用单片机C语言进行编程,实现了该设计的全部控制功能。该电子秤可以实现基本的称重功能(称重范围为0~9.999Kg,重量误差不大于±0.005Kg),并发挥部分的显示购物清单的功能,可以设置日期和设定十种商品的单价,还具有超量程和欠量程的报警功能。 本系统设计结构简单,使用方便,功能齐全,精度高,具有一定的开发价值。 关键词:电阻应变式传感器A/D 单片机液晶显示 ABSTRACT The design of the system with the monolithic integrated circuit AT89S52 as the

core to realize the basic electronic control functions. In the design of the system, in order to better the modularized design method, the unit step function module design. The system includes hardware, data acquisition system minimum, man-machine interface and the system of power. The minimum system parts including AT89S52 and the expansion of external data storage, Data collected by weighing transducer, signal processing and the A/D conversion parts, including the amplifier AD620 and A/D converter ICL7135, For the man-machine interface partial keyboard input, four LED digital display, can show the specific weight and figure of input data, use convenient, In LM317 LM337 and power system as the core circuit design to provide normal work of the system. The application of SCM system software part C language program, the design of all control function. It can realize the basic electronic weighing function (weighing the range of 0-9.999 Kg, weight error is not more than ± 0.005 Kg), and play a part of the show shopping list of function, can set the date and set the price of goods, and ten has super range and less range alarm function. The system design is simple in structure, easy to use, complete function, high precision, has certain value. 【Keyword】Resistance strain sensor A / D single-chip liquid crystal display 目录 摘要 (2)

外文资料翻译 --AT89S52单片机简介

外文文献及翻译 A brief introduction of AT89S52 2.Pin Description 2.1 VCC: Supply voltage. 2.2 GND: Ground. 2.3 Port 0: Port 0 is an 8-bit open drain bidirectional 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 high-impedance inputs. Port 0 can also be configured to be the multiplexed low-order address/data bus during accesses to external program and data memory. In this mode, P0 has internal pull-ups. Port 0 also receives the code bytes during Flash programming and outputs the code bytes during program verification. External pull-ups are required during program verification. 2.4 Port 1: Port 1 is an 8-bit bidirectional I/O port with internal pull-ups. 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 pulled-ups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current (IIL) because of the internal pull-ups. 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 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (I IL) Because of the internal pull-ups. Port 2 emits the high-order address byte during fetches from external program memory and during accesses to external data memory that use 16-bit addresses (MOBX@DPTR). In this application, Port 2 uses strong internal pull-ups 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. 2.6 Port 3: Port 3 is an 8-bit bidirectional I/O port with internal pull-ups. The Port 3 output buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins, they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port

基于AT89S52单片机的温度控制系统设计

单片机原理与应用课程设计说书 题目:基于AT89S52单片机的温度控制系统 系部:信息与控制工程学院 专业:自动化 班级:5班 学生姓名: 学号: 08032130327 指导教师: 2011年06 月22日

目录 1设计内容与要求 (1) 2 设计方案 (2) 3 硬件电路设计 (3) 3.1 温度显示功能 (3) 3.2 按键功能 (4) 3.3 报警功能 (4) 3.4 温度传感器 (4) 3.5 放大器 (4) 3.6 ADC转换器 (5) 3.7 温度控制 (5) 3.8 其他可扩展电路 (6) 4 软件设计 (7) 4.1主程序流程图 (7) 4.2 中断服务程序 (8) 4.3 键盘管理模块 (9) 4.4 温度检测模块 (10) 4.5 温度控制模块 (11) 4.6 显示模块 (12) 4.7 温度越限报警模块 (12) 5 软硬件调试 (14) 5.1 硬件调试 (14) 5.2 软件调试 (14) 6 总结 (15) 7 附录 (16) 8 参考文献 (19)

1设计内容与要求 用AT89S52单片机制作一个电烤箱,而且要满足以下技术指标: (1)电烤箱由1 kW电炉加热,最高温度为120℃。 (2)电烤箱温度可设置,电烤过程恒温控制,温度控制误差≤±2℃。 (3)实时显示温度和设置温度,显示精确到1℃。 (4)温度超出预置温度±5℃时发超限报警,对升降温过程的线性不做要求。

2 设计方案 产品的工艺不同,控制温度的精度也不同,因而所采用的控制算法也不同。就温度控制系统的动态特性来讲,基本上都是具有纯滞后的一阶环节,当系统精度及温控的线性性能要求较高时,多采用PID算法或达林顿算法来实现温度控制。 本系统是一个典型的闭环控制系统。从技术指标可以看出,系统对控制精度的要求不高,对升降温过程的线性也没有要求,因此,系统采用最简单的通断控制方式,即当电烤箱温度达到设定值时断开加热电炉,当温度降到低于某值时接通电炉开始加热,从而保持恒温控制。 根据系统要求,画出控制电烤箱的框图。如图2-1所示。该系统包括温度测量(温度传感器、放大器、ADC转换器)。温度控制(光电隔离、驱动电路、可控硅电路、电炉)、温度给定(按键)、温度显示和报警等几部分。 图2-1 电烤箱总框图 AT89S52是ATMEL所生产的一种低功耗、高性能CMOS 8位微控制器,具有8k系统可编程Flash存储器,其芯片内部具有时钟振荡器及8个向量中断源,内部程序存储器为8KB,内部数据存储器为256字节。

AT89C52单片机简介

AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。 AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATME L公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。 AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。 兼容MCS51指令系统· 8k可反复擦写(>1000次)Flash ROM · 32个双向I/O口· 256x8bit内部RAM · 3个16位可编程定时/计数器中断· 时钟频率0-24MHz · 2个串行中断· 可编程UART串行通道 · 2个外部中断源· 共6个中断源 · 2个读写中断口线· 3级加密位 — · 低功耗空闲和掉电模式· 软件设置睡眠和唤醒功能 AT89C52P为40 脚双列直插封装的8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST/Vpd(9 脚)为复位输入端口,外接电阻电容组成的复位电路。VCC(40 脚)和VSS(20 脚)为供电端口,分别接+5V电源的正负端。P0~P3 为可编程通用I /O 脚,其功能用途由软件定义,在本设计中,P0 端口(32~39 脚)被定义为N1 功能控制端口,分别与N1的相应功能管脚相连接,13 脚定义为IR输入端,10 脚和1

相关主题
文本预览
相关文档 最新文档