ПредишенСледващото

В сравнение с поредицата ATmega и ATtiny ATXmega придоби твърде много и най-смелите хубави кифли, а именно:

Тактовата честота на 32MHz.

Аритметично логическо устройство (ALU). Сега знака на нашите приятели, защото MK е в състояние да работи с тях hardvarnogo!

Нива (по-специално, ниво 3) прекъсват контролер.

Започнете с MK подразбиране taktorivaniya система, както и изборът на правото директно в кода. Сега да се обърка с определяне Fyuz невъзможно при избора на система за времето :)

PDI (2 жици на която земя и храна) и софтуер грешки 4-жица интерфейс. Зашийте и отстраняване на грешки през един и същ малък конектор диво готино според мен :)

И много от кифли, които могат да бъдат намерени в нашите лаещи приятели

Същото сега е абсолютно несъществено да се сложи RC верига върху щифта за RESET, но rezyukom в 10k трябва да бъде изтеглен до захранването.

Единственото нещо, което може да бъде малко объркващо новак в прехода от класически AVR контролерите - е, че Xmega серия изисква доставка 3.3V. Бързам да ви уверя, че това изискване не е толкова трудно, колкото изглежда. След поредица от нечовешките експерименти беше установено, че MC работи чудесно дори и от 4.2V, 5V за кратко била подадена, УД дори не кихат. Така че се подава на нивата на сигналите до 5V и MK тихо е работил с тях, без да губи производителност.

газоразпределение
различие

Бърз начален час
Secure синхронизация на смяна по време на работа
Вътрешният осцилатор:
вътрешен RC-осцилатор честота от 32 MHz, с автоматично калибриране
вътрешен RC-осцилатор честота от 2 MHz, с автоматично калибриране
Вътрешен калибриран RC-осцилатор честота 32 кХц
32 кХц sverhmalopotreblyayuschy първия генератор (ULP-генератор)
източници Външни синхронизация
Кристалната осцилатор честота 0.4 MHz ... 16
кристален осцилатор честота 32.768 KHz на
Външен сигнал за синхронизация
PLL с вътрешни и външни източници на синхронизация и честота множител от 1 до 31
Делител на честота синхронизация с разделяне съотношение 1-2048
Rapid IOCTL синхронизация, 2 и 4 пъти тактовата честота на микропроцесора
Автоматично калибриране на вътрешни осцилатори
Откриване на липсата на кварцов генератор
При стартиране или рестартиране IC започва от вътрешен RC-генератор с честота 2 MHz. И тогава ние трябва да изберете кода, който ние трябва да се (ако е необходимо, разбира се). Лично аз имах вътрешния RC-генератор с честота 32 MHz, за неговата стабилност удовлетворява всичките ми нужди.

Ето как:


Всичко е просто:
От началото ние включваме работата на вътрешния 32MHz часовник, а той е искал да започне, и ние чакаме в една линия, докато не се подготвят, tobish честотата не е установен, и тя ще бъде подходящ за използване, това, което ние отчитаме малко RC32MRDY. След това напишете стойността в регистъра ККП. като по този начин ни позволява да наруши Регистрирайте CLK_CTRL. който е защитен. Но има и кок! За да се даде възможност на регулиране на защитен вход-изход регистър или да извършва сигурна употреба в интервал от време не повече от 4, циклите на процесора инструкции, регистърът трябва да бъде написана на ККП правилния подпис. Всички прекъсва срещнати в хода на този интервал от време, се игнорират, и след изтичането му - преработени в съответствие със степента и приоритет. Това е просто 0xD8 и ни дава възможност за следващите 4 цикъла променят стойността на защитената регистъра. Резолюция получили, както и регистър CLK_CTRL каже "такта на източника (в този случай, на вътрешния часовник 32MHz)».

За други методи на тактовата същия принцип, единствените други регистри.

И така, ние сме избрали желаната честота в момента е необходимо да се направи един вид «Здравей, свят!» В стила на МС, а именно, да мига един светодиод. И за това ние трябва да се научим да работим с входно-изходни портове.

В поредица от Xmega работи с портове, подобни на пристанищата в класически AVR, но има много по-приятен най-смелите плюш, а именно:

За да работите с пристанищата имаме 3 регистри. Цел IO се нагласят от потребителската програма. Всеки порт има следните линии на контролните регистри до / в: посока регистър (DIR), регистър на изходни данни (OUT). За да се проучи състоянието на линиите в / предвижда въвеждане на данни регистър (IN), както и допълнителни характеристики на всяка линия / в може да бъде конфигуриран чрез конфигурация регистър входно-изходна линия (PINnCTRL. Когато н-брой линии / в).

посока н ред се определя от отделен малко DIRn посока DIR регистър. Ако битът DIRn направи единство, линията н ще работи като отдушник. Ако битът DIRn направи равен на нула, а след това на линията ще работи като вход. Ако линията е конфигуриран като изход, на бита на регистър OUTN OUT ще определят му състояние. Писане единица в малко OUTN на води до създаването на високо равнище по линия н и влизането нула - ниско ниво.

За да се проучи Онлайн регистър статут, предоставена в. Анкета държавна линия може да се извърши независимо от това дали линията като вход или като изход, освен когато етапа на цифровия вход е забранено. След устройството за прехвърляне в състояние ресет всички линии / в, независимо от дейността на синхронизация станат държава с висок импеданс.

В регистъра DIR OUT и има допълнителни регистри комплекта. CLR. GL където SET - за да настроите стойността, CLR - изчистване на стойността, GL - обърнете стойността на необходимия бит единица запис в необходимите бита на един от тези регистри, в зависимост от това, което ни трябва. Всичко това не ни пречи да се работи с регистъра DIR и ОУ T в класическия AVR.
Аз всъщност направих в началото на проучването на Комитета за наблюдение:


Също така, всеки порт поддържа всяка конфигурация на 2 фута на външния прекъсване, а като отделен вектор за всеки от 2 прекъсва на пристанището.

Повече информация за входно-изходни портове може да се прочете тук

Multi-ниво прекъсване контролер

Тъй като ние вече споменахме работата с прекъсвания, трябва да говорим за това как да се работи с тези прекъсвания.
И така, ние имаме 2 вида прекъсване позволи. Глобално разрешение, което се прави чрез определяне малко в SREG регистър:

Но това действие не е разрешено да работят прекъсвания, тъй като преди това трябва да се коригират по прекъсват контролер. Ето как:

В този пример нека всички прекъсне нива, които като могат да бъдат разбрани от пример 3. Прекъсва по-високо ниво може да се случи дори по време на прекъсване на ниско ниво, и прекъсване на ниско ниво не може да прекъсне по-високо ниво.

Тази статия моля, помисли за уводната част на поредицата MK Xmega. Нейната цел е да се създаде първия старт за тези, които биха искали да прочетете тази серия MK.
Лично аз наистина харесва тази серия лесно се работи с него, нейните красиви shustrosti и толерантност на нечовешките експерименти.
Следната статия описва как се работи с различни интерфейси на КН.

Е, има преходни процеси. Поставете контейнера на Reset, за да им устои. В инсталацията Fuse при 0 мс, ние все още имаме закъснение от N мс, а ако не е зададена, на няколко пъти МК за "rezet" на прехода толкова бързо, че не разполага с време, за да се инициализира. Оказва се, че по време на бушон за инсталация при 0 мс, ние имаме едни и същи от N закъснение милисекунди. Е, ако се създаде забавяне на държавите-членки на N, то ще замени преходните процеси. Оказва се, че не е необходим капацитет. Друго нещо, ако имаме малко "помощ" Шмит тригер за увеличаване на продължителността на хистерезиса, ако rezet изкачва пречка в процеса на Комитета за наблюдение (както, например, тест статика). С всичкото добро, сме забравили един помощник - един БПК.

Като цяло, колкото знам всички тези закъснения се отчитат само след включване на захранването MK достигне желаното ниво и POR позволено да работи. Така че преходни процеси за захранване MK прохода преди произхода на това забавяне. Необходимо е да се изчака "окончателно" стабилизира властта и да се даде време за инициализация на други елементи, схеми, както и стабилизиране на кварцов генератор.

Подкрепете проекта - споделете линка, благодаря!