Үшінші конфигурация тақша



Жұмыс түрі:  Материал
Тегін:  Антиплагиат
Көлемі: 63 бет
Таңдаулыға:   
МАЗМҰНЫ
КІРІСПЕ 5
1 HCS12 БІР КРИСТАЛДЫ МИКРОКОНТРОЛЛЕРЛЕР КЛАСЫ 7
1.1 Кластардың жалпы сипаттамасы 7
2 ELVIS_S12C128ЭКСПЕРИМЕНТАЛДЫ – ЛАБОРАТОРИЯЛЫҚ ҚОНДЫРҒЫСЫ 11
2.1 Қондырғының жалпы сипаттамасы 11
2.2 Микроконтроллердің тақшасы 12
2.3 CSMB12C128 тақшасы + PBMCUSLK тақшасы 17
2.4 CSMB12C128 тақшасы + PBMCUSLK тақшасы + ELVIS II платформасы 20
3 МИКРОПРОЦЕССОРЛЫҚ ЖҮЙЕЛЕРГЕ АРНАЛҒАН CODEWARRIOR ПРОГРАММАЛЫҚ ОРТАСЫ 21
3.1 Өңдеу ортасының жалпы сипаттамасы 21
3.2 CodeWarrior ортасында жоба құру техникасы 23
4 МК MC9S12C128 ПЕРИФИРИЯЛЫ МОДУЛЬДЕРІН ЗЕРТТЕУ 28
4.1 Микроконтроллерлер жайлы жалпы түсінік 28
4.2 Elvis II қондырғысыныңвиртуальды құралдарының жиыны 30
4.4 Микроконтроллердің ШИМ(кең импульсті модуляция) модулін зерттеу 37
4.5 Берілген параметрлері бар жекелеген импульстер генерациясын зерттеу 40
4.6 Аналогты-цифрлы түрлендіргіштің модулі 42
4.7 SPI тізбекті синхронды интерфейсін зерттеу 44
4.8 SCI тізбекті асинхронды интерфейсін зерттеу 46
ҚОРЫТЫНДЫ 48
ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР ТІЗІМІ 49
ҚОСЫМША 50

КІРІСПЕ

Қазіргі заманда микропроцессорларды қолданбайтын техника аймағын табу
қиын. Олар есепетеулер жүргізу, басқару функцияларын жүргізу үшін, сонымен
қатар дыбыстар мен бейнелерді қолданған кезде де пайдаланылады. Қолдану
аймағына қарай микропроцесоарларға деген талаптар да өзгере береді. Бұл
микропроцессордың ішкі құрылымына байланысты. Контроллер термині
ағылшынның control – басқару сөзінен шыққан. Микроконтроллерлер әртүрлі
жұмыс принциптарына негізделіп механикалық немесе оптикалық құрылғылардан
бастап электронды аналогтық немесе цифрлық құрылғыларға дейін пайдаланылуы
мүмкін. Қазіргі кезде кеңінен тараған басқару схемаларының бірі ол, сандық
микросхема негізінде құрылғандар. Контроллерлерге қойылатын талаптар
негізінен басқаруды керек ететін құрылғының өлшеміне байланысты болады.
Контроллерлер тек үлкен жүйелер үшін ғана емес сонымен қатар өлшемі кіші
құрылғылардада керек болады, мысалы радиоқабылдағыштар, радиостанциялар,
магнитофондар немесе ұяшықты аппараттарда. Соңғы уақытта микропроцессорлық
техникада аппараттарды және құрылғыларды программалауда микроконтроллерлер
кеңінен қолданылады. Микроконтроллерлер негізіндегі шешімдер жүздеген
немесе мыңдаған құрылғы шығарылатын жерлерде және соңғы қолданушыға
басқару алгоритмдерін өзгерту қажетболмайтын жағдайларда бағдарланатын
логикалық контроллерге қарағанда тиімдірек болады. Мысал ретінде көліктік
автоматика жүйелерін алуға болады, мұнда жыл сайын миллиондаған құрылғылар
шығарылады және тек солардың өндірушілері контроллерлерді бағдарламалаумен
айналысады. МК негізгі қолдану аясы- өндірістік автоматика және
автомобильдік электроника. Бұл жұмыста он алты разрядты МК МС9S12C128
перифериялы модулдері қарастырылады. Оның ішінде: таймер модулінің кірісін
ұстап алу режимін, микроконтроллердің ШИМ (кең импульсті модуляция)
модулін, аналогты-цифрлы түрлендіргіштің модулін зерттеу жұмыстарын
жүргіземіз, сонымен қатар осы жұмыста МК-ді программалау үшін CodeWarrior
программалау ортасын қолданамыз. CodeWarrior интеграцияланған өңдеу
ортасымен танысу аспектісі өте қызықты. Себебі ассемблер, С, С++ тілдерінде
программалауға да болады. Бұл CodeWarrior-ды әр түрлі оқу үдерісінде
қолдануға мүмкіндік береді.
.

РЕФЕРАТ

Дипломдық жұмыс 70 беттен, 49 суреттен, 14 пайдаланған әдебиеттен
тұрады.
Негізгі ұғымдар: микроконтроллер, интерфейс, CodeWarrior, порт,
программа, код, импульс, микропроцессор, перифериялы модуль.
Жұмыстың мақсаты: 16 разрядты микроконтроллердің перифериялы
модульдерін терең зерттеу. Оның ішінде: таймер модулі кірісін ұстап алу
режимін,микроконтроллердің ШИМ (кең импульсті модуляция) модулін,берілген
параметрлері бар жекелеген импульстер генерациясын,аналогты-цифрлы
түрлендіргіштің модулін,SPI тізбекті синхронды интерфейсін, SCI тізбекті
асинхронды интерфейсін зерттеу.
Зерттеу жұмыстарының өзектілігі: Қазіргі таңда микроконтроллерлер
көптеген заманауи техникаларда кеңінен қолданылады, соның ішінде
робототехникада, автоматикада, автомобильдік электроникада қарқынды
қолданысқа ие. Микроконтроллерді программалау арқылы әртүрлі құрылғыларды
басқаруға болады. Бұл жұмыстағы микроконтроллер бір кристаллда процессор
функциясы мен перифериялы құрылғыларды байланыстырады.
Зерттеу объектісі: MC9S12C128 микроконтроллерінің перифериялы
модульдері
Жұмыстың нәтижелері: Келесідей зерттеу жұмыстары жасалынды:
1) Таймер модулінің кірісін ұстап алу режимі
2) Микроконтроллердің ШИМ (кең импульсті модуляция) модулі
3) Берілген параметрлері бар жекелеген импульстер генерациясы
4) Аналогты-цифрлы түрлендіргіштің модулі
5) SPI тізбекті синхронды интерфейс
6) SCI тізбекті асинхронды интерфейсі
Зерттеу жұмысының нәтижелері құрылғыларды басқаруда және автоматтандыруда
кеңінен қолданысқа ие бола алады.

1 HCS12 БІР КРИСТАЛДЫ МИКРОКОНТРОЛЛЕРЛЕР КЛАСЫ

1.1 Кластардың жалпы сипаттамасы

Freescale Semiconductor компаниясы (Motorola компаниясының жартылай
өткізгішті компоненттерінің бұрынғы секторы) бірнеше жылдар енгізілген
қосымшаларға арналған жартылай өткізгішті компоненттер өндірісте көшбасшы
болып келеді. Микроконтроллерлер және интегралданған процестер оның негізгі
өнімдерінің бірі болып табылады. Freescale Semiconductor әлемдік
өндірушілер арасында микроконтроллерлер менмикропроцессорлардың толық
портфеліне ие, және ол өзінің моделдік тізімін шығарады.
Қазіргі уақытта Freescale Semiconductor өндірушілерге
микроконтроллерлердің және интегралданған микропроцессорлардың көптеген
түрін ұсынады және олардың әрбір класификацияланған микропроцессорлы
элементтік база категориясының келесідей түрлері бар:
8 разрядты МК HCS08 класы бойынша ұсынылған;
16 разрядты МК HCS12(X) және DSP56800E кластары бойынша

ұсынылған;

32 разрядты ColdFire, PowerPC және iMx кластары бойынша ұсынылған.
Freescale Semiconductor портфеліндегі МК-дің кең таралған әр түрлілігіне
және қарамастан алты шығысты 8 разрядты МК мен мықты 32 разрядты PowerPC
қуатты, 406 шығысы бар корпустағы МК-дің арасындағы айырмашылығына
қарамастан Freescale Semiconductor-дың барлық микроконтроллерлік өнімдеріне
тиесілі бір қасиетке назар аударған жөн:
Әрбір кластың құрамындағы МК-дің моделдерінің көпшілігі автомобильдік
сұранысқа ие, яғни ішкі электромагниттік кедергілерге төзетін қасиетке және
әр түрлі қиын климаттық жағдайларда жұмыс істеу мүмкіншілігіне ие.
Freescale Semiconductor компаниясының оналтыразрядты МК-лері қазіргі
уақытта екі түрлі класпен көрсетілген: архитектурасы жағынан өте қызық, екі
процессорлы микроконтроллелердің HCS12(X) клас және DSP микроконтроллерлері
( DSP – Digital Signal Processor – Сигналдарды Цифрлық Өңдеу(СЦӨ)). Бұл
лабораториялық практикумда S12 класының МС9S12C128 микроконтроллері
зерттеледі [1].
HCS12(X) класының МК негізгі қолдану аясы- өндірістік автоматика және
автомобильдік электроника. Қолданылу облыс спецификасы осы клас
сипатталатын үш ерекшелікті анықтайды:
МК-дің классы үдестірілген басқару жүйелерінің интелектуалды
түйіндері ретінде жұмыс істеуге арналғандықтан, кристалға интегралданған,
тізбектік интерфейстердің әр түрлі контроллерлерінің үлкен санының болуы;
Тұтынушының қайта программаланатын тұрақтыларды сақтауға арналған
EEPROM маңызды облысындағы көптеген МК-лер моделдерінің құрамында
болуы, автомобилдік қолданыста электрлік сәйкестікті қамтамасыз ете алатын,
кластың көптеген моделдерінің кернеуі – 5.0 В.
HCS12(X) класы негізінде CPU12 процессорлы ядро жатыр. CPU12 жалпы
аты ретінде орталық процессордың программалы-логикалық моделін түсінген
жөн, әйтсе де тактілеу жүйесі, энергия сақтау режимі және процессорлық
ядро құрамындағы ішкі схемалық түзету модулі тұрақты түрде іске асырылып
отырады. CPU12 адресациялау әдістерінің алуан түрлігі, ЖЕСҚ-ның толық
адрестік кеңістігінде биттерді манипуляция жасау мүмкіндігі, минималды және
максималды мәндер адресі бойынша таңдау және орналастыруға қатысты көптеген
салыстыру командалары қолданбалы программаның орындалу кодының жинақылығын
қамтамасыз етеді [1].
CPU12 процессорлық ядросы тактілеу жиілігінің жиілігінің жоғарлауын
алып жүруші технологиялық процесті іске асыру және жаңа түп нұсқалы сол
прцессордың ядросының құрамында пайда болуға алып келген архитектураның
жүзеге асу бағыттарында дамуын жалғастыруда. Қазіргі уақытта HCS12(Х)
класында процессорлық ядроның 3 модификациясы бар:
Кластың басты секторы – ішкі шинаның жиілігі 8 МГц болатын HC12
процессоры;
Қазіргі уақытта белсенді түрде қолданылатын HCS12 процессоры – 25
МГц;
Freescale Semiconductor компаниясының МК тұтынушылары процессорлық
ядро типіне сәйкес үш кластың терминологиясын жиі қолданады, олар: HC12
класы, HCS12 класы, HCS12X класы.
Процессорлық ядроның техникалық сипаттамаларының айырмашылығына
қарамастан HCS12(X) класы МК-нің барлық моделі сипатты ерекшеліктерге ие:
8 және 16 разрядты операндылармен операциялар жүргізуге мүмкіншілік
беретін, үнемді, 16 разрядты CISC процессорлы ядро бар. HC12 класы үшін
ішкі шиналардың максимал жиілігі 8 МГц, 25 МГц - HCS12 үшін, 50МГц -
HCS12(X) үшін. Тактілеу жиілігінің төменгі шекарасы жоқ, және ол енгізілген
аз жиілікті тактілеу генераторының процессорлы ядрода бар болуна мүмкіндік
береді. Бұл тактілеу генераторы ішкі жоғары жиілікті тактілеу генераторы
істен шығып қалған жағдайда жүйенің жұмыс істеу қабілетін сақтап қалуға
арналған. CPU12 командалар жүйесі ассемблер тілінің 208 нұсқаулығына ие,
оның ішінде белгісі бар және белгісі жоқ он алты разрядты операдыларды
бүтін санды көбейту командалары, бүтін санды және бөлшек түріндегі 16:16,
32:16 бөлу командаларының бес түрі, максималды және минималды сандарды
таңдау командалары, көмескі логикалық операцияларды жүзеге асыру
командалары бар.екі байтты сандарды қосу және азайту операциялары МК-дің
ішкі шинасының 4 тактісінде іске асырылады. CPU12-да адресациялаудың 16
тәсілі бар, логикалық және арифметикалық командалар тобының әрбір
командасының орындалуы ең аз дегенде адресациялаудың 12 тәсілін қолдану
арқылы мүмкін болады. Адресациялаудың барлық тәсілдері мүмкін болатын
командалары бар процессорларды ортогоналды деп атау қабылданған. Сондықтан
CPU12 өзінің қасиеттеріне байланысты ортогоналдыға өте жақын. CPU12 екі жад
ұяшықтары немесе екі арнайы функциялы регистрлер арасындағы 8 және 16
разрядты мәліметтерді тасымалдауға мүмкіндік беретін екі адресті
командаларға ие [3].
Программаның flash - жадысының енгізілген модулі бар. HCS12 және
HCS12Х кластарының МК-лерінің 0.25 мкм технологиясы бойынша дайындалған
үшінші буынның flash-жадысының модулі (Freescale Semiconductor
компаниясының классификациясы бойынша) бар. Үшінші буынның flash-жадысының
модулдері температураның толық диапазонында (-400С-тан +1250С-қа дейін)
ішкі жоғарылатқыш кернеу регуляторын қолдану арқылы өшірупрограммалау
операцияларын орындайды. Flash ТЕСҚ модулінің құрамындағы басқару блогында
мәліметтерді жазудың және оларды алдағы уақытта сақтаудың жоғары
қауіпсіздігін қамтамасыз ететін уақытша кешігулерді құрастыру міндетін қоса
алғандағы программалау іс-әрекеттерінің барлық тізімін қамтамасыз ететін,
кірістірілген түпкі автоматы бар. Бұдан басқа ішкі схемалық програмалау
оңайланады, соның нәтижесінде программалау алгоритмі қысқарады.
Температураның толық диапазонында программалау циклдерінің кепілденген саны
– 10000, 256 КБ-ты жазу уақыты 5 сек шамасында. МК-дің резидентті flash-
жадысы төрт сегментке бөлінген, бір сегменттен екінші сегментті
программалау мүмкін болады, яғни, ЖЕСҚ-на басқару программасының фрагментін
жүктеу қажет етілмейді [2].
HSC12(X) класының көптеген моделдерінің кристалында flash ТЕСҚ-ның
арнайы, EEPROM эмуляция функциясына ие модулі бар. Әдетте ол 16 разрядты
сөздермен оқылуға арналған көлемі 4КБ немесе 2КБ болатын жад ұяшығының
массиві болып табылады. Өшіру және программалау екі сөзден тұратын блок
арқылы, яғни, әрбір блокта 4 байт бойынша жүзеге асады. Өшіру операциясын
орындау барысында жад ұяшығының санының EEPROM модулінің толық көлеміне
дейін үлкеюі рұқсат етіледі.
HCS12(X) класының МК-нің көлемі үлкен (512КБ-қа дейін) резидентті
ТЕСҚ-сы бар болғанына қарамастан, көптеген моделдер өздерінің кристалында
программалардың және мәліметтердің қосымша жадын адрестеуге мүмкіндік
беретін EBUS ішкі жадының интерфейс модуліне ие [4]. Көптеген моделдерде
ішкі шинамультиплексорланға, яғни 8 разрядты порттардың үш желісінің орнын
алады. Ішкі жадыға мәліметтердің 16 разрядты және дәл сол секілді
мәліметтердің 8 разрядты магистралін қолдану арқылы жүгінуге болады.
Клас модульдерінің кітапханасының екі жаққа бағытталған жеке
программаланатын желілері бар енгізу-шығару порттары бар; ішкі оқиғалардың
қосымша санағышы және сегіз ICOC каналдары бар 16 разрядты уақытша базаға
ие көпфункционалды таймер; тізбекті жылжитын 8 каналды 10 разрядты АЦТ
модулі; 8 немесе 16 бит қасиетін рұқсат етіп программаланатын және уақытша
база таймеріне тәуелсіз жалпы тағайындау КИМ модулі; ЦАТ модулі; өзге де
арнайыландырылған модульдер.
HSC12(X) класының барлық МК-лері кристалда BDM ішкі схемалық дұрыстау
модулінің бар болғандығынан жүйеде дұрыстау және програмалау режимдерін
жүзеге асыруға мүмкіндік береді. Қазіргі уақытта Freescale Semiconductor
компаниясы HCS12 процессорлы ядросы бар 40-тай МК-лер шығарады. Стандартты
периферияның әр түрлі жиынтығының (таймерлер, АЦТ, тізбектік енгізу-шығару
контроллерлері,КИМ модуляторлары) негізінде модельдік қатарды жасау процесі
тоқтатылды деп есептеуге болады. HCS12 класының соңғы модельдері
арнайыландырылған периферияларымен шығарылуда. HCS12 процессорлық ядросының
алғашқы нұсқасы бар МК-лер өзінің шығарылуын жалғастыруда. Оқушы модельдік
қатармен http:www.freescale.com сайтында таныса алады. Freeescale
Semiconductor үшін әдеттегідей бір клас ішіндегі микроконтроллерлерді бір
серияға топтастыру келісілген. Бір сериялы МК-лер перифериялардың сол бір
жиынтығына ие, бірақ олардан резидетті жад көлемімен және енгізушығару
порттарының желілер санымен ерекшеленеді. HCS12 класының модельдік қатарын
өңдеу барысында өңдеушілер МК сәйкестігіне мұқият қарады [1].

2 ELVIS_S12C128ЭКСПЕРИМЕНТАЛДЫ – ЛАБОРАТОРИЯЛЫҚ ҚОНДЫРҒЫСЫ

2.1 Қондырғының жалпы сипаттамасы

ELVIS_S12C128 эксперименталды қондырғының сыртқы көрінісі 2.1 суретте
көрсетілген. Қондырғы электронды компоненттері бар 3 тақшадан тұрады [1].
CSMB12С128 тақшасы Freescale Semiconductor компаниясының 16 разрядты
микроконтроллерінде микропроцессорлық техниканың негізін үйретуге
негізделген. Осы тақшада зерттеліп отырған MC9S12C128 типінің ИС
орнатылған, сондай-ақ интерфейсті дұрыстау және Turbo BDM Light USB
бағдарламауы жинастырылған. CSMB12С128 тақшасында енгізу-шығару ақпаратының
құрылғысы бар. Бұл үйренудiң бастапқы кезеңiнде осы тақшаны екі басқа
тақшалардан бөлек зертханалық тәжiрибелер үшiн қолдануға мүмкiндiк береді.
Екінші тақша – PBMCUSLK әмбебап платформасы. Бұл платформа Freescale
Semiconductor компаниясының әртүрлі типтегі микроконтроллерлерін зерттеуге
қолданылады. Платформа өзіне 5.0 және 3.0 В тұрақтандырылған қоректенуді,
Turbo BDM Light USB бағдарламасын дұрыстау интерфейсін және әртүрлі
құрылғыларды алып жүреді. PBMCUSLK қосымша енгізу-шығару құрылғысына ие,
ол зерттеліп отырған микроконтроллер мен қолданушы арасындағы интерфейсті
кеңейте түседі. PBMCUSLK платформасы дербес құрылғы ретінде қолданылмайды,
тек CSMB12С128 тақшасымен бірге ғана қолдануға болады. Конструкцияның
негiзiндегi сұр модуль – бұл National Instruments компаниясының Elvis II
оқу қондырғы. Оның құрамында LabVIEW ортасында құрылған виртуалды құрылғы
мен PBMCUSLK тақшасы арасындағы байланысты жүзеге асыратын электрондық
схемасы бар. Оларды микроконтроллер үшін басқару сигналдары ретінде
қолдануға өте ыңғайлы. ELVIS_S12C128 оқу қондырғысының толық жиынтығында,
аталған 3 құрылғыдан тұратын, кейбір аяқталған қосымшаларды С тілінде
немесе ассемблер тілінде құруға қабілетті және микроконтроллерлерді
программалаудың негізін игерген оқушы қолдана алады. Аталған құрылғылардың
негізінде экспериметалды қондырғының 3 конфигурациясын құруға болады:
CSMB12С128 тақшасы + ДК. Екі компонент бір-бірімен USB кабелдің
көмегімен жалғанады. Бұл ретте CSMB12С128 тақшасы ДК-дан осы интерфейс
арқылы қоректенеді.
CSMB12С128 тақшасы + PBMCUSLK платформасы + ДК. Бірінші компонент
екіншінің арнайы тіркеуіші орнатылады. CSMB12С128 тақшасының қоректенуі
әмбебап платформаның кіріктірме тұрақтандырғышы арқылы жүзеге асады.
Соңғысы, энергияны тұтынады немесе электр желісінен адаптер арқылы ~ 220 В
9 В, немесе ДК-мен байланыс USB интерфейсі арқылы жүзеге асады [9]. Осы
тақшада зерттеліп отырған MC9S12C128 типінің ИС орнатылған.
CSMB12С128 тақшасы + PBMCUSLK тақшасы + ELVIS платформасы + ДК.
Қондырғыдағы барлық компоненттердің қоректенуі Elvis II платформасына
қосылған адаптердің көмегімен жүзеге асады. Компьютермен байланыс екі USB
кабельдің көмегімен жүзеге асады: біреуі – виртуалды құрылғыларды
басқаруға, ал екіншісі – микроконтроллерді ретке келтіруге жауап береді.

2.1 сурет - ELVIS_S12C128 қондырғының сыртқы көрінісі

MC9S12C128 микроконтроллерімен зерттеу жүргізудің 4 нұсқасы бар. Бұл
жұмыс енгізу-шығару виртуалды құрылғысын қолданумен толық программалық
симуляция режимінде орындалады. Толық программалық симуляция
микроконтроллерді қолданбай-ақ, үлкен емес программаларды ретке келтіріп
орындауға мүмкіндік береді.

2.2 Микроконтроллердің тақшасы

80 шығысымен QFP корпусында - MC9S12C128 біркристалды
микроконтроллер. Ретке келтіру интерфейсі және микроконтроллердің
кіріктірме тұрақтандырғыш кернеу қоректенуімен Turbo BDM Light USB
программалау. BDM адаптері MC908JB16FAE тақшасының арғы жағында орналасқан
MC908JB16FAE микроконтроллердің негізінде орындалған [5]. Пайда болған
бетте Software &Tools қосымша бетті таңдаймыз. Аталған құрылғылардың
негізінде экспериметалды қондырғының 3 конфигурациясын құруға болады.

2.2.1 сурет - CSMB12С128 тақшасының сыртқы көрінісі

4-жарықдиод(LED1..LED4). Осы элементтерді жағатын активті деңгей
логикалық нөл болып табылады.
4-ауыстырып-қосқыш(SW3-1..SW3-4). Олардың схемотехникалық құрылғысы
дрезбергтен аппараттық қорғауды қамтымайды. Қажет болған жағдайда студент
осы функцияларды программалық деңгейде орындай алады.
2-белгіленбеген батырмалар (SW1 және SW2). Олардың схемотехникалық
құрылғысы дрезбергтен аппараттық қорғауды қамтымайды. Қажет болған жағдайда
студент осы функцияларды программалық деңгейде орындай алады.
1-потенциометр(RV1). Микроконтроллердің AD портының 5-ші кірісіне
кернеудің аналогты деңгейін тапсыруға мүмкіндік береді.
1-фотодатчик(RZ1). Фототранзисторды негізінде орындалған. Сигнал
одан операциялық күшейткішпен күшейеді және AD микроконтроллердің 4-ші
аяғына аналогты түрде келіп түседі.
RS-232 интерфейсі тізбекті асинхронды интерфейс бойынша
микроконтроллер мен компьютер арасындағы жіберетін мәліметтерді зерттеу
үшін қолданылады.
CSMB12С128 тақшасының компьютермен бірге жұмыс режимі келесідей түрде
жүзеге асады. Ең алдымен CodeWarrior Development Studio for S12(X)
программалық пакетін орнату керек. Программалық пакетті freescale.com
сайтынан жазамыз. Products → 16 - bit Microcontrollers → S12 and S12X →
S12C таңдаймыз. Пайда болған бетте Software &Tools қосымша бетті
таңдаймыз. Осыдан CodeWarrior for HCS12(X) Microcontrollers белгісі бар
сілтемені басып таңдауымыз қажет. Пайда болған бетте CodeWarrior пакетінің
әртүрлі версиялары бар салыстырмалы кестесі көрсетіледі. Тегін Special
редакциясын таңдап және осы сөздің жанындағы Get сілтемесіне басамыз. Одан
кейін жаңа кестенің Special Edition: CodeWarrior for S12(X)
Microcontrollers V5.0 қатарындағы Download батырмасын басамыз. Осыдан кейін
программамыз жүктеледі.

2.2.2 сурет - CSMB12С128 тақшасында құрылғыларды қосудың функционалдық
схемасы

Аталған құрылғылар мен зерттеліп жатқан микроконтроллердің функционалдық
схемасы 2.2.2 суретте келтірілген.

2.2.3 сурет - CSMB12С128 тақшасында ұстатқыштардың орналасуы

Тақшаны компьютерге қоспас бұрын оған 2.2.3 суретте көрсетілгендей
ұстатқыштарды орнатамыз. Суретте орнатылған ұстатқыштар қызылмен
белгіленген. Осыдан кейін CSMB12C128 тақшасында тіркеуіш кабелімен қосу
керек. ОС Windows ортасы жаңа белгісіз құрылғысын тауып және ол үшін
драйверді орнатамыз.

2.2.4 сурет - CSMB12C128 тақшасы үшін драйверді орнату мастерінің бірінші
терезесі

Жаңа құрылғыны орнату мастерінде ең алдымен интернет жүйесінен драйверді
іздеуден бас тарту қажет (2.2.4 сурет).

2.2.5 сурет - CSMB12C128 тақшасы үшін драйверді орнату мастерінің бірінші
терезесі

содан кейін “Далее ” батырмасын басамыз (2.2.5 сурет).

2.2.6 сурет - Драйверді іздеу және оны орнату

Ары қарай драйверді іздеу және оны орнату іске асырылады (2.2.6 сурет).

2.2.7 сурет - CSMB12C128 тақшасы үшін драйверді орнатудың аяқталуы

2.3 CSMB12C128 тақшасы + PBMCUSLK тақшасы

PBMCUSLK тақшасы – Freescale Semiconductor компаниясының
микроконтроллерлерін зерттегенде қолданылатын әмбебап платформа. Бұл модуль
қосымша енгізу-шығару құрылғыларын қолдануға мүмкіндік береді: 8 батырма, 8
жарық диодтары, 8 ауыстырып-қосқыш және тағы басқа элементтер.

1. сурет - CSMB12C128 модулінің J1 тіркеуішін ажырату

CSMB12C128 тақшасы 5В кернеуге ие, ал PBMCUSLK платформасы 3.3-5В кернеуге
ие. CSMB12C128 модулінің J1 тіркеуішін ажырату 2.3.1 суретте көрсетілген.
Бұл тіркеуішпен микроконтроллердің тақшасын PBMCUSLK платформасының J5-не
қосу керек. Енді компьютермен байланыc SMB12С128 тақшасы арқылы емес,
PBMCUSL платформасының USB-тіркеуіші арқылы қамтамасыз етіледі.
2.3.2 сурет - CSMB12С128 және PBMCUSL тақшаларында және олардың
компьютермен бірге қолдануындағы ұстатқыштардың орналасуы

Қондырғыдағы элементтерді қосар алдында ұстатқыштарды 2.3.2 суреттегідей
орнату керек [11].

2.3.3 сурет - PBMCUSL тақшасы үшін драйверді орнату

Осыдан кейін PBMCUSLK тақшасындағы тіркеуіштерді және компьютерді USB-
кабельмен қосу керек. ОС Windows ортасы жаңа белгісіз құрылғыны табуы
керек. Егер бұрын CodeWarrior Development Studio for S12(X) ортасы
орнатылған болса, онда драйвер автоматты түрде табылуы керек (2.3.3 сурет).

2.4 CSMB12C128 тақшасы + PBMCUSLK тақшасы + ELVIS II платформасы

ELVIS II қондырғысы микроконтроллерді зерттеу барысында виртуалды
құрылғыларды қосуға мүмкіндік береді. ELVIS II платформасындағы негізгі
стандартты құрылғылар:
DMM сандық мультиметрі. Токтың, кернеудің, кедергінің және басқа да
параметрлерді өлшеуге мүмкіндік береді.
SCOPE осциллографы. ELVIS II қондырғының бүйірінде немесе PBMCUSLK
тақшасының жоғарғы тіркеуіштерінде 2канал жетімді.
FGEN функционалды генераторы. Қондырғының бүйіріндегі FGEN шығысында
немесе PBMCUSLK тақшасының FUNC OUT жоғарғы тіркеуіштерінде параметрлері
анықталған синусоидалды, үшбұрышты, тікбұрышты сигналдарды беруге
мүмкіндік береді.
VPS өзгергіш қорек көздері. Оң және теріс полярлығы бар екі кернеу
көзі виртуалды құрылғының беттік панелі бойынша да және ELVIS II
қондырғыдағы тұтқашалар арқылы басқарыла алады.
ARB өңделген формадағы генератор сигналы. PBMCUSLK тақшасының
тіркеуішінде екі канал (DAC0,DAC1) қол жетімді.
DigIn сандық кодты оқу құралы. PBMCUSLK тақшасында 8 сандық желілер
күйін жазады және бейнелейді.

3 МИКРОПРОЦЕССОРЛЫҚ ЖҮЙЕЛЕРГЕ АРНАЛҒАН CODEWARRIOR ПРОГРАММАЛЫҚ ОРТАСЫ

3.1 Өңдеу ортасының жалпы сипаттамасы

CodeWarrior (ауд.- кодтармен күресші) – енгізілген микропроцессорлық
жүйелерге арналған өңдеудің программалық қамтамасыздандырудың
интеграцияланған ортасы. IDE CodeWarrior-дың сырты – бұл стандартты Windows
қосымшасы. Ол программаның мәтінімен файлдарды жасауға және оларды жобаға
ұйымдастыру мүмкіндік береді [14]. Бұған қосымша өңдеу ортасы автоматты
компиляцияны, микроконтроллерге арналған дайын абсолютті программаның
модулін алу үшін барлық қажетті берілген мәліметтерді жүктеуді қамтамасыз
етеді. CodeWarrior-дың басқару сыртының жұмыс режимінің екі типі бар:
Программаның құру (Build) режимі қосымшаның барлық файлдарын
трансляциялауға және программаның дайын жіберуші алуға мүмкіндік береді.
Дұрыстау ррежимдері (Debug) қосымшаны тексеруді және дұрыстауды
енгізілген тексерудің немесе симулятордың көмегімен қамтамасыз етеді.

3.1.1 сурет - Интеграцияланған CodeWarrior өңдеу ортасының құрылымы

CodeWarrior пакетінің құрамында бір-бірімен байланысқан программалық
модульдербар. Олар: жоба менеджері, интерактивті қателері бар редактор,
компиляцияны басқару модулі және т.б. оның құрылымы нақтырақ 3.1.1 суретте
келтірілген.
Freescale Semiconductor компаниясының универсалды өңдеу ортасы
негізінде анықталған микросхеманың категорияларына бағдарланушы
программалық құралды шығарады. Мұндай пакеттерге микроконтроллердің немесе
процессорлар класына бағыттауышы бар CodeWarrior Development Tools-тың
немесе CodeWarrior Development Studio-ның аты беріледі. Бұл жұмыста біз IDE
CodeWarrior Development Studio for S12(X)-ті қолданамыз.
CodeWarrior интеграцияланған өңдеу ортасымен танысу аспектісі өте
қызықты. Себебі ассемблер, С, С++ тілдерінде программалауға да болады [12].
Бұл CodeWarrior-ды әр түрлі оқу үдерісінде қолдануға мүмкіндік береді.
Олар: ассемблер тілінде міндетті түрде базаланатын микропроцессорлық
техника негіздері курсынан бастап жоғары деңгейлі программалау тілдерін
қолдануға тура келетін оқыту деңгейінің мәліметтерді жүктеу және басқару
жүйелеріндегі МК-лердің жұмыс алгоритмдерін зерттеу курстарына дейін.
Бір кластың әр түрлі МК-лерінде орындалған аппараттық құралдарды қосу
мүмкіндігі бар CodeWarrior ортасының тұтас графикалық интерфейсі оқу
лабораториясының техникалық құралдары қасиеттерінің көрінісін өзгертеді.

3.1.2 сурет - CodeWarrior ортасының программаны түзетуінің қолданбалы
графикалық интерфейсі

Дәл нақты контроллермен жұмыс істеу режимінде сияқты толық программалық
симуляция режимінде де тұтас программаны түзету ортасы тек оқушыға ғана
емес, сонымен қатар тәжірибелі өңдеушіге де өте қолайлы. Симуляция
режимінде басқару объектісінің қосылуы мүмкін еместігі кез келген оқу
процесінің аналогты қиындығы болып табылады. CodeWarrior авторлары бұл
мәселе қолданушылардың өкіміне қарай енгізушығару виртуалды құралдары және
басқару объектілерін жеткізу арқылы шеше білді.
CodeWarrior пакетінің программалы-логикалық симуляторы Visualization
Tool бөлімін қолданып қолданушының өзі құрастыра алатын немесе дайын
тізімнен таңдап алынатын арнайы ішкі объектілермен жабдықталған. Олар
микропроцессорлық жүйенің енгізу-шығару типтік құрылғыларының графикалық
кескінін генерациялайды, бұл құрылғыларды МК-дің порттарына қосуды
қамтамасыз етеді және әрбір құрылғының жұмыс істеу алгоритмін моделдейді
[14].

3.2 CodeWarrior ортасында жоба құру техникасы

Бұл бөлімде MC9S12C128 микроконтроллерінің архитектурасы, оның
адрестік кеңістігінің таралуы және HCS12 орталық процессорының программалы-
логикалық моделі қарастырылады. Сонымен қатар, ассемблерде программа
жазудың қарапайым үлгісі, микроконтроллерге жүктеуге арналған машиналық код
түріне программаның берілген мәтінін түрлендіру техникасы, IDE CodeWarrior
Development Studio for S12(X) (симулятор) программалы-логикалық моделін
қолдану арқылы өңделген программаны түзету техникасы зерттеледі [12].
Кейбір басқару программаларын жасауға арналған әрбір лабораториялық
жұмысты орындау барысында келесі іс-әрекеттерді жүзеге асыру қажет:
CodeWarrior өңдеу ортасының енгізілген редакторын қолдана отырып
берілген программа мәтінін ассемблер тілінде енгізу.
Микроконтроллердің жадына жүктеуге арналған машиналық кодты алу үшін
қолданбалы программаның мәтінін ассембрлерлеу.
Микроконтроллер жадына жазылған программаның машиналық кодын жүктеу.
Программаның дұрыс орындалуы үшін керекті берілген мәліметтерді
микроконтроллер жадына енгізу.
Программаның орындалуы,оның жұмыс нәтижесінің сараптамасы.
Жіберілген қателіктерді түзету.
Жоғарыда жазылған тізбекті енгізілетін микропроцессорлық жүйе үшін
қолданбалы басқару программасының дұрысталу және өңделу процесі деп атауға
болады. CodeWarrior пакетімен жұмыс істеуді бастау үшін келесі
операциялар тізбегін орындау қажет. Ол үшін CodeWarrior Development
Studio for S12(X) программасын іске қосу керек. Егер көрсетілген тізімде
қажет микроконтроллер болмаса, онда жаңалау мастерін (CodeWarrior Updater)
қолдану керек. CodeWarrior-дың профессионалды версиясында Processor Expert
құралының көмегімен кейбір алгоритмдер үшін берілген кодты жасауға болады.
Дәл нақты контроллермен жұмыс істеу режимінде сияқты толық программалық
симуляция режимінде де тұтас программаны түзету ортасы тек оқушыға ғана
емес, сонымен қатар тәжірибелі өңдеушіге де өте қолайлы. Мұндай пакеттерге
микроконтроллердің немесе процессорлар класына бағыттауышы бар CodeWarrior
Development Tools-тың немесе CodeWarrior Development Studio-ның аты
беріледі.

3.2.1 сурет - Бастапқы іс-әрекетті таңдау терезесі

Алғашқыда 3.2.1 суретте көрсетілгендей терезе пайда болады. Жаңа жоба
құру үшін ондағы Create New Project батырмасын шерту керек. Егер бұрын
басталған программаны ашу керек болса, онда Load Previous Project пунктін
таңдау қажет.

3.2.2 сурет - Жоба құрудың алғашқы терезесі

Осы терезеде (3.2.2 сурет) жоба құратын МК-дің моделін таңдау қажет. Ол-
MC9S12C128. Егер көрсетілген тізімде қажет микроконтроллер болмаса, онда
жаңалау мастерін (CodeWarrior Updater) қолдану керек. Connections жолағында
қолданатын жобаның программаны дұрыстау тәсілін таңдау керек. Бұл жұмыста
екі таңдау нұсқасы бар:
Full Chip Simulation – таңдап алынған микроконтроллердің толық
программалық симуляциясы. Бұл жағдайда компьютерлік модель қолданылады, ал
нақты элемент қажет етілмейді. Программаны дұрыстаудың мұндай тәсілі
алгоритмдерді алғаш тексеру үшін, уақытты тексеру үшін және оның аппараттық
құрылғыларды қолданбай орындалуын тексеру үшін қолданылады.
TBDML - Turbo BDM Light интерфейсін қолдану арқылы аппараттық үлгіде
қосымшаның программасын дұрыстау. Компьютермен байланыс үшін программасы
дұрысталатын микроконтроллердің тақшаснда BDM (Background Debug Mode)
адаптері орнатылған болуы тиіс.

3.2.3 сурет - Жоба құрудың екінші терезесі

МК-ді таңдағаннан кейін келесі терезеге көшу керек (3.2.3 сурет). Бұл
жерде МК-ді программалайтын бір немесе бірнеше тілді, жоба атын, жоба
файлдарына арналған папканы таңдау қажет.
CodeWarrior пакетінің бірнеше программалау тілі бар: ассемблер, С
және С++. Оларды бірге бір жобада қолдануға рұқсат етілген. С тілі
Freescale Semiconductor компаниясының сайтынан жазып алуға болатын тегін
арнайы версиясында программаның максималды көлемі 32 КБ-пен шектелген IDE-
нің барлық версия қолдайды. С++ тілі CodeWarrior-дың профессионалды
версиясын ғана қолдайды. Төмен деңгейлі тілдердің ішінен қолданушы
программалау барысында айнымалылар программисттің өзінің белгілеген жад
ұяшықтарында орналасатын абсолютті ассемблер тілін таңдай алады. Бастапқы
деңгейде ассемлер тілін қолданамыз [14]. Сондықтан С тілінің қасында тұрған
жалаушаны алып тастап, оны Absolute assembly опциясының қасына
белгілейміз. Осы терезеде Project name жолағында жасалынатын жобаның атын
теру керек, ал Location-да оның файлдарының орналасу жолы көрсетіледі.
Set... батырмасы арқылы бірден папканы көрсетуге болады, онда оның аты
автоматты түрде жолаққа көшіріледі.

3.2.4 сурет - Жоба құрудың үшінші терезесі

Осы терезеде (3.2.4 сурет) жаңадан жасалынып жатқан жобаға дайын бар
материалды қосуға болатын мүмкіндік көрсетілген. Ол үшін керек файлдарды
кезек-кезек таңдап, (Add) батырмасын басу керек. Copy files to project
пунктін белгілеу жаңа жоба папкасына таңдалынған материалдардың автоматты
түрде көшірмесін жасауға алып келеді, ал Create main.cmain.asm пунктінің
қасына жалауша қою берілген коды бар негізгі файлдың автоматты түрде
құрылуына алып келеді [14].
Егер өзге сырт файлдарды қосу керек болса, онда жай ғана Next -ті
басу керек. 4 терезесі жаңа жобаны конфигурациялауда аяқтаушы болып
табылады. Бұл жерде БҚ-дың өдеуді жылдамдатуға арналған компонетті таңдау
қажет. Барлығы үш нұсқа қол жетімді:
None – қосымша құралдарды пайдаланбау.
Device Initialization – перифериялы құралдарды инициализациялау
құралы. Интуитивті түсінікті интерфейстің көмегімен қолданушы МК-дің әр
түрлі модульдерінің бастапқы жұмыс істеу режимдерін таңдайды. Содан кейін
Device Initialization С-де немесе ассемблерде берілген кодты автоматты
түрде генерациялайды. Онда арнайы функциялардың керекті регистрлеріне
сәйкес екілік мәндегі орнату операциялары жазылады.
Processor Expert – типік функцияларды автоматты түрде құрушы және
құрылғыларды инициализациялау құралы. Device Initialization секілді ол да
перифериялы модульдердің бастапқы тәртіптерін орнатуға арналған мәтінді
автоматты түрде генерациялауға мүмкіндік береді. Бұл жерде БҚ-дың өдеуді
жылдамдатуға арналған компонетті таңдау қажет. CodeWarrior-дың
профессионалды версиясында Processor Expert құралының көмегімен кейбір
алгоритмдер үшін берілген кодты жасауға болады. Бұл арнайы функциялардың
керекті регистрлеріне сәйкес келеді. Төмен деңгейлі тілдердің ішінен
қолданушы программалау барысында айнымалылар программисттің өзінің
белгілеген жад ұяшықтарында орналасатын абсолютті ассемблер тілін таңдай
алады.

3.2.5 сурет - Жоба құрудың төртінші терезесі

Бұл жұмыста микроконтроллерді және оның компоненттерін өз бетінше
күйге келтіруді үйреніп алу қажет, сондықтан None опциясын таңдау керек.
Finish батырмасын басқаннан кейін CodeWarrior Development Studio for
S12(X) интегралданған өңдеу ортасының негізгі терезесі ашылады.

4 МК MC9S12C128 ПЕРИФИРИЯЛЫ МОДУЛЬДЕРІН ЗЕРТТЕУ

4.1 Микроконтроллерлер жайлы жалпы түсінік

Зертханалық жұмыс 3 бөлімнен тұрады:
1) HCS12 класына жататынон алты разрядты микроконтроллерлер
зертханалық жұмыс алғаш микропроцессорлық техниканы оқып үйренушілерге
арналған. Бұл жұмыс 16 разрядты процессорлық ядроның CISC-архитектурасының
құрылымымен танысуға және 8-16 разрядты микроконтроллерлерге жарамды
операндтарды адресациялауға, инструкция жиыны мен мнемоникалық команда
әдістерін қолдануға, программалаудың ассемблер тiлінде орнықты дағдыларды
алуға мүмкіндік береді. Бұл практикум бір семестрлік микропроцессорлық
техника курсымен сәйкес келеді.
2) Бұрын микроконтроллерлер немесе микропроцессорлар жайлы оқыған
тыңдаушыларға арналған және олар HCS12 16 разрядты микроконтроллердің
процессорлық ядросының ерекшеліктері мен архитектурасы туралы жалпы
түсінік алуы қажет. Онда тек зерттелетін МК-ге қатысты адресациялаудың және
қосымша командалардың қосымша әдістері көрсетіледі.
3) С тілін қолдану арқылы MC9S12C128 микроконтроллердің перифериялы
модульдерін зерттеу бойынша зертханалық жұмыс. Бұл жұмыс микропроцессорлық
техниканың екі семестрлік курсына негізделген және микроконтроллердің 16
разрядты перифериялы модульдерін зерттеуді мақсат тұтады.
Бір семестрлік курста студенттер тек CSMB12C128 тақшасын қолдануымен
шұғылдана алады. Сонымен бірге студенттер орталық процессорлар туралы ғана
емес, жалпы біркристалды микроконтроллер туралы мәлімет алатын боладыжәне
соңғы жұмыстарда перифериялы модульдерді ассемблер тілінде программалауға
негізделген. HCS12 класына жататын микроконтроллердің перифериялы
модульдерін зерттеу 3-ші бөліктің жұмыстарында келтірілген, атап айтқанда:
уақытша интервал процессорының модулі, аналогты-цифрлық түрлендіргіш
модулі, контроллерлердің SCI, SPI тізбекті ауысуының модульдері. Әр
модульдерді зерттеу барысында келесідей сұрақтар туындайды [1].
Модуль жұмысының құрылымы және типтік алгоритмы;
Модульдің арнайы функцияларының регистерлері;
Басқарудың типтік есептерінің шешімдері үшін нақты уақытта модульдың
порграммалық қызмет көрсетуінің алгоритмдары;
CodeWarrior ортасында программалық қызмет көрсету алгоритімін C
тілінде жазу;
Жасалған бағдарламардың басқаруымен перифериялы модудьдердің жұмыс
істеуін реттеу. Жұмыс эксперименталды қондырғының 2-ші және 3-ші
конфигурациялар негізінде жұргізіледі. Үшінші конфигурация “тақша
CSMB12C128 + тақша PBMCUSLK + қондырғы Elvis II” – негізгі, ол үшін әрбір
сабақтан эталон мысалы жазылған. Микроконтроллерлер өзінің перифериялы
модульдерін қолдана отырып, осы сигналдарды сандық кодқа немесе импульстік
сигналдарға басқа уақытша сипаттамамен өзгерте алады. Алынған нәтижелерді
программалық қамтамасыз ету ELVIS II қондырғы құрамындағы виртуальды
аспаптардың көмегімен монитордың экранында іске асады. Екінші конфигурация
қондырғысы “тақшасы CSMB12C128 + тақшасы PBMCUSLK” – қосымша. Бұл
конфигурацияны қолдану үшін 3 конфигурацияның қондырғысын реттеу қажет
емес, яғни PBMCUSLK тақшасын CSMB12C128 микроконтроллер модулімен бірге
ELVIS II стендінен алудың қажеті жоқ. Микроконтроллердің қажетті шығысына
PBMCUSLK тақшасының жарықдиодтарын және батырмаларын сымдармен қосу және
микроконтроллер үшін басқару программасын жазу жеткілікті. Осындай
зерттеулер оқушыларға өзіндік жұмыс ретінде берілуі мүмкін. Осы зерттеулер
барысында оқушылар:
С тілінде программаның жазылу негізін үйрену;
CodeWarrior ортасында микроконтроллер үшін жобаны реттеу және құру
техникасын үйрену;
Әрбір модульді басқару үшін арнайы функция биттері және регистр
тізімі мен аттары;
Зертханалық жұмыстарда микроконтроллердің нақты перифериялы
модульдерін зерттеу бойынша эталонды мысалы және күрделілігі жағынан 3
деңгейден тұратын жеке тапсырмалар жиыны келтірілген:
Өзiндiк жұмысқа арналған бастапқы деңгейдiң есептері;
Өзiндiк жұмысқа арналған орташа деңгейдің есептері;
Өзіндік жұмысқа арналған күрделі деңгейдің есептері;
Бірінші топтың тапсырмасы: эталондық мысалдағы программалық кодтың
мәтінің өзгерту және осы материалды толықтай игеру. Екінші топтың
тапсырмасы: өзіндік жұмыстағы орташа деңгейдің есептері үшін эталондық
мысалдағы программалық кодтың мәтінің айтарлықтай өзгерту. Үшінші топтың
тапсырмасы: оқушының жеке отырып кейбір күрделі деңгейдегі есептердің
программалық кодын және алгоритмін жазу. Осы жұмыс негізінде сабақты
ұйымдастырудың 2 стратегиясы болуы мүмкін. Бірінші стратегия –
сабақбарысында әрбір оқушымен эталондық мысалдан келтірілген
эксперименттерді зерттеу. Екінші стратегия – үйде оқитын оқұшылар,
лабораториялық сабаққа дайындалу барысында эталондық мысалды зерттейді [1].
Бұдан әрі осының негізінде өзіндік тапсырманың 2-ші немесе 3-ші деңгейдегі
есептерін шешеді. Бұл жұмыс микропроцессорлық техниканың екі семестрлік
курсына негізделген және микроконтроллердің 16 разрядты перифериялы
модульдерін зерттеуді мақсат тұтады. Осындай зерттеулер оқушыларға өзіндік
жұмыс ретінде берілуі мүмкін. HCS12 класына жататын микроконтроллердің
перифериялы модульдерін зерттеу 3-ші бөліктің жұмыстарында келтірілген,
атап айтқанда: уақытша интервал процессорының модулі, аналогты-цифрлық
түрлендіргіш модулі, контроллерлердің SCI, SPI тізбекті ауысуының
модульдері.

4.2 Elvis II қондырғысыныңвиртуальды құралдарының жиыны

Бұл жұмыста ELVISmx жиынына кіретін 3 стандартты виртуалды құралдары
және 8 арнайы жасалған құралдар қолданылады.
Стандартты құралдар:
1) Екі каналды осциллограф – Scope. Сигналдарды зерттеу үшін Elvis II
платформасының бүйіріндегі BNC типтің ұяшығын немесе PBMCUSLK тақшасындағы
ACH аналогты кірістін желісін қолдануға болады.
2) FGEN – функционалды генераторы. Құрылған сигнал Elvis II
тақшасының бүйіріндегі BNC типінің ұяшығына немесе PBMCUSLK тақшасына
шығарылады.
3) Digital Reader – күй индикаторы. DI немесе DO сегіз желісінен
компьютердің мониторында екілік кодты оқиды және шығарады.
Осы жұмыстар үшін 8 арнайы аспаптар жасалынды:
1) Two Channel Generator – құралы. Логикалық деңгейі бар тікбұрышты
импульстің 2 каналды генераторы:төменгі күй кезіндегі кернеу – 0В, ал
жоғарғы күй кезінде – 5 В. Екі каналда да сигналдардың жиілігі әрқашанда
бірдей және оның өзгеру диапазоны – 4 тен 40 кГц-ке дейін. Әрқайсыларындағы
импульстің салыстырмалы ұзақтығын (0..100 пайыз), сонымен бiрге екi
сигналдардың арасындағы фазалардың айырымын өзгерту мүмкіндігі болады [9].
2) Analog Level – құралы. Аналогтық шығыстың екі каналында кернеудің
аналогтық деңгейін береді. Сигналдардың өзгеру диапазоны – U = 0..5В,
шығысы PBMCUSLK (DAC0 и DAC1) тақшасында орналасқан.
3) Voltage out – құралы. Микроконтроллермен өлшенген кернеудiң мәнiн
бейнелейдi. DI желілерінде 8 разрядты екiлiк кодты қабылдайды. 0xFF-тің
мәні V = 5 В-ке сәйкес келеді.
4) T out – құралы. Микроконтроллермен өлшенген сигнал периоды мәнiн
бейнелейдi. DI желілерінде 8 разрядты екiлiк кодты қабылдайды. 0xFF-тің
мәні T = 255 мкс-ке сәйкес келедi.
5) ti out – құралы. Микроконтроллермен өлшенген сигнал импульсi
ұзақтығының мәнiн бейнелейдi. DI 8 разрядты екiлiк кодты қабылдайды. 0xFF-
тің мәні ti = 255 мкс-ке сәйкес келедi.
6) f out – құралы. Микроконтроллермен өлшенген сигнал жиiлiгiнiң
мәнiн бейнелейдi. DI желілерінде 8 разрядты екiлiк кодты қабылдайды. 0xFF-
тің мәні f = 40 кГц-ке сәйкес келедi.
7) Duty cycle out – құралы. Микроконтроллермен өлшенген сигнал
импульсi салыстырмалы ұзақтығының мәнiн бейнелейдi. DI желілерінде 8
разрядты екiлiк кодты қабылдайды. 0x64 мәні γ = 100 пайызға сәйкес
келеді.
8) Phase difference out – құралы. Микроконтроллермен өлшенген екi
сигнал арасындағы фазалар айырымының мәнін бейнелейді. DI желілерінде 8
разрядты екiлiк кодты қабылдайды. 0xFF мәні Δφ = 360 градусқа сәйкес
келеді. Барлық қосымша құрылған 8 құралдар бір орнату пакетіне
біріктірілген және осы практикумға қоса тіркелген.
4.3 Таймер модулі кірісін ұстап алу режимін зерттеу

Осы жұмыста микроконтроллер таймері ішкі жүйесінің ұстап алу режимі
зерттеледі. Бұл функционалдық мүмкіндік осы жасалып жатқан жұмыстарда және
келесіде жасалатын зерттеу жұмыстарында Elvis II платформасы көмегімен
кейбір сандық сигналдар жайлы мәлімет алуға мүмкіндік береді. Осы жұмысты
және келесі жұмыстарды ойдағыдай орындау үшін 3-ші конфигурация қондырғының
ерекшеліктерімен танысу қажет. Екі тақшада да ұстатқыштар мен
тіркеуіштердің дұрыс қойылуын қадағалау қажет, себебі олардың дұрыс
қойылмауы жабдықтың бұзылуына әкеп соғуы мүмкін. Осы жұмысқа дайындалу
барысында микроконтроллердің таймер модулі кірісін ұстап алу режимімен және
төменде келтірілген мысалмен танысу қажет [12].
Two Channel Generatorқұралынан тікбұрышты импульстердің тізбегі
микроконтроллердің Т портының 0 аяғына келіп түседі. Параллельді кодта А
портына микросекундпен шығаратын және келетін сигналдың периоды өлшенетін
программаны жазу керек.Код T out виртуальды құралын қабылдауы керек.

#include hidef.h EnableInterrupts макроанықтамасы бар басты
файлдың қосылуы.
#include "derivative.h" Қызметтік регисторлар анықтамасы бар
файлдың
қосылуы.
unsigned int TCNT_NEW, TCNT_OLD; Таймер санағышының жаңа және
ескі мәндерін
сақтайтын
айнымалылар.
unsigned char T;
өлшенген периодтың мәнін

сақтайтын айнымалы.
void main() { Программаның басты функциясы.
PPST &= ~0x01; Т портының 0 аяғына резисторді қосу, PPST0
= 0.
PERT = 0x01; Т портының 0 аяғына резисторді қосу, PERT0 = 1.
TCTL4 = 0x01; 0 каналында сигналдың үдемелі
ағынының қосылуы EDG0B = 0,
EDG0A = 1.
TFLG1 = 0xFF; Кірістің ұстап алуындағы барлық жалаушаларды
алып тастау.
TFLG2 = 0x80; Таймер толуының жалаушасын алып тастау
TOF = 1.

TIE = 1; 0 каналындағы оқиғалар бойынша
үзүлулер
рұқсаты C0I = 1.
TSCR2 = 0x01; 12-ге тең таймер санағышының бөлгіш
жиіліктерінің тактілеуін
орнату,
fCT = fBUS2 =1МГц.
TSCR1 = 0x80; Таймердің қосылуы, TEN = 1.
PUCR = 0x01; А портында резисторлардың қосылуы,
PUPAE =1.
DDRA = 0xFF; Шығысқа А портының барлық
сызықтарының инициализациясы.

EnableInterrupts; Микроконтроллерде үзүлулер рұқсаты.
for(;;) { } Шексіз бос цикл.
}
interrupt 8 void IC0() { Таймердің ішкі жүйесінің 0 каналында
оқиғалар үзүлуінің ішкі
программасы.
Interrupt сөзінен кейін
үзүлулер векторының
нөмері көрсетіледі.
TFLG1 = 0x01 0 каналындағы оқиғалардың жалаушасын
алып тастау.
TCNT_NEW = TCNT; Таймер санағышының жаңа мәнін алу.
T = TCNT_NEW – TCNT_OLD; Периодты есептеу.
TCNT_OLD = TCNT_NEW; Таймер санағышының ескі мәнінінің
жаңартылуы.

PORTA = T; Алған мәліметтерді А портына
шығару.
}
CodeWarrior ортасында жаңа жобаны құру төменде көрсетілген. Ең
алдымен басты мәзірдегі File →New Project пунктін таңдаймыз.

4.3.1 cурет - Жаңа жоба құру мастерінің бірінші терезесі

Жаңа жобаны құру мастерінің бірінші терезесі пайда болады. Осы жерден
өзіннің программалайтын микроконтроллердің типін таңдау қажет(4.3.1 суретте
көрсетілген). Осы жұмысты және келесі жұмыстарды ойдағыдай орындау үшін 3-
ші конфигурация қондырғының ерекшеліктерімен танысу қажет. Екі тақшада да
ұстатқыштар мен тіркеуіштердің дұрыс қойылуын қадағалау қажет, себебі
олардың дұрыс қойылмауы жабдықтың бұзылуына әкеп соғуы мүмкін. Барлық
қосымша құрылған 8 құралдар бір орнату пакетіне біріктірілген және осы
практикумға қоса тіркелген.

4.3.2 cурет - Жаңа жоба құру мастерінің екінші терезесі

Алда жоба файлдарының орналасуын көрсету қажет (4.3.2сурет). Мұны “Set”
батырмасының көмегімен жасау ыңғайлы. Прогаммалау тілі ретінде С тілін
таңдаңыз үшінші терезеде бұрын игерілген файлдарды жаңа жобаға қосуға
болады. Бұл мүмкіндіктен бас тартыңыз және “Next ” -ті басыңыз.

4.3.3 сурет - Жаңа жоба құру мастерінің үшінші терезесі

Осы терезеде қосымшаларды өңдеуді жылдамдату үшін құрал таңдау
мүмкіндігі туады. Қазір біз оны пайдаланбаймыз, сондықтан да “None”
тармағын таңдау қажет. Болашақта өзіндік жұмыс ретінде Device
Initialization құрылымымен танысуға болады. Мұның көмегімен
микроконтроллердің перифериялы инициализациялық процесін басқа анықтама
қағазындағы көптеген қызметтік регистрлерді зерттеу әдісіне қарағанда жеңіл
және тез орындауға болады [11].

4.3.4 сурет - Жаңа жоба құру мастерінің төртінші терезесі

ANSI форматындағы бастапқы кодты, Small жадының үлгiсiн және 32 разрядты
айнымалыны таңдау қажет. Әйтсе де, қосымшаларда соңғы опциядан және бөлшек
сандарға қатысты операциялардан бас тарту ұсынылады.

4.3.5 сурет - Жаңа жоба құру мастерінің бесінші терезесі

Енді C тілінің ерекшелiктеріне қатысты жобаның параметрлерiн орнату керек
(4.3.5 сурет). Қазір біз оны пайдаланбаймыз, сондықтан да “None” тармағын
таңдау қажет. Екі тақшада да ұстатқыштар мен тіркеуіштердің дұрыс қойылуын
қадағалау қажет, себебі олардың дұрыс қойылмауы жабдықтың бұзылуына әкеп
соғуы мүмкін.

4.3.6 сурет - Жаңа жоба құру мастерінің алтыншы терезесі

Осы терезеде (4.3.6 сурет) PC-lint бастапқы кодтағы қате іздеу құрылымынан
бас тартыңыз.

4.3.7 сурет - CodeWarriorортасының негізгі терезесі

Жаңа жоба конфигурациясының аяқталуымен CodeWarrior ортасындағы
негізгі терезе 4.3.7 суреттегідей көрінуі қажет. Қондырғыдағы контактілерді
қосу қажет.

4.3.8 сурет - Қондырғыдағы контактілердің қосылуы

MCU_PORT(J6 немесе J7) J4тіркеуіші

Жоғарыда келтірілген программалар дұрыс істеуі үшін 4.3.8 суретте
көрсетілгендей өткізгіштерді кейбір контактілерге қолмен қосу қажет.
Қондырғыдағы манипуляциялардан (қимылдан) кейiн құрылған сигналдың
керектi параметрлерiн таңдау үшін Two Channel Generator құралы iске
қосылады. Сондай-ақ ,микроконтроллерден алынған мәліметтерді компьютердің
экранына шығаратын T out утилиті іске қосылады. Енді осыларды орындау үшін
жоғарыда жазылған программа іске қосылады.

4.4 Микроконтроллердің ШИМ(кең импульсті модуляция) модулін зерттеу

Осы жұмыста микроконтроллердің кең импульстік модуляциясының модулі
зерттеледі. Бұл жұмысқа дайындалу барысында таймер кірісінің ұстап алу
функциясын қайталау, микроконтроллердің ШИМ (КИМ) модулімен танысу және
төменде келтірілген мысалдарды қарастыру ұсынылады [1].
1. Микроконтроллердiң T портының 0 аяғына Two Channel Generator
құралынан тiкбұрыштыимпульстер тізбегі келіп ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Дербес компьютердің архитектурасы
Эем архитектурасы
Дербес компютердің анықтамасы
Павлодар Мемлекеттік Университеті негізінде Elvis II оқу-зертханалық қондырғысын еңгізу
Қалыптардың басқару элементтері
Ақпараттық жүйелер бойынша өндірістік сараманнан өткен жөніндегі есебі
Мәліметтердің негізгі құрылымы
Дербес компьютердің құрамы
Дербес компьютердің ішкі құрылғылары
Есептеуіш техникаға күтім жасау және қызмет көрсету анықтамалығы
Пәндер