测控技术与仪器 单片机 外文翻译 外文文献 英文文献 51单片机在编程电路中的应用.docx
《测控技术与仪器 单片机 外文翻译 外文文献 英文文献 51单片机在编程电路中的应用.docx》由会员分享,可在线阅读,更多相关《测控技术与仪器 单片机 外文翻译 外文文献 英文文献 51单片机在编程电路中的应用.docx(15页珍藏版)》请在冰豆网上搜索。
![测控技术与仪器 单片机 外文翻译 外文文献 英文文献 51单片机在编程电路中的应用.docx](https://file1.bdocx.com/fileroot1/2022-10/4/08a98768-a845-491f-885d-eab3c81a3daa/08a98768-a845-491f-885d-eab3c81a3daa1.gif)
AT89C51In-Circuit Programming
出处:
Atmel Corporation
This application note illustrates the in-circuit programmability of the Atmel AT89C51Flash-basedmicrocontroller.Guidelines for the addition of in-circuit programmability to AT89C51applications arepresented along with an application example and the modifications to it required to support in-circuitprogramming.A method is then shown by which the AT89C51microcontroller in the application can bereprogrammed remotely,over a commercial telephone line.The circuitry described in this applicationnote supports five volt programming only,requiring the use of an AT89C51-XX-5.The standardAT89C51requires12volts for programming.The software for this application may be obtained bydownloading from Atmel’s
General Considerations
Circuitry added to support AT89C51incircuit programming should appear transparent to the applicationwhen programming is not taking place.
EA/VPP must be held high during programming.In applications which do not utilize externalprogram memory,this pin may be permanently strapped to VCC.Applications utilizing externalprogram memory require that this pin be held low during normal operation.
RST must be held active during programming.A means must be provided for overriding theapplication reset circuit,which typically asserts RST only briefly after power is applied.PSEN must be held low during programming,but must not be driven during normal operation.ALE/PROG is pulsed low during programming,but must not be driven during normal operation.During programming,AT89C51I/O ports are used for the application of mode select,addressesand data,possibly requiring that the controller be isolated from the application circuitry.How this isdone is application dependent and will be addressed here only in general terms.
Port Used for Input
During programming,the controller must be isolated from signals sourced by the applicationcircuitry.A buffer with threestate outputs might be inserted between the application circuitry and thecontroller,with the buffer outputs three-stated when programming is enabled.Alternately,a multiplexermight be used to select between signal sources,with signals applied to the controller by either theapplication circuitry or the programmer circuitry.
Port Used for Output
No circuit changes are required if the application circuitry can tolerate the state changes whichoccur at the port during programming.If the prior state of the application circuitry must be maintainedduring programming,a latch might be inserted between the controller and the application circuitry.Thelatch is enabled during programming,preserving the state of the application circuitry.An Application Example
The AT89C51application shown in Figure1is an implementation of a moving display.Thisapplication was selected for its simplicity and ability to show graphically the results of in-circuitreprogramming.The text to be displayed is programmed into the controller as part of its firmware,andcannot be changed without reprogramming the device.
The displayed text is presented in one of two modes selected by the four-position DIP switch.Inthe first mode,one character at a time enters the display from the right and moves quickly to the leftthrough each element of the display to its final position in the assembled message.In the second mode,the message moves through the display,from right to left,with the display acting as a window onto themessage.This mode is familiar as the method often used in displays of stock prices.The output consists of four DL1414T,four-digit,17-segment alphanumeric displays with integraldecoders and drivers.This yields16total display elements,each capable of displaying digits0-9,theupper case alphabet,and some punctuation characters.The displayable character codes are ASCII20H-5FH.
A power-on reset circuit and a6-MHz crystal oscillator complete the application.Neither externalprogram memory nor external data memory is used.
Modifications to the Application to Support
In-Circuit Programming Figure2shows the application modified for in-circuit programming.It is assumed that the programmer,when inactive,will neither drive nor excessively load theapplication.Since the application does not use external program memory,EA/VPP on the controller isconnected to VCC.This meets the requirement for programming.
The reset circuit has been modified by the addition of twotransistors,which allow RST on thecontroller to be forced high by the programmer.
PSEN and ALE/PROG,unused in the basic application,areunder the direct control of the programmer.Programming requires programmer access to all of the four AT89C51I/O ports,as documented inthe data sheet.The programmer is connected directly to those controller pins which are unused by theapplication,while access to pins used by the application requires special treatment,as explained in thefollowing paragraphs.
The least significant four bits of the address generated by the programmer are multiplexed ontoport one of th