Микроконтроллердің негiзгi тағайындалуы
КІРІСПЕ
Транзистордың пайда болуы ЭЕМ жылдамдығын секундына он және жүз мың операцияларды орындайтын халге жеткізді. ЭЕМ элементтерінің құрамына транзистор, диодтар, резисторлар, конденсаторлар қосылды. Мұндай ЭЕМ-дер екiншi ұрпақтың машиналарына жатты.
Құрамына электрондық элементтердiң үлкен санын қосатын интегралды микросұлбалар қолданысқа ене бастауы ЭЕМ-нің үшiншi және одан ары қарайғы түрлері жылдамдықтарын тағы бірнеше есе көбейтті және адамның оны басқаруына, жеңіл пайдалануына жол ашты.
Бұйымдарда микроконтроллерлерді қолдану тек қана техникалық-экономикалық көрсеткiштердiң (құн, сенiмдiлiк, тұтынылатын қуат, габариттi өлшемдер) жоғарылатуға алып келмейді, сонымен қатар бұйымдарды өңдеу уақытын қысқартуға мүмкiндiк бередi және оларды сыртқы ортаның кез келген жағдайына бейімділігін, адапттивтiлігін жақсартады. Микроконтроллерді басқару жүйелерiнде қолдану аз шығындап, биiк тиiмдiлiк көрсеткiштерiне жетуді қамтамасыз етедi.
Микроконтроллерлер құрамында түрлi объекттер және процесстердiң тиiмдi автоматтандыру құралдары болады. Микроконтроллерді бiр микросхемада орналасқан компьютер ретiнде санауға болады. Бұдан оның негiзгi тартымды сапалары: аз габариттер, жоғарғы өнiмдiлiк, сенiмдiлiк және қабiлеттiлiгi тiптен әр түрлi есептердiң орындауы шешіледі.
Микроконтроллер орталық процессордан (ОП ) тыс жады және көп құрылымды енгізу/шығару функцияларын өз құрамына енгізеді. Олар: аналогтық-цифрлық түрлендiргiштер, мәлiметтiң бiртiндеп және параллель берiлу каналдары, нақты уақыттың таймерлерi, ендiк - импульсты модуляторлар (ЕИМ ), программалалатын импульстердiң генераторы және тағы басқалар.
Микроконтроллердің негiзгi тағайындалуы – оны автоматты басқару жүйелерiнде, тiптен әр түрлi құрылымдарда қолданылуы болып табылады.
1-БӨЛІМ
МИКРОКОНТРОЛЛЕР.
Бір сұлбалы компьютер –
1.1. Микроконтроллерлердің MCS-51, MCS-52, MCS-251 топтары
Алғашқы микроконтроллерлер (8048-шi топтама ) 1976 жылы батыс нарығында пайда болып, бiрден өңдеушiлер және тұтынушылардың назарын жаулап алды.
Дегенмен де iс жүзiнде бұл микроконтроллердің кемшiлiктерi бiрден атап өтiлдi. Өндірушілер ТЕСҚ (тұрақты есте сақтайтын құрал) көлемiнiң тапшылығын үнемi байқады. ЖЕСҚ (жедел есте сақтайтын құрал) көлемі де аз болды, 64 байттың жартысынан көбін жүйелік регистрлер алып тұрды. Көп командалардың тапшылығы сезілді.
Осыған байланысты Intel өңдеушi фирмасының алдында ауыр міндет тұрды – ол бойынша микро-ЭЕМ қасиеттерін оның корпусының шығыс санын үлкейтпей және 256 командалық шектен шықпай толықтыру болды. Бұл фирма осыдан кейін 8051 сериялы өнімін шығарды. Олардың жаңа шығарыламы - 8051 өнiмдiлiгі бойынша 8048 сериясынан асып түстi. Ол екi есе көп ЖЕСҚ-на ие болды, төрт енгізу/шығару портын, екi есе көп жалпы тағайындаудың регистрлерiн, екi есептеуiш-таймер және екi үзу сызығын құрамына біріктірді.
Бұл микро-ЭЕМ-дің пайда болуы 8048-шi топтардың пайдаланылуын артқа шегiндiрді. Олардың шығарылымы және кең қолданылуы бұрын игерiліп келген аппаратураларды, өндірістен және қолданыстан біртіндеп шығара бастады. 1990-шы жылдары микро-ЭЕМ-нің 8051 сериялары қолжетімді және отандық қолданушыларына болды.
Өңдеушiлер 8051 микро-ЭЕМ жасалған соң да тоқтамады, олар оны жетiлдiруiнiң варианттарын iздестiруді бастады. Бұл үшін оларға микро-ЭЕМ-нің функционалдық мүмкiндiктерін кеңейтіп қана қоймай, сонымен қатар оның өнiмдiлiгiн жоғарылату және оны 8051 топтарымен бағдарламалы сәйкестендіру керек болды. Өйткені барлық бағдарламалар 8051 сериялы микроконтроллер үшiн жазылған және оның аппаратты қолдануының барлық варианттарын қандай да болсын толықтырусыз жаңа микроконтроллерде орындалуы керек болды.
1995 жылдың басында Intel фирмасы микроконтроллердің жаңа MCS-251 топтарын жарыққа шығарды. Оның пайда болуы бүкiләлемдiк микроконтроллерлердiң MCS-51 топтарының архитектурасындағы сапалық өзгерісті белгiледi.
Бұл микроконтроллерлерді программалау ассамблер немесе Си тілінде жүргізіледі. Программаны қайта құру үшін программалы симуляторлар (дербес компьютерлерге арналған арнайы программалар, ішкі жүйе) және эмуляторды (микроконтроллерлерге ұқсас электронды құрылғы) қолданады.
Микроконтроллерлер программасына енгізілген түрлі электронды құрылғылар әр-түрлі әрекеттерді басқару үшін пайдаланылады. Микроконтроллердің микропроцессорлардан айырмашылығы, дербес компьютерлерде қолданылатын оларда қосымша құрылғылар орнатылған. Бұл құрылғылар өз міндеттерін микропроцессорлы микроконтроллерлер ядросы арқылы басқарып отырады.
Өндірушілердің бағалауы бойынша, микроконтроллерлердiң MCS-251 топтарының MCS-51 мен салыстырғанда өнiмдiлiктері және кейбір қасиеттері байытылған. Микроконтроллерлердiң адрестi кеңiстiгi 16 Мбайтқа дейiн кеңейтілген, сонымен бiрге iшкi регистрлердiң жиыны да ұлғайған. Командалар жүйесiне жаңа нұсқаулардың үлкен саны қосылған.
Артықшылығы:
- бұйымдардың үлкен номенклатурасы;
- микроконтроллерлердi өңдеушiлердiң үлкен тәжiрибесi;
- аспапты құралдардың үлкен саны.
Кемшілігі:
- Аккумулятор базасындағы арифметика–логикалық құрылымның баяулығы;
- нұсқаудағы такттердiң үлкен саны;
- бос командалық циклдердiң болуы;
- көп энергия тұтынуы, (MCS-251 ).
1.2. Микроконтроллердің құрылымы
Микроконтроллердің құрылымына негізінен бағыттаушы құрылым, арифметика - логикалық құрылым және ішкi регистрлердiң блогы кіреді. Бұл негізгі параметрлер барлық микроконтроллерлер құрамында болады. Микроконтроллерде сигнал алмасу, яғни екі жақты алмасу мәліметтердің 8-разрядты магистралі арқылы жүзеге асады. Бұл құрылымдар арасында бағдарлаудың ішкі сигналының мәліметтерді беру жүйесі орналастырылған. Микроконтроллердің құрылымының схемасы төмендгі 1-суретте көрсетілген.
1.1-сурет. Микроконтроллердің құрылым схемасы
1.3. Микроконтроллердің басқару блогы
Басқару блогы және синхронизациялар синхронизацияланған және бағдарлаушы сигналдарды өндiру үшiн арналған. Басқару блогiнiң құрамдарына кiредi (Микроконтроллердің блок схемасы 2-суретте көрсетілген):
- уақыт аралықтарының құрастыру құрылымы;
- енгiзу-шығару логикасы;
- команда регистрi;
- электр энергиясының тұтынуын басқаратын регистр;
- командалар дешифраторы, ЭЕМ басқару логикасы.
Уақыт аралықтарының құрастыру құрылымы iшкi фаза сигналдарын құрастыру және беру үшiн арналған. Машина циклдерiнiң саны командалардың орындалуының ұзақтықтығын анықтайды. БКЭЕМ-ның (бір кристалды ЭЕМ) түгелдей дерлiк командалары бiр немесе екi машина циклдаларында орындалады.
Енгiзу-шығару логикасы енгізу/шығару порттары арқылы сыртқы құрылымдармен ақпарат алмасу сигналдарын қабылдау және беру үшiн арналған.
Команда регистрi атқарылатын команданың 8-шi дәрежелiк операция кодын жазу және сақтау үшiн арналған.
Электр энергиясының тұтынуын басқаратын регистр электр энергиясының тұтынуын кiшiрейту және бөгеу деңгейінiң кiшiрейуi үшiн микроконтроллердiң жұмысын тоқтатуға мүмкiндiк бередi.
Командалар дешифраторы, ЭЕМ басқару логикасы команданы орындау барысында операция кодтарын микропрограммаға өзгертедi.
1.2-сурет. Контроллердің қозғалыс блок-схемасы
1.4. Микроконтроллердің арифметика-логикалық құрылымы
Арифметика-логикалық құрылым арифметикалық және логикалық операцияларды орындауды қамтамасыз ететiн параллел сегiз разрядты құрылымнан тұрады. Арифметика-логикалық құрылым құрамына мыналар кіреді:
- ТЕСҚ тұрақтылары,
- сумматор,
- қосымша регистр ( В регистры),
- аккумулятор,
- бағдарламалардың күйi регистрі.
ТЕСҚ тұрақтылары мәлiметтердiң екiлiк-ондық кодта берiлуiн өндiрудi қамтамасыз етедi.
Параллел сегiз разрядты сумматор арифметикалық операцияларды қосу, алу және логикалық операцияларды қосу, алу, көбейтуге арналған бiртiндеп тасымалдауы бар комбинациялық түрдiң схемасын қамтиды.
B регистры операция уақытында көбейту және бөлуде қолданылатын сегiз разрядты регистр. Ол басқа нұсқаларда қосымша жедел регистр сияқты қарала алады.
Аккумулятор арифметика-логикалық операцияларды орындау барысында пайда болған нәтиженi қабылдау және сақтау үшiн арналған сегiз разрядты регистр.
Бағдарламаның күй регистрі бағдарламаны орындау кезіндегі арифметика-логикалық құрылымның күйi туралы ақпаратты сақтау үшiн арналған.
Электрондық құрылғыларды басқару үшiн қолданылатын микросхема — микроконтроллер. Микроконтроллер процессордың функцияларын бойына жинаған оның құрамында ТЕСҚ және ЖЕСҚ болады. Басқаша айтқанда бұл қарапайым тапсырмаларды орындай алатын біркристалды компьютер.
Ал енді MCS-51 микроконтроллерінің архитектурасын мысалға алайық. MCS-51 топтарының архитектурасы қолайлы және карапайым да арзан цифрлық құрылғыларымен ерекшеленген. . MCS-51 топтарына қарапайым микроконтроллерден бастап күрделі микроконтроллерде болатын микросұлба кіреді.
1.3-сурет.К1830ВЕ751 микроконтроллерінің құрылымдық схемасы
Суретте көрсетілген
Басқару блогы (Timing and Control) құрылғының блоктармен үйлескен жұмысын оның кез-келген жұмыс режимінде қамтамасыз ететін басқарушы сигналдарды тудыру үшін арналған. Оның құрамына уақыт интервалын қалыптастырушы құрылғы, енгізу-шығару логикасы, командалар регистрі, электр энергиясын тұтынуды реттейтін регистр және де команда дешифраторы, ЭЕМ басқару логикасы.
Тактілік жиілік генераторы (такті импулсі генераторы) әр түрлі процестерді синхронизациялау үшін берілген жиілікте электрлік импульсті өндіреді. Тактілік импульс эталонды жиілік ретінде қолданылады-олардың санын өлшей отырып, мысалы, уақытша интервалдарды өлшейди.
Микропроцессорлық техникада бір тактілік импульс ереже бойынша, бір атомдық операцияға сәйкес келеді. Бір құрылымның өңделуі архитектураның немесе құрылым типіне байланысты микропроцессордың бір немесе бірнеше тактілік жұмысын шығаруы мүмкін. Тактілік импульстің жиілігін есептеу жылдамдығы анықтайды.
Уақытша интервалды қалыптастыру құрылғысы циклдер, тактілер және фазалар ішкі синхросигналдарын беру және қалыптастыру үшін арналған. Машиналық циклдердің саны орындалған команділердің ұзақтығын анықтайды. Негізінде БЭЕМ-нің орындалуы төрт машиналық циклді құрайтын көбейту және бөлу команділерінен басқа барлық команділері бір немесе екі машиналық циклде орындалады. Fг арқылы берілген генератордың жиілігін белгілейік. Онда машиналық циклдің ұзақтығы 12/Fг тең немесе берілген генератор сигналының 12 периодын құрайды. Еңгізу-шығару логикасы Р0-Р3 еңгізу-шығару порттары арқылы 12/Fг ішкі құрылғыларымен ақпарат ауыстыруды қамтамасыз ететін сигналдарды шығару және қабылдау үшін арналған.
Команда регистрі орындалатын команданың 8 разрядты операция кодын жазуға және сақтауға арналған. Код операциясы, командалар дешифраторы және ЭЕМ басқару логикасының көмегімен командаларды орындайтын микропрограммаға түрленеді.
Электр тұтынуды басқаратын
Арифметика-логикалық құрылым (ALU) арифметикалық және логикалық операцияларды орындауды қамтамасыз ететiн параллел сегiз разрядты құрылымнан тұрады.
Бағдарламаның күй регистрі (PSW) бағдарламаны орындау кезіндегі арифметика-логикалық құрылымның күйi туралы ақпаратты сақтау үшiн арналған.
Командалар счетчигі (Program Counter) берілген 16 разрядты адресті ішкі бағдарлама жадысына және 8/16 разрядты адресті сыртқы бағдарлама жадысына қалыптастыру үшін арналған.
Мәліметтер жадысы (RAM) бағдарламаны орындау кезінде қолданылатын мәліметтерді уақытша сақтауға арналған.
P0, P1, P2, P3 порттары екіжақты бағытталған енгізу-шығару квазипортына жатады. Ол 32 енгізу-шығару сызығын бейнелей отырып, ЭЕМ мен оның ішкі құрылғыларымен ақпарат алмасуын қамтамасыз етеді.
Бағдарлама жадысы (EPROM) құрамына тұрақты есте сақтау жүйесін қосқан және бағдарламаларды сақтауға арналған. Микросұлба түріне қарай ТЕСҚ өшірілетін және тазаланатын түрлері қолданылады.
Мәліметтерді көрсету регистрі (DPTR) 16 разрядты адресті сыртқы жадыға немесе бағдарлама жадысына сақтауға арналған.
Стек көрсеткіші (SP) кұрамына сегізразрядты регистрді қосқан, кез келген жады ұяшығына мәліметтерді уақытша сақтай алатын жадының ерекше аймағын қалыптастыруға арналған.
2-БӨЛІМ
МИКРОКОНТРОЛЛЕРЛЕРДІҢ ЖЕКЕЛЕНГЕН ТОПТАРЫ
2.1. Бiр кристалды микроконтроллер, 78K0R/LG3-M
Renesas Electronics компаниясы электр
энергиясын есептейтін
2.1.-сурет. Бір кристалды 78K0R/LG3-M микроконтроллер
Айырмашылық ерекшелiктері:
- Бiр фазалық электр энергиясы есептеуiштерiнiң ұлғаймалы функционалдығын қолдауы. Үлкен көлемдi флеш жадының арқасында электр энергиясының бiр фазалық есептеуiштерiндегi әр түрлi функциялардың iске асу мүмкiндiгi.
- Кiрiстiрiлген метрологиялық iшкi жүйе. Микроконтроллерлер құрамына төрт кiрiстiрiлген 24-биттiк аналогты-цифрлық түрлендiргiш (АЦТ) кіреді. Метрологиялық қозғағыш қосымша функцияларды орындау үшiн калибрлеу функциясын және қуат есептеуiшті іске қосады. Құрылымның активті қуатты өлшеуінің жоғарғы дәлдiктерге жетуіне мүмкіндік туады (қателік шамамен 0.1% құрайды).
- Ультратөмен энергия тұтыну. Микроконтроллерлер жұмыс қабiлеттiлiгін қорек көзінің кернеуін 1.8-3.6 В аралығында сақтайды және электр энергиясынан ажыратылған жағдайда кішкене корек көзінің арқасында өте аз энергия тұтынып құрылғының нақты уақыт сағатында жұмыс жасауына мүмкіндік туғызады.
2.2. 8-биттік микроконтроллерлер, XC82/XC83Smart
XC82x және XC83x сериялары 24 Мгц
жиiлiкте жұмыс iстейтiн 8-
Микроконтроллерлердiң ең маңызды мiнездемелерiне коммуникациялық интерфейстер, генерациялы ендік импулсті модулятор сигналы және көп каналды 10 биттiк АЦТ, сонымен бірге төмен энергия тұтынудың қауіпсіз режимін жатқызуға болады. Микроконтроллердің стандартты 8 биттiк мәлiметтердi өңдеуiн көбейту/бөлу модулі арқылы математикалық сопроцессор жылдамдатады. Бұл микроконтроллерлердiң базасында қозғалтқыштардың басқару жүйелерi үшiн тиiмдi және интеллектуалды шешiмдердi құруға мүмкiндiк бередi.
2.2-сурет. Infineon микроконтроллерлерiнің сұлбасы
Ерекшелiктері:
- Сенсорлық басқару (ТЕСҚ-ның кеңейтілген кiтапханасымен);
- Көбейту/бөлу блогы (өнiмдiлiктi қосымша жоғарылату және басқару мүмкiндiктерiн кеңейту үшiн);
- 10 битті төрт каналдық АЦТ;
- Векторлық сопроцессор (коллекторсыз қозғалтқышты векторлық басқару үшiн);
- Тізбектелген интерфейстердің болуы;
- Жұмыстың өшу/қосылу тәртiптері.
Микроконтроллерлердiң XC82x/XC83x
топтары сенсорлық басқару
- Қозғалтқышты басқару құралдары:
- Желдеткiштердi, үрлегiштерді және тағы басқа құрылғыларды басқаруға арналған кеңейтілген коммуникациялық құрымдардың тұрақты тоғының коллекторсыз қозғалтқыштарында;
- Өлшегіш аспаптардың қозғалтқышын тiкелей басқаруда.
- Автомобилдiң сенсорлық басқару құралдары:
- Жарық шығаруда жарық диодтарының сәуле тарату түсiн реттеу;
- Басқару құралдары (терезе көтергiштерді, айнаны, т.б.)
- Автокөлiктiң төбесіндегі люкті басқару;
- Отырғыштарды басқару;
- Орталықтандырылған басқару жүйелерi, мысалы, жылыту, желдету және ауа тазарту;
- Аспаптық панельдерді жарықтандыруды қамтамасыз етуді басқару.
3-БӨЛІМ
МИКРОКОНТРОЛЛЕРДІҢ КОМАНДАЛАР ЖҮЙЕСІ
Микроконтроллердің командалар жүйесі логикалық, арифметикалық операцияларды орындауға, сондай-ақ нақты уақыт режимінде басқарып жұмыс істеуіне улкен мүмкіндік береді.
Командалар жүйесін шартты түрде бес бөлімге бөлуге болады.
- Арифметикалық командалар;
- Логикалық командалар;
- Ақпаратты беру командалары;
- Биттік процессор командалары;
- Басқарма берілісінің және тармақты командалар.
Командалар жүйесінде қолданылатын символдар және белгілеулер кестесі
Белгіленуі, символ |
Тағайындалуы |
А |
Аккумулятор |
Rn |
Таңдалған регистор |
r |
Командада көрсетілген жүктелген регистордың номері |
direct |
Тура адрестелген 8-биттік ішкі мәліметтердің адрес ұяшығы |
@Rr |
Ішкі ЖЕСҚ мәліметтерінің адрестелетін 8-биттік ұяшығы |
data8 |
8-биттік тікелей мәліметтер |
dataH |
16-биттік тікелей |
dataL |
16-биттік тікелей |
addr11 |
11-биттік адрес |
addrL |
Тағайындалған адрестің кіші биттері |
disp8 |
8-биттік байт |
bit |
Тура адрестік бит |
a15, a14...a0 |
Адрес биттері |
(Х)[M] |
Х элементінің М разряды |
|
+ - * / AND OR XOR /X |
Операциялар: Қосу Алу Көбейту Бөлу Логикалық көбейту (және операциясы) Логикалық қосу (немесе операциясы) 2 модулі арқылы қосу Х элементінің инверсиясы |
Микроконтроллерлерде қолданылатын операндтар
Белгіленуі |
Функциясы |
ADC |
Тасымалдаумен қосу |
ADD |
Тасымалдаусыз қосу |
ADIW |
Тікелей мағынада қосу |
AND |
Логикалық AND-ны орындау |
ANDI |
Логикалық AND-ны тіклей мағынада орындау |
ASR |
Арифметикалық оңға жылжыту |
BCLR |
Жалауды тазалау |
BLD |
Бит регисторына Т жалаушасын жүктеу |
BRBC |
Бит регистор жағдайында тазаланған жағдайда өту |
BRBS |
Бит регистор жағдайында орнатылған жағдайда өту |
BRCC |
Тасылмалдау жалаушасы тазаланған жағдайда өту |
BRCS |
Тасылмалдау жалаушасы орнатылған жағдайда өту |
BREQ |
Тең жағдайда өту |
BRGE |
Тең немесе үлкен болған жағдайда өту |
BRHC |
Жартылай тасылмалдау жалаушасы тазаланған жағдайда өту |
BRHS |
Жартылай тасылмалдау жалаушасы орнатылған жағдайда өту |
BRID |
Глобалды үзуге тыйым салынған кезде өту |
BRIE |
Глобалды үзуге рұқсат етілген кезде өту |
BRLO |
Аз болған жағдайда өту (белгісіз) |
BRLT |
Аз болған жағдайда өту (белгімен) |
BRMI |
Минус кезде өту |
BRNE |
Тең емес кезде өту |
BRPL |
Плюс жағдайда өту |
BRSH |
Тең немесе үлкен болған жағдайда өту (белгісіз) |
BRTC |
Т жалаушасы тазаланған жағдайда өту |
BRTS |
Т жалаушасы орнатылған жағдайда өту |
BRVC |
Аса толу тазартылған кезде өту |
BRVS |
Аса толу орнатылған кезде өту |
BSET |
Жалаушаны орнату |
BST |
Т жалаушасына регистрдан битті жазу |
CALL |
Келесі программаны шақыруды орындау |
CBI |
I/O регистрінде битті өшіру |
CBR |
Регистрдағы битты өшіру |
CLC |
Тасымалдау жалаушасын тазарту |
CLH |
Жартылай тасымалдау жалаушасын тазарту |
CLI |
Глобалды үзу жалаушасын тазарту |
CLN |
Теріс мағына жалаушасын тазарту |
CLR |
Регистрді тазалау |
CLS |
Белгі жалаушасын тазарту |
CLT |
Т жалаушасын тазарту |
CLV |
Аса толу жалауын тазарту |
CLZ |
Нольдік мағыналы жалауды тазарту |
COM |
Бірлікке дейін толықтыруды орындау |
CP |
салыстыру |
CPC |
Тасымалдау есебімен салыстыру |
CPI |
Константпен салыстыру |
CPSE |
Тең болса салыстыру және тексеру |
DEC |
Декрементирлеу |
EOR |
Шығаруды орындау |
ICALL |
Келесі программаны жанама шақыру |
IJMP |
Жанама өту |
IN |
I/O портынан мәліметтерді регистрге жазу |
INC |
Инкрементирлеу |
FMUL |
Бөлшекті көбейту |
FMULS |
Сандық бөлшекті көбейту |
FMULSU |
Белгілі және белгісіз (белгісі жоқ) бөлшекті көбейту |
JMP |
Өту |
LD Rd,X |
Жанама жүктеу |
LD Rd,X+ |
Соңынан инкреминтерлеу арқылы жанама жүктеу |
LD Rd,-X |
Алдын ала инкреминтерлеу арқылы жанама жүктеу |
LDI |
Тікелей мағынада жүктеу |
LDS |
Тікелей мағынада ЖЕСҚ-тан жүктеу |
LPM |
Программа жадысына байтты жүктеу |
LSL |
Логикалық солға жылжыту |
LSR |
Логикалық оңға жылжыту |
MOV |
Регистрді көшіру |
MUL |
Көбейту |
NEG |
Екіге дейін толықтыру |
NOP |
Бос команданы орындау |
OR |
Логикалық OR-ді орындау |
ORI |
Логикалық OR-ді тікелей мәнмен орындау |
OUT |
I/O портына регистрден мәліметтерді жазу |
POP |
Стектен регистрді жүктеу |
PUSH |
Стекке регистрді орнату |
RCALL |
Келесі программаны қатысты шақыру |
RET |
Бастапқы программаға кайта оралу |
RETI |
Үзілуден қайта оралу |
RJMP |
Қатысты өту |
ROL |
Тасымалдау арқылы солға жылжыту |
ROR |
Тасымалдау арқылы оңға жылжыту |
SBC |
Тасымалдаумен шегеру |
SBCI |
Тасымалдаудың тікелей мәнімен шегеру |
SBI |
I/O регисторына битті орналастыру |
SBIC |
I/O регистрінде бит тазаланған болса өткізу |
SBIS |
I/O регистрінде бит орнатылған болса өткізу |
SBIW |
Созден тікелей мәнімен шегеру |
SBR |
Регистрге битті орналастыру |
SBRC |
Регистрде бит тазаланған болса өткізу |
SBRS |
Регистрде бит орнатылған болса өткізу |
SEC |
Тасымалдау флагын орнату |
SEH |
Жартылай тасымалдау флагын орнату |
SEI |
Глобалды үзу флагын орнату |
SEN |
Теріс мән флагын орнату |
SER |
Регистрдің барлық биттерін орнату |
SES |
Белгі жалаушысын орнату |
SET |
Т жалаушасын орнату |
SEV |
Толу жалауын орнату |
SEZ |
Нолдік мәне жалауын орнату |
SLEEP |
SLEEP режимін орнату |
ST X,Rr |
Жанама жазу |
ST Y,Rr |
ЖЕСҚ-қа регистрден Ү индексін қолданып жазу |
ST Z,Rr |
ЖЕСҚ-қа регистрден Z индексін қолданып жазу |
STS |
Тікелей ЖЕСҚ-қа жазу |
SUB |
Тасымалдаусыз шегеру |
SUBI |
Тікелей мәнге шегеру |
SWAP |
Ниббл орындарын ауыстыру |
TST |
Нолге немесе минусқа тексеру |
WDR |
Таймерді түсіру (нолге айналдыру) |
Микроконтроллер директивалары
ДИРЕКТИВА |
Мәні |
Мысал |
Басқару директивасы | ||
CONSTANT |
Символдық константты анықтау |
constant cnt=255 |
#DEFINE |
Алмастыру үшiн мәтiндiк тiзбектi анықтама |
#define snd portsnd, 1 |
END |
Программа блогiнiң соңы |
end |
EQU |
Тұрақты шаманың анықтамасы |
temp equ 0xF0 |
ERROR |
Қателiк туралы хабар |
error "error line" |
ERROR LEVEL |
Листингтiң файлында қателiк түрiндегi және файл қателерi туралы хабар қондыру |
errorlevel 1, -202 |
INCLUDE |
Қоректендірудің басқа файлын қою |
include <addmain.asm> |
LIST |
Егер алдын ала тыйым салынған болса форматты (микроконтроллер типі, жолдағы символдар саны) анықтауға рұқсат етеді |
list p=17c42, f=INHX32, r=DEC |
MESSG |
Қолданбалы хабарлама құру |
messg "see here!" |
NOLIST |
Қорытындыға тыйым салу |
nolist |
ORG |
Программаның бастапқы адресi орнату |
org 0x100 |
PAGE |
Листингтiң файлына беттi қыстыру |
page |
PROCESSOR |
Микроконтроллердiң түрiн орнату |
processor 16F84 |
RADIX |
Мәлiметтерлердi бiлдiру үшiн үндемеу бойынша есептеу жүйесiн орнату |
radix dec |
SET |
Тұрақты шаманың анықтамасы. EQU ұқсас, бiрақ кейiнiректе қайта анықтауға болады |
temp set b'00110011' |
SPACE |
Листингтiң файлына жаңа жолды қыстыру |
space 3 |
SUBTITLE |
Листингтiң файлына екiншi тақырыпты қыстыру |
subtitle "Main Project" |
TITLE |
Листингтiң файлына тақырыпты қыстыру |
title "Project Of PIC" |
#UNDEFINE |
Белгiлi мәтiндiк тiзбектi алып тастау |
#undefine snd |
VARIABLE |
Нышандық айнымалының анықтамасы |
variable temp=0xF0 |
Шарт | ||
ELSE |
(IF) баламалы шартты блокгінің басы |
else |
ENDIF |
Шарттың блогiн аяқтау |
endif |
ENDW |
ПОКА циклінің аяқталуы |
endw |
IF |
Шарттың блогiн басы |
if version == 100 |
IFDEF |
Выполнить, если определено |
ifdef testing |
IFNDEF |
Егер анықталынған болса орындау |
ifndef testing |
WHILE |
ПОКА циклы |
while i < count |
Мәліметтер | ||
CBLOCK |
Тұрақты шамалардың блогiн анықтама |
cblock 0x20 |
CONFIG |
Микроконтроллердiң кескiнiнiң битiне сипаттама |
config H'FFFF' |
DATA |
Сандық және мәтiндiк мәлiметтерді жасау |
txt data "please", 0x30 |
DB |
Мәлiметтерлер байтының анықтамасы |
temp db 0xFF |
DE |
EEPROM-де мәлiметтерлердi анықтау |
temp de 0xF0, 0xF1 |
DT |
Кестені анықтау |
temp dt "text", 0, 0x30 |
DW |
Мәлiметтерлер (2 байт) сөзінің анықтамасы |
temp dw 39, "text" |
ENDC |
Тұрақты шамалардың блогiн аяқталу |
endc |
FILL |
Тұрақтылар облысының толтыруы |
fill 0x1009, 5 |
IDLOCS |
ID анықтау |
idlocs H'FFEE' |
RES |
Жадтың сақтауы |
buffer res 64 |
Микроконтроллер жадысын ұйымдастыру
PIC16F87X микроконтроллерлерінде
жадының үш түрі бар.
Бағдарлама жадасын ұйымдастыру. PIC16F87X микроконтроллері РС командасының 13-разрядты санағышына ие, ол бағдарлама жадысының 8К×14 сөздерін адрестей алады. PIC16F877-де 8К×14 FLASH бағдарлама жадысыны физикалық түрде іске асырылған. Физикалық орындалмаған жады бағдарламаларын шақыру орындалған жадының адрестеуіне әкеледі. Бастапқы күйге келтіру векторының адресі – 0000h. Үзу векторының адресі – 0004h.
Деректер жадысын ұйымдастыру. Деректер жадысы жалпы және арнайы (SFR) тағайындалған регистрлері бар 4 банкке бөлінген. RP1 (STATUS<6>) және RPO (STATUS<5>) биттері ақпарат банктерін басқару үшін арналған. Төмендегі кестеде деректер жады банктерін шақыру кезіндегі басқарушы биттердің күйі көрсетілген.
5.1-кесте
RP1:RP0 |
Банк |
00 |
0 |
01 |
1 |
10 |
2 |
11 |
3 |
Деректер жады банкісінің көлемі 128 байт (7Fh) болады. Банктің бас жағында арнайы тағайындалған регистрлеры, одан кейін статикалық ОЕҚ ретінде орындалған жалпы тағайындалған регистрлеры орналасады. Барлық іске асырылған банктердің арнайы таағйындалған регистрлеры болады. Кейбір, жиі қолданылатын арнайы тағайындалған регистрлеры басқа да жады банктерінде бейнеленуі мүмкін.
4-БӨЛІМ
МИКРОКОНТРОЛЛЕРЛЕР АДАМ ӨМІРІНДЕ
Қазіргі заманғы техникалық прогрестің ерекше белгісі – адамның тіршілік әрекетінің барлық салаларында электроника және микроэлектроника құралдарының көмегімен басқарылатын техниканың қолданылуы болып табылады. Бұл уақытта ақылды кибернетикалық машиналардың қолданылуы күнделікті іске айналды. Тұрмыста берілген бағдарламамен жұмыс істейтін ас істейтін, ыдыс және кір жуатын машиналар басқа да адамның жұмысын жеңілдететін техникалыр пайдаланылады.
Ғылым мен техниканың кез-

- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры
- Микроконтроллеры 8051
- Микроконтроллеры AVR
- Микроконтроллеры и микропроцессорные системы
- Микроконтроллеры общего назначения для встраиваемых приложений производства ATMEL Corporation
- Микроклимат производственных помещений
- Микроклимат производственных помещений
- Микроклимат производственных помещений
- Микроклимат производственных помещений. Гигиенические нормативы
- Микроклимат рабочей зоны как фактор опасного и вредного воздействия. Опасность переохлаждения и перегрева организма человека
- Микроконтроллер
- Микроконтроллер