Stk500 руководство пользователя

Atmel AVR STK500 User Manual

  1. Manuals
  2. Brands
  3. Atmel Manuals
  4. Controller
  5. AVR STK500
  6. User manual

  • Contents

  • Table of Contents

  • Troubleshooting

  • Bookmarks

Quick Links

STK500

………………………………………………………………………………….

User Guide

loading

Related Manuals for Atmel AVR STK500

Summary of Contents for Atmel AVR STK500

  • Page 1
    STK500 ………………..User Guide…
  • Page 3: Table Of Contents

    Clock Settings, XTAL1 and OSCSEL ……….3-20 3.8.5 BSEL2 Jumper ……………..3-22 3.8.6 PJUMP Jumpers…………….3-22 Expansion Connectors …………….3-23 3.9.1 Signal Descriptions…………….3-25 3.10 Prog Ctrl and Prog Data Headers …………3-25 3.11 Miscellaneous ………………3-26 3.11.1 RESET Push Button ……………..3-26 3.11.2 PROGRAM Push Button …………..3-27 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 4
    In-System Programming of an External Target System ……. 6-1 Section 7 Troubleshooting Guide …………….. 7-1 Section 8 Technical Support…………….. 8-1 Section 9 Example Applications …………….9-1 Using LEDs and Switches……………..9-1 Section 10 Appendix A ………………10-1 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 5: Introduction

    Kit. The STK500 is a complete starter kit and development system for the AVR Flash Microcontroller from Atmel Corporation. It is designed to give designers a quick start to develop code on the AVR and for prototyping and testing of new designs.

  • Page 6: Device Support

    1. In external target or in STK501, devices do not fit into the sockets of STK500. Support for new AVR devices may be added in new versions of AVR Studio. The latest version of AVR Studio is always available from www.atmel.com. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 7: Getting Started

    – (1 pc) 6-wire cable for In-System Programming – (4 pcs) 2-wire cable for UART and DataFlash connections n 9-pin RS-232 cable n DC power cable n Atmel CD-ROM with datasheets and software n AT90S8515-8PC sample microcontroller System The minimum hardware and software requirements are:…

  • Page 8: Quick Start

    The starter kit can be configured for various clock and power sources. A complete description of the jumper settings is explained in paragraph 3.8 on page 3-15 and on the reverse side of the starter kit. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 9: Connecting The Hardware

    LED will turn green. If programming fails, the LED will turn red after programming. See the troubleshooting guide in Section 7 on page 7-1. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 10
    Getting Started Figure 2-3. AVR Studio STK500 Programming Menu Complete descriptions of using the STK500 interface in AVR Studio are given in Section 5 on page 5-1. AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 11: Hardware Description

    1. Confirm that this is connected to pin 1 on each of the headers. Figure 3-2 shows how the LED control is implemented. This solution will give the same amount of light from the LED for all target voltages from 1.8V to 6.0V. AVR STK500 User Guide Rev. 1925C–AVR–3/03…

  • Page 12: Description Of User Switches

    In the STK500 design, we have added an external 10K pull-up to give all users a logical “1” on SWn when the push-button is not pressed. The 150R resistor limits the current going into the AVR. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 13: Connection Of Leds And Switches

    1. Figure 3-5. General Pinout of I/O Port Headers PORTx The PORTE/AUX header has some special signals and functions in addition to the PORTE pins. The pinout of this header is shown in Figure 3-6. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 14
    Figure 3-8. The square marking indicates pin 1. Figure 3-7. Pinout of the Switch Header SWITCHES Figure 3-8. Pinout of the LED Header LED0 LED1 LED2 LED3 LED4 LED5 LED7 LED6 LEDS AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 15: Description Of User Rs-232 Interface

    UART pins to the RS-232. The connection is shown in Figure 3-9. The block schematic of the RS-232 connection is shown in Figure 3-10. Figure 3-9. Connection of I/O Pins to UART Figure 3-10. Schematic of UART Pin Connections 470R 470R RS-232 MAX202CSE Voltage Converter AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 16: Description Of Dataflash Pins

    A DataFlash is a high-density Flash memory with SPI serial interface. A detailed DataFlash Pins datasheet of the DataFlash can be obtained from the Flash memory section of the Atmel CD-ROM or from the Atmel web site. The DataFlash can be connected to the I/O pins of the microcontroller sockets. The 4-pin header marked “DATAFLASH”…

  • Page 17
    Hardware Description Figure 3-13. Connection of I/O Pins to DataFlash for AT90S8515 Figure 3-14. Schematic of DataFlash Connections Voltage AT45D021 Converter DataFlash AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 18: Target Socket Section

    Four general nets (VTARGET, RESET, XTAL1 and AREF) can be connected to the socket section. The following sections describe how to use both programming methods. For instructions on using the AVR Studio programming software, see Section 5, “Using AVR Studio” on page 5-1. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 19: Isp Programming

    SCKT3400D1 and SCKT3400D1 are connected to PB5. The RESET signal used during ISP programming is therefore not connected to pin 1 on these sockets. This signal must be connected by placing a wire between RST and the PORTE header and PB5 on the PORTB header. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 20
    6-wire cable is connected from the ISP6PIN header to the red SPROG3 target ISP header, and the AT90S2313 part is inserted in the red socket marked “SCKT3100D3”. Figure 3-16. Example Connection for Programming AT90S2313 SPROG1 SPROG2 SCKT3300D3 SPROG3 ISP6PIN 3-10 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 21: High-Voltage Programming

    PJUMP jumpers and mount BSEL2 terminal to PC2. See Section 3.8.5 and Section 3.8.6. AT90S2323 SCKT3400D1 Blue Serial High-voltage Programming AT90S2343 ATtiny11 ATtiny12 ATtiny22 ATtiny15 SCKT3600A1 Blue SCKT3700A1 Blue Socket not in use in this version of STK500 AVR STK500 User Guide 3-11 1925C–AVR–3/03…

  • Page 22
    Figure 3-17. Figure 3-17. Connection for Parallel High-voltage Programming Some of the jumper settings on STK500 must be changed when using High-voltage Pro- gramming. Figure 3-18 explains these jumper settings. 3-12 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 23
    12. Ensure that VTARGET is between 4.5V and 5.5V before programming. See Sec- tion 5.3.5.1. For a complete description of jumper settings, see Section 3.8, “Jumper Settings”. Note: Remove the hardware setup for High-voltage Programming before starting a debug session. AVR STK500 User Guide 3-13 1925C–AVR–3/03…
  • Page 24
    DATA1 pin (pin 2) on the PROG DATA header. 10. Switch power on and you are ready to program. All connections are shown in Figure 3-19. Figure 3-19. Connection for Serial High-voltage Programming 3-14 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 25: Jumper Settings

    XTAL1 On-board Clock System connected OSCSEL On-board Oscillator selected BSEL2 Unmounted. Used for High-voltage Programming of ATmega8, ATmega16, ATmega161, ATmega163, ATmega128, and ATmega323 PJUMP Unmounted. Used for High-voltage Programming of AT90S2333, AT90S4433, and ATmega8 AVR STK500 User Guide 3-15 1925C–AVR–3/03…

  • Page 26: Target V

    Regulator Green LED Jumper Master Note: The green LED will light when there is a voltage available on the VTG NET. It’s impossible to use the debug or programming area of STK500 without VTG. 3-16 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 27: Analog Reference Voltage, Aref

    PWM. The AVR’s AREF signal is also accessible on the PORTE header; this pin can also be used for external AREF signal. Figure 3-24 shows the internal connec- tion of the AREF signal. AVR STK500 User Guide 3-17 1925C–AVR–3/03…

  • Page 28: Reset Settings, Reset

    When using an external reset system, it must allow the reset line to be controlled by the master microcontroller reset system during programming. The RESET button is disconnected if the RESET jumper is not mounted. Figure 3-25 explains the RESET jumper options. 3-18 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 29
    Jumper RESET PORTE/AUX Note: During High-voltage Programming, STK500 applies 12V to the AVR’s RESET line. Thus, an external reset circuit not capable of handling this must be discon- nected before High-voltage Programming the AVR. AVR STK500 User Guide 3-19 1925C–AVR–3/03…
  • Page 30: Clock Settings, Xtal1 And Oscsel

    RESET XTAL1 OSCSEL On-board XTAL1 Signal Disconnected When the XTAL1 jumper is not mounted, an external clock source or crystal can be con- nected to the PORTE header. This is shown in Figure 3-30. 3-20 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 31
    The long signal lines in this system makes it difficult to drive a crystal with the On-chip Oscillators on the AVR. The oscillator on STK500 is designed to operate on all target voltages from 1.8 to 6.0V. AVR STK500 User Guide 3-21 1925C–AVR–3/03…
  • Page 32: Bsel2 Jumper

    PJUMP jumpers should only be mounted when using High-voltage Programming on AT90S2333, AT90S4433, or ATmega8. During debugging, High-voltage Programming of other parts and ISP programming, these jumpers should not be mounted. Figure 3-32. PJUMP Jumpers Placement Correct Jumper Placement Correct 3-22 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 33: Expansion Connectors

    STK500. The pinout of the expansion connectors is shown in Figure 3-34 and Fig- ure 3-35. Figure 3-33. Expansion Headers Expansion Header 0 Prog Ctrl Pin 1 Pin 1 Expansion Header 1 Prog Data AVR STK500 User Guide 3-23 1925C–AVR–3/03…

  • Page 34
    Hardware Description Figure 3-34. Expansion Connector 0 Pinout AUXI0 AUXO0 BSEL2 Figure 3-35. Expansion Connector 1 Pinout AUXI1 AUXO1 DATA7 DATA6 DATA5 DATA4 DATA3 DATA2 DATA1 DATA0 3-24 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 35: Signal Descriptions

    The Prog Ctrl signals are normally used for the control signals when parallel High- voltage Programming an AVR device. Note: All Prog Ctrl signals are based on 5V CMOS logic. No voltage conversion to adapt to VTG is done on these signals. AVR STK500 User Guide 3-25 1925C–AVR–3/03…

  • Page 36: Miscellaneous

    The RESET push button resets the target AVR device when pushed. The master micro- controller is not controlled by the RESET push button. When the RESET jumper is not mounted, the RESET push button is disabled. 3-26 AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 37: Program Push Button

    LED will turn red to indicate that programming failed. When programming fails, check the troubleshooting guide in Section 7 on page 7-1. During start-up, the sta- tus LED will shift from red, through yellow, to green to indicate that the master microcontroller is ready. AVR STK500 User Guide 3-27 1925C–AVR–3/03…

  • Page 38
    Hardware Description 3-28 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 39: Installing Avr Studio

    AVR development. It has an editor, an assembler and a debugger and is front-end for all AVR emulators and the STK500 starter kit. To install AVR Studio, insert the supplied Atmel CD-ROM databook in the computer and navigate to “Products → AVR 8-bit RISC → Software”. Right-click with the mouse on the “AVRstudio.exe”…

  • Page 40
    Installing AVR Studio AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 41: Using Avr Studio

    Section 4 on page 4-1. Once installed, AVR Studio can be started by double- Software clicking on the AVR Studio icon. If default install options are used, the program is located in the Windows “Start menu → Programs → Atmel AVR Tools” folder. 5.2.1 Starting STK500 Pressing the “AVR”…

  • Page 42: Stk500 User Interface

    “Input HEX File” option. Browse to the correct file by pressing the button or type the complete path and filename in the text field. The selected file must be in “Intel-hex” for- mat or “extended Intel-hex” format. Figure 5-2. Program AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 43: Fuses» Settings

    (i.e., pressing “Chip Erase” button in the “Program” settings). Detailed information on what fuses are available in the different programming modes and their functions can be found in the appropriate device datasheet. Figure 5-3. Fuses AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 44: Lockbits» Settings

    The signature bytes act like an identifier for the part. After reading the signature, the software will check if it is the correct signature according to the chosen device. Please refer to the AVR datasheets to read more about signature bytes. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 45: Board» Settings

    The interface is very flexible and it is possible to force the operating conditions beyond the recommended specifications for the device. Doing this is not recommended, and may damage the target device. The recommended operating conditions for the part are stated in the device datasheet. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 46
    It is not possible to set AREF to a higher voltage than VTARGET because this will per- manently damage the AVR. The physical connection of the AREF voltage is shown in Figure 3-24 on page 3-18. AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 47: Auto» Settings

    “Program” settings. All commands depend on and use the settings given in the STK500 user interface. Figure 5-7. Auto It is possible to log the command execution to a text file by checking the “Log to file” check box. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 48: History Window

    The History window is located at the bottom of the STK500 view. In this window the dia- log between AVR Studio and STK500 is shown. For every new command performed, the old dialog is replaced with the new one. Figure 5-8. History Window AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 49: Command Line Software

    Verify device; FLASH (f), EEPROM (e) or both (b). Can be used with -p or stand alone. Corresponding input files are required. Set lock byte. “value’ is an 8-bit hex. value. Verify lock byte. “value” is an 8-bit hex. value to verify against. Read back lock byte. AVR STK500 User Guide 1925C–AVR–3/03…

  • Page 50
    Help information (overrides all other settings) Figure 5-9. Sample Usage Program Flash Erase before Program Name of hex File stk500 -dAT90S8515 -iftest.hex Select Device Number Verify Device Serial Programming Mode 5-10 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 51: In-System Programming Of An External Target System

    If the other application has its own power supply to VTG, the jumper VTARGET must be removed before connecting STK500 to the other application. STK500 may be damaged if the VTARGET jumper is not removed. AVR STK500 User Guide Rev. 1925C–AVR–3/03…

  • Page 52
    In-System Programming of an External Target System AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 53: Troubleshooting Guide

    ISP6PIN header to the correct SPROG target ISP header (page 3-10). The jumpers settings are Set jumper to default setup wrong. (page 3-15). The memory lock bits are Erase the memory before programmed. programming. AVR STK500 User Guide Rev. 1925C–AVR–3/03…

  • Page 54
    0.3V in AVR Studio. turned off. The LEDs don’t work STK500 must be powered for Supply poser to STK500 and (running from external LEDs to work. turn it on. VTARGET). AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 55: Technical Support

    Section 8 Technical Support For technical support, please contact avr@atmel.com. When requesting technical sup- port for STK500, please include the following information: n Version number of AVR Studio. This can be found in the AVR Studio menu, “Help → About”.

  • Page 56
    Technical Support AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 57: Example Applications

    ; Set PORTB to output ;**** Test input/output LOOP: PORTB,temp ; Update LEDS sbis PIND,0x00 ; If (Port D, pin0 == 0) Temp ; then count LEDS one down sbis PIND,0x01 ; If (Port D, pin1 == 0) AVR STK500 User Guide Rev. 1925C–AVR–3/03…

  • Page 58
    ; If (Port D, pin6 == 0) swap Temp ; then swap nibbles of LEDS ;**** Now wait a while to make LED changes visible. DLY: Delay brne Delay2 brne rjmp LOOP ; Repeat loop forever AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 59
    RESET STATUS SYSTEM PORT D VTARGET TARGET POWER INTERFACE SYSTEM PORT E/AUX AREF POWER TO CONTROL SECTION CONNECTIONS POWER POWER EXPAND POWER TO CONTROL BUTTON SUPPLY CONNECTORS CONNECTOR SECTION CONTROL SECTION TARGET SECTION AVR STK500 User Guide 10-1 Rev. 1925C–AVR–3/03…
  • Page 60
    Appendix A 10-2 AVR STK500 User Guide 1925C–AVR–3/03…
  • Page 61
    No licenses to patents or other intellectual property of Atmel are granted by the Company in connection with the sale of Atmel products, expressly or by implication. Atmel’s products are not authorized for use as critical components in life support devices or systems.
  • Page 62
    Mouser Electronics Authorized Distributor Click to View Pricing, Inventory, Delivery & Lifecycle Information: Microchip 24AA16/ST…

РадиоКот >Статьи >

STK500: Что же он умеет и как с ним работать.

Данная статья поможет при работе с фирменным STK500 и его клонами, а также раскроет тем кто еще не работал с данным программатором его функции.
STK500 это отладочный модуль с интегрированным программатором, предназначенный для разработки и отладки устройств на МК AVR. STK500 имеет ряд преимуществ выгодно отличающих его от других программаторов:
— возможность высоковольтного (HV) программирования;
— внутрисхемное программирование (ISP);
— возможность установки частоты ISP и HV интерфейса;
— возможность регулировки питающего VTG и опорного AREF напряжения;
— возможность регулировки ISP уровней;
— возможность обновления прошивки основного управляющего контроллера, благодаря чему программатор поддерживает все новинки от Атмел.
Недостатками STK500 на мой взгляд являются:
— COM интерфейс, отсутствующий на современных РС;
— большие габариты;
— отсутствие панелей с нулевым усилием сводит на нет программирование микросхем непосредственно в программаторе т.к. что бы достать микросхему из панели необходимо приложить немалое усилие, а в случае применения отвертки и пр. инструмента велика опасность повредить джампера и пр.
— наличие дополнительного источника питания, что еще больше усложняет применение программатора в «полевых» условиях и захламляет без того насыщенное рабочее место.

Для работы с программатором необходимо установить программу AVR Studio, являющуюся бесплатным средством разработки и отладки от ATMEL.

После установки запустите программу AVR Studio (рис. 1).
Для ручной установки необходимо нажать кнопку (рис. 2) установить при необходимости порт на котором находится программатор и нажать кнопку «Connect:».

Для автоматического определения программатора необходимо нажать кнопку .

Рис. 1

Рис. 2

Рис. 3

Вкладка Main изображена на рис. 3.
Прежде всего, необходимо выбрать кристалл в выпадающем списке «Device and Signature Bytes» и установить вид программирования в выпадающем списке «Programming Mode and Target Settings»:
ISP mode — внутрисхемное программирование по SPI
HP/HVSP mode — программирование при повышенном напряжении
Если было выбрано внутрисхемное программирование ISP то представляется возможность установить частоту интерфейса SPI при программировании для этого необходимо нажать кнопку «Settings» после чего появится окно рис. 4.

Рис. 4

Желаемая частота выбирается в выпадающем списке «ISP Freq:», после чего необходимо нажать кнопку «Write».
Кнопка «Erase Device» вкладки Main стирает выбранный кристалл.
Кнопка «Read Signature» чтение байтов сигнатуры кристалла.

Вкладка Program изображена на рис. 5:

Рис. 5

Группа Device
«Erase device before programming» — стирание кристалла перед программированием
«Verify device after programming» — верификация(проверка данных) после программирования

Группа Flash
Кнопка выбор HEX файла прошивки
Кнопка «Program» — программирование выбранного HEX файла данных Flash
Кнопка «Verify» — верификация(сравнение с HEX файлом) данных flash
Кнопка «Read» — чтение данных flash

Группа EEPROM
Кнопка выбор HEX файла данных EEPROM
Кнопка «Program» — программирование выбранного HEX файла данных EEPROM
Кнопка «Verify» — верификация(сравнение с HEX файлом) данных EEPROM
Кнопка «Read» — чтение данных EEPROM

Группа ELF Production File Format
Кнопка выбор ELF файла
Кнопка «Program» — программирование выбранного ELF файла
Кнопка «Save» — сохранение ELF файла

Вкладка Fuses изображена на рис. 6:

Рис. 6

«Auto read» — автоматическое чтение Fuse байтов
«Smart warnings» — предупреждения при ошибке
«Verify after programming» — верификация после программирования
Кнопка «Program» — программирование Fuse байтов
Кнопка «Verify» — верификация Fuse байтов
Кнопка «Read» — чтение Fuse байтов

Вкладка функционально идентична вкладке Fuses.

Вкладка калибровки внутреннего генератора.

Вкладка HW Settings изображена на рис. 7:

Рис. 7

Функции группы Voltages позволяют устанавливать напряжение питания МК VTG и опорное напряжение AREF.

Группа Clock Generator позволяет установить частоту на выводе SWCLK разъема HV программирования. Определяет частоту при программировании повышенном напряжением. Скроллингом устанавливается необходимая частота после чего нажимаем кнопку «Write».
Кнопка «Read» предназначена для чтения текущей частоты.

Группа Firmware Upgrade
Кнопка «Upgrade» — автоматическое обновление.

Информация о версии программатора.

Рис. 8

Данная вкладка предназначена автоматического программирования установленных параметров предыдущих вкладок. Удобно если необходимо прошить несколько процессоров подряд с одинаковыми параметрами. Задаем все что нужно в соответствующих вкладках, устанавливаем галочки и нажи-маем Start.

Главное окно программы изображено на рис. 9:

Рис. 9

Для отображения окна программирования необходимо нажать кнопку , окно программирования изображено на рис. 10.

Рис. 10

Выбираем программатор STK-500/AVRISP и COM порт на котором установлен программатор рис. 10 нажимаем кнопку «ISP Options…» рис. 11

Рис. 11

Нажимаем кнопку «Browse…» и указываем путь к файлу «Stk500.exe», по умолчанию программа AVR Studio устанавливается на диск C, тогда файл находится по адресу
C:Program FilesAtmelAVR ToolsSTK500Stk500.exe

Главное окно программы представлено на рис. 12:

Рис. 12

В меню «Settings» выбираем вкладку «Programmer» (рис. 13)
В выпадающем списке «AVR Chip Programmer Type» выбираем «Atmel STK500/AVRISP», в выпадающем списке «Communication Port» выбираем порт на который установлен программатор (рис. 13)

Рис. 13

Данный программатор обеспечивает автоматическое обновление прошивки.
Версия прошивки должна соответствовать установленной на РС версии AVR Studio.

Для входа в режим программирования необходимо при включении питания удерживать кнопку Program, после включения программатора через несколько секунд кнопку можно отпустить.

Обновление прошивки можно осуществлять следующими средствами:

1. утилитой AVR Prog находящейся во вкладке Tools Рис.14

Рис. 14

В появившемся окне необходимо выполнить установки в соответствии с рис. 15:

Рис. 15

Файл прошивки STK500.ebn находится в директории в которую установлена AVR Studio в папке STK500, по умолчанию C:Program FilesAtmelAVR ToolsSTK500

2. Утилитой Upgrade, находящейся в директории в которую установлена AVR Studio в папке STK500, по умолчанию C:Program FilesAtmelAVR ToolsSTK500.
При запуске утилиты Upgrade она автоматически ищет программатор в диапазоне портов COM1-COM6 и если программатор при включении вошел в режим программирования утилита уведомит о том, что готова к обновлению рис. 16

Рис. 16

Для запуска процесса обновления необходимо нажать кнопку «Start Upgrade», после чего запустится процесс обновления. О завершении обнов-ления утилита известит соответствующим уведомлением.

Если по каким либо причинам обновление прошивки было прервано, необходимо повторить процедуру обновления.

Если по каким либо причинам обновление прошивки утилитой Upgrade невозможно воспользуйтесь утилитой AVR Prog п.1.

Таблица 1. Обозначение и функции выводов, используемых при программировании в параллельном режиме

Таблица 1

Таблица 2. Функции сигналов XA0 и XA1.

Таблица 2

Рис. 17

ATmega8515, ATmega8535, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164P, ATmega165,
ATmega165P, ATmega1650,ATmega169, ATmega169P, ATmega1690, ATmega32, ATmega324P, ATmega325, ATmega325P, ATmega3250, AT-mega3250P, ATmega329,ATmega329P, ATmega3290, ATmega3290P,
ATmega323, ATmega64, ATmega640, ATmega644P, ATmega645, ATmega6450, ATmega649, ATmega6490,
ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284P, AT90CAN32, AT90CAN64, AT90CAN128,
ATmega2560, ATmega2561, AT90USB162, AT90USB646, AT90USB647, AT90USB1286, AT90USB1287

Рис. 18

AT90S2333, AT90S4433, ATmega48(P), ATmega8, ATmega88(P), ATmega168(P), ATmega328(P)

Рис. 19

SCI-тактовый вход, SDO(PB2)-DATA0, SII(PB1)-DATA1, SDI(PB0)-DATA2
ATtiny11, ATtiny12, ATtiny13, ATtiny22, ATtiny25, ATtiny45, ATtiny85, ATtiny15

Рис. 20

SCI-тактовый вход, SDO(PA4)-DATA0, SII(PA5)-DATA1, SDI(PA6)-DATA2
ATtiny24, ATtiny44, ATtiny84

Рис. 21

XA1 подключается на PB2, BS2 не подключается
BS1 подключается на PB3, PAGEL не подключается
ATtiny26, ATtiny261, ATtiny461, ATtiny861

Рис. 22

XA1 подключается на PB2, BS2 не подключается
BS1 подключается на PB3, PAGEL не подключается
ATtiny2313

Кстати, если программатора у вас нет, а собирать лень, то вот тут можно прикупить вполне уже собранный.

Все вопросы как обычно в форум.


Как вам эта статья?

Заработало ли это устройство у вас?

Устройство:
Atmel STK500

Размер: 0,13 MB

Добавлено: 2014-05-03

Количество страниц: 2

Как пользоваться?

Наша цель — обеспечить Вам самый быстрый доступ к руководству по эксплуатации устройства Atmel STK500. Пользуясь просмотром онлайн Вы можете быстро просмотреть содержание и перейти на страницу, на которой найдете решение своей проблемы с Atmel STK500.

Для Вашего удобства

Если просмотр руководства Atmel STK500 непосредственно на этой странице для Вас неудобен, Вы можете воспользоваться двумя возможными решениями:

  • Полноэкранный просмотр -, Чтобы удобно просматривать инструкцию (без скачивания на компьютер) Вы можете использовать режим полноэкранного просмотра. Чтобы запустить просмотр инструкции Atmel STK500 на полном экране, используйте кнопку Полный экран.
  • Скачивание на компьютер — Вы можете также скачать инструкцию Atmel STK500 на свой компьютер и сохранить ее в своем архиве. Если ты все же не хотите занимать место на своем устройстве, Вы всегда можете скачать ее из ManualsBase.

Atmel STK500 Руководство по эксплуатации — Online PDF

Ознакомьтесь с подробным руководством пользователя для замечательного творения Atmel, модель STK500. Получите ценную информацию и инструкции, чтобы максимально использовать возможности вашего устройства и оптимизировать взаимодействие с пользователем. Раскройте весь потенциал своего устройства Atmel STK500 с помощью этого подробного руководства пользователя, в котором содержатся пошаговые инструкции и советы экспертов, которые сделают работу с ним легкой и приятной.

Печатная версия

Многие предпочитают читать документы не на экране, а в печатной версии. Опция распечатки инструкции также предусмотрена и Вы можете воспользоваться ею нажав на ссылку, находящуюся выше — Печатать инструкцию. Вам не обязательно печатать всю инструкцию Atmel STK500 а только некоторые страницы. Берегите бумагу.

Резюме

Ниже Вы найдете заявки которые находятся на очередных страницах инструкции для Atmel STK500. Если Вы хотите быстро просмотреть содержимое страниц, которые находятся на очередных страницах инструкции, Вы воспользоваться ими.

Работа с микроконтроллерами: прошивка программатором и чистый «Си»

В этой статье я расскажу о том, как программировать микроконтроллеры без использования Arduino. Мы будем использовать программатор AvrISP STK500 для программирования контроллера ATtiny84.

Нам понадобится

Подключаем питание

Arduino мы не используем, поэтому обо всем нам придется думать самостоятельно. И первое, с чем необходимо разобраться — питание. Мы будем использовать преобразователь L7805, обладающей следующими характеристиками:

  • Выходной ток до 1.5 А

  • Выходное напряжение — ровные 5 В

  • Защита от перегрева

  • Защита от короткого замыкания

Теперь нам надо узнать схему подключения этого преобразователя. Ее мы найдем на странице 3 даташита.

Помимо самого преобразователя, мы видим еще 2 конденсатора — входной Сi и выходной Сo. Входной конденсатор необходим для того, чтобы сгладить пульсации на входе в случае удаленности L7805 от источника. В нашем случае длина соединительных проводов не будет превышать 15 см, поэтому входного конденсатора у нас не будет. Зато будет выходной, поскольку мы хотим «кормить» наш контроллер стабильным питанием.

Распиновка

Необходимо знать назначение ножек преобразователя. Это описано на 2-й странице даташита.

Схема

С учетом всего вышеописанного, получается схема для организации питания.

Программатор

В качестве программатора мы использовали AvrISP STK500 от Seeed Studio. Для его работы под Windows и Mac OS необходимы драйверы. Их можно скачать с официального сайта. Пользователям Linux устанавливать ничего не нужно — программатор будет сразу готов к работе.

Подключение к контроллеру

Распиновка разъема программатора такова:
avr_isp.jpg

Важно!
Это распиновка разъема программатора, если смотреть на него сверху (отверстиями от себя). Не перепутайте!

Разъем программатора необходимо подключить к микроконтроллеру. Можно использовать как 10-пиновый разъём, так и 6-пиновый. Без разницы. Соединим проводами соответствующие пины, т.е:

10-пиновый ICSP ATtiny84
Reset 5 4
MOSI 1 7
MISO 9 8
SCK 7 9

Прошивка

Напишем код прошивки на чистом «C», которая заставит светодиод мигать. Использование ШИМ-сигналов и считывание аналоговых сигналов на чистом «C» не так тривиальна, и может являться темой отдельной статьи, поэтому остановимся пока на простейшем примере.

blink.c
#include <avr/io.h>
#include <util/delay.h>
 
int main(void) {
    // номер пина 2 в порту А -- на выход
    DDRA = 1 << 2;
 
    // основной цикл
    while (1==1) {
        _delay_ms(500);  // задержка 500 мс
        PORTA ^= 1 << 2; // инвертирование значения на выводе
    }
 
    return 0;               
}

После скетчей Arduino, код малопонятен, правда? Ничего, сейчас я объясню, что да как.
В первых двух строчках мы подключаем необходимые библиотеки, чтобы воспользоваться такими штуками, как DDRA, PORTA, _delay_ms.

Что же такое DDRA?
Это регистр микроконтроллера, управляющий направлением работы порта А. Он содержит в себе 8 бит. Если установить какой-то бит в 1, то пин с соответствующим номером станет выходом.

PORTA — тоже регистр, но он содержит в себе данные порта А. Если мы хотим на вывод номер 2 записать логическую единицу, то мы должны поместить 1 в соответсвующий бит регистра.

А _delay_ms — функция задержки.
Исходя из этого можно составить таблицу соответствия:

Arduino C
Направление pinMode(led, OUTPUT); DDRA = 1 << 2;
Значение digitalWrite(led, HIGH); PORTA = 1 << 2;
Задержка delay(1000); _delay_ms(50);

Однако, самым важным различием кода является то, что в программе на С нет разделений функций setup и loop. За все это отвечает функция int main(void). И она выполняется всего 1 раз! А мы хотим, чтобы наш светодиод моргал не один раз, а постоянно. Как раз для этого и используется бесконечный цикл while (1==1).

Поэтому легко сделать вывод, что этот цикл и есть аналог функции loop() в Arduino. А то, что до него — аналог функции setup().

Далее начинается самое интересное. Нам нужно скомпилировать и загрузить прошивку. Однако, в зависимости от вашей операционной системы, методика будет различаться.

Mac OS X

Первым делом необходимо скачать и установить CrossPack for AVR Development. Это даст нам все необходимые инструменты.
CrossPack состоит из двух частей.

  1. AVR Libc — a C library for GCC on AVR microcontrollers

  2. AVRDUDE — AVR Downloader/Uploader

Первая нам нужна для написания кода и создания файла прошивки, а вторая — для заливки прошивки в контроллер.

Проект создается в три шага.

  1. Запустите терминал

  2. Перейдите в нем в нужную папку

  3. Создайте проект с помощью команды avr-project

$ mkdir ~/AVR
$ cd AVR
$ avr-project firstProject
Using template: /usr/local/CrossPack-AVR-20130212/etc/templates/TemplateProject

В результате будет создано следующее дерево файлов.

$ tree
.
|-- firmware
|   |-- main.c
|   `-- Makefile
`-- firstProject.xcodeproj
 
1 directory, 3 files

На данном этапе нас интересует содержимое файла Makefile. В нем содержится информация о том, что вообще мы используем: какой контроллер, программатор. Это все описывается в строках с 20 по 24:

DEVICE     = atmega8
CLOCK      = 8000000
PROGRAMMER = #-c stk500v2 -P avrdoper
OBJECTS    = main.o
FUSES      = -U hfuse:w:0xd9:m -U lfuse:w:0x24:m

Пройдемся по строкам:

  1. DEVICE содержит в себе название контроллера, который мы программируем

  2. CLOCK — частота работы

  3. PROGRAMMER — используемый программатор

  4. OBJECTS — какие объектные файлы будут сгененрированы

  5. FUSES — конфигурация fuse-битов в микроконтроллере

Это автосгенерированный make-файл, поэтому нам необходимо вручную его подправить. Править будем строку DEVICE у нас же микроконтроллер attiny84 и строку FUSES. А вот с ней все сложнее.
Fuse-биты, или просто «фьюзы» — два (иногда три) особых байта, в которых содержится фундаментальая конфигурация работы контроллера. Очень важно правильно их задать.

Внимание!
Задание неверных fuse-битов может привезти к тому, что микроконтроллер перестанет работать и вернуть его к нормальной жизни может быть либо очень сложно либо невозможно!

Воспользеумся сайтом AVR Fuse Calcuator.

Сначала из выпадающего списка выберем нужный нам контроллер (ATtiny84).

И затем укажем необходимые опции, которые нам нужны. Сейчас для нас важны 2 вещи: сохранение возможности прошивать контроллер через SPI и сохранение его работоспособности без внешнего резонатора, поэтому выбираем соответствующие пункты, а остальные оставляем по умолчанию.

Видим, как поменялись сгенерированные значения.

Внесем изменения в Makefile.

DEVICE     = attiny84
CLOCK      = 8000000
PROGRAMMER = -c stk500v2 -P /dev/tty.usbserial
OBJECTS    = main.o
FUSES      = -U lfuse:w:0xe2:m -U hfuse:w:0xdf:m -U efuse:w:0xff:m

Прошивка

Она происходит в 2 этапа.

Сначала необходимо перейти в папку firmware и выполнить команду make. Если ошибок нет, то результат выполнения команды будет таким:

$ make
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny84 -c main.c -o main.o
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=attiny84 -o main.elf main.o
rm -f main.hex
avr-objcopy -j .text -j .data -O ihex main.elf main.hex
avr-size --format=avr --mcu=attiny84 main.elf
AVR Memory Usage
----------------
Device: attiny84
 
Program:     126 bytes (1.5% Full)
(.text + .data + .bootloader)
 
Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)

Эта команда сделает из нашего исходника main.c файл, пригодный для заливки в контроллер — main.hex.

Второй этап — как раз заливка прошивки. Делается это с помощью команды make flash. Ее нормальный вывод выглядит следующим образом:

make-flash-result
$ make flash
avrdude -c stk500v2 -P /dev/tty.usbserial -p attiny84 -U flash:w:main.hex:i
 
avrdude: AVR device initialized and ready to accept instructions
 
Reading | ################################################## | 100% 0.01s
 
avrdude: Device signature = 0x1e930c
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "main.hex"
avrdude: writing flash (126 bytes):
 
Writing | ################################################## | 100% 0.10s
 
avrdude: 126 bytes of flash written
avrdude: verifying flash memory against main.hex:
avrdude: load data flash data from input file main.hex:
avrdude: input file main.hex contains 126 bytes
avrdude: reading on-chip flash data:
 
Reading | ################################################## | 100% 0.08s
 
avrdude: verifying ...
avrdude: 126 bytes of flash verified
 
avrdude: safemode: Fuses OK
 
avrdude done.  Thank you.

Все, прошивка контроллера завершена.

Windows

Здесь все проще.

Первым делом необходимо скачать и уствновить среду разработки для AVR — Atmel AVR Studio 4. А вторым — Atmel AVR Toolchain.

После запуска среды, необходимо создать новый проект.

Затем указать имя, расположение и то, что мы хотим использовать С (GCC).

Третий шаг — настройка отладчика.

На этом все, проект готов к использованию.
Теперь необходимо написать и сохранить исходник, который мы уже обсудили.

В результате общий вид среды разработки выглядит вот так:

Теперь необходимо подключиться к программатору. Делается это с помощью нажатия на кнопку con.

В качестве Platform выбираем STK500, а в PortAuto. Затем нажимаем Connect.

Если все правильно, то в открывшемся окне выбираем вкладку Main и нажимаем в ней на кнопку Read Signature.

Строка Reading signature from device .. 0x1E, 0x93, 0x0C .. OK! говорит о том, что все хорошо и сигнатура успешно прочиталась. Сигнатура — это своего рода позывной микроконтроллера, которым он сообщает собственную модель.

Это окно нельзя закрывать, иначе соединение с программатором будет потеряно. Просто сверните его.

Теперь нажмем Build → Build. Это заставит программу скомпилироваться.
Прошьем контроллер с помощью кнопки Write Flash Memory Using Current Settings — это заставит скомпилированную программу загрузиться в память микроконтроллера.

Заключение

Мы собрали простейшее устройство мигалку, но сделали это на низком уровне. С использованием программатора и «продвинутой» среды разработки, а не Arduino.

Разобравшись в премудростях программирования микроконтроллеров на чистом «Си», вы сможете выжимать из них максимум возможности, затрачивая при этом минимум места и денег.

Понравилась статья? Поделить с друзьями:
  • Asus transformer pad tf300tg прошивка через пк инструкция
  • Кетопластин пластырь инструкция по применению отзывы
  • Нутрисол удобрение инструкция по применению для помидор
  • Градиа пломбировочный материал инструкция по применению
  • Конкорд инструкция по применению цена отзывы аналоги таблетки цена