11
Съкращения uCU (MicroController Unit) AVR Atmel AVR Studio ISP (In-System Programming) ProgData ProgCtrl UART (Universal Asynchronous Receiver-Transmitter) SPI (Serial Peripheral Interface) ADC (Analog-To-Digital Converter) PWM (Pulse-Width Modulation) Jumper LED (Light-Emitting Diode) DIP (Dual-In-Line) JTAG (Joint Test Access Group) едночипов микроконтролер (ЕЧМК) фамилия 8-битови uCU на фирма Atmel фирмата-производител на този ЕЧМК интегрирана програмна среда за uCU на фирма Atmel вътрешно-системно програмиране, т.е. без чипът да се изважда от цокъла конекторна рейка за предаване на данни за програмиране конекторна рейка за предаване на управляващи сигнали за програмиране Универсален асинхронен приемо-предавател сериен (синхронен) периферен интерфейс АЦП - аналого-цифров преобразовател ШИМ - широчинно-импулсна модулация съединително мостче между крачета на изводна рейка светодиод тип корпус на ИС с двуредни изводи и стъпка между изводите 2,54 мм интерфейс и метод за вътрешно-чипово тестване/управление Система за проектиране (Kit) STK500 на фирмата Atmel

Система за проектиране

Embed Size (px)

Citation preview

Page 1: Система за проектиране

СъкращенияuCU (MicroController Unit)AVRAtmelAVR StudioISP (In-System Programming)

ProgDataProgCtrlUART (Universal AsynchronousReceiver-Transmitter)SPI (Serial Peripheral Interface)ADC (Analog-To-Digital Converter)PWM (Pulse-Width Modulation)JumperLED (Light-Emitting Diode)DIP (Dual-In-Line)JTAG (Joint Test Access Group)едночипов микроконтролер (ЕЧМК)фамилия 8-битови uCU на фирма Atmelфирмата-производител на този ЕЧМКинтегрирана програмна среда за uCU на фирма Atmelвътрешно-системно програмиране, т.е. без чипът да се изважда от цокълаконекторна рейка за предаване на данни за програмиранеконекторна рейка за предаване на управляващи сигнали за програмиранеУниверсален асинхронен приемо-предавателсериен (синхронен) периферен интерфейсАЦП - аналого-цифров преобразователШИМ - широчинно-импулсна модулациясъединително мостче между крачета на изводна рейкасветодиодтип корпус на ИС с двуредни изводи и стъпка между изводите 2,54 мминтерфейс и метод за вътрешно-чипово тестване/управление

Система за проектиране (Kit) STK500 на фирмата Atmel

Page 2: Система за проектиране

Блокова схема на системата за проектиране STK500Фиг. 1. Блокова схема на развойната система STK500Основни характеристики на системата STK500:•••••••••••два вградени интерфейса RS-232 - системен (връзка с ПК) и потребителскипоследователен метод за ISP на микроконтролери AVRвъзможност за ISP на микроконтролери AVR от външни целеви микропроцесорни системипаралелно и серийно високоволтово програмиране на AVR устройства8 бутона и 8 светодиода за използване от потребителяулеснен достъп до изводите на всички AVR I/0 портоведопълнителни гнездови съединители за свързване на разширителни (Plug-in) платкипамет Flash с обем 2 Mbцокли за ИС с 8-, 20-, 24- и 40-изводни корпуси тип DIPгъвкава система за пренастройка на честотата на системния тактов генератор (clk), захранващотонапрежение и типа за рестартиране на uCUминималните програмни и апаратни системни изисквания за нормално използване на STK500 сапроцесор Pentium, AVR Studio, операционна система Windows, сериен (COM) порт RS-232,захранващо напрежение от 10 до 15V DC с товароспособност минимум 500 mA.Описание на апаратната частКит STK500 включва като потребителска периферия осем жълти светодиода и осем бутона. Те могат дабъдат свързани с 10—жилен кабел към съединителните рейки за I/0 портове на AVR устройствата (фиг. 4, стр.1). Кабелите не трябва да се усукват, за да не се окажат кръстосани битовете на I/0 портове и номерацията

Page 3: Система за проектиране

на периферните ресурси (светодиоди и бутони). За целта маркираният проводник от кабела трябва да сеориентира към изводите с цифра 1 от двете подлежащи на свързване I/0 рейки върху платката.Схема за управление на потребителските светодиодиСхемата за управление на светодиодите е показана на фигура 2. Въпреки, че товароспособността наСветодиод LEDх свети , когато на извод LEDx се приложи логическо ниво 0изводите на AVR е достатъчна за пряко захранване на светодиодите, в STK500 се използва по-сложнорешение с един транзистор и два резистора. Това решение е избрано, за да се осигури еднакво количествосветлина на излъчване, независимо от стойността на захранващото напрежение (VTG) на целевотоустройствоa в работния обхват 1.8V - 6.0V. Схемата, освен това, осигурява изключване на светодиодите принеподадено VTG.когато извод LEDx=0, то LEDх светинатискане на бутон nподава 0 на извод SWnФиг. 2. Схема за управление на светодиодите и Фиг. 3. Схема за свързване на потребителските бутониразположение на изводите в съединителната рейка и разположение на изводите в съединителната рейкаСхема за свързване на потребителските бутониСхемата за свързване на потребителските бутони е показана на фигура 3. Натискането на бутон SWx смъква до нула нивото на сигнала върху съответстващия му извод SWx от съединителната рейка, докато отпускането му подава високо напрежение към същия.В схемата на STK500 е добавен външен изтеглящ (pull-up) резистор 10K (10 кΩ), поддържащ логическа “1” наSWn, когато бутонът е отпуснат. Това е в сила за пълния обхват на работното напрежение между 1.8V и 6V.Резисторът 150R (150 Ω) ограничава тока, протичащ през съответния извод на AVR и за двете положения набутона.Свързване на светодиоди и бутони към съединителните рейки заВ/И портовеВсеки порт на AVR може да бъде свързан към светодиодите и бутоните чрез използване на 10-жилни кабели(вж. фиг. 4, стр. 1). Освен линиите за данни, на съединителните рейки са изведени захранващото напрежениеVTG и логическата маса GND.Съединителни рейки за изводи на портоветеРазположението на изводите в съединителните рейки, свързани към портовете за I/0, е показано на фигура 5.С квадратче е маркиран извод 1.Фиг. 5. Разположението на изводите всъединителните рейки за зададен В/И PORTхФиг.6. Разположението на изводите всъединителните рейки за В/И PORTE / AUX

Page 4: Система за проектиране
Page 5: Система за проектиране

Поле с цокли за програмиране за целевия микроконтролерТова поле от платката (фиг.11) съдържа осем цокъла, разположени в белия участък в средната част на кита.В тях се поставят ИС за AVR, които ще се програмират и използват в приложението. Забележка: при поставяне на ИС в този участък на платката следва задължително да се спазват двете изброени по-долу условия: 1. Във всеки момент само един цокъл в белия участък на платката може да бъде зает от поставен в него чип AVR. 2. При поставяне на чип в цокъл е нужно да се съблюдава ориентацията му, а именно: чипът трябва да се постави в цокъла ориентиран с маркера си към страната с прореза в цокъла. Забележка: Ако горните условия не се спазят, e възможно да се повреди чипа и/или кита. Фиг.11. Поле за програмиране на AVR в STK500 Това поле съдържа целевия AVR, предназначен за препрограмиране и последващото му използванев текущата версия на разработваната приложна система.Гнездови съединители за разширенияКит STK500 има (фиг. 12) два допълнителни гнездови съединители - Expansion Header 0 и Expansion Header 1- разположени от двете страни на областта за програмиране, които служат за свързване на допълнителниразширителни платки към кита. През тях се маршрутизират сигналите на всички В/И портове на AVR,включително и тези за програмиране и управление (фиг. 13 и фиг. 14).Описание на сигналите сигнали AUXI1, AUXI0, AUXO1, and AUXO0 са резервирани за бъдеща употреба. Тези сигнали не бива да се свързват към потребителско приложение.• сигнали DATA[7:0] и CT[7:1] се използват и в съединителни рейки Prog Data и Prog Ctrl. Тези сигнали са описани в следващия раздел.• сигнал BSEL2 е същият, който е изведен на джъмпера BSEL2.• Сигнали SI, SO, SCK и #CS са свързани към паметта DataFlash, описана по-горе.Съкращението NC означава, че този извод не е свързан. Останалите сигнали са същите, които са описани засъединителни рейки PORTх.

Page 6: Система за проектиране

Фиг.12. Гнездови разширителни съединители (Expansion Header 0 и 1) за свързване на допълнителни платкиФиг.13 Схема на изводите на разширителен куплунг 0 Фиг.14 Схема на изводите на разширителен куплунг 1Съединителни рейки Prog Ctrl и Prog DataСъединителни рейки Prog Ctrl и Prog Data се използват при високоволтовото програмиране на целевия AVR.Разположението на съединителните рейки е показано на фигура (фигури 15 и 16). По време на паралелнотовисоковолтово програмиране, сигналите Prog Ctrl се маршрутизират към PORTD на целевото устройство.Сигналите Prog Data се маршрутизират към PORTB.Забележка: съединителни рейки Prog Ctrl и Data са свързани направо към главния uCU, управляващ кита,без преобразуватели на напреженовите им нива. Тези сигнали са съвместими с 5V логика.Фиг.15. Разположение на изводите в съединителни Фиг.16. Разположение на изводите в съединителнирейки Prog Ctrlрейки Prog Data

Page 7: Система за проектиране

Сигнали Prog Ctrl обикновено намират приложение като управляващи сигнали при паралелно високоволтовопрограмиране на AVR устройство.Сигнали Prog Data се използват от шината за данни, когато се прилага паралелно високоволтовопрограмиране на AVR. При ISP програмиране, сигналът DATA5 се използва като MOSI, сигналът DATA6 –като MISO и сигналът DATA7 се използва за SCK.Допълнителни функционални устройстваКит STK500 има два бутона за специални цели и три светодиода за статусна индикация. Фигура 17 представяразположението им върху платката.Фиг.17 Бутони със специални функции и статусни светодиодиБутон RESETБутонът RESET служи за рестартиране на целевия AVR. Главният микроконтролер не се управлява от тозибутон. Бутон RESET не е активен, ако джъмпер RESET не е поставен.Бутон PROGRAMБъдещите версии на AVR Studio могат да изискват актуализиране на програмата на главния микроконтроле вSTK500. Ако при стартирането си AVR Studio разпознае като стара версията на софтуера в STK500, тогава тоще поиска да актуализира Flash паметта на главния микроконтролер, като прикани потребител да задържинатиснат бутон PROGRAM в момента, когато се подава захранване към STK500.Светодиод Main PowerКогато към STK500 е подадено захранващо напрежение, червеният светодиод е активен.Светодиод Target PowerСветодиодът за състоянието на потребителското захранване, свързан към VCC линиите (VTG) от цоклите напотребителските AVR, свети винаги, когато към тях е подадено нужното захранващо напрежение.Статусен светодиодСветодиодът PROGRAM е трицветен. През време на програмиране той свети жълто. Когато потребителскиятAVR е програмиран успешно, той става зелен, докато при неуспешно програмиране, той е червен. По времена стартирането, статусният светодиод променя цвета си от червен през жълт до зелен, индицирайки, чеглавният микроконтролер е готов за работа.

Page 8: Система за проектиране

Първи програми за система STK500:А) Скелет на програма на асемблер:Копирайте в AVR Studio следната програма и я компилирайте. Преди да я стартирате, свържете с 10-жиленкабел PORTB към рейката за светодиоди.include "m8515def.inc".orgrjmp.orgrjmp0reset$20resetreset:Б) Програма за управление на светодиодите от развойната система:.include "m8515def.inc"; файл, подготвен от Atmel, с дефиниции за използвания ЕЧМК (mega8515.);***** Инициализация на регистрите от микроконтролера, използвани в програматаRESET:; Инициализация на два регистъра от В/И порт за управление на светодиодите:seroutr20DDRB,r20; Записване на единици в 8-те бита на указания регистър (r20); Изпращане на единиците в регистър DDRB = Конфигуриране на; 8-те В/И извода на порт PORTB като ИЗХОДИ (OUTPUT); $55 = 16-чно число "55", което е двоичното 0101 0101 (бит 7 е0); Изпращане на $55 в PORTB = Светодиодите светят през един (7-ят свети)Копирайте в AVR Studio следната програма и я компилирайте. Преди да я стартирате, свържете с 10-жиленкабел PORTB към рейката за светодиодиldi r20,$55out PORTB, r20LOOP: nop rjmp ; "Задачата" е "No OPeration" = Празна инструкцияLOOP ; Вечен цикъл за повторение на празна инструкция: ; светодиодите се оставят завинаги в същото състояниеВ) Програма за сканиране на бутони и управление на светодиодиКопирайте в AVR Studio следната програма и я компилирайте. Преди да я стартирате, свържете с 10-жиленкабел PORTB към рейката за светодиоди и с 10-жилен кабел PORTD към рейката за комутатори.Светодиодите ще светят по различен начин в зависимост от натиснатия бутон. ;***** управление на светодиоди и сканиране на бутони в STK500 .include "8515def.inc" .def Temp =r16; Временен регистър .def Delay =r17; променлива Delay 1 .def Delay2 =r18 ; променлива Delay 2 ;***** Инициализация RESET: ser Temp out DDRB, Temp; установяване на PORTB като изход ;**** Тестване на входния порт и управление на изходния порт LOOP: out PORTB, temp; Актуализиране на LEDs по съдържанието на temp sbis PIND, 0x00; Ако (Port D, pin0 == 0), тогава inc Temp; temp се намалява с 1 sbis PIND, 0x01; Ако (Port D, pin1 == 0), тогава dec Temp; temp се увеличава с 1

Page 9: Система за проектиране

14

Технически колеж – Ловеч

Катедра: КСТ

Протокол 3

Студент: Йорданка Иванова

III курс фак. 080436

Тема: „Система за проектиране STK500 на фирма Atmel”

Изготвил: ……………../Йорданка Иванова/

Дата: 07.03.2011г. Проверил:…………… /инж.А.Хинова/