Ще предам фърмуера за AVR. Основи на AVR микроконтролерите програмен музикален екран - прост вириб за начало

Ос и задаване на час за първия фърмуер. Qia фърмуер е тест. Няма нужда да разваляте zhodnykh korishnykh diy, освен да треперите с алгоритъма за пеене. С помощта на фърмуера е възможно да се преразгледа валидността на целия микроконтролер и порта на въведения към vivod zokrem.
За да преконфигурирате микроконтролера, трябва да инсталирате фърмуера и да се изненадате да го видите на устройствата. Можете да се "чудите" или с мултицет, или с обикновена сонда - svitlodiodno с резистор 300 Ohm - 1 kOhm. Без резистор не е възможно да го смените - възможно е да изгорите входно-изходния порт. Сигналите Rivni на по-ниските склонове се променят от "1" през "Z" -stan до "0" и обратно. "Z" stan се въвежда в серийния порт, за да контролира изхода на порта във входен режим.

Тествайте фърмуера за микроконтролера ATMega48 / 88/168.
Алгоритъм за отчитане на роботизирания фърмуер ATMega48 / 88/168 върху изображенията (микроконтролер на инсталации в описанието по-рано).

Микроконтролерът е точно от вътрешния генератор, така че не е лесно да използвате най-новия кварц. Nіzhki 9 и 10 (свързани със звънящия кварц) не се връщат назад, защото там се появява звънещият кварц. Също така, той не удря дъното 1 (плъзгане) и 21 (референтното напрежение за ADC). Има два начина да преразгледате статуса на приемане (божествени малки) - да се чудите на промяната на сигналите от земята (GND) или нисък живот (VCC).
- Тествайте фърмуера за ATMega48 / 88/168

Flash микроконтролер Yak>


Тествайте фърмуера за микроконтролера ATtiny2313.
Алгоритъм на роботизирания фърмуер ATTiny2313 за показания на изображения (микроконтролер на инсталации, описани по-рано).

Микроконтролерът работи от вътрешния генератор; Нижки 4 и 5 (свързани с най-новия кварц) не попадат в категорията, ако там се появи най-новия кварц. Също така не боли nіzhka 1 (подхлъзване). Има два начина да преразгледате качеството на услугата – да бъдете изумени от промяната в сигналите от земята (GND) и ниско напрежение (VCC).
- Тествайте фърмуера за ATTiny2313

Flash микроконтролер Yak>


Тествайте фърмуера за микроконтролера ATTiny13.
Алгоритъм на показанията на роботизирания фърмуер ATTiny13 върху изображенията (микроконтролер на инсталациите в описанието по-рано).

Микроконтролерът работи от вътрешния генератор (обаждането е страхотно за микроконтролера, невъзможно е да се види). Очевидно не е негър 1 (подхлъзване). Ревизията на патронажа е сама по себе си, както при микроконтролерите на преден план.
- Eustova фърмуер за ATTiny13

Flash микроконтролер Yak>


Преразглеждане на оригиналното "Z"


Станцията "Z" - станция, ако не е конфигурирана за вход и в същото време (въобще не е свързана). За да проверите външния вид на такава мелница, можете да ускорите набиране на резистор. Когато е равно на "1", ще има напрежение от + 5v на дайлера; ако е равно на "0", земята ще бъде 0v, а ако "Z" - портът за въвеждане-освобождаване няма да участва в работа на дайлера и ще се добави към доставката на жизненост и ще приемем +2.5v.

ФАЙЛ:
- Джаджи на тестов фърмуер

(Посетен 18 359 пъти, 4 посещения днес)

  • Памет за програми (FLASH) - 1Kb
  • RAM - 64 байта
  • Брой входове/изходи - 6
  • Виходив ШИМ - 2
  • Аналогови входове (ADC 10bit) - 4
  • Таймер 8 бит - 1
  • Захранващо напрежение 1.8 - 5.5V
  • Работна честота - до 20MHz
  • Живеене в активен режим 1.8V / 1MHz - 190mkA
  • Спящ режим 1.8V / 1MHz - 24μA

Програмиране на ATtiny13

За програмата ще конфигурирам Arduino IDE междинния софтуер. Yak vidomo, средата на розетката може да се добави към контролерите. Например, в tsy stattyОтворих го като програма в Arduino IDE "people's WiFi" ESP8266. На сайта arduino.cc е gilka, програмата ATTiny13 е публикувана близо до средата на Arduino. Имам инсталирана версия 1.6.5. Ще добавя ядрото ATTiny за архива на Arduino. Ще го разопаковам в папката c: \ Program Files (x86) \ Arduino \ хардуер \ и в Arduino IDE има допълнителни плащания

Сега заплетени програми. Паметта на микропроцесора е само 1Kb и няма място за нея. Заплетената скица се изпълнява от програмиста чрез ISP. USBAsp, тъй като не исках да програмирам Atmega328. Необходим е специален фърмуер на програмиста, за който не исках да се обръщам. Програмата за микроконтролер е достъпна за помощ, било то Arduin. За други избирам следната схема:

В Arduino IDE избирам "File-> Zrazki-> ArduinoISP" и добавям скицата на програмиста към Arduino. След това избирам "Инструменти-> Програмист-> Arduino като ISP". Сега можете да добавите скици към вашите тийнейджъри. Slide означава, че ядрото ATTiny13 за Arduino разкрива набор от функции на Arduino.

На робота имам монтиран на стена обръч с помощниците

При ялинците имаше 12V халогенна крушка и мотор, който можеше да върти цветния кръг-филтър, който можеше да върти цветния кръг на излъчвателите. За 3 скали умря и крушка и мотор.

Axis I и Virishiv извеждат ялинка с малко RGB-линии на kerovano ATtiny13. Знанието за керуването по линията беше както следва:

три транзистора и резистора, регулатор на мрежово напрежение и захранване.

Скица є със софтуерен триканален PWM поради промяна в яркостта през малките канали, в резултат на което линията блести с малки цветове.

Ако искате да се отървете от него, не е нужно да оправяте таксата и реда в калъфа за ялинка

Biliy скоч тиксо за свиване на видимостта на светлината в средата на кутията.

Гърди 2015 стр.

1. Преодоляване на предлагания начин

Схемите на приложения на микроконтролери (MK) им позволяват да видят две важни качества: максималната простота и висока функционалност. Дотогава функционалността може да се променя и разширява без никакви промени във веригата - просто я заменете с програми (мигане). Трябва да се обясни, че създателите на съвременния MC са се опитали да разпределят всичко на един кристал, което може да бъде известно на търговеца на електронно разширение - вземете думата, доколкото е възможно. В резултат на това беше направена промяната в акцента от схеми и редактиране към софтуер. Победоносните МК вече са по-малко склонни да "навантажират" схемата с детайли, между компонентите, които са все по-малко. Трудно е да се развали схемата по-трикова за многократни повторения както от юноши, така и от електронни кочани. Але, искаш да платиш за всичко. Тук също не е без сгъването. Ако купите нов MK, го поставете в правилната селекция от референтните детайли, схемата на данъчно облагане, тогава нищо няма да бъде намерено - pristіy не pratsyuvatime. Микроконтролерът се нуждае от програма.

В миналото всичко е просто - в интернет е възможно да се инсталират безсилни схеми с незашит фърмуер. Но тук има един проблем: фърмуерът трябва да бъде "качен" в микроконтролера. За тези, които не са се занимавали с него преди, това също често се превръща в проблем и основният фактор, когато се види, не е лесно да се сетите за него поради победоносността на MK и идеята за създаване на схеми за "розови" и логистични. Aje, всичко не е толкова спретнато, както можете да получите на пръв поглед.

След като анализираме публикациите в интернет, може да се отбележи, че проблемът се вижда най-често от един от двамата благородници: закупуване на готов програмист или подготовка на самостоятелно направен. С цяла схема от самостоятелно изработени програмисти често е нереалистично да я публикувате, по-сгъваема е, но не е наистина необходима. Zvychayno, yakshto perebachatsya shodnya proshivati ​​MK, скрита майка "готин" програмист. Ако нуждата от такива процедури е рядка, час по час, тогава е възможно да се направи без програмист. Не, хитро, не се занимавайте с онези, които вероятно ще бъдат ограбени от силата на мисълта. Да разчитаме на уважение е разумно, тъй като е да видим взаимодействието на програмиста с микроконтролера при запис на това отчитане на информация в режима на програмата, можем да го направим с помощта на широк набор от функции. Вероятно е замяна както на програмата, така и на хардуерната част на програмиста. Хардуерната част е виновна за осигуряване на физическите данни от микросхемата MC, възможността за подаване на логически параметри към първия вход и към правилните данни от втория вход. Софтуерната част може да предостави на робота алгоритъма, който изисква необходимите процеси. Показателно е и това, че ще запиша информацията в МК, за да не се забиват заради факта, че имаш програмист. Такова разбиране, като "красиво написано" чи "гирше" не се разбира. Є лишава две опции: "записано" и "незаписано". Ще се опитаме да запишем средата на кристала от самия MC, без да е необходимо да го обработваме. Необходимо е да ви лишим от възможността да се уверите, че не искате да можете да се справите (има превключване към пулсацията) и да организирате правилно интерфейса. Ако резултатите от контролното четене на помилванията не са разкрити, тогава всичко може да бъде наред.

За да запишем програмата в програмата MK, без да чакаме програмиста, ще трябва да пренапишем USB-RS232TTL порта, както и. Преобразувателят USB-RS232TTL позволява допълнителен USB порт за отваряне на COM-порт, който може да се види от „десния“, но на тата „). Такъв преобразувател е при користична майка в "щата", за това като си още тъп, не е рядкост при теб. Но има логични причини, тогава в нашия TTL vipad - няма нужда да навигирате през порт пред специален COM-порт, така че ако въведете такъв порт, можете да се свържете без секунда с всеки микроконтролер, който може да живее като само 5 V. Ако не, не мърдайте стандартния COM-порт - има лоши пружини в интервала от -12 до +12 V (или -15 ... + 15V). Bezposredn z'єdnannya с микроконтролер във всеки vipad е неприемливо!

Идеята за корена на скрипта за програмите "Perpetuum M", който изпълнява функцията на програмиста, е обявена от обявяването на редица публикации в Интернет, тъй като те прокламират тези решения за фърмуера MK. В кожните лезии се появиха сериозни непълни и поразителни гънки. Схемите на програмистите често се проследяваха, за да си отмъстят на микроконтролера и в същото време им беше достатъчна радостта от превключването: „... и ние трябва да програмираме микроконтролера за програмиста... точно така – първият програмист!". Dalі proponuvalosya отидете при приятел, шега платена услуга е твърде тънка. Качеството на софтуерната защита, която се разпределя в рамката за цялата цел, също не противоречи - нямаше проблеми, както по отношение на функционалността, така и в интерфейса "kalamutnist" на corystuvach. Най-често е необходима жизненост, интелигентност, като победна програма - и е необходимо да се посети за най-простите неща. Много е трудно да се работи с програмата, но ако не се регистрирате в MC, ще знаете само когато целият фърмуер е завършен и офанзивната проверка е завършена. Има такъв проблем: това е проблем: достатъчно е да вибрира в списъка с кристали, така че е възможно да го получите, но не е в списъка. Програмата не се вписва в програмата веднага щом списъкът е включен в списъка, като правило не е прехвърлен. Освен това ръчната вибрация на контролера от списъка на зрителите е чудесна, като врахуват, но програматорът за бъги версии може да е от самия тип МК. Всичко това не е казано с цел изливане на локва върху продукта, а с цел обяснение на причината скриптът да се появи пред програмите "Perpetuum M", която е описана в статистиката. Проблемът е разумен и трябва да бъдете пред новодошлите, които не очакват да се поддадат на малко „стил“, за да можете да отгледате първия си клин в средата на микроконтролери. Собственият скрипт има някои недостатъци и някои програми. Реализирана е максималната „различима“ на роботизирания алгоритъм, граничният прост интерфейс на koristuvach, което не означава, че е възможно да се изгубите и да не се изгубите там. За продължителността на необходимия МК в средата на изготвените, можете самостоятелно да го добавите към описанието, като вземете необходимите данни от документацията, заключена от сайта на търговеца на МК. I, naygolovnishe - скрипт за проверка и промяна. Кльощавите могат, като са показали в текстов редактор, вивчат и управлявани от властите, да променят за своя вкус съществуващите функции и допълнително недостатъци.

Първата версия на сценария беше изхвърлена от сърцето на 2015 г. В тази версия са внедрени само серията Atmel MC ATtiny и ATmega с функции за запис/четене на флаш памет, задаване на конфигурационни битове и автоматично присвояване на типа контролер. Записването и четенето на EEPROM не е реализирано. Bully планира да добави функционалност към скрипта за четене на EEPROM, внедряване на PIC контролери и т.н. Реализираните функции изглеждат неадекватни, моля да не се смущавате.За всеки проблем можете да опитате сами да добавите необходимата функция. Можете да направите робота MK по-интелигентно в програмния режим, така че да не се озовете в лагера на селото пред колата, а да мислите, да гледате замислено вътрешностите му, а не да разсъждавате защо „не тръгвайте“ .

2.Интерфейс MK като програма

Има decіlkka различни начинипрехвърлете контролера в режим на програмиране и в правилния режим. Лесен за изпълнение за ATtiny и ATmega, Mabut, SPI контролери. Него и бързо.

Ale, както виждам сигналите, изисква се SPI, разбити са редица бариери. Микроконтролерът може да конфигурира удари. Има цена за превключватели, смесване, които позволяват промяна на мощността на микросхемата според нуждите на проекта. Физически, средата на паметта за съхранение на енергия, е много тиха, при която програмата се записва. Причината е, че е твърде малък (до три байта за ATmega) и зловонието не влиза в адресното пространство, било то в паметта. Записването и четенето на атрибутите за конфигурация се показват с помощта на командите към режима на MC програма. Важно е да се зарази, че действията по конфигуриране на животите са инжектирани в силата на SPI викторианец. За стойността на пеенето можете да видите, че SPI не може да бъде победител. Ако имате такъв микроконтролер, тогава методът, който ще бъде разбран в статистиката, няма да помогне. В края на деня ще бъде възможно да се промени конфигурацията на конфигурационните битове на програмиста, които адаптират режима на програмата, или победоносния микроконтролер. Ale tsya проблем е да се срамувам от това е тихо, hto да бъде на имплантиране на MK, или тихо, недалеч от това да бъде "пасен". Отдясно във факта, че новият MK е снабден с коригираните конфигурационни битове, но не и SPI викториански. Ще бъдем потвърдени от резултатите от vip-теста на скрипт-програматора за програмите Perpetuum M, преди часа на който бяха успешно мигани були с чотири на MK (ATmega8, ATmega128, ATtiny13, ATtiny44). Усилие смрад були нов. Початкова, задавайки конфигурационните битове, изобрази документацията и не получи SPI викторианския.

Зважаючи на казаното вище, уважавам зверовете на такива зверове. Бит SPIEN в очевиден вигляд е разрешен, или за оградата на SPI викторианец, тъй като нашето има смътно значение, но е вирисално. Старият бит RSTDISBL преконфигурира една от микросхемите от микросхемите (увеличени в увеличение) на входа на сигнала "заплъзване", в противен случай не трябва да се преконфигурира (стойността, записана в целия бит). В нашия vipadku въвеждането е необходимо "плъзгане" (за всеки даден момент е невъзможно да се прехвърли MK в програмен режим чрез SPI). Проверете битовете на групата CKSEL, за да настроите часовника на dzherelo. Смънката не надделява над SPI победите, но е необходима и за майките, защото когато има импулси на часовника, ако честотите са по-ниски от допустимите за дадена скорост на SPI, това също не е добре. Обадете се на нови MK, може да има вътрешен RC-генератор, много от групите CKSEL настройват вашия виктор. Ние сме от все сърце влащовuе - обезпечаване на тактване без допълнително зусил от наша страна. Не е запоен кварцов резонатор, не е необходим външен генератор. Също толкова важно е да си отмъстите за начина, по който е коригиран, да получите съвет за тактиката чак до начина, по който е коригиран. В същото време можете да свържете кварцов резонатор към MK на кварцов резонатор или часовников осцилатор. Alle, в рамките на статистиката не се забелязва, както е насочено. Прикачете MK връзката за програмата, така че да може да бъде включена в статистиката, предоставена за най-простия тип.

Малък. 1. Обмен на данни от SPI в програмен режим

Сега се захранва към malunky 1, взето от документацията на ATmega128A MK. При нови индикации процесът на прехвърляне на един байт от MK і едночасово приемане на един байт от MK. Нарушение на процеса, като bachimo, vikoristovuyut един от същите импулси на часовника, като от програмиста към микроконтролера от входа SCK - един от микросхемите, който в режима на програмата според такъв SPI се показва. Други две сигнални линии ще гарантират, че се получава предаването на почит, един бит на часовник. Чрез MOSI входа данните се изпращат към микроконтролера, а MISO входът се използва за познаване на данните, които трябва да бъдат прочетени. Фатално уважение на две пунктирани линии, държани от SCK до MISO и MOSI. Миризмата да се покаже, ако микроконтролерът "ковта" показва на входовете на MOSI bit danihh, и ако на самия микроконтролер на входа на MISO се дава бит даних. Лесно е да завършите всичко. Позволете на MC да влезе в режим на програмиране, ние все още знаем сигнала RESET. Не забравяйте също за GND проводника и VCC под напрежение. Сигнал за влизане, преди микроконтролера за SPI фърмуера, трябва да свържете всичките 6 проводника. По-долу ще вземем лекциите и докато dodamo, при обмен на данни от MC в програмния режим SPI, те ще се показват в пакети от 4 байта. Първият байт от скин пакета не е важен за въвеждане преди командния код. Другият байт се съхранява в първия, може да е код за разширена команда, или част от адреса, или може би по-значима стойност. Третият байт се използва за прехвърляне на адреса, но за други команди може да бъде по-значим. Четвърт байта позволяват прехвърляне на данни или дори повече стойност. Инструкции от прехвърляне на четвъртия байт от действията на екипите за получаване на данни, като например от MK. Подробностите за командата на кожата могат да бъдат намерени в документацията на контролера в таблицата под името "SPI Serial Programming Instruction Set". Досега целият обмен с контролера на стимулите се базира на последните 32-битови пакети, от скина на които се предават три повече от един байт корианска информация. Цената не е дори по-малко оптимална;

3. Свързване на МК за програмата

За да се гарантира, че всички необходими сигнали за организиране на SPI интерфейса се подават към входовете на микроконтролера и че данните се четат от MISO входа, програматорът не е необходим. Лесно е да получите помощ за допълнителния USB-RS232TTL конвертор.

В Интернет често е възможно да се подреди информация за онези преобразуватели, които са нерентабилни, но с тях не е възможен сериозен растеж. Има много модели преобразуватели като dumka є pomilkovoy. И така, има преобразуватели за продажба, за тези, които не са налични, всички те идват със стандартен COM порт (например само TXD и RXD), но в същото време дизайнът не е непокътнат (микросхемата е пълна с пластмаса между другото - не е възможно) Ale takі y kupuvati не е varto. В някои случаи е възможно да се коригира ежедневният вход и изход към порта чрез преминаване на окабеляването, без да се дава приоритет на микросхемата. Закрепването на такъв "добре износен" преобразувател е показано на малко 2 (микросхема PL-2303 - доклад за разпознаването на "посетителя"). Tse един от намерените модели, ale на моите perevagi във vicoristan в самоделни конструкции. Широко разширени и многофункционални адаптерни кабели със стандартна роза с девет изводи в края, като COM порта. От змийския COM порт вонята изглежда е лишена от TTL нива и безумна заради стар софтуер и притежания на стари хора. Възможно е между другото кабелите на микросхемата CH34x в последните екстремни тестове да се покажат много по-високи и стабилни на PL-2303. При злобния викторианец обаче разликата не е пъпчица.

Когато избирам USB-RS232TTL конвертор, трябва да отдам уважение и към лудостта на този драйвер с версията на операционната система, за да можете да победите.

Ясно представяне на принципа на използване на микроконтролер и USB-RS232TTL конвертор при приложението на някои други модели MK: ATtiny13, ATtiny44, ATmega8 и ATmega128. На малко 3 показва фалшива схема на такова z'єdnannya. Може да успеете да видите, че RS232 сигналите (RTS, TXD, DTR и CTS) не са победители. Не е въпрос на турбуленция на проблема: програмата "Perpetuum M" е достатъчно добра, за да работи с тях без нужда от средна - да задава стойностите на входовете и да чете входа. Всеки път, когато USB-RS232TTL конверторът е широко разширен на микросхемите CH34x и PL-2303, това е начинът да го получите - той се променя. Сред най-популярните преобразуватели на проблемите не са виновни, но има някои фрагменти за достъп до порта на стандартните функции на Windows.

Резисторът, показан на електрическата схема, по принцип не можете да го настроите, а по-скоро да го вдигнете. Yake їхнє признание? Възможно е да се реши проблемът. Не е необходимо микроконтролерът да се справи с проблема. Ще допуснем необходимостта от плътно прилягане - всичко е толкова напълно правилно. , kudi won niyak не можа да се побере, і затворете тези, но в същото време е невъзможно да се заключи.Микроконтролерът може да превключи на специален режим на роботика и това може да стане чрез свързване към изхода на конвертора (RTS, TXD или DTR). станете, за да настроите логическа логика.

Три резистора бяха оценени на 4,3 KΩ. Важно е да проверите изхода на преобразувателя - входа на микроконтролера. Точността на резисторите не е ограничена: възможно е да смените резисторите до 1 KOhm или да ги промените на 10 KOhm (или на друга капка, кодът за смяна на риска може да бъде променен при шофиране по пътя към MK). Е, докато не се настрои входът на преобразувателя (CTS) - изходът на микроконтролера (MISO), тогава резисторът е заседнал с опора от 100 Ohm. Това ще се обясни с особеностите на входа на порочния преобразувател. В продължение на час viprobuvan buv vikoristany конвертор на микросхема PL-2303, които, съдейки от usyogo, са изтеглени в плюс на оживление с напълно ниска подкрепа (близо до няколкостотин ома). Schob "прекъсне окачването", като донесе резистора с толкова малка опора. Възможно е обаче да не се слага. На конвертора изберете входа. Невъзможно е да се измъкнем от пътя, но няма да има конфликт на събития за какъвто и да е вид развитие на подій.

Микросхемата Yakshho е микросхема на софтуера AVCC за аналогово-цифрова преработка (например ATmega8 или ATmega128), която е наследник на домашния живот на VCC. Микросхемите Deyaki могат да произвеждат повече от един VCC или повече от един GND. Например, ATmega128 има 3 терминала GND и 2 терминала VCC. При проектирането след строителството на еднократна висновка е по-красива от една по една. Нашият vipadk може да има един VCC и GND щепсел за един час програмиране.

И оста як е свързана с ATtiny13. На малкия е показан знакът на посетителя, който се показва за часа на програмата чрез SPI. Парапетът на снимката е като съотборник, свързан с вигляд за помощ.


Htos може да се каже, това не е сериозно - z'єdnannya на публикации. Заедно с вас хората са осъдителни. Нашата метафора е да програмираме микроконтролер, витрализирайки поне час от тези ресурси, а не да се фукаме пред кимота. Yak_st не страда с никого. Методът "на публикации" е много ефективен и правилен. Фърмуерът на контролера е еднократна процедура, така че няма смисъл да обвишавате нейните "strazikami". Лесно е да прехвърлите фърмуера за смяна, а не контролера от веригата (от готовия virob), но си струва да го инсталирате за един час, преди прикаченият файл да е готов. Zvvychay за tsiogo rose'em (RESET, SCK, MOSI, MISO, GND) и MK може да се флашне, за да го инсталирате на дъската. Ale tse že творческо висуване. Можем да видим най-простия випадок.

Сега да преминем към MK ATtiny44. Тук мустаците са приблизително същите. Не е важно да намирате нови връзки по малко и снимка. По избор до ATtiny44, можете да свържете MK ATtiny24 и ATtiny84 - знакът на visnovka във веригата от изпитания.


Друга част от връзката с контролера на времето за програмата е ATmega8. Тук има по-голям, но принципът на същия е брой окабеляване, а оста вече е готов контролер преди информацията да е "залята". Zayviy черен проводник на снимката, който се вижда във vivod 13, програмата няма да участва. Има някои индикации за звуковия сигнал, когато MK е в програмен режим. Това е свързано, сега е час да добавите скрипт за "Perpetuum M" от MK, изтеглена е програма от музикални екранни снимки.


Често за малки случаи се издава един контролер. В същото време признаците на промени в корпуса на кожата се разпределят по свой собствен начин. Ако корпусът на вашия контролер не е подобен на този на изображенията на малкия, можете да уточните знака на висновки от техническата документация, като можете да го свържете от сайта на търговеца на МК.

За да направите картината по-страхотна, свържете микросхемата MK от големия брой "nizhok". Името на черната стрела на снимката, която се вижда от vivedennya 15, също е същото като в ATmega8.


Ymovirno, вече си го преодолял, лесно е да завършиш всичко. Hto на мястото на rahuvati visnovka при микросхемите (от брояча на брояча на контра на старата стрелка), този излиза. И не забравяйте за точността. Микросхеми да обичаш спретнатото и да не прощаваш на не толкова лошия.

Първо отидете на софтуерната част, променете правилно драйвера за USB-RS232TTL конвертора (променете мениджъра на добавки за Windows). Не забравяйте да запишете номера на виртуалния COM порт, който е часът, когато конверторът е свързан. Цялото число ще трябва да бъде въведено преди текста на скрипта, за което прочетете по-долу.

4. Скрипт - програмист за "Perpetuum M"

За хардуерната част на "програматора" се погрижиха. Це вече п_всправи. Сега е твърде много да израснете от софтуерната част. Ролята на програмата "Perpetuum M" е показана на контролите на скрипта, в които всички необходими функции са реализирани във връзка с микроконтролера.

Архивираните със скрипта отиват в същата папка като програмата perpetuum.exe. Когато се стартира файлът perpetuum.exe, на екрана ще се покаже меню със списък с инсталирани скриптове, в средата ще има ред "MK AVR Programmer" (можете да сте само един). Същият ред за нас и за нас да знаем.

Скриптът се намира в папката PMS във файла "MK AVR.pms Programmer". Целият файл може да се разглежда, показва и преначертава за нуждите на лесен за използване текстов редактор на Windows Notepad. Преди скриптът ще трябва да направи промени в текста, обвързани с настройките на порта. За изясняване с диспечера на прикачените файлове на Windows на порта, който трябва да бъде избран, и, ако е необходимо, направете изменение на реда "Im'yaPort =" COM4 ";" - промяна на числото 4 може да бъде същото число. Също така, с викторианския модел на конвертора USB-RS232TTL, можете да промените настройките за инвертиране на сигнали (редовете на скрипта, които могат да бъдат поправени от думата "Visokiy"). Преобразуването на инверсия на сигнала в конвертора USB-RS232TTL е възможно с помощта на едно от приложенията, които могат да бъдат инсталирани в инструкциите към програмите Perpetuum M (разпределени функции за роботи с порт).

Прикачените файлове на папството MK_AVR съдържат файлове с описания на генерираните контролери. Тъй като необходимият контролер не се показва в средата им, можете да добавите необходимия независимо, по аналогия. Вземете един файл наведнъж и въведете необходимите данни с помощта на текстов редактор, като ги вземете от документацията в микроконтролера. Глава - бъдете уважителни, въведете данните без извинение, MK не може да бъде програмиран или програмиран неправилно. Текущата версия има 6 микроконтролера: ATtiny13, ATtiny24, ATtiny44, ATtiny84, ATmega8 и ATmega128. Скриптът има автоматична реализация на свързания контролер - не е необходимо да го въвеждате ръчно. За видимостта на идентификатора от MC се вижда средата на описанията, но контролерът не е далеч.

В архива със скрипта има и допълнителна информация. Папа "inc-файлове на AVR контролери" имат още по-голяма колекция от файлове с описания на контролери. Tsi файловете vikoristovoyut при писане на програми Vlast за MK. Също така, дори с папката "MusicBox _...", можете да замените файловете с програмата на Asembler, която е готова преди качване в MK с фърмуера okremo за ATtiny13, ATtiny44, ATmega8 и ATmega128. Ако вече сте свързали някой от MC-тата за програмата, както е предложено в статистиката, можете да го флашнете наведнъж - ще видите музикален екран. Pro tse по-долу.

Когато изберете менюто със скриптове в редовете "MK AVR Programmer", скриптът ще бъде поправен. Когато портът е отворен, на MC се изпраща команда за превключване в програмен режим, за приемане на потвърждението от MC за успешен преход, за захранване на MC идентификатора и звука на описанието на даден MC от идентификатор на средните файлове с описания. Не знам точно какво е описанието, от типа, всеки път. Веднага след като описанието е известно, е възможно да се види смута от менюто на програмиста. Екранната снимка на Yogo може да се архивира на малко 8. Дали не вървят гладко - менюто е още по-просто.

В първата версия на скрипта функциите на специалния програмист не са реализирани. Например, няма начин за четене и запис в EEPROM. Ако видите скрипта в текстов редактор, просто го разбийте, но той не е голям, докато е предимно внедрен. Струва си да говорим за тези, които не дават ежедневните функции толкова спретнато - дори е гадно, позволено ми е в малка програма да реализирам много функционалност. Alle за много vipadkiv погледнете функцията за навигация.

Деякът на обмена на функционалности е описан в текста на скрипта:
// реализации на запис само от нулев адрес (разширен сегментен адресен запис игнорира, LOAD OFFSET - също)
// редът и непрекъснатостта на следните записи в HEX файла не могат да бъдат обърнати
// контролната сума не се променя
Роботът се взема с HEX файла, а кодът на фърмуера за MK се взема от детето. Тъй като файлът не се изговаря, проверката на контролния sumi не е на линия. Yaksho sporovaniye - zasob script tse viyaviti няма да се поддаде. Други obmezhennya zdebіlshy не zavad, ale mati на uvazі все още е необходимо.

5. Музикален екран - прост virіb за pohatkіvtsіv

Ако имате един от микроконтролерите: ATtiny13, ATtiny44, ATmega8 или ATmega128, можете лесно да го конвертирате в музикален екран или музикален лист. За пълно записване в MK е наличен различен фърмуер - един от вариантите, които са различни в папките "MusicBox _..." в един архив със скрипт. Кодът на фърмуера се записва от файловете с разширения ".hex". Vikoristovuvati ATmega128 за такъв virob е по дефиниция "мазнина", като ATmega8. Може да бъде и канела за експерименти с тесто и по някаква причина - за основни цели. Налични са и програмни текстове в асемблер. Програмите бяха стартирани не от нулата - за основа беше взета програмата с музикални екранни снимки от книгата на А. В. Булов "Микроконтролери AVR в практиките за радиоавтоматизация". Тази програма е научила редица сути:
1.адаптиран за тип кожа на MK: ATtiny13, ATtiny44, ATmega8 и ATmega128
2.Течни бутони - преди контролера в спусъка няма нужда от превключвател, освен за живостта на звука и звука (мелодиите се възпроизвеждат една по една в непрекъснат цикъл)
3.тривиалността на нотата на кожата се заменя с тривиалността на паузата с нотите на оглушението на музикалния ритъм
4.осмата мелодия е свързана, не се използва в книжната версия
5.от sub'active: действия за "подобрение" за оптимизиране на лесното възстановяване на алгоритъма

Деяките мелодии имат усещане за фалш и груба милост, особено в "Усмивки" - в средата. Мелодиите на Коди бяха взети от книгата (или, по-точно, те бяха заключени от уебсайта на автора веднага от изходящия asm файл) и не знаеха нищо за това. Зважаващи на всичко, в глезени мелодии е благодарност. Но това не е проблем - лесно е да си „приятел“ с музиката, лесно е да го разбереш и да коригираш всичко.

В ATtiny13, чрез изхода на 16-битов чилър за добавяне на ноти, той доведе до победния 8-битов, което призова за намаляване на точността на звучене на нотите. Елът не е малко сладък на ухо.

Конфигуративни хапки. Их налаштуване Idpovidati се превърне в нов микроконтролер. Веднага след като вашият MC е победил по-рано, е необходимо да преразгледате състоянието на неговите конфигурационни битове и, ако е необходимо, да ги доведете до заключението на нов микроконтролер. Можете да разберете за конфигурационните битове на новия микроконтролер от документацията на MK (раздел "Битове за предпазители"). Лебедката става ATmega128. Tsei MK има бит M103C, който включва ATmega103. Активирането на бита M103C значително намалява мощността на ATmega128, освен това новият MK има активен бит. Необходимо е да изхвърлите M103C от неактивното зашеметяване. За манипулиране на конфигурируеми битове, изберете секцията от менюто на скрипта на програмиста.

Схемата на музикалния екран трябва да се ръководи от смисъл: при nіy само микроконтролер, harchuvannya и p'єzvukoviprominuvach. Harchuvannya се сервира така, както беше, както се правеше по време на програмиран MK. Звуковият проминувач е свързан между заземяващия проводник (приставка за GND контролер) и един от MK-щекерите, чийто брой може да се чуди във файла с асемблерния код на програмите (*.asm). На ухото на текста програмирайте кожата за MC, в коментарите е ред: "формира се звуков сигнал vivedennі XX". Когато роботът скрипт за програмист е завършен, микроконтролерът преминава в режим на програмиране и преминава в режим на специален робот. Незабавно поправете създаването на мелодии. След свързване на звука и prominuach, цената може да бъде преконфигурирана. Можем да включим звука за един час, когато кристалът е програмиран, ако звукът е известен от видеото, което не се използва в SPI, но програмата може да се сменя на екрана.

  • Програма за микроконтролер
    • Урок

    Изображения за uvagi - xkcd

    За да видите дали сте на безлюден остров. И трябва да програмирате микроконтролер за живота си. Сега, спиш ли? Е, нека признаем, че можете да поправите аварийния радиомаяк, без никакъв шанс да изпаднете в проблеми.

    Radiyuchi, все още не са забравили хода на асемблера, vi abiyak написа програмата с клечка към песента. В разгара на поредица от речи изглеждаше като чудо, че документът беше отворен на контролера (е, те не успяха да го пуснат в контролера!), И програмата беше прехвърлена в машинен код. Глупакът е заседнал - изпрати го на контролера. Ел в радиото на 500 километра мизерен програмист, за компютри да не говорим. Имате само джърло живост (батерия от карикатури с кокосови орехи) и няколко shmatkiv стрели.

    Възможно ли е да шиете Яка с голи ръце?

    Yak piddoslidny vistupatime MK ATtiny13 от Atmel. Методологията е описана на практика като контролер от семейството на AVR;

    Интерфейс

    Най-популярният и удобен интерфейс за AVR фърмуер є SPI(Сериен периферен интерфейс). За да се свържете чрез SPI, имате нужда от всички стрели, с изключение на земята:
    • SCK- часовников сигнал, който синхронизира всички операции по обмен на данни;
    • MOSI(Master Out Slave In) - линията от водещия аут до водещия;
    • MISO(Master In Slave Out) - линия на почит, navpaki, водена от приложението към водещата;
    • НУЛИРАНЕ- за да активирате SPI фърмуера, е необходимо да изпратите логическа "0" към веригата.
    В този ред трябва да формулираме три сигнала и (по избор) да прочетем един. Оста е толкова ярко най-простата диаграма за цялото:


    Малък. 1. Проста схема за свързване на SPI.

    За вашата гладкост можете да добавите индикация за входните сигнали. Схемата ще се ускори, но не прекалено:


    Малък. 2. Схема на индикация на сигналите.

    Захист до мръсотията

    Жалко, има само бутони за формиране на SPI сигнали, добри резултати не са постижими. Причината за това е, че неприемливо проявление, като да бъде наречен мръсни контакти... Когато механичните контакти се загубят, те се изплъзват, един път от един и вместо един импулс изгасват. За да задушите мръсотията, вземете проста диаграма от няколко логически елемента:


    Малък. 3. RS-спусък за задушаване на мръсотия.

    Tse RS-тригер, който се прехвърля към мелницата "1" в момента на долния контакт на трансферната помпа и той игнорира импулсите в мръсотията. Приплъзването на спусъка обратно до "0" се показва, когато се натисне горният контакт, така че когато бутонът се освободи.

    "Бах, rozbіgsya!" - казва читателят, - „Аз съм на безлюден остров Сиджу. Търся тригери тук? Добре, можете да заобиколите мръсотията без електронни схеми. Необходимо е да смените "сухия" контакт с мокър. Вимикачем ще обслужва два електрода, които ще слязат на провинциалния път.

    Сигналите MOSI и RESET не заглушават задушаващата мръсотия, на изгледа от SCK: тук значението е само малко за сигнала в момента на вибрация, а не на първия фронт.

    Yak pratsyuє SPI



    Малък. 4. Тимчасова SPI схема за роботика.

    SPI е синхронен интерфейс: всички операции се синхронизират от ръбовете на тактовия сигнал (SCK), които се въртят от предоставените приставки. Максималната скорост на предаване е обградена от стойността на 1/4 тактова честота на контролера. При минималната скорост има много малки: без тактов сигнал обменът на данни "замръзва", а интерфейсът може да бъде загубен в статична мелница, която винаги е една и съща.

    SPI предаването работи в пълен дуплекс режим, един бит на такт към кожата. При нарастващия ръб на сигнала SCK призмата отчита удара на Chergovy от линията MOSI, а на падащия фронт - вида на офанзивен удар по линията MISO. Wuxia uvaga на фигура 4.

    Протокол на фърмуера

    Всички програмист spilkuvannya от MC се съхранява от 32-битови команди, изпратени до контролера. Повторна команда на командите е в листа с данни "e, но тук е малко прекалено, тъй като са необходими операции за фърмуера на MK:
    1. Прехвърляне на контролера в програмен режим;
    2. (по избор) Четене на идентификатора за прикачения файл;
    3. Изтриване;
    4. Запис с флаш;
    5. (по избор) Ревизия на записаното;
    Лесен за четене доклад за кожени крокодили.

    Увеличете програмния режим

    Режимът на програмиране се включва чрез подаване на "0" към крака RESET. Але е деяк тънък. Atmel препоръчва събиране на видимост за ниски цени RESET и SCK и след това я предадете на контролера. Тъй като такава възможност не е достатъчна, ако активирате живите, трябва да платите "0" на SCK и след това положителен импулс при RESET:


    Малък. 5. Прехвърляне на МК от програмния режим.


    Малък. 6. Команда "Разрешаване на програмата".

    Бийте, означаваше як х, можете да бъдете-яки. От часа на предаване на третия байт контролерът е виновен да изпрати обратно друг байт ( 01010011 ). Веднага след като е станало, това означава, че всичко е наред, екипът е приет, контролерът за проверка е на инструкциите. Веднага щом го видите, трябва да презаредите МК и да го изпробвате.

    Ревизия на идентификатора


    Малък. 7. Команда "Прочетете байта на подписа".

    Първо трябва да напишете гатанката на MK, трябва да я промените, но е необходим самият модел. Моделът на кожата на контролера има трибайтов идентификатор (Signature). Можете да го прочетете с помощта на команди като
    00110000 000xxxxx xxxxxxbb xxxxxxxx
    Заместител бб(трети команден байт) 00 за първия байт на идентификатора, 01 - за другото, това 10 - За третия. Изходният байт на идентификатора ще бъде изпратен от контролера преди часа на изпращане на 4-ия байт на командата.

    За ATtiny13, стойността на идентификатора на вратата 00011110 10010000 00000111 (0x1E 90 07).

    Почистване на контролера

    Малък. 8. Командата "Изтриване на чип".

    Нека преминем чак до изчистването на паметта на MK, както и силата на командата "Chip Erase"
    10101100 100xxxxx xxxxxxxx xxxxxxxx
    Използвам командата за проверка на изтриването вместо Flash и EEPROM (през цялото време ще има FF revenge), както и познаването на lock-beats, тъй като смрадът е инсталиран.

    Запис на флаш памет

    Програмната памет (Flash) в ATtiny13 се съхранява в 512 двубайтови слота (1K байта). Адресите на думата има разрядност 9 bit. Флаш паметта е добавена към страните, страната на кожата е с размер 16 прореза (всички 32 страни са включени). Записването с флаш отнема две стъпки.

    Трябва да добавите данните към буфера на страницата, за което трябва да бъде избрана командата Load Program Memory Page.
    01000000 000xxxxx xxxxbbbb iiiiiiii- за zavantazhennya млад байт на думата, че 01001000 000xxxxx xxxxbbbb iiiiiiii- За залавянето на старшия.
    4 най-млади удара на командата от 3-ти байт bbbb- адреси на думи отстрани, iiiiiiiii- Закриване на байтове. Най-младият байт на думата, а след това и най-значимият байт от същата дума, е виновен за чата.

    Малък. 9. Команда „Зареждане на страницата с памет на програмата“.

    Освен това, тъй като страничният буфер е заключен, трябва да изберете командата Write Program Memory Page 01001100 0000000a bbbbxxxx xxxxxxxxза да запишете реда без предната част в паметта на контролера.
    Най-младият бит от другия байт е старшите 4 бита на третия а: bbbb- пет-битов номер на страницата за запис.

    Малък. 10. Команда "Запис на страница с памет на програмата".

    All tse viglyadaє, за да се изгуби, като цяло сгъваем ням. Адресите на всеки байт памет на програмата се съхраняват в 10 бита: ppppp: bbbb: w, де
    ppppp- номерът на страницата (vikoristovuyutsya при командата "Запис на страница с памет на програмата");
    bbbb- адресът на думата отстрани (за командата Зареждане на страницата с памет на програмата);
    w- бит, което означава старши или най-младият байт в думата (криптиране в първия байт на командата Зареждане на страницата с памет на програмата).

    Светкавица Читания


    Малък. 11. Командата "Четене на програмната памет".

    След като напиша фърмуера в МК, не беше възможно да се преразгледа записа, някои от преобразуванията на целостта на даденото не паднаха. Един от начините за преобразуване на поле е да прочетете целия списък с флаш памет и да го съпоставите с оригинала.

    Да четеш паметта на програмата е по-лесно, а не да пишеш в нея. Забравете за организацията рамо до рамо, показанията се показват байт по байт. Командата View Program Memory е следната:
    00100000 0000000a bbbbbbbb xxxxxxxx- за четене на най-младия байт на думата, това 00101000 0000000a bbbbbbbb xxxxxxxx- за по-възрастния.
    Най-младият бит от друг байт е целият трети байт а: bbbbbbbb- адресът на думата в паметта. Байтовете за четене се въртят за часа на предаване на 4-ия команден байт.

    Завършена програма

    Mabut, проста операция. След приключване на програмата и превключване на МК в работен режим, има достатъчно данък, за да НУЛИРА логическото ниво "1". Контролерът ще стартира и стартира новата програма.

    Практика

    След като дойде часът, побързайте с добри познания в практиката. Жертвата на експеримента - ATtiny13 - да вгради макетната платка в макетната платка, подреждайки сигналите от формата, всичко е готово:


    Малък. 12. Експериментална схема.

    Shitimemo към програмата под формата на "по-прости nikudi":
    ldi R24, 0x02 изход DDRB, R24 изход PORTB, R24 L1: rjmp L1
    Всичко, което искате да победите, е едно на крака PB1 и преминавате в безкраен цикъл. Спечелените машинни кодове са заели по-малко думи chotiri:
    E082 BB87 BB88 CFFF
    За да актуализирате фърмуера от контролера, трябва да въведете следните команди:
    1010 1100 0101 0011 0000 0000 0000 0000 // програма позволи 1010 1100 1000 0000 0000 0000 0000 0000 // чип изтрива 0100 0000 0000 0000 0000 0000 1000 0010 // натоварване адр. 0000 ниско байт 82 0100 1000 0000 0000 0000 0000 1110 0000 / / натоварване адр. 0000 високо байт Е0 0100 0000 0000 0000 0000 0001 1000 0111 // натоварване addr.0001 ниско байт 87 0100 1000 0000 0000 0000 0001 1011 1011 // натоварване addr.0001 високо байт BB 0100 0000 0000 0000 0000 0010 1000 1000 // натоварване addr.0010 ниско байт 88 0100 1000 0000 0000 0000 0010 1011 1011 // натоварване addr.0010 високо байт BB 0100 0000 0000 0000 0000 0011 1111 1111 // натоварване addr.0011 ниско байт FF 0100 1000 0000 0000 0000 0011 1100 1111 // зареждане на адрес 0011 висок байт CF 0100 1100 0000 0000 0000 0000 0000 0000 // запис на страница
    Ключът към началото, да тръгваме!