Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
РІС Ерторе.docx
Скачиваний:
9
Добавлен:
13.03.2015
Размер:
281.24 Кб
Скачать

Архитектурасының ерекшелігі

PIC16F8X тобының микроконтроллерлерінің архитектурасы мәліметтер және командалар үшін жеке шиналар мен жады аймақтары тұжырымдамасына негізделген. Мәліметтер шинасының және мәліметтер жадысының (ЖЕСҚ) – 8 биттік ені, ал бағдарлама жадысының және бағдарлама шинасының ені 14 бит. Бұл тұжырым – биттік, байттық және регистрлік операциялар жоғарғы жылдамдықпен жұмыс істейтін қарапайым бірақ қуатты командалар жүйесін қамтамасыз етеді. 14-биттік бағдарлама жадысы бір циклда 14-биттік команданы іріктеуге мүмкіндік береді. Екі сатылы конвейер бір уақытта таңдауды және орындауды жүзеге асырады. Өту командаларын қоса алғанда, барлық командалар бір цикл ішінде жүзеге асырады.

PIC16F8X микроконтроллерлер топтарының қарапайым құрылымдық сұлбасы 1-суретте көрсетілген.

1-сурет. МК PIC16F8X тобының құрылымдық схемасы.

Микроконтроллер құрамында 8-разрядты арифметика-логикалық құрылым біріктірілген. АЛҚ жылжыту, қосу, көбейту және логикалық операцияларды орындайды.

PIC16F87X микроконтроллерлерінде жадының үш түрі бар. Бағдарлама жадысы мен деректер жадысының ақпарат пен деректерінің бөлек шиналары болады, олар жұмыстың параллельді орындалуына мүмкіндік береді.

Деректер жадысын ұйымдастыру.

Микроконтроллердің мәліметтер жадысы екі облысқа бөлінген. Бірінші 12 адрес арнайы тағайындалған регистрлері (SFR) бар функция аймағы, ал екінші аймақ, жалпы тағайындаудағы регистр (GPR). SFR аймағы прибордың жұмысын басқарады.

Екі аймақ та өз кезегінде 0 және 1 банктеріне бөлінген. Деректер жадысы банкісінің көлемі 128 байт (7Fh) болады. Банктің бас жағында арнайы тағайындалған регистрлеры, одан кейін статикалық ОЕҚ ретінде орындалған жалпы тағайындалған регистрлеры орналасады. Барлық іске асырылған банктердің арнайы таағйындалған регистрлеры болады. Кейбір, жиі қолданылатын арнайы тағайындалған регистрлеры басқа да жады банктерінде бейнеленуі мүмкін. RP0 регистр биті статусы нолге тускенде банк 0 таңдалады, RP0 битін орнатқанда банк 1 таңдалады.

2-сурет. Деректер жадысын ұйымдастыру

Бағдарлама жадасын ұйымдастыру.

PIC16F87X микроконтроллері РС командасының 13-разрядты санағышына ие, ол бағдарлама жадысының 8К×14 сөздерін адрестей алады. PIC16F877-де 8К×14 FLASH бағдарлама жадысыны физикалық түрде іске асырылған. Физикалық орындалмаған жады бағдарламаларын шақыру орындалған жадының адрестеуіне әкеледі. Бастапқы күйге келтіру векторының адресі – 0000h. Үзу векторының адресі – 0004h.

PIC16F87X-ң 8-деңгейлі 13-разрядты аппарат стегі бар. Стектің бағдарлама және деректер жадысына бейнесі болмайды, стектен деректерді жазуға немесе оқуға болмайды. Команда санағышының мәндері, (CALL) ішкі бағдарламасына өту немесе үзуді өңдеу нұсқауларын орындаған кезде, стек шыңына енгізіледі. Стектен оқу және РС команда санағышына жазу, ішкі бағдар-ламадан қайту немесе үзуді өңдеу (RETURN, RETLW, RETFIE) нұсқауларын орындағаннан кейін жүзеге асырылады, бұл кезде PCLATH регистрінің мәндері өзгермейді. Стекке 8 жазудан кейін 9-шы жазу 1-ші жазудың орнына жазылады, ал 10-шы 2-шінің орнын алады, солай жалғаса береді.

Бағдарлама жадысының және стектің ұйымдастырылуы 3-суретте көрсетілген. Бағдарлама жадысында адрестің белгіленуі болады. Сброс векторы 0000һ адресі бойынша табылады, үзілу векторы 0004һ адресінен табылады.

3-сурет. Бағдарлама жадысының және стектің ұйымдастырылуы