P1CON设置P1模式的什么功能


流體動力系統和元件的圖形符號是根據ISOl219標準。這個標準既適合液壓又可用於氣動。圖形符號只表示元件的功能但不表示它的結構。

對於空氣淨化和空氣乾燥的元件的基本圖形符號是一個菱形,輸入口和輸出口從左邊和右邊對角引出一條直線。菱形內部用進一步的圖形符號表示特殊功能。見圖1的說明。

對於基本的壓力調節閥的圖形符號是一個正方形,輸入口和輸出口從左邊和右邊中間引出一條直線,空氣流動用箭頭表示方向,復位彈簧用鋸齒表示,在鋸齒交叉斜著箭頭表示可調節的。主要的圖形符號見圖1所示。

直線型的氣缸畫成簡化了橫斷面。活塞型或其他型氣缸畫法沒有差別。回轉式執行元件有它自己的圖形符號,對齒條齒輪型和葉片型均適用。

對於方向控制閥的基本圖形符號是正方形或正方形群。進氣口和排氣口畫在正方形的下面,輸出口在上面。每個功能(閥的位置)有一個正方形,如一個方向控制閥有二個或多個功能,則正方形排成一直線,正方形的數量與功能數一樣多。

回路圖中的系統是畫成靜態的。假設有壓力供應,但在混合的回路情況下,則為斷電狀態.而各種元件畫成反映這種設想的位置。圖A—4表示如下:


正方形的內部用箭頭表示氣流流動的方向。

如果外部氣口與內部不通,用圖形符號“T”。

在正方形的底部,空氣輸入用“”和排氣用“”,

操作件的圖形符號畫在正方形或正方形群外側。主要的操作圖形符號是:復位彈簧,事實上不是操作件是閥內

元件 。操作件圖形符號表示加在正方形左手邊(水準地倒裝)。

機械操作(直柱塞杆式),滾輪杠杆式

手動操作:一般 ,杠杆 ,按鈕, 推拉鈕

機械和手動操作的鎖定(使一個單穩態的閥成為雙穩態)。

氣控操作用信號壓力線(規劃到正方形的一邊,空氣流的方向用三角形表示,它通常和其他操作組在一起,先導式空氣操作是用帶三角形的長方形

直動式電磁閥用 先導電磁控制用

對於一個控制著驅動部件氣缸的靜止位置來說,它是可以在靜態時操作的。它的表示畫法為:將外部連接部份畫到正方形的操作器側。例如一個常閉3/2閥中,輸出因此連接到供氣處,因而通壓。舉例,若信號接到一單穩態的氣控閥因而通壓,它就畫成到操作位置。


在回路圖中,作功能的流量畫從底部到頂部,工作迴圈從左到右,所以氣源三大件(FRL)處於左下角,作出第一個動作的氣缸出於左上角,

動力閥直接畫在它們的氣缸下面,它們形成一個動力單元並冠以大寫字母號碼(見下面有關術語的說明),在一個純粹的氣動回路中,控制氣缸驅動最終位置的3/2滾輪杠杆式機械操作閥應處於較低的位置。在這些元件和動力閥單元之間,可加入一些有保證正確程式(記憶功能)的輔助閥。有時也具有邏輯功能的聯鎖輔助閥。圖A—5的框圖解釋了上面所說的·情況。

原先,氣動回路是按畫圖規則畫的。滾輪機械操作閥處於上部,如被一個置於氣缸活塞杆上的凸輪操縱,當類比一個機器控制情況時,這種種情況將會出現在培訓機組上。在一個更複雜的回路中,這導致更多的交叉點。最簡單和最正確的方法是將這些滾輪操作閥的符號排列起來,見圖A—5,將它們放在僅垂直信號線直接到目的地的位置,然而它們在機器上的位置要用說明編號表示。

這種說明可以通過考慮某一設備完成一個功能來獲得。開始點是用大寫字母編號的動力單元,它可以以字母程式,以工作迴圈的次序或以動作的首字母表示。例如“C”表示夾緊,“D”表示鑽頭,等等。

上述的功能設置包括執行元件,動力閥和兩個檢測兩端位置的滾輪杠杆閥。

靜止位置用“0”編號,工作位置用“l”編號,注意靜止位置是指運動機器部件的位置,而不是活塞杆的位置。僅僅在訓練機組類比的情況下,我們才考慮把活塞杆的位置作為靜止位置。

在回路中,我們必須區別開由滾輪杠杆機械閥產生的信號和控制動力閥的壓力信號之間的區別。

在一個簡單的回路中,信號也可以是一個命令,信號編號定義了它的來源,命令編號為決定迴圈中下一步的工作,在更複雜的回路中,命令將是一個閥的輸出,用作邏輯功能。

若靜止位置是“0”,所有控制終端靜止位置的行程閥有一個下標“0”,控制相反位置即工作位置的行程閥都冠以下標“1”。圖A—6顯示了一個升降臺工作的情況,當停/開閥處於“開”位置才能上下移動。這個升降臺可用一個情況框架,當用培訓模擬機組和回路圖時,回路看上去是怎樣工作的。

我們將前面講到的一些資訊演示在實例圖中,圖A—7是一個完成下列程式的回路

“A+,B+,B-,A-”

它分成三部份,動力部分在頂部,“信號輸入”部分在底部,“信號處理”部分在中間,引號內的術語表示來自機器的信號,需要另外信號與之“與/或”的邏輯處理才能得到正確的程式,在這個例子中需要一個記憶器,它的開關由信號“M+”和“M—”控制,你可將這種閥作為串聯閥(圖8—23),邏輯功能是對帶有記憶器的停/開閥的一系列連接(與功能)其效果是只要氣缸A不回到它的靜止位置,對它起動的命令是無效的。只有在滾輪杠杆機械閥ao工作後,記憶器才令預置到圖中的位置,並提供氣源給起動閥,如將停/開閥處於“ON”位置,則允許重複迴圈工作,將該閥置於圖示靜止位置,則完成工作迴圈後將停止。


AT89C52 ATMEL公司生产的低电压,高性能CMOS 8位单片机.片内含8K byTES的可反复擦写的只读程序存储器(PEROM)和256 byTES 。的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052 产品引脚兼容,片内置通用8位中央处理器(CPU )和FLASH由存储单元,功能强大AT89C52单片适用于许多较为复杂控制应用场合。

与Mcs-51产品指令和引脚完全兼容。
8字节可重擦写FLASH闪速存储器
32个可编程I/0口线
3个16 位定时/计数器
可编程串行UART通道


AT89C52 提供以下标准功能:8字节FLASH闪速存储器,256字竹内部RAM , 32个I/O口线,3个16 位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89c52可降至OHz的静态逻辑操作,并支持两种软件可选的节电上作模式。空闲方式停止CPU 的工作,但允许RAM,定时/计数器.串行通信口及中断系统继续工作。掉电方式保存RAM 中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位.

GND:地P0:P0口是一组8位漏极开路型双向1/O 口,也即地址/数据总线复用口。作为输出口用时.每位能吸收电流的方式驱动8个TTL 逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部 上拉电阻。
在FLASH由编程时,P0口接收指令字节,而在程序校验时,输出指令字 节,校验时,要求外接上拉电阻。
P1口:PI 是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流IIL

FLASH编程和程序校验期间,Pl接收低8位地址。

是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4TTL逻辑电路。对端口P2写“l",通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(llt )。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOvx@DPTR 指令)时,P2送出高8 位地址数据。在访问8位地址的外部数据存储器、如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
FLASH
编程或校验时,P2亦接收高位地址和一些控制信号。

 ·P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)  P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能,如下表所示:

TO (定时/计数器0 )

Tl (定时/计数器l )

WR(外部数据存储器写选通)

RD(外部数据存储器读选通)

此外,P3口还接收一些用于FLASH闪速存储器编程和程序校验的控制信号。

RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。

·ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节.一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。
 
Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位.可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。

·PSEN:程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

·EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储器(地址为0000H-FFFFH ) , EA端必须保持低电平(接地).需注怠的是:如果加密位LBI被编程,复位时内部会锁存EA端状态。

EA端为高电平(接Vcc端), CPU则执行内部程序存储器中的指令。
flash
存储器编程时,该引脚加上+12V的编程允许电源VPP ,当然这必须是该器件是使用12V编程电压VPP

·XTAL1:振荡器反相放大器的及内部时钟发生器的输入端.

·XTAL1:振荡器反相放大器的输出端。

,特殊功能寄存器:AT89C52片内存储器中,80H-FFH128个单元为特殊功能寄存器(SFE ) , SFR的地址空间映象如表2所示。并非所有的地址都被定义,从80H-FFH128 个字节只有一部分被定义,还有相当一部分没有定义。对没有定义的单元读写将是无效的,读出的数位将不确定,而写入的数据也将丢失。不应将数据"1"写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。

AT89C52除了与AT89C51所有的定时/计数器0和定时/计数器1 外,还增加了一个定时/计数器2 .定时/计数器2的控制和状态位位于T2CON (参见表3) T2CON(参见表4) ,寄存器对(RCA02HRCAP2L)是定时器216 位捕获方式或16位自动重装载方式下的捕获/自动重装载寄存器。

3 定时/计数器2控制寄存器T2CON

定时器2溢出标志。定时器2溢出时,又由硬件置位,必须由软件 清0,当RCLK=1或TCLK=1时,定时器2溢出,不对TF2置位。

定时器2外部标志。当EXEN2=1,且当T2EX引脚上出现负跳变而出现捕获或重装载时,EXF2置位,申请中断.此时如果允许定时器2中断,CPU响应中断,执行定时器2中断服务程序,EXF2必须由软件清除。当定时器2工作在向上或向下计数工作方式时(DCEN=1) , ExF2不能激活中断。

接收时钟允许。RCLK=1时.用定时器2溢出脉冲作为串行口(工作于工作方式1或3时)的接收时钟,RCLK=0,用定时器l的溢出脉冲作为接收时钟 。

发送时钟允许。TCLK=1时,用定时器2溢出脉冲作为串行口(工作于工作方式1或3时)的发送时钟,RCLK=0 .用定时器l的溢出脉冲作为发送脉冲。

定时器2外部允许标志。当EXEN2=1时,如果定时器2未用于作串行口的波特率发生器,在T2EX端出现负跳变脉冲时,激活定时器2 捕获或重装载.EXEN2=0,T2EX端的外部信号无效.

定时器2启动/停止控制位。TR2=l时,启动定时器2 。

定时器2定时方式或计数方式控制位。C/T2=0,选择定时方式。C/T2=1时,选择对外部事件计数方式(下降沿触发)。

捕获/重装载选择。CP/RL2=l时,如EXEN2=l.且T2EN双端出现负跳变脉冲时发生捕获操作。CP/RL2=0时,若定时器2溢出或EXEN2=l条件下,T2EN双端出现负跳变脉冲,都会出现自动重装载操作。当RCLK=1或TCLK=1时,该位无效,在定时器2溢出时强制其自动重装载。

T2 (定时/计数器2外部计数脉冲输入),时钟输出

TZEx 定时/计数2捕获/重装载触发和方向控制)

AT89C52有6个中断源,2个中断优先级,lE寄存器控制各中断位,lP寄存器中6个中断源的每一个可定为2个优先级。

80H-FFH128个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128字竹的RAM和殊功能寄存器的地址是相同的,但物理它们是分开的。

当一条指令访问7FH以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128字节RAM还是访问特殊功能寄存器。如果指令是直接寻址方式则为访问特殊功能寄存器.

间接寻址指令访问高128字节RAM ,例如下面的间接子址指令中,R0的内容为OAOH ,则访问数据字节地址为0A0H

堆栈操作也是间接寻址方式,所以,高128位数据RAM亦可作为堆栈区使用。

由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求.

at89c52引脚图-引脚功能图-管脚图-单片机


AT89C52
的定时器O和定时器1的工作方式与AT89C51相同。

定时2定时器2是一个16位定时计数器。它既可当定时器使用,也可作为外部事件计数器使用,其工作方式由特殊功能寄存器T2CON(如表3 )的C/T2位选择。定时器2有三种作方式:捕获方式,自动重装载(向上或向下计数)方式和波特率发生器方式,工作方式由T2CON的控制位来选择,参见表4

定时器2由两个8位寄存器TH2TL2组成,在定时器工作方式中,每个机器周期TL2寄存器的值加1 ,由于一个机器周期由12个振荡时钟构成,因此,计数速率为振荡频率的1/l2
 
在计数工作方式时,当T2引脚上外部输入信号产生由1至O的下降沿时,寄存器的值加1,在这种工作方式下,每个机器周期的5SP2期间,对外部输入进行采样。若在第一个机器周期中采到的值为1,而在下一个机器周期中采到的值为0 , 则在紧跟着的下一个周期的S3P1期间寄存器加l 。由于识别10的跳变需要2个机器周期(24个振荡周期),因此,最高计数速率为振荡频率的1/24 .为确保采样的正确性,要求输入的电平在变化前至少保持一个完整周期的时间,以保证输入信号至少被采样一次.

捕获方式在捕获方式下,通过T2CON控制位以EXEN2来选抒两种方式。如果ExEN2=0,定时器2是一个16位定时器或计数器,计数溢出时,对T2CON溢出标志TFZ置位,同到激活中断。如果EXEN2=1,定时器2完成相同的操作,而当T2EX引脚外部输入信号发生l至0负跳变时,也出现TH2TL2中的值分别被捕获到RCAP2HRCAP2L中.另外,T2EX引脚信号的跳变使得T2CON中的EXF2置位,与TF2相仿,EXF2也会激活中断。捕获方式如图4

自动重装载(向上或向下计数器)方式:当定时器2工作于16位自动重装载方式时,能对其编程为向上或向下计数方式,这个功能可通过特殊功能寄存器T2CON(见表5)的DCEN位(允许向下计数)来选择的。复位时,DCEN位置“0 " ,定时器2默认设置为向上计数。当DCEN置位时,定时器2既可向上计数也可向下计数,这取决于T2EX引脚的值,参见图5 ,当DCEN=0时,定时器2自动设置为向上计数,在这种方式下,T2CON中的EXEN2控制位有两种选择,若EXEN2,定时器2为向上计数至OFFFFH溢出,置位TF2激活中断,同时把16位计数寄存器RCAP2HRCAP2L重装载,RCAP2HRCAP2L的值可由软件预置。若EXEN2=1 ,定时器216位重装载由溢出或外部输入端T2EX从1至0的下降沿触发。这个脉冲使EXF2置位,如果中断允许,同样产生中断。

 DCEN=1时,允许定时器2向上或向下计数,如图6所示。这种方式下,T2EX引脚控制计数器方向。T2EX以引脚为逻辑“1”时.定时器向上计数,当计数OFFFFH向上溢出时,置位TF2,同时把16位计数寄存器RCAP2HRCAP2L 重装载到TH2TL2中。T2EX引脚为逻辑“0”时,定时器2向下计数.当TH2TL2中的数值等于RCAP2HRCAP2L中的值时,计数溢出,置位TF2,司时将OFFFFH数值重新装入定时寄存器中。当定时了计数器2向上滋出或向下溢出时,置位ExF2位.

特率发生器:T2CON创(表3)中的TCLK以和RCLK置位时,定时/计数器2作为波特率发生器使用。如果定时/计数器2作为发送器或接收器.其发送和接收的波特率可以是不同的,定时器1用于其它功能,如图7所示。若RCLKTCLK置位,则定时器2工作于波特率发生器方式。

 波特率发生器的方式与自动重装载方式相仿,在此方式下,TH2翻转使定时器2的寄存器用RCAP2HRCAP2L中的16位数值重新装载,该数值由软件设置。

定时器既能工作于定时方式也能作于计数方式,在大多数的应用中,是工作在定时方式(C/T2=0 ) .定时器2作为波特率发生器时,与作为定时器的操作是不同的,通常作为定时器时,在每个机器周期(1/12 振荡频率)寄存器的值加1, 而作为波特率发生器使用时,在每个状态时间(1/2 振荡频率)寄存器的值加1 。波特率的计算公式如下:

定时器2作为波特率发生器使用的电路如图7所示。T2CON中的RCLKTCLK=1时,波特率工作方式才有效。在波特率发生器工作方式中,TH2翻转不能使TF2置位,故而不产生中断:但若EXEN2 置位,且T2EX 端产生由l至0的负跳变,则会使ExF2置位,此时并不能将(RCAP2H, RCAP2L)的内容重新装入TH2TL2中。所以当定时器2作为波特率发生器使用时,T2EX可作为附加的外部中断源来使用。需要注意的是,定时器2 工作于波特频率器时,作为定时器运行(TR2=1)时,并不能访问TH2和TL2 。因为此时每个状态时间定时器都会加1,对其读写将得到一个不确定的数值。然而,对RCAP2则可读而不可写,因为写入操作将是重新装载,写入操作可能令写和/或重装载出错.在访问定时器2RCAP2寄存器之前,应将定时器关闭(清除TR2)。

可编程时钟输出:定时器2可通过编程从P1.0 输出一个占空比为50%的时钟信号,如图8 所示.P1.0引脚除了是一个标准的I/O口外,还可以通过编程使其作为定时/计数器2的外部时钟输入和输出占空比50%的时钟脉冲,当时钟振荡频率为16MHz时,输出时钟频率范围为6lH-4MHz

T2OE(T2MOD.1)=1,必须由TR2(T2CON.2)启动或停止定时器。时钟输出频率取决于振荡频率和定时器2捕获寄存器(RCAP2H, RCAP2L)的重新装载值,公式如下:

 在时钟输出方式下,定时器2的翻转不会产生中断,这个特性与作为波特率发生器使用时相仿。定时器2作为波恃率发生器使用时,还可作为时钟发生器使用,但需要注意的是波特率和时钟输出频率不能分开确定,这是因为它们同使用RCAP2LRCAP2L

8 定时器2时钟输出方式

3个定时器中断(定时器0、l2)和串行口中断。所有这些中断源如图9所示。这些中断源可通过分别设置专用寄存器IE的置位或清0来控制每一个中断的允许或禁止。IE也有一个总禁止位EA , 它能控制所有中断的允许或禁止。

注意表5中的IE.6为保留位,在AT89C51IE.5也是保留位,程序员不应将“l”写入这些位,它们是将来AT89系列产品作为扩展用的.定时器2的中断是由T2CIN中的TF2EXF2逻辑或产生的.当转向中断服务程序时,这些标志位不能被硬件清除,事实上,服务程序需确定是TF2EXF2产生中断,而由软件清除中断标志位.
定时器0和定时器1的标志位TF0TFI在定时器溢出那个机器周期的S5PZ状态置位,而会在下一个机器周期才查询到该中断标志。然而,定时器2的标志位TF2在定时器溢出的那个机器周期的S2P2 状态置位,并在同一个机器周期内查询到该标志。

AT89C52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷诺振器一起构成自激振荡器,振荡电路参见图10。

外接石英晶体(或陶瓷诺振器)及电容C1C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器不作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,我们推荐电容使用30PF1OPF,而如使用陶瓷诺振器建议选择4PF10PF用户也可以采用外部时钟。采用外部时钟的电路如图10右图所示。这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。

空闲节电棋式:在空闲工作模式状态,CPU自身处于睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。此时,同时将片内RAM和所有特殊功能寄存器的内容冻结.空闲模式可由任何允许的中断请求或硬件复位终止。由硬件复位终止空闲状态只需两个机器周期有效复位信号,在此状态下,片内硬件禁止访问内部RAM,但可以访问端口引脚,当用复位终止空闲方式时,为避免可能对端口产生意外写入,激活空闲模式的那条指令后一条指令不应是一条对端口或外部存储器的写入指令。

掉电棋式:在掉电模式下,振荡器停止作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器,但不改变RAM 中的内容,在Vcc恢复到正常作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定作。空闲和掉电模式下,各端口引脚状态如表6所示.

6 空闲和掉电模式外部引脚状态

 AT89C52有3个程序加密位,可对芯片上的3个加密位LBI 、LBZ 、LB3 进行编程(P)或不编程(U)来得到如表7 所示的功能:

U:表示未编程 P:表示编程

    当加密位LB1被编程时,在复位期间,以端的逻辑电平被采样并锁存.如果单片机卜电后一直没有复位,则锁存起的初始值是一个随机数,且这个随机数会一直保存到真正复位为止。为使单片机能正常工作,被锁存的EA电平值必须与该引脚当前的逻辑电平一致。此外,加密位只有翻由过整片擦除的方法清除。

FLASH存储器的编程:
AT89C52单片机内部有8k字节的FlASH PEROM,这个FLASH存储阵列出厂时己处于擦除状态(即所有存储单元的内容均为FFH) ,用户随时可对其进行编程.编程接口可接收高电压(+12V)或低电压(VCC)的允许编程信号。低电帐编程模式适合于用户在线编程系统,而高电汗编程模式可与通用EPROM编程器兼容。
AT89C52单片机中,有些属于低电帐编程方式,而有些则是高电片编程方式,用户可从芯片上的型号和读取芯片内的签名字节获得该信息,见表8 。

8 顶面标记及签名字节

 AT89C52的程序存储器阵列是采用字节写入方式编程的,每次写入一个字节,要对整个芯片内的PEROM程序存储器写入一个非空字节,必须使用片擦除的方式将整个存储器的内容清除.
 编程前,须按表9和图11所示设置好地址、数据及控制信号,AT89C52编程方法如下:
 1 .在地址线上加上要编程单元的地址信号。
 2 .在数据线上加上要写入的数据字节。
 3 .激活相应的控制信号。
 4 .在高电什编程方式时,将EA/Vpp 端加上十12V 编程电压。
 5 .每对FLASH存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。每个字竹写入周期是自身定时的,通常约为1.5ms.重复1-5步骤.改变编程单元的地址和写入的数据,直到全部文件编程结束.

AT89C52单片机用Dato Palling 表示一个写周期结束为特征,在一个写周期中,如需读取最后写入的一个字节,则读出的数据的最高位(P0. 7)是原来写入字书最高位的反码。写周期完成后,所输出的数据是有效的数据,即可进入下一个字节的写周期.写周期开始后,Data Pallmg 可能随时有效。
Ready/Busy:字节编程的进度可通过“RDY/BsY输出信号监测,编程期间,ALE变为高电平“H”后,P3.4 (RDY/BSY) 端电平被拉低.表示正在编程状态吸忙状态)。编程完成后,P3.4 变为高电平表示准备就绪状态。
程序校脸:如果加密位LB1 、LB2 没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,采用如图12的电路。加密位不可直接校验,加密位的校验可通过对存储器的校验和写入状态来验证。
芯片擦除:利用控制信号的正确组合(表6)并保持ALE/PROG引脚10ms的低电平脉冲宽度即可将PEROM 阵列(4k字节)和三个加密位整片擦除,代码阵列在片擦除操作中将任何非空单元写入“1",这步骤需再编程之前进行。
读片内签名字节:AT89C52单片机内有3个签名字节,地址为030H 、03lH 和032H 。用于声明该器件的厂商、型号和编程电帐。读AT89C52签名字节需将P3.6 和P3.7置逻辑低电平,读签名字竹的过程和单元030H、031H及032H 的正常校验相仿,只返回值意义如下:

建立地址到PROG变低时间

PROG变低后地址保持时间

建立数据到PROG变低时间

PROG变低后数据保持时间

地址有效到ALE变低时间

ALE变低后地址保持时间

ALE变低到指令输入有效

PSEN变低到指令输入有效

PSEN建立后指令保持时间

PSEN建立后指令浮空时间

PSEN建立后到地址有效时间

建立地址到指令输入有效

PSEN变低到地址浮空时间

RD变低到数据输入有效

RD建立后数据保持时间

RD建立后数据浮空时间

ALE变低到数据输入有效时间

地址建立到数据输入有效时间

ALE变低到RDER变低时间

地址建立到RDWR变低时间

数据有效到WR转换时间

数据有效到WR变高时间

WR建立后到数据保持时间

RD变低到地址浮空时间

RDWR变高到ALE变高时间

44引脚,薄型塑料四方扁平 (TQFP)


京东上的所有商品信息、客户评价、商品咨询、网友讨论等内容,是京东重要的经营资源,未经许可,禁止非法转载使用。

注:本站商品信息均来自于合作方,其真实性、准确性和合法性由信息拥有者(合作方)负责。本站不提供任何保证,并不承担任何法律责任。

京东价:京东价为商品的销售价,是您最终决定是否购买商品的依据。

划线价:商品展示的划横线价格为参考价,并非原价,该价格可能是品牌专柜标价、商品吊牌价或由品牌供应商提供的正品零售价(如厂商指导价、建议零售价等)或该商品在京东平台上曾经展示过的销售价;由于地区、时间的差异性和市场行情波动,品牌专柜标价、商品吊牌价等可能会与您购物时展示的不一致,该价格仅供您参考。

折扣:如无特殊说明,折扣指销售商在原价、或划线价(如品牌专柜标价、商品吊牌价、厂商指导价、厂商建议零售价)等某一价格基础上计算出的优惠比例或优惠金额;如有疑问,您可在购买前联系销售商进行咨询。

异常问题:商品促销信息以商品详情页“促销”栏中的信息为准;商品的具体售价以订单结算页价格为准;如您发现活动商品售价或促销信息有异常,建议购买前先联系销售商咨询。

我要回帖

更多关于 P1口的功能 的文章

 

随机推荐