1. Overview
Atmel Microcontroller ISP Software (hereinafter referred to as ISP Software) is mainly used for ATMEL's in-system programming (ISP) chips. This software allows you to browse, program (write to chip), erase data, encrypt, etc.
2. System Requirements
◎ Software Requirements ISP software can run on Windows 9x, Windows NT 4.0 (using Service Pack 3 or higher), Windows 2000 and other operating systems. The software cannot run on WIN NT3.51 or earlier versions.
◎ Hardware requirements:
INTEL Pentium series processor, Pentium 166 or higher;
32MB RAM;
CD-ROM support (not necessary if you use this CD-ROM and download the software via the Internet);
VGA or higher performance monitor;
mouse;
Use the computer's parallel port;
AT89ISP programmer support.
3. Get started
Whether you are used to the ISP function or not, you will slowly find out how convenient and easy to use this function is. The software is also very easy to learn and use. This article will help you quickly use the ISP function of the ATMEL chip.
3.1. Installation
Put the CD into the CD-ROM drive (if it is the software you downloaded, please run it directly), the CD will automatically start running the ISP software installation program (unless you have disabled this function in WINDOWS), otherwise find the installation directory of the ISP software according to the "readme.txt" file in the root directory of the CD, and run Setup.exe. The installation wizard will help you easily install this software.
3.2. Run the program and select the device
Once the software is installed, you can start your pleasant ISP programming journey. You can open the ISP software main interface through the "Start" menu - "Programs" ATMEL" - "Programs_Atmel_ Microcontroller ISP Software", as shown in Figure 1:
If you are careful, you will find that most of the menus and shortcut buttons are not available. This is because you have not selected a device. In order to select a device, please follow the steps below:
1. Make sure your test board or development board is connected to AT89ISP, and the other end of AT89ISP is connected to the LPT (parallel port, commonly known as printer port) of the computer. Also, make sure the power on your board is turned on.
2. Select the LPT port connected to your AT89ISP (if there is only one, it is LPT1), and select the parallel port you are using through the menu "Options" - "Select Port";
3. Open the following window through the "Options"-"Select Device" menu item:
Notice:
1) When you select, check whether the crystal frequency in the XTAL box is correct (it can be slightly higher than your crystal frequency);
2) If the device does not support Page Mode, Page Mode cannot be selected (it will automatically turn gray).
4. Select the chip type you are using;
5. Select the Read/Write Mode.
6. Select the crystal frequency.
7. Confirm (or click the "OK" button).
Once the device is selected successfully, a data window will pop up (as shown in Figure 5).
If the selection fails, the following interface will appear (Figure 3):
The specific meaning is: the device cannot be initialized correctly. Please check and confirm whether the device power is turned on and whether the AT89ISP is correctly inserted into the parallel port. After confirmation, reinitialize the device (in the menu "Options" - "Initialize Target").
If the initialization is successful, please jump to 3.3 "Basic Operations" to learn new content; if it is unsuccessful, please check the following content
1. Are your other software using the parallel port (such as printers, emulators, other programmers, etc.), and the address of your parallel port is set to 0378H (set in CMOS, if you don't understand, you can ask someone to help you check);
2. Check whether your AT89ISP is firmly connected;
3. Is your motherboard power (your development board) turned on?
4. After confirming the above information is correct, please check the following items:
※ The chip is not correctly inserted into the socket, the chip is damaged, or the chip selection is wrong;
※ The crystal does not oscillate or is damaged;
※ The download cable is not connected correctly or is damaged;
※ The download board is powered off. Please confirm that the above faults have been eliminated and try again;
※ Restart the computer. The download program was exited because there was no "run target" last time.
※ Check the connection problem of the connection cable. Please refer to the hardware manual for details.
This picture shows the numerical sequence of the DIP10 socket from the top.
3.3. Basic Operations
This section explains how to use this programming software to perform some basic operations. This section does not describe detailed, complete programming operations. For detailed operations, please refer to Part 4.
Menus and Toolbars
3.3.1. Checking the device status The first thing you do when you use this software is to check the device status. To check the chip status, you need to select the "Blank Check" option in the "Instructions" menu. After selecting "Blank Check", the software may report one of the following four states:?
Unable to communicate with device
If the user board is not powered the programmer will report that it cannot communicate with the programmer...
Erasable and programmable
This means the chip has been erased and is ready for use.
Programmed and unencrypted
This means the chip has been programmed but not yet encrypted (can be read out)
encryption.
The device is encrypted (for more information, see section 3.3.4 - Device Encryption). If the device is encrypted and you still want to write to the chip, you must select the "Erase Chip" option in the "Options" menu.
3.3.2. Loading data from a file into a buffer
After checking whether the chip is programmed, you need to choose to load the program you want to write into the buffer of the software. The ISP software allows to load files in HEX format.
Load from disk:
1. Select the "Load Buffer" function in the "File" menu or click the corresponding button on the toolbar, and you will see the dialog box in Figure 6. Warning: Selecting to erase the chip will destroy the original data in the chip. If you do not want to destroy the original chip data, please do not perform the erase operation.
2. Select the HEX file you want to load and click "Open";
3. The buffer will be updated with the data information contained in the HEX file.
3.3.3. Programming the device
Once the HEX file is loaded into the buffer, you can program it at any time. To program, select the "Auto Program" function in the "Instructions" menu (you can also select the quick button in the toolbar).
Auto program executes the following commands:
Erase the chip.
Data outside the write buffer
Write the chip according to the data in the buffer
Set the encryption bit (if the chip supports it)
Write fuse bits (if chip supports it)
After the automatic programming is completed, you will see a dialog box similar to Figure 7
At any time during automatic programming, if an unexpected situation occurs, an error may be reported. For specific solutions, please refer to Section 5, Problem Solving.
3.3.4. Device Encryption
During automatic programming, you can set the encryption bit and fuse bit (if the device supports it). The encryption bit and fuse bit are a way for developers to protect their code. Most chips support these features, allowing you to prohibit writing, prohibit reading and writing, or prohibit reading alone, prohibiting data from being read by external programs (see the chip data sheet).
3.3.5. Set the device to run
After running all the programming and encryption, you can exit ISP mode by the "Run Target" command in the "Instructions" menu. This function allows the chip to start executing the program you just wrote into the chip (completely real, not simulated).
Note: The chip erase operation can only be performed by clearing the encryption bit. The chip cannot reduce the encryption level, only increase it.
Note: Once you execute the "Run Target" command, you will not be able to send any commands to the chip (the menu has been disabled). To start the ISP mode again, you must execute the "Initialize Target" command in the "Options" menu.
Note: To completely remove the ISP mode, be sure to execute the "" command, otherwise you must restart the computer the next time you use programming.
4. Menus and Toolbars
This section describes the menus and toolbars of the ISP software.
4.1. File Menu
The File menu allows the customer to transfer data between the user HEX file and the ISP software's buffer.
Load file (Load Buffer).
The load file command is used to open a HEX file saved by the user and load the file into the buffer. After loading, the buffer data will be displayed in the buffer window.
Save Buffer
The Save Buffer command allows the user to save the data in the existing buffer to a file. This command is often used to save chip data after reading it out.
Exit
Exit button to close the ISP software.
4.2. View menu.
The browse menu allows the client to choose to display different interfaces (toolbar, status bar).
Toolbar
The Toolbar command is a command to select whether to display the toolbar graphical interface. There is a selection mark in front of the Toolbar command. If the selection indicates on, the toolbar will be displayed; if the selection indicates off, the toolbar will be hidden.
Status Bar
The Status Bar command is a command to select whether to open the Status Bar graphical interface. There is a selection mark before the Status Bar command. If selected, the status bar will be displayed, otherwise the status bar will be hidden.
4.3. Buffer menu
The Buffer menu allows users to view and edit the buffer of the ISP software. Through this set of commands, users can edit and change the buffer data.
Blank Check (Buffer)
The empty check operation monitors all buffers and returns whether they are empty.
Erase Buffer
This command erases the data in the buffer.
Fill Buffer
This command allows the user to fill the ISP buffer with specific data. After selection, the dialog box shown in Figure 8 pops up.
The Fill Buffer command will fill the portion of the buffer selected in the main form with the data from the dialog box.
Check Sum
This command automatically sums the data in the program buffer and returns it to the user screen.
Note: The Erase Buffer command does not erase the data in the actual chip.
4.4. Instructions menu
The command menu allows the user to send commands to the chip.
Through this menu, the user can read the chip, lock the chip and other modules that communicate with the chip. If necessary, the data in the buffer will be automatically updated.
查空(Blank Check (Instructions))
This empty check operation refers to checking whether the currently connected chip is empty. After the command is completed, the result is returned to the screen:
- Unable to communicate normally
This status means that the software cannot send commands to the device, either because the device is invalid or because the user board is not powered.
-The chip has been erased and programmed
This status means the chip is empty and can be programmed.
- The chip has been programmed but can be reprogrammed
This status means that the chip already has data, but the chip is not encrypted.
- The chip is encrypted
This command means the chip is already in encryption state.
Erase Chip
This command is used to erase the chip's buffer.
After this command is executed, all the FLASH areas and data areas of the chip are in an empty state and can be reprogrammed.
Read Chip
This command is used to read the data of the chip. The result of the read data is loaded into the buffer of ISP and updated on the screen.
This command can also be implemented through the button on the toolbar.
Note: This command will change the data originally loaded into the ISP buffer. If this command is executed before writing to the chip, the HEX data needs to be reloaded.
Write Chip
This command will write all the data in the ISP buffer into the chip. After executing the command, the progress dialog box will be displayed to let the user know that programming is in progress and will prompt the user when it is completed.
Note: If there is no chip connected to the download line, it will return to a locked state.
This command can also be implemented via the toolbar button.
Lockbit Settings
The lock bit setting allows the user to select the protection mode for the chip. Figure 9 shows the lock bit mode supported by the current device displayed to the user by the ISP software.
Once selected, the software will set the device to enter the specified mode.
Fusebit Settings Fusebit Settings allows the user to set the fuse protection mode for the chip. A dialog box similar to Figure 9 displays the protection modes supported by the current device. After selection, the software automatically sets the chip.
Check Signature
This command reads the chip status from the chip and displays it on the screen.
Compare data (Verify Chip with Buffer)
This command compares the data in the buffer with the data in the chip. If they are exactly the same, it returns a correct prompt. If they are not the same, it returns the number of bytes that do not match. This command can be implemented through the toolbar.
Auto Program
This command executes a series of commands on the chip. This set of commands first initializes the chip erase, then starts the chip erase operation, and then writes the data in the ISP software buffer to the device. After writing the chip, it starts to compare the data command to confirm that the written data is correct, and finally allows the user to set the encryption mode and execute it.
Note: When executing the erase chip command, the lock bit and fuse bit have been cleared, which is probably the lowest level. Please change to the corresponding encryption level.
This command can be implemented through the corresponding button on the toolbar.
Run Target
This command removes the chip from ISP mode and enters the running state (so it is not a simulated run, but a real run). When the chip is in this state, the program cannot send any commands to the chip, and most commands are disabled. To enter the programming state, the "Initialize Target" command must be executed.
4.5. Options Menu
The Operation Menu allows the user to define variable environmental parameters for the ISP software.
Select Port
This command sets the parallel port number to which the programmer is connected. A dialog box will be displayed to allow the user to select LPT1 or LPT2. This command can be implemented through the corresponding button on the toolbar.
Select Device
This command allows the user to select the type of chip that can be identified. A dialog box similar to Figure 2 allows the user to select the available chip type. The user clicks on the chip type to select the chip. The user then selects whether to read and write in page mode or byte mode, and finally the user selects the crystal frequency on the user's board. This command can also be activated through the corresponding button on the toolbar.
Initialize Target
This command sets the chip into programming mode (ISP mode). This command can be implemented through the button on the toolbar.
Customize Display
4.6. Window Menu
The Window menu allows the user to change the buffer's window display mode.
4.7. Help Menu
about
This command displays the version and copyright information of the running ISP software.
5. Problem Solving
This section describes possible problems that may occur during use and their solutions.
● The program reports chip locked after “Chip Erase” command is executed.
The software may have a problem communicating with the chip. Check the connection to the programmer and make sure the power of the user board is turned on. Run the "Initialize Target" command in "Options".
● The program reports a write failure after writing to the chip buffer.
This is usually caused by incorrect crystal frequency settings. To view and modify the set frequency value, select the "Select Device" command in the "Options" menu. Then run the "Initialize Target" command in "Options".
● The software reports “…Atmel ISP Cable is not connected…” but the AT89ISP and user board are indeed correctly connected.
Confirm that the port connection is correct. You can change it by selecting the "Select Port" command in the "Options" menu.
Previous article:Design of Fire Control Computer Interface Circuit
Next article:Introduction to how to use C language for single chip microcomputer programming
Recommended ReadingLatest update time:2024-11-23 07:20
- Popular Resources
- Popular amplifiers
- Naxin Micro and Xinxian jointly launched the NS800RT series of real-time control MCUs
- How to learn embedded systems based on ARM platform
- Summary of jffs2_scan_eraseblock issues
- Application of SPCOMM Control in Serial Communication of Delphi7.0
- Using TComm component to realize serial communication in Delphi environment
- Bar chart code for embedded development practices
- Embedded Development Learning (10)
- Embedded Development Learning (8)
- Embedded Development Learning (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Intel promotes AI with multi-dimensional efforts in technology, application, and ecology
- ChinaJoy Qualcomm Snapdragon Theme Pavilion takes you to experience the new changes in digital entertainment in the 5G era
- Infineon's latest generation IGBT technology platform enables precise control of speed and position
- Two test methods for LED lighting life
- Don't Let Lightning Induced Surges Scare You
- Application of brushless motor controller ML4425/4426
- Easy identification of LED power supply quality
- World's first integrated photovoltaic solar system completed in Israel
- Sliding window mean filter for avr microcontroller AD conversion
- What does call mean in the detailed explanation of ABB robot programming instructions?
- STMicroelectronics discloses its 2027-2028 financial model and path to achieve its 2030 goals
- 2024 China Automotive Charging and Battery Swapping Ecosystem Conference held in Taiyuan
- State-owned enterprises team up to invest in solid-state battery giant
- The evolution of electronic and electrical architecture is accelerating
- The first! National Automotive Chip Quality Inspection Center established
- BYD releases self-developed automotive chip using 4nm process, with a running score of up to 1.15 million
- GEODNET launches GEO-PULSE, a car GPS navigation device
- Should Chinese car companies develop their own high-computing chips?
- Infineon and Siemens combine embedded automotive software platform with microcontrollers to provide the necessary functions for next-generation SDVs
- Continental launches invisible biometric sensor display to monitor passengers' vital signs
- Configuration and use of TI C2000 TMS320F28379D SCID SCIB
- MSP430 single chip microcomputer makes intelligent digital multimeter circuit diagram + program
- Research on the difference between left and right channel signals of audio
- The difference between wireless module transmitting and receiving the same frequency and different frequencies
- Please help me with the corresponding IC model of the silkscreen bn-bc g1k dual-phase pwm control chip
- Some things about logic analyzer design
- DSP28335 ECAP module configuration issue
- Can the circuit design of a lead-free soldering station be imitated like this?
- SHT31 Evaluation + I2C Communication
- ThreadX full album download, multiple security certifications, a hardcore partner