at89c51snd1c ATMEL Corporation, at89c51snd1c Datasheet

no-image

at89c51snd1c

Manufacturer Part Number
at89c51snd1c
Description
At89c51snd1c At89c51snd1 Uart Bootloader
Manufacturer
ATMEL Corporation
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
at89c51snd1c-7HTUL
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
at89c51snd1c-ROTUL
Manufacturer:
Atmel
Quantity:
10 000
Features
Description
This document describes the UART bootloader functionalities as well as the serial
protocol to efficiently perform operations on the on-chip Flash memory. Additional
information for the AT89C51SND1 product can be found in the AT89C51SND1 data
sheet and the AT89C51SND1 errata sheet available on the Atmel web site,
www.atmel.com.
The bootloader software package (source code and binary) currently used for produc-
tion is available from the Atmel web site.
Bootloader Revision
Revision 1.0.0
Revision 1.1.0
Protocol
In-System Programming
In-Application Programming/Self-Programming
– UART Used as a Physical Layer
– Based on the Intel Hex-type Records
– Autobaud
– Read/Write Flash Memory
– Read Device IDs
– Block Erase
– Full-chip Erase
– Read/Write Configuration Bytes
– Security Setting From ISP Command
– Remote Application Start Command
– Read/Write Flash Memory
– Read Device IDs
– Block Erase
– Read/Write Configuration Bytes
– Bootloader Start
Purpose of Modifications
New release increasing programming
speed
Bug fix in boot process
Date
June 2002
October 2002
MP3
Microcontrollers
AT89C51SND1
UART
Bootloader
4241B–MP3–07/04
1

Related parts for at89c51snd1c

at89c51snd1c Summary of contents

Page 1

Features • Protocol – UART Used as a Physical Layer – Based on the Intel Hex-type Records – Autobaud • In-System Programming – Read/Write Flash Memory – Read Device IDs – Block Erase – Full-chip Erase – Read/Write Configuration Bytes ...

Page 2

Functional Description In-System Programming Capability In-Application Programming or Self- Programming Capability Block Diagram AT89C51SND1 UART Bootloader 2 The AT89C51SND1 bootloader facilitates In-System Programming and In-Application Programming. In-System Programming (ISP) allows the user to program or reprogram a microcontrol- ler’s on-chip ...

Page 3

ISP Communication Management User Call Management Flash Memory Management Bootloader Configuration Configuration and Manufacturer Information Mapping and Default Value of Hardware Security Byte 4241B–MP3–07/04 AT89C51SND1 UART Bootloader The purpose of this process is to manage the communication and its protocol ...

Page 4

Software Security Byte Software Boot Vector AT89C51SND1 UART Bootloader 4 The bootloader has Software Security Byte (SSB) to protect itself from user access or ISP access. The Software Security Byte (SSB) protects from ISP accesses. The command “Program Software Security ...

Page 5

FLIP Software Program 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Figure 2. Software Boot Vector User Bootloader Application FM0 FLIP software program running under Windows ® and LINUX that supports all Atmel Flash microcontrollers. This free software program is available ...

Page 6

In-System Programming Bootloader Execution Software Boot Mapping Hardware Condition Boot Mapping Programmed Condition Boot Mapping AT89C51SND1 UART Bootloader 6 The ISP allows the user to program or reprogram a microcontroller’s on-chip Flash memory through the serial line without removing it ...

Page 7

Regular Boot Process 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Figure 3. Boot Process Algorithm Standard Init ENBOOT = 0000h FCON = F0h User’s Application RESET Hard Cond? ISP Prog Cond? Hard Cond Init BLJB = P? ENBOOT ...

Page 8

Physical Layer Frame Description AT89C51SND1 UART Bootloader 8 The UART used to transmit information has the following configuration: • Character: 8-bit data • Parity: none • Stop: 1 bit • Flow control: none • Baud rate: auto baud is performed ...

Page 9

Protocol Overview Communication Initialization Autobaud Performances Command Data Stream Protocol 4241B–MP3–07/04 AT89C51SND1 UART Bootloader An initialization step must be performed after each Reset. After microcontroller reset, the bootloader waits for an auto baud sequence (see Section “Autobaud Performances”, page 9). ...

Page 10

Figure 5. Command Flow Host Sends First Character of the Frame Sends Frame (Made of 2 ASCII Characters per Byte) Echo Analysis Programming the Flash Data Requests from Host Answers from Bootloader AT89C51SND1 UART Bootloader 10 ":" ":" The flow ...

Page 11

Flow Description Figure 6. Programming Command Host Send Write Command OR Wait Checksum Error COMMAND ABORTED OR Wait Security Error COMMAND ABORTED Wait COMMAND_OK COMMAND FINISHED Programming Example 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Write Command “X” & CR & LF “P” ...

Page 12

Reading the Flash Data Requests from Host Answers from Bootloader Flow Description Figure 7. Blank Check Command Host Send Blank Check Command OR Wait Checksum Error COMMAND ABORTED Wait COMMAND_OK OR COMMAND FINISHED Wait Address not Erased COMMAND FINISHED AT89C51SND1 ...

Page 13

Blank Check Example Flow Description Figure 8. Read Command Flow Host Send Display Command OR Wait Checksum Error COMMAND ABORTED OR Wait Security Error COMMAND ABORTED Wait Display Data All Data Read COMMAND FINISHED 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Blank Check ...

Page 14

Blank Check Example Program Configuration Information Requests from Host Answers from Bootloader AT89C51SND1 UART Bootloader 14 Display data from address 0000h to 0020h HOST : 05 0000 04 0000 0020 00 D7 BOOTLOADER : 05 0000 04 0000 0020 00 ...

Page 15

Figure 9. Write Command Flow Host Send Write Command OR Wait Checksum Error COMMAND ABORTED OR Wait Security Error COMMAND ABORTED Wait COMMAND_OK COMMAND FINISHED Program Configuration Example 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Write Command “X” & CR & LF “P” ...

Page 16

Read Configuration Information or Manufacturer Information Requests from Host Answers from Bootloader Figure 10. Read Command Host Send Read Command OR Wait Checksum Error COMMAND ABORTED OR Wait Security Error COMMAND ABORTED Wait Value of Data COMMAND FINISHED AT89C51SND1 UART ...

Page 17

Read Example Erase the Flash Requests from Host Answers from Bootloader 4241B–MP3–07/04 AT89C51SND1 UART Bootloader Read function (read SBV) HOST : 02 0000 BOOTLOADER : 02 0000 Value . CR LF Atmel ...

Page 18

Figure 11. Erase Command Host Send Erase Command OR Wait Checksum Error COMMAND ABORTED OR Wait Security Error COMMAND ABORTED Wait COMMAND_OK COMMAND FINISHED Example AT89C51SND1 UART Bootloader 18 Erase Command “X” & CR & LF “P” & CR & ...

Page 19

Start the Application Requests from Host Answer from Bootloader Start Application Example 4241B–MP3–07/04 AT89C51SND1 UART Bootloader The command described below allows to start the application directly from the boot- loader upon a specific command reception. Two options are possible: • ...

Page 20

In-Application Programming/Self- Programming API Call Process Constraints API Commands Read/Program Flash Memory AT89C51SND1 UART Bootloader 20 The IAP allows to reprogram the microcontroller’s on-chip Flash memory without remov- ing it from the system and while the embedded application is running. ...

Page 21

Read Configuration and Manufacturer Information Program Configuration Information 4241B–MP3–07/04 AT89C51SND1 UART Bootloader • The application program loads the column latches of the Flash then calls the __api_wr_code_byte or __api_wr_code_page “Program/Code Memory ” . • Parameter Settings API_name R1 __api_wr_code_byte 02h ...

Page 22

Erase Flash Start Bootloader AT89C51SND1 UART Bootloader 22 • Parameter Settings (Continued) API_name R1 __api_wr_SSB_LEVEL1 05h __api_wr_SSB_LEVEL2 05h • Instruction: LCALL FFF0h. Note: 1. Refer to the AT89C51SND1 datasheet for information on write operation timing special resources are ...

Page 23

Appendix A Table 6. Summary of Frames From Host Command Program Nb Data Byte in Flash. Erase block0 (0000h-1FFFh) Erase block1 (2000h-3FFFh) Erase block2 (4000h-7FFFh) Erase block3 (8000h-FFFFh) Start application with a reset pulse generation Start application with a jump ...

Page 24

Appendix B Table 7. API Summary Bootloader Function_Name Execution __api_rd_code_byte no __api_wr_code_byte yes __api_wr_code_page yes __api_erase_block0 yes __api_erase_block1 yes __api_erase_block2 yes __api_erase_block3 yes __api_rd_HSB yes __api_set_X2 yes __api_clr_X2 yes __api_set_BLJB yes __api_clr_BLJB yes __api_rd_BSB yes __api_wr_BSB yes __api_rd_SBV yes __api_wr_SBV ...

Page 25

... Fax: (81) 3-3523-7581 Disclaimer: Atmel Corporation makes no warranty for the use of its products, other than those expressly contained in the Company’s standard warranty which is detailed in Atmel’s Terms and Conditions located on the Company’s web site. The Company assumes no responsibility for any errors which may appear in this document, reserves the right to change devices or specifications detailed herein at any time without notice, and does not make any commitment to update the information contained herein ...

Related keywords