Uploaded by Sanjar Choriyev

atmel uz

advertisement
VAZIRLIK TA'LIM VA FAN RF FEDERAL DAVLAT
BUDJET TA'LIM MASSASA
OLIY PROFESSIONAL TA'LIM
"VORONEJ DAVLAT UNIVERSITET"
DASTURLASH
MIKRONATROLLERLAR
Qism 1
Seminar Uchun universitetlar
Muallif:
A.P. Trifonov,
Yu.E. Korchagin,
VC. Marshakov,
K.A. Zimovets
Nashriyot va matbaa markaz Voronej davlat
universiteti2013 yil
Tasdiqlangan ilmiy va uslubiy maslahat jismoniy fakultet-bu "12"
Marta 2013 yil yilning, protokol № 3
Sharhlovchi dr fizika va matematika fanlar, prof. E.N. Bormontov
Seminar tayyorlangan yoqilgan Bo'lim radiofiziklar jismoniy F- dum
Voronej davlat universitet.
Tavsiya etilgan Uchun talabalar 4 kurs to'liq stavka Va 5 kurs yuzmayuzyozishmalar shakllari trening.
011800 - Radiofizika, 010801 ixtisosligi uchun - Radiofizika Va
elektronika
MAZMUNI
Kirish ............................................................................................... 4
Umumiy razvedka haqida qurilma mikrokontrollerlar ................... 5
Prinsip ish Va tizimli sxema
mikrokontroller .......................................................................... 5
Tuzilishi xotira mikrokontrollerlar Atmel ................................ 8
Maqsad pinlar .......................................................................... 10
O'chirishda dasturlash ............................................................. 11
Laboratoriya Ish Yo'q. 1. Operatsiyalar Bilan parallel
portlar I/O ..................................................................................... 14
Parallel portlar I/O .................................................................. 14
Tavsif laboratoriya tartib ........................................................ 14
Amaliy vazifalar ...................................................................... 16
Misol ijro ishlari ...................................................................... 19
Laboratoriya Ish Yo'q. 2. Generator signallari .................................25
Tavsif laboratoriya tartib ........................................................ 25
Streyt raqamli sintez ............................................................... 26
Amaliy Vazifalar ..................................................................... 28
Misol ijro ishlari ...................................................................... 31
Adabiyot ........................................................................................ 38
3
KIRISH
Qanaqasiga bu aniq haddan tashqari ko'pchilik zamonaviy
radiotexnika va elektronika qurilmalari asosida ishlab chiqilgan
raqamli va mikroprotsessorli tizimlar. Shuning uchun talabalar uchun
radiofiziklar Juda muvofiq bor bilim V mintaqa raqamli texnologiya
Va mahorat dastur o'rnatilgan mikrofon - protsessor tizimlari, Masalan
mikrokontrollerlar Va signal -yangi protsessorlar.
IN berilgan foyda hisobga olinadi ikki laboratoriya ish Siz,
bag'ishlangan boshlanishi dasturlash mikrokontrollerlar. Berilgan
qisqacha nazariy aql, zarur Uchun Siz-to'ldirish laboratoriya ishlaydi
Birinchi
ishni
tugatgandan
so'ng,
talabalar
promikrokontrollerni dasturlash, portlar bilan ishlash qobiliyati I/U
Ikkinchi ish berilgan signalni sintez qilishga bag'ishlangan Nuh
shakllari Va chastotalar usuli bevosita raqamli sintez.
4
KO'PROQ AQLI HAQIDA QURILMA
MIKRONATROLLERLAR
Prinsip ish Va tizimli sxema mikrokontroller
Mikrokontroller
hisoblanadi
o'zingiz
bitta
chipli
mikrokompyuter, bitta chip shaklida yaratilgan. Qism Ushbu
mikrosxema odatda quyidagilarni o'z ichiga oladi: protsessor, xotira
gramm, xotira ma'lumotlar, soatli generator, to'plam periferik
qurilmalar (portlar, taymerlar, ADC Va va boshqalar.) Yetarli
mashhur - Biz Atmel, Microchip, Intel va mikrokontrolderlarmiz
Motorola. Ushbu qo'llanma dasturlashni o'z ichiga oladi 8-bit
mikrokontrollerlar AVR kompaniyalar Atmel, qaysi ostida - bo'linadi
yoqilgan uch oilalar:
• Klassik AVR - bu pro-kontrollerli mikrokontrollerlarning asosiy
liniyasi. hosildorlik individual modifikatsiyalari oldin 16 MIPS,
FLASH ROM dasturlari 2–8 KB, EEPROM ma'lumotlar 64–512
bayt, SRAM 128–512 bayt;
• Kompleks uchun 1-16 MIPS ishlashi bilan Mega AVR katta
hajmdagi xotirani talab qiluvchi ilovalar, FLASH ROM
dasturlari 4–128 KB, EEPROM ma'lumotlar 64–512 bayt,
SRAM 2–4 KB, SRAM 4 KB, o'rnatilgan 10-bit 8 kanal ADC,
apparat multiplikator 8 8 ;
×
• Kichkina AVR — past mahsuldorlik mikrokontrollerlar V 8chiqish ishlash Bilan past xarajat.
Umumlashtirilgan mikroprotsessor tizimining blok diagrammasi
tasvirlangan yoqilgan 1-rasm. U dan iborat dan protsessor, xotira Va
pe- ma'lumotlar avtobuslariga ulangan periferik qurilmalar, manzillar
va boshqaruv. Xotira ikkita qurilmaga bo'lingan bo'lsa - xotira
dasturlar va ma'lumotlar xotirasi, keyin ular bunday mikroproProtsessor tizimi Garvard arxitekturasiga ega. Xotira bo'lsa saqlash va
dasturlar uchun yagona qurilmani taqdim etadi, Va ma'lumotlar, Bu
shunga o'xshash mikroprotsessor tizimi Unda bor arxitektura
5
Процессор
fon Neyman. Mikrokontrollerlar AVR qurilgan tomonidan Garvard
arxitektura.
память
программ
память
данных
шина
периферийные
устройства
управления
шина
адреса
шина
данных
Guruch. 1. Blok diagrammasi mikroprotsessor tizimlari
Protsessorning ishlashi odatda fon Neyman siklida tasvirlangan.
mana, grafik tasvir kim berilgan yoqilgan guruch. 2. Bu yerga
tayinlangan 1 — namuna jamoalar dan xotira; 2 — ortdi
1
4
2
3
Guruch. 2. Velosiped fon Neyman
dastur hisoblagichining birligini hisoblash; 3 - kodni dekodlash
buyruqlar, 4 - buyruqni bajarish. Agar buyruq kodi mavjud bo'lsa bir
baytdan ortiq (ikki bayt, uch bayt), ya'ni buyruq ha bir nechta xotira
hujayralarida saqlanadi, keyin protsessor mumkin xotiraga 1, 2 yoki
undan ortiq marta kirish. Birinchi baytda mikro- protsessor qaysi
buyruq ekanligini biladi. Loop (1, 2, 3) bajariladi juda ko'p bir marta,
Necha bayt oladi jamoa.
6
Uchun ish mikrokontroller talab qilinadi soat impuls sy. Bir soat
pulsi paytida protsessor ishlaydi ba'zi bir asosiy harakatlar (masalan,
manzilni o'rnatadi manzil shinasiga yoki ma'lumotlar shinasidan
ma'lumotlarni o'qiydi). Chastotasi soat pulslari mikrokontrollerning
tezligini aniqlaydi ra. Bir nechta soat pulslari mashinaning soat
pulslariga qo'shiladi. sikllar. Mashina aylanishi davomida bitta
qo'ng'iroq sodir bo'ladi protsessorni xotiraga yoki qabul qilishda
kiritish/chiqarish sxemalariga va buyruqning bajarilishi. Mashina
protsessorining turiga qarab - Ushbu tsikllar bir xil miqdordagi soat
tsikllarini o'z ichiga olishi mumkin, yoki har xil. Tanlash va amalga
oshirish vaqti buyruq buyruqlar sikli deb ataladi. Buyruqlar sikli
quyidagilardan iborat bir yoki bir nechta mashina tsiklidan.
Vaqtinchalik misol diagrammalar ish protsessor ko'rsatilgan
yoqilgan guruch. 3. Manbalar
Soat impulslar
T1
T2
T3
T4
T1
Машинный цикл 1
T2
T3
T4
T1
Машинный цикл 2
Цикл команды
Guruch. 3. Vaqtinchalik diagramma
soat impulslar Uchun mikrokontroller mumkin xizmat qilish tashqi
niya yoki ichki generatorlar. Ichki generator yig'ilgan yoqilgan bitta
kristall Bilan mikrokontroller. Chastotasi soat impuls boyqushlar
belgilangan vaqtni belgilovchilar zanjirlar generator, V sifat ichki yoki
tashqi RC davri ulangan bo'lishi mumkin mikrokontrollerga ulangan
tashqi kvarts rezonatori. tomonidan Odatiy bo'lib, ichki soat
generatori ichki bilan ishlatiladi Renni RC sxemasi. Da bu chastota
soat impulslar bog'liq mikrokontroller modeliga bog'liq. ATmega8
uchun la-boratoriy maketlar, chastota taxminan ga teng 1 MGts.
7
Tuzilishi xotira mikrokontrollerlar Atmel
mikrokontrollerlarining dastur xotirasi "tekis" Men tuzilma
yasayman. Bu elektr repro- dasturlashtiriladigan faqat o'qish uchun
xotira (FlashROM) va dastur buyruqlari kodlarini saqlash uchun
mo'ljallangan. turg'un. Dastur xotira kataklariga murojaat qilish
uchun 16- bit shina manzillar.
Xotira ma'lumotlar mikrokontrollerlar AVR tizimli ravishda
holatbu dan uch bo'limlar, ega umumiy murojaat qilish. Tuzilishi paajin ma'lumotlar tasvirlangan yoqilgan guruch. 4. IN boshlanishi bor
32 sakkiz -dunyo miqyosidagi ro'yxatdan o'tish umumiy
uchrashuvlar (RON). TO uni mumkin manzil dan dasturlari
tomonidan ismlar r0, r1, ..., r31 Va tomonidan manzillar 0000h 001Fh V umuman manzil bo'sh joy. Bu yerga Va Keyinchalik
konsol 0x yoki qo'shimchasi h anglatadi Nima raqam qayd etilgan V
qutb-o'nlikdan yuqori tizimi. Keyinchalik joylashgan 64 ro'yxatdan
o'tish kiritish-chiqish Bilan manzillar 0020h - 005Fh. TO uni Bir xil
mumkin manzilQanaqasiga tomonidan manzil, Shunday qilib Va
tomonidan ismlar registrlar Ismlar solishtirishBiz Bilan manzillar
V fayllar tavsiflar mikrokontroller, qaysiyakunlanadi tizimlari
dasturlash. Oxirgi ro'yxatdan o'tishI/U hisoblanadi ro'yxatdan o'tish
davlat SREG Bilan manzil 005Fh. Uchinchi bob hisoblanadi o'zingiz
operativ Eslaymanstatik turdagi SRAMning asosiy qurilmasi (RAM). Har bir hujayra 8
bitni o'z ichiga oladi va turli mikrokontrollerlar uchun xotira miqdori
har xil Lerov. Oxirgi RAM katakchasining manzili nom bilan
belgilanadi RAMEND.
Mikrokontrollerlar ham uchuvchan bo'lmaganlarni o'z ichiga
oladi Simo doimiy esda qolarli qurilma EEPROM Bu oldindan
dasturlash jarayonida yozib olingan ma'lumotlarni saqlash uchun
tayinlangan amalga oshirish, shuningdek dasturni bajarish jarayonida
olingan
ma'lumotlar
gramm.
EEPROM
sig'imi
turli
mikrokontrollerlar orasida farq qiladi. ariq EEPROM o'zining alohida
manzil maydoniga ega. Oldin - stupa Kimga EEPROM amalga
oshirildi; bajarildi orqali portlar I/U
IN sifat misol V berilgan foyda bo'ladi o'ylab ko'ring 8
0000h
0001h
r0
r1
Регистры общего
назначения
(РОН)
32 шт
0018h
0019h
0020h
0021h
0022h
r30
r31
00
01
02
Область ввода/вывода
(I/O)
64 регистра
005Dh
005Eh
005Fh
0060h
0061h
62
63
Оперативное
запоминающее
устройство
(ОЗУ)
RAMEND
Guruch. 4. Tuzilishi xotira
ma'lumotlar
9
Xia mikrokontrollerlari ATmega8. MK ATmega8 ning operativ
xotira hajmi 1024 bayt, EEPROM sig'imi 512 bayt, xotira hajmi siz
dasturlari — 8 KB.
Maqsad xulosalar
(qayta tiklash)
PC6(RXD)
PD0 (TXD)
PD1
(INT0)PD2
(INT1)PD3
(XCK/T0) PD4
VCC
GND
(XTAL1/TOSC1) PB6
(XTAL2/TOSC2) PB7
(T1) PD5
(AIN0) PD6
(AIN1) PD7
(ICP) PB0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
ATmega8
Keling, ko'rib chiqaylik tayinlash xulosalar mikrosxemalar
ATmega8. Yoniq guruch. 5 ko'rsatilgan pinout mikrosxemalar.
Yoniq kontaktlar "VCC" Va
28
27
26
25
24
23
22
21
20
19
18
17
16
15
PC5 (ADC5/SCL)
PC4 (ADC4/SDA)
PC3 (ADC3)
PC2 (ADC2)
PC1 (ADC1)
PC0 (ADC0)
AGND
AREF
AVCC
PB5 (SCK)
PB4 (MISO)
PB3 (MOSI/OC2)
PB2 (SS/OC1B)
PB1 (OC1A)
Guruch. 5. Tsokolevka mikrosxemalar ATmega8
"GND" xizmat qilgan "+" Va "-" oziqlanish (5 IN) raqamli qismlar
mikro- boshqaruvchi. Analog Qism mikrosxemalar yeydi alohida
kontaktlar "AVCC" va "AGND". Analog qismga, masalan,
mikrokontrollerga o'rnatilgan ADCga ishora qiladi. pi-ni ajratish
taniya analog Va raqamli qismlar zarur Uchun Bormoq, uchun
pasayish ta'sir qilish puls aralashuv raqamli sxema yoqilgan funktinglash analog. TO aloqa "AREF" mumkin ulanmoq tashqi mos
yozuvlar (mos yozuvlar) kuchlanish manbasining chiqishi, ADC
ishlashi uchun zarur. Chipning qolgan oyoqlari I/U portlarining
pinlari . Mikrokontrollerda ATmega8 amalga oshirilgan portlar: B (8
pinli PB0 - PB7), C (7 kontaktlar PC0 - PC6) Va D (8 kontaktlar
10
PD0
-
PD7).
11
Bundan
tas
• RXD, TXD - uchun UART seriyali port pinlari boshqa
kontrollerlar va COM porti bilan o'zaro ta'sir qilish kompyuter;
• RESET - tiklash tugmachasini
ulash uchun pin (agar u bo'lsa zarur).
O'chirishda dasturlash
Dastur mikrokontroller xotirasiga yoziladi dasturchi yordamida
sozlanishi mumkin. Zamonaviy porlash uchun mikrokontrollerlarni
kontaktlarning zanglashiga olib tashlashning hojati yo'q. Dasturchi
sxema ichidagi dasturlash funksiyalaridan foydalanadi roving, SPI
orqali mikrokontroller bilan o'zaro ta'sir qilish port. Sanoatda ishlab
chiqarilgan ko'plab dasturchilar mavjud . dangasalik. Ular
dasturlashtiriladigan mikrokontrollerga ulangan ler, Bilan bitta
tomonlar, Va Bilan bitta dan interfeyslar shaxsiy kompyuter
(kompyuter) - boshqa tomondan. Kompyuterdagi dastur proproshivka dasturchiga, u uni mikrokon-xotiraga yuklayditroller.
Bir dan mumkin variantlari hisoblanadi ulanish tarafdori
dasturlashtiriladigan mikrokontroller to'g'ridan-to'g'ri LPT portiga
Kompyuter, ulanish mos keladigan sxemalar orqali ham mumkin. Buqayerda dastur yoqilgan Kompyuter o'zi amalga oshiradi yuklash
dasturlari V
12
LTP interfeysi orqali mikrokontroller xotirasi. Aynan shunday Usul
Mac-da mikrokontrolderlarni miltillash uchun taqdim etilgan.
laboratoriya ishlarida foydalaniladigan takh. LPT port ulagichi
laboratoriya sxemasi LPT portiga kabel orqali ulangan bo'lishi kerak
Kompyuter. PonyProg dasturi proshivka uchun ishlatiladi. Uning
tashqi ko'rinishi niya ko'rinish tasvirlangan yoqilgan guruch. 6.
Guruch. 6. Oyna dasturchi PonyProg
13
Namunali algoritm ish Bilan dastur hisoblanadi Vquyidagi:
• dasturlashtiriladigan
• o'chirish tugmasi
dastur;
mikrokontroller modelini
;
tanlang
mavjud V xotira mikrokontrollerra
• ochiq fayl proshivka (tugma
);
• yozib qo'ying dastur V mikrokontroller (tugma
);
O'qing dastur dan xotira boshqaruvchi mumkin Bilan yordami bilan
tugmalar
.
14
LABORATORIYA ISH Yo'q. 1. Operatsiyalar
BILAN PARALLEL PORTLAR
KIRISH-CHISH
Parallel portlar I/U
B, C, D kiritish-chiqarish portlari mikro-protsessorlar bilan
aloqa qilish uchun mo'ljallangan. "tashqi dunyo" bilan rokontroller.
Port bitlari ulangan oyoqlar mikrosxemalar. Har dan ular Balki ish
V rejimi meh yoki kiritish, yoki chiqish. IN mikrokontrollerlar AVR
har biriga Portga uchta sakkiz bitli registrlar tayinlangan
kiritish/chiqarish sohasida: DDR x , PORT x , PIN x , bu erda x - B, C
harfi yoki D. DDR x registri konfiguratsiya registridir va u uchun
ishlatiladi sozlamalar rejimi — kiritish yoki xulosa, — va mumkin
boshqarish hamma tushirish alohida. Qachon bitlar ro'yxatdan o'tish
DDR x o'z ichiga oladi mantiq 1, keyin portning tegishli bitlari
chiqariladi- mil. Shuning uchun, chiqish uchun portni sozlash uchun
siz yozishingiz kerak to'ydirmoq birliklar V ro'yxatdan o'tish DDRx .
Da bu ma'lumotlar, o'z ichiga olgan V ro'yxatdan o'tish PORT x
bo'ladi ko'rsatilishi yoqilgan kontaktlar mikrosxemalar.
Agar biz DDR x registriga nollarni yozsak , u holda mos
keladi port liniyalari kirish sifatida konfiguratsiya qilinadi. Ammo
ularning xatti-harakati shunday PORT x registrining mazmuniga
osilgan . Agar mos bo'lsa PORT x port biti 1 ni o'z ichiga oladi, keyin
u kirish liniyasiga ulanadi ichki siqilish qarshilik. U bog‘laydi chiziq
port quvvat plyus bilan va kirish liniyasida potentsialni ta'minlaydi,
yaqin Kimga mantiqiy birlik. Qachon bit port PORT x o'z ichiga oladi
0, keyin kirish chizig'i Z-holatida bo'ladi. Uning salohiyati bu holda u
ulangan qurilmani ko'rsatadi (yoqilgan- masalan, boshqa
mikrokontroller). Kiritilgan ma'lumotlarni o'qing chiziqlar mumkin
dan ro'yxatdan o'tish PIN kod x .
Tavsif laboratoriya tartib
Laboratoriya Ish amalga oshirildi Bilan foydalanish tartib
№ 1, blok diagrammasi kim tasvirlangan yoqilgan guruch. 7.
15
Guruch. 7. Blok diagrammasi laboratoriya tartib Yo'q. 1
Asosiy element tartib hisoblanadi mikrokontroller ATmega8.
Mikrokontrollerning C portining 0-5 qatorlariga ulangan tugmalar. Bu
imkon beradi dastur reaktsiya qurilmalar yoqilgan tashqi ta'sirlar.
Chiziqdagi tugmalar bo'shatilgan holatda, yah porti +5 V ga yaqin
kuchlanishni saqlaydi (mantiqiy osmon 1). Bunga "tortishish"
rezistorlarini yoqish orqali erishiladi Port pinlari va quvvat liniyasi
o'rtasida 10 kOhm xandaq (tegishli port sozlamalari bilan). Bosilgan
port liniyasidagi kuchlanish 0 V ni tashkil qiladi, bu mantiqqa to'g'ri
keladi nolga. C portidan ma'lumotlarni o'qish va keyin tahlil imkon
beradi tahlil qilish davlat tugmalar
TO chiziqlar 0–3 port B ulangan yashil, A Kimga chiziqlar 4
va 5 - qizil LEDlar. Agar siz B portini shunday sozlasangiz chiqish,
keyin mantiqiy birliklarni pinlardagi portga chiqarishda
mikrosxemalar qo'llab-quvvatlanadi yaqin Kimga +5 IN
Kuchlanishi. Da
16
port liniyasiga ulangan bu LED yonadi. Agar portga qaytarib olingan
mantiqiy nol, Bu Kuchlanishi yoqilgan chiziqlar port yaqin Kimga 0
Va Yorug'lik chiqaradigan diod o'chirilgan. Shunday qilib yo'l,
boshqaruv yonayotgan yangi todiodlaro'z vaqtida chiqish yordamida amalga
oshirilishi mumkinV port B ikkilik ma'lumotlar.
Laboratoriya tartib yeydi dan tashqi manba pita niya +5 V.
Tartibning qolgan elementlari birinchisida ishlatilmaydi laboratoriya
ish Va bo'ladi hisobga olinadi Keyinchalik.
Tashqi ko'rinish tartib tasvirlangan yoqilgan guruch. 8, 9.
Guruch. 8. Tashqi ko'rinish laboratoriya tartib Yo'q. 1 old
Amaliy vazifalar
In hamma variantlari vazifalar zarur yozish dastur Uchun
mikrokontroller, qaysi asboblar tasvirlangan V variant laboratoriya
sxemasining xatti -harakatlari. Dasturning ishlashi pro-da ATmega8
emulyatoridan foydalanishni tekshirishimiz kerak . AVR Studio
grammatik majmuasi. Vi-da tuzatilgan dastur de ikkilik fayl proshivka
zarur yuklab oling V mikrokon- troller Bilan yordami bilan dasturchi
PonyProg.
17
Guruch. 9. Tashqi ko'rinish laboratoriya tartib Yo'q. 1 yuqorida
Variant 1.
Prototipli LEDlardan biri 1 Gts chastotada miltillaydi. Bosing Bitta tugmani bosish orqali siz to'xtab, keyin miltillashni
boshlashingiz mumkin tion.
Variant 2.
Tartibdagi LEDlardan biri ma'lum bir chastotada miltillaydi.
Bitta tugmani bosib miltillash chastotasini o'zgartirishingiz mumkin.
Ustida- misol, bosish yoqilgan tugmasi olib boradi Kimga ikki
barobarga oshirish chastotalar, takrorlash - yangi bosish — qaytadi
chastota miltillovchi V original davlat.
Variant 3.
Non panelidagi ikkita LED chastotada navbatma-navbat yonibo'chib turadi 0,5 Hz (biri o'chganda, ikkinchisi yonadi). Birini bosish
orqali tugmasi mumkin STOP, A Keyin yugur miltillovchi.
18
Variant 4.
Ikki LED yoqilgan tartib navbat bilan miltillovchi Bilan biroz
chastota (Qachon bitta chiqib ketadi ikkinchi yonadi). Bosish orqali
yoqilgan od- Xo'sh, tugma miltillash chastotasini o'zgartirishi
mumkin. Masalan, bosish tugmani bosish chastotani ikki baravar
oshiradi, yana bosish - qaytadi chastota miltillovchi V original
davlat.
Variant 5.
Hukmdor LEDlar ishlaydi V rejimi yugurish olov. Ustidatugmani bosish orqali siz to'xtab, keyin yugurishni boshlashingiz
mumkinolov.
Variant 6.
Hukmdor LEDlar ishlaydi V rejimi yugurish olov. UstidaTugmani bosish orqali siz yuguruvchining tezligini o'zgartirishingiz
mumkin olov.
Variant 7.
Tartibdagi uchta LED svetofor rejimida ishlaydi (in sifat sariq
Sveta mumkin tanlang har qanday yorug'lik chiqaradigan diod).
Variant 8.
Tartib hisoblagichning ishlashini ko'rsatadi. LED displeylari
zarbalar ikkilik kod miqdorlar bosish yoqilgan bitta dan tugmalar
Variant 9.
Tartib tasvirlaydi ish kodlovchi. LEDlar ko'rsatilgan ikkilik
kod raqamlar bosilgan tugmalar.
Variant 10.
Tartib dekoderning ishlashini ko'rsatadi. Bir vaqtda bosish
yoqilgan biroz tugmalar hisoblanadi o'zingiz raqam zarur LED. Bu
raqam dekodlangan, Va diod yonadi.
19
Misol ijro ish
Misol tariqasida, biz laboratoriya modelida qayta ishlaymiz.
Rojdestvo daraxti gulchambarini almashtirish. Biz har bir yangi deb
taxmin qilamiz LED - bu gulchambar. Biz ikkita imkoniyatni amalga
oshiramiz ish rejimlari: ishlaydigan yong'in rejimi, psevdo-tasodifiy
rejim kiritish gulchambarlar Tugma PC0 bo'ladi ishga tushirish Va
STOP sxemaning ishlashi va o'tish uchun PC1 va PC2 tugmalari
ishlatiladi tion rejimlari ish. Biz .. qilamiz yozish matn dasturlari,
hamrohuning tushuntirishlar.
Dastur boshlanadi yoqish V matn dasturlari fi- m8def.inc
mikrokontrollerining tavsiflari . Bu fayl talab qilinadi uni dastur
papkasiga joylashtirishingiz yoki u uchun joyni belgilashingiz
mumkin ny yo'l. Keyinchalik tayinlangan ramziy ismlar tmp ,
rejimi , outreg , vkl , Nrandom registrlari r16 , r17 , r19
, r20 , r21 ko- mas'uliyat bilan.
.o'z ichiga oladi "m8def.inc"
.def tmp = r16
.def rejimi = r17
.def outreg = r19
.def vkl = r20
.def Tasodifiy = r21
Roʻyxatdan oʻtish tmp ishlatiladi Qanaqasiga vaqtinchalik, ro'yxatdan
o'tish rejimini o'z ichiga oladi Ishlash rejimi raqami jonli. Biz mos
keladigan rejim = 1 deb faraz qilamiz ishlaydigan olov rejimiga
mos keladi va rejim = 2 - psevdo-olov rejimiga tasodifiy
qo'shimchalar. Roʻyxatdan oʻtish vkl javoblar orqasida davlat qilish
- ta: yoqilgan ( vkl = FFh ) yoki o'chirilgan ( vkl = 00h ).
Tugma yoqish/o'chirishPC0 kontaktiga ulangan (bit 0 port- ta C). Rejimni
o'zgartirish tugmalari PC1 , PC2 kontaktlariga ulangan : ishlaydigan
olov va tasodifiy yoqish. Tugmalar uchun dasturda taqdim etilgan
unvonlar boshlash , iltimos , rand .
.equ boshlash = PC0
.equ iltimos = Kompyuter 1
20
.equ rand = Kompyuter 2
Direktivlardan so'ng dasturning o'zi boshlanadi. Birinchidan, joy
Uzilish vektor jadvali ko'rsatiladi. Barcha uzilishlardan foydalaning
chaqirilmoqda ikkita: xalaqit berish asosiy boshlash QAYTA
O'RNATISH Va xalaqit berish toshib ketish taymer hisoblagich T1
o'zgartirish . Dam olish manzillar orqada - o'zgardi jamoa
yo'q .
rjmp RESET
yo'q
yo'
q
yo'
q
yo'
q
yo'
q
yo'
q
yo'
q
rjmp
o'zgartiri
shyo'q
yo'
q
yo'
q
yo'
q
yo'
q
yo'
q
21
yo'
q
yo'
q
yo'
q
yo'
q
Keyinchalik joylashgan pastki dastur qayta ishlash xalaqit beradi
QAYTA O'RNATISH yoki dastlabki boshlash tartibi. Bu yerda
sozlang stack Va portlar I/U
QAYTA O'RNATISH:
; sozlash stack ldi
tmp, past (RAMEND)
tashqariga SPL, tmp
22
ldi tmp, yuqori
(RAMEND)tashqariga
SPH, tmp
; sozlash; o'rnatish
portlarclr tmp
tashqariga DDRC, tmp ; chiziqlar port C
- kirishlar.ser tmp
tashqariga DDRB, tmp ; chiziqlar port B - chiqadi
tashqariga PORTC, tmp ; kiritish tortish
rezistorlar
Biz gulchambarlarni yoqamiz va o'chiramiz sifat chiqish V port B
ma'lumotlar, oldindan tayyorlangan V ro'yxatdan o'tish . Davlat
parametri sifatida vkl registridan foydalanamiz tartib. Da vkl = 00
soat Ish to'xtatilgan da vkl = FFh
— kiritilgan;
; yoqish; ishga tushirish
birinchi gulchambarclr
outreg
inc outreg
tashqariga PORTB, outreg
; ruxsat berish xalaqit berish
taymerldi tmp, (1<<TOIE1)
tashqariga TIMSK, tmp
; yoqish; ishga tushirish
rejimi ish 1ldi rejimi, 1
; ruxsat berish
xalaqit beradisei
; I=1
; to'xtatib turish ish tartibclr
vkl
;vkl = 00 soat
; tayinlash boshlang'ich ma'nosi
; Sensor tasodifiy raqamlar
ldi tasodifiy, 156
; oxiri pastki dasturlar asosiy boshlash
23
Dasturning asosiy qismi asosiy va taqdimot yorlig'i bilan boshlanadi
yolg'on o'zingiz cheksiz tsikl. IN tanasi tsikl sodir bo'lmoqda tahlil
24
tugma holatlari. Agar boshlash tugmasi bosilsa , inversiya
sodir bo'ladi Bu registr vkl . Beg yoki rand tugmalaridan birini
bosganingizda rejim registri 1 yoki 2 qiymatini yozadi. Keyingi sodir
bo'ladi vkl registrini nol bilan solishtirish . Agar tartib pauza
qilingan bo'lsa Lena vkl = 00h , keyin breq asosiy buyrug'i
qaytishni ta'minlaydi yorliq asosiy to'g'ridan-to'g'ri keyin tekshiruvlar
bosish tugmalar
asosiy:
; kuzatib boryapmiz bosish
tugmalarsbis PINC, boshlang
com vkl
sbis PINC,
iltimosldi
rejimi, 1 sbis
PINC, randldi
rejim, 2
cpi vkl, 0
breq asosiy
Agar tartib yoqilgan bo'lsa vkl = FFh , keyin tekshirishdan keyin
davlat tugmalar tashkil etilmoqda kechikish. Uchun bu Ishga
tushiriladi - Taymer T1 ishlamoqda va taymerning to'lib ketishi
kutilmoqda. IN jarayon umidlar qo'shimcha ravishda tekshirilmoqda
davlat tugmalarboshlash
; tayinlash boshlang'ich ma'nosi taymer
ldi tmp, $f8
tashqariga
TCNT1H, tmpldi
tmp, $5e
tashqariga
TCNT1L, tmp
; ishga tushirish
taymerldi tmp, 04
dollar
tashqariga TCCR1B tmp
25
; kutish harakatga keltirish taymer
clr r18
; aniq vaqtinchalik
ro'yxatdan o'tishKutmoq: ; Xayr r18
teng 0, kutamiz
sbis PINC, boshlash
26
com vkl
cpi r18.0
breq Kutmoq
; r18 to'xtab qoladi bo'l teng 0 keyin qayta
ishlash
; xalaqit beradi toshib ketish
taymerrjmp asosiy ; oxiri asosiy
tsikl
Taymerni to'ldirish tartibi T1 o'zgartirish yorlig'i
bilan boshlanadi . Ser r18 buyrug'i tayinlaydi nolga teng
bo'lmagan ma'nosi ro'yxatdan o'tish r18 Nima imkon beradi STOP
hayotga kir hurmat V asosiy narsa tsikl dasturlari. Keyinchalik
harakatlar bog'liq ish rejimidan. Agar rejim = 2 bo'lsa,
mode2 yorlig'idan boshlab keyingi psevdo-tasodifiy raqam
Nramdom hosil qilinadi va chiqariladi davom etmoqda V port
B. Agar rejimi = 1 , Bu mazmuni ro'yxatdan o'tish outreg
yonayotgan olovni yaratish uchun chapga siljiydi va ichida ham
ko'rsatiladi port IN.
o'zgartirish:
ser r18
cpi rejim, 2
breq rejim2
rejim 2
; Agar rejimi = 2
; davom etaylik yoqilgan yorliq
; aks holda rejimi = 1
lsl outreg
; siljish chap
sbrc outreg, 5 ; agar siz 5-bitga
yetsangizldi outreg, 1
; ustidan
sakrab o'taylik yoqilgan 1-chi bitrjmp
oxirgi rejim
; chetlab o'tish teglar
rejim 2
rejim 2:
27
mov tmp, N_tasodifiy ; vaqtincha saqlash
Tasodifiylsr N_tasodifiy ; ko'paytirmoq
yoqilgan 2
lsr N_tasodifiy ; 4 ga
ko'paytiring qo'shish
N_random,tmp ; 5 ga ko'paytiring
inc N_tasodifiy ; qo'shildi Bilan
= 1
28
mov tashqariga chiqish, N_tasodifiy
oxirgi rejim:
tashqariga PORTB outreg ; chiqaramiz
V portclr tmp
tashqariga TCCR1B tmp
; STOP taymer T1
reti ; oxiri qayta ishlash xalaqit beradi
29
LABORATORIYA ISH Yo'q. 2. GENERATOR SIGNALAR
Tavsif laboratoriya tartib
Laboratoriya Ish amalga oshirildi Bilan foydalanish tartib
Yo'q. 1, blok diagrammasi kim tasvirlangan yoqilgan guruch. 7.
Raqamli-analogli konvertor D portining 0-7 qatorlariga
ulangan. dasturchi (DAC). DAC oddiy rezistiv sxema yordamida
qurilgan. UningkirishigaDportidan∆ t vaqt oralig'ida xizmat qilgan o'qishlar signal
V shakl sakkiz bitli ikkilik raqamlar (diapazon 0 dan 255 gacha
qiymatlar). DAC chiqishida har bir namuna oldindan olinadi.
joylashtiriladi Daraja Kuchlanishi dan 0 oldin +5 IN, qo'llabquvvatlanadi ∆t oralig'ida . Shunday qilib, DAC chiqish signali qadam
qiymatiga ega qadam funksiyasi ki , 5/255 0 ga karrali . 02 V. DAC
tasvirining chiqishidagi
signalga misol hayratda qoldi yoqilgan
≈
guruch. 10.
s(t)
0.02 В
t
t
Guruch. 10. Misol signal yoqilgan Chiqish DAC
Laboratoriya maketidagi qadamlarni tekislash uchun
foydalaning chaqirilmoqda kondansatörler, amalga oshirish roli filtr
past chastota Taqdim etilgan ulanish kondansatörler boshqacha
nominatsiyalar.
30
U boshqariladigan kalitlar yordamida amalga oshiriladi, amalga
oshiriladi hammomlar yoqilgan mikrosxema K561KT3. Menejerlar
chiziqlar kalitlari hamkorlik B portining 0-3 satrlariga ulangan.
Mantiqiy bitta chiqish B portining kerakli biti mos keladigan
ulanishga olib keladi yaxshi kondansatör.
Streyt raqamli sintez
Uchun avlod signal unumli foydalanaylik usuli bevosita
raqamli sintez. Mayli zarur hosil qilish signal, opi davriy funktsiya f ( s
) bilan tavsiflanadi , ya'ni k Z adolatli tenglik f ( s ∀+ k∈r) = f ( s ) .
Kattalik r — davr funktsiyalari f ( s ) . Garmonik signalning maxsus
holatida f ( s ) = cos s, davr r = 2 p.
Bevosita raqamli sintez usuli bilan signal hosil qilish yoqiladi V
hajmi, Nima orqali teng bo'shliqlar vaqt ∆t , aniqlash bo'linadigan
chastota namuna olish F = 1 / ∆t , yoqilgan Kirish DAC keyin
kuylash o'qishlar (bir zumda qiymatlar) yaratilgan signal. Bular
namunalar mikrokontroller dasturi va chiqishi bilan hisoblanishi
mumkin ularni D portiga yuboring. Lekin ko'pincha mikro-ning past
quvvati tufayli. boshqaruvchi Uchun hisob-kitoblar Keyingisi ortga
hisoblash talab qilinadi vaqt, ∆t dan katta . Shuning uchun o'qishlar
oldindan hisoblab chiqiladi va saqlanadi xotira mikrokontroller V
shakl massiv raqamlar. Chunki funk- tion f ( s ) davriy, ega ma'nosi
saqlamoq o'qishlar, bir davr mobaynida olingan . Ularning soni
xotira hajmiga bog'liq mikrokontroller va, qoida tariqasida,
darajaning ko'pligi tanlanadi deuces. P ni belgilaymiz = 2p davrdagi namunalar soni; f i = f ( i P /P ) — hisobga oladi. Uchun
chiqish hisobga oladi V DAC foydalanish 8 bitli D porti ishlatiladi,
shuning uchun f i qiymatlari saqlaymiz 8 bitli hujayralar. Shuning
uchun, f i topshirilishi kerak V shakl butun raqamlar x i dan
diapazon 0...255:
f i − min( f i )
x = trunk 255
,
i
maksimal ( f i ) − min ( f i )
Qayerda trunk {·} — butun Qism raqamlar.
31
X i ko'rsatkichlarini birma-bir ko'rsatish quyidagicha amalga
oshirilishi mumkin: zom. Biz o'zgaruvchidan foydalanamiz hisoblagich i . Inter- vaqt mili ∆ t taymer i ortdi va x i hisoblang
ko'rsatiladi portga. i qiymatini normallashtirilgan deb talqin qilish
mumkin butun son vaqt i = t/ ∆ t , bu miqdor bilan o'lchanadi
namunalar yoki namuna olish intervallari. Agar bit chuqurligi oshib
ketgan bo'lsa - meniki i ga teng p , Bu u orqali o'tadi qiymatlar
dan
—
− 0
oldin P 1 = 2p 1 . Yetib kelgan maksimal mumkin ma'nolari,
o'zgaruvchan i qayta to'ldiriladi va nolga teng bo'ladi. Shuning uchun P
∆ t vaqt ichida i o'zgaruvchisi to'lib toshgan va to'liq portga
chiqariladi davr yaratilgan signal. anglatadi chastota signal yoqilgan
ChiqishDAC ga teng n 0 = F/P .
Mayli Hozir zarur hosil qilish signal Bilan boshqa cha- yuz.
belgilaylik s ( t ) = f ( ō t ) , Qayerda kattalik ō xarakterlaydi ishlab
chiqarilgan signalning chastotasi. z = ō t argumenti chaqiriladi
signalning fazasini o'zgartiring. Bu monoton ravishda o'sib
borayotgan qiymatdir Nuh. Vaqt o'tishi bilan faza ortishi ∆ t ga
teng ∆ ϕ = ō ∆ t . Bu erdan aniq chastota qanchalik yuqori bo'lsa, bir
vaqtning o'zida faza o'sishi shunchalik ko'p bo'ladi interval namuna
olish.
Kimga ta'minlash avlod signal Bilan boshqacha chastota, oy
Qurilmaning ishlash algoritmini o'zgartiramiz . Birinchidan, o'rniga P
sig'imga ega i tasma hisoblagichi uchun biz n > p sig'imli saqlash
o'zgaruvchisidan foydalanamiz . U qila oladi 0 dan N gacha
qiymatlarni oling 1 = 2n 1 . Chunki—N >P , k o'zgaruvchisi
saqlangan x i
−
namunalarini raqamlash uchun mos emas V xotira. Raqam o'qishlar
Biz .. qilamiz Bilan yordami bilan p keksalar bitlar o'zgaruvchan k .
Keyin, to'liq saqlash muddatini DACga chiqarish uchun, xotirada
saqlangan signal uchun N ∆ t > P ∆ t vaqt kerak bo'ladi . Signal n =
F/N chastotasiga ega bo'ladi . Misol uchun, agar bit chuqurligi bo'lsa
jamlovchi o'zgaruvchan ga teng 24 oz, A chastota namuna olish F =
0 . 1 MGts, Bu N = 16777216 , n = 0 . 00596 Hz
Ikkinchidan, keling, kümülatif o'zgaruvchining oshishiga ruxsat
beraylik yangi Ko'proq Qanaqasiga yoqilgan birlik. Biz .. qilamiz
yoqilgan hamma interval diskret lar ∆ t qo'shish Kimga o'zgaruvchan
32
k o'pish hajmi ō. Keyin k
33
toshib ketishiga ō marta tezroq erishadi, bu chastotani bildiradi signal
ortadi V ō bir marta Va bo'ladi ga teng n = ōF /N .
Hajmi k mumkin talqin qilish Qanaqasiga normallashtirilgan
∆ t ga signalning fazasi va shuning uchun u fazali akkumulyator deb
ataladi. F/N = ∆ F nisbati chastota o'lchamlarini xarakterlaydi,
keyin signal chastotasi o'zgarganda qanchalik o'zgarishini ko'rsatadi
ō ni bir marta kamaytirish. Ma'nodagi ō qiymatini ham unutmang
odatiy ma'noda chastota emas. U ko'rsatadi hosil qilingan signalning
chastotasi minimaldan necha marta katta chastota ∆F = F/N , bu o'z
navbatida tez-tez aniqlanadi bu namuna olish F Va bit chuqurligi
batareya bosqichlari.
Chastotaning
nimaga
teng
ekanligini
va
qanday
tanlanganligini muhokama qilish qoladi namuna olish F . Chunki bir
zumda qiymatlar signal Uchun chiqish V DAC tayyorlanmoqda
mikrokontroller, Bu chastota F F clk taktli chastotaga bog'liq bo'lib,
unda mikro- boshqaruvchi. Uning ishining bir tsikli uchun (batareya
o'sishi fazalar, xotiradan o'qishni ajratib olish, uni portga chiqarish).
tit m mashina uradi Da optimal yozilgan dastur
m ≈ 7 12 . Shuning uchun chastota, Bilan qaysi o'qishlar tushish V
port D, ga teng F = F clk /m . Shunday qilib yo'l, da soat chastota
mikrokontroller F klk = 1 MGts Va m = 10 chastota namuna olish
F = 0 . 1 MGts.
Amaliy vazifalar
1. Yoniq laboratoriya tartib amalga oshirish funktsiyasi generator
pe- davriy signal, shakli va ish aylanishi aniqlanadi bo'lingan
sizniki variant. Dam olish kuni signal tartib kuzatish berish
yoqilgan ekran osiloskop.
2. Kondensator sig'imini tekislashning ta'sirini o'rganing yoqilgan
tashqi ko'rinish Dam olish kuni signal.
3. Aniqlash Bilan nima vaqtinchalik interval ∆ t mikronazorat - ler
masalalar o'qishlar signal.
34
4. Tadqiq qiling Qaysi maksimal chastotalar mumkin erishish
Uchun sizniki shakllari signal.
Variant 1.
Variant 2.
s(t)
t
Variant 3.
s(t)
t
35
Variant 4.
s(t)
t
Variant 5.
s(t)
t
Variant 6.
s(t)
t
Variant 7.
s(t)
t
36
Variant 8.
s(t)
t
Variant 9.
s(t)
t
Variant 10.
s(t)
t
Misol ijro ish
Misol tariqasida, biz tasvirlangan signal generatorini amalga
oshiramiz uylangan yoqilgan guruch. o'n bir. Bu signal hisoblanadi
o'zingiz miqdori birinchi Va uchinchi garmoniklar Bilan yagona
amplitudalar
f ( s ) = gunoh ( s ) + gunoh ( 3s ) + 1 , 6 .
Kattalik 1.6 tanlangan eksperimental ravishda, uchun jadval signal x
o'qidan butunlay yuqorida edi . Maksimal qiymatsignal maks f ( s ) ≈
3 , 2018-03-22
37
s(t)
t
Guruch. o'n bir. so'm birinchi Va uchinchi garmoniklar
Davr funktsiyalari f ( s ) teng r = 2 p. Keling, hisoblaylik
o'qishlar bir davr bo'yicha signal beradi va ularni butun sonlar sifatida
ifodalaydi diapazon dan 0 oldin 255:
x = trunk
i
255
gunoh
3.2
2pi
P
+ gunoh 3
P
2pi
+
+1.6
.
Biz har bir davr uchun 256 ta namunadan foydalanamiz,
shuning uchun p = 8 , P = 256 . Namuna raqami i funktsiyasi
sifatida bitta signal davri ko'rsatilgan yoqilgan guruch. 12. Massiv
hisobga oladi mumkin olish V dastur Maksima Bilan yordami bilan
bitta buyruqlar:
makelist (round(255*(sin(2*%pi*i/256)+).
sin(3*2*%pi*i/P)+1.6)/3.2),i,0.255);
s(t)
255
i
0
0
127
191
63
Guruch. 12. Bir davr signal
38
255
Natijada olamiz massiv dan 256 raqamlar:
128,135,143,151,158,166,173,180,
187,194,200,206,212,218,223,227,
232,235,239,242,244,246,248,249,
250,250,250,249,248,247,245,243,
240,237,234,230,227,223,218,214,
209,205,200,195,190,185,180,175,
171,166,162,157,153,149,146,142,
139,137,134,132,131,129,128,128,
128,128,128,129,131,132,134,137,
139,142,146,149,153,157,162,166,
171,175,180,185,190,195,200,205,
209,214,218,223,227,230,234,237,
240,243,245,247,248,249,250,250,
250,249,248,246,244,242,239,235,
232,227,223,218,212,206,200,194,
187,180,173,166,158,151,143,135,
128,120,112,104,97,89,82,75,
68,61,55,49,43,37,32,28,
23,20,16,13,11,9,7,6,
5,5,5,6,7,8,10,12,
15,18,21,25,28,32,37,41,
46,50,55,60,65,70,75,80,
84,89,93,98,102,106,109,113,
116,118,121,123,124,126,127,127,
128,127,127,126,124,123,121,118,
116,113,109,106,102,98,93,89,
84,80,75,70,65,60,55,50,
46,41,37,32,28,25,21,18,
15,12,10,8,7,6,5,5,
5,6,7,9,11,13,16,20,
23,28,32,37,43,49,55,61,
68,75,82,89,97,104,112,120
39
Keyinchalik dastur matnini unga hamrohlik qilib yozamiz
tushuntirishlar. Dastur boshlanadi yoqish fayl Bilan tavsifi Men
m8def.inc mikrokontrollerini dastur matniga qo'shyapman. Bu fayl
dastur papkasida joylashgan bo'lishi yoki unga ishora qilishi kerak
to'liq yo'l. Keyinchalik, mintaqaning tmp ramziy nomi beriladi. stru
r16 .
.o'z ichiga oladi "m8def.inc"
.def tmp = r16
Saqlamoq hisoblangan avval o'qishlar signal Biz .. qilamiz V xotira
tarafdori gramm. Shuning uchun, .CSEG direktivasi bilan biz
joriy ekanligini ta'kidlaymiz politsiyachi kod dasturlari. Keyinchalik
sozlash portlar I/U
.CSEG
clr tmp
tashqariga DDRC, tmp ; chiziqlar
port BILAN - kirishlarser tmp
tashqariga DDRD, tmp ; chiziqlar port
D - chiqadi tashqariga DDRB, tmp ;
chiziqlar port B - chiqadi ldi tmp,
0b00001111
tashqariga PORTB tmp ; yoqilgan kondansatörler
O'qishlarni o'zlarini butun dasturdan keyin joylashtiramiz va belgilaymiz
signal belgisi bilan . U birinchi namunaning manzilini ifodalaydi
signal. Dastur xotirasida saqlangan ma'lumotlarga kirish tomonidan
ta'minlanadi Bu lpm buyrug'i yordamida amalga oshiriladi .
Bunday holda, u ishlatiladi o'z ichiga olgan Z juftligi registrlari
orqali bilvosita manzillash o'rmonchilar ikki ro'yxatdan o'tish
r31:r30 . Jamoa lpm ekstraktlar bayt ma'lumotlar dan hujayralar
xotira dasturlari, manzil qaysi ko'rsatilgan V ro'yxatdan o'tish - Z
juftiga yig'lang . Bunday holda, murojaat qilishning o'ziga xos
xususiyatlarini hisobga olish kerak dastur xotirasi. U o'n olti bitli
so'zlardan iborat. Shunung uchun yorliq signalni o'z ichiga oladi
manzil birinchi ortga hisoblash signal - la, so`z bilan ifodalangan. lpm
40
buyrug'i adreslashdan foydalanadi hamma bayt bu bir xil xotira.
Demak, Uchun hisob-kitoblar
41
birinchi baytning manzili so'zlar bilan ifodalangan signal
manzili kerak vah, ko'paytirmoq yoqilgan 2. IN Keyingisi
parcha dasturlari katta va signal manzilining past baytlari
yordamchiga yuklanadi registrlar r18 va r17 . r18:r17 registr
juftining qiymati aqlli bosamiz yoqilgan 2 usuli siljish chap yoqilgan 1
bit. olamiz manzil birinchi baytlarda ifodalangan signallar soni va uni
registrga yuklang chiziq er-xotin Z.
ldi r18, yuqori
(signal)ldi r17, past
(signal)
clc
; SREG holat registrining C bitini
tozalashrol r17 ; tsiklik siljish chap yoqilgan 1
oz, orqalirol r18 ; SREG registrining C biti (2
ga ko'paytiring) mov r31, r18
; yuklash
manzillar V
mov r30, r17
; ro'yxatdan o'tish er-xotin Z
IN natija mikrokontroller tayyor Kimga o'qish birinchi ortga hisoblash bu signal dan xotira dasturlari. Biz .. qilamiz foydalanish 24-bit
batareya bosqichlari. Uning katta, o'rtacha Va Jr bayt Manzil mosravishda
r30:r29:r28
registrlarini qo'ying . Yuqori bayt Fazali
akkumulyatorning r30 belgisi signalning mos yozuvlar
raqamini aniqlaydi, bu esa Bu DACga chiqarilishi kerak.
Shuning uchun u mos keladi Bilan yoshroq bayt ro'yxatdan o'tish
juftliklar Z.
Keling, hisoblaylik Hozir chastota ruxsat. IN laboratoriya
tartib ishlatilgan soat chastota mikrokontroller F klk
≈
≈ 1 MGts. Quyida ko'rinib turganidek, asosiy dastur tsiklida biz
soat sikllari soni m = 9 . Shuning uchun, namuna olish tezligi F 111
kHz.
≈ Batareyaning 24 marta zaryadsizlanishi bilan N = 16777216
fazasi , va chastota o'lchamlari ∆F = 0 . 00661611557 Hz. Kerak
bo'lsin dimo hosil qilish signal Bilan chastota 1 kHz. Keling,
ajratamiz talab qilinadi chastota o'lchamlari bo'yicha chastota, biz
o'zgaruvchining
qiymatini olamiz
ō = magistral 1000 / 0 ,
{
}
00661611557 = 151146 = 024E6Ah.
Dasturdagi ō o'zgaruvchisini uchta registrga joylashtiramiz
42
r26:r25:r24 — katta, o'rtacha Va Jr bayt mos ravishda aslida.
Keyingi fragment bu baytlarga hisoblash qiymatini belgilaydi.
dangasa ma'nosi 024E6Ah.
43
ldi r24.0x6A
ldi r25.0x4E
ldi r26.0x02
Shundan so'ng dasturning asosiy tsikli keladi, unda ō qiymati
fazali kumulyatorga qo'shiladi, hisob chiqariladi signal va portga
chiqish. Ushbu harakatlar 9 soat tsiklini oladi mikrokontroller.
asosiy:
; qo'shimcha
r28, r24 qo'shing ; 1
o'lchov adc r29, r25 ;
1 o'lchov adc r30, r26
; 1 xushmuomalalik
; qazib olish
lpm
; 3 xushmuomalalik
; xulosa V port
chiqish PORTD,r0 ; 1
bar rjmp asosiy
; 2
xushmuomalalik
VA, nihoyat, keyin hammasi dasturlari joylashgan massiv dan hisoblar yaratilgan signal.
signal:
.db 128,135,143,151,158,166,173,180
.db 187,194,200,206,212,218,223,227
.db 232,235,239,242,244,246,248,249
.db 250,250,250,249,248,247,245,243
.db 240,237,234,230,227,223,218,214
.db 209,205,200,195,190,185,180,175
.db 171,166,162,157,153,149,146,142
.db 139,137,134,132,131,129,128,128
.db 128,128,128,129,131,132,134,137
.db 139,142,146,149,153,157,162,166
.db 171,175,180,185,190,195,200,205
.db 209,214,218,223,227,230,234,237
44
.db 240,243,245,247,248,249,250,250
.db 250,249,248,246,244,242,239,235
.db 232,227,223,218,212,206,200,194
.db 187,180,173,166,158,151,143,135
.db 128,120,112,104,97,89,82,75
.db 68,61,55,49,43,37,32,28
.db 23,20,16,13,11,9,7,6
.db 5,5,5,6,7,8,10,12
.db 15,18,21,25,28,32,37,41
.db 46,50,55,60,65,70,75,80
.db 84,89,93,98,102,106,109,113
.db 116,118,121,123,124,126,127,127
.db 128,127,127,126,124,123,121,118
.db 116,113,109,106,102,98,93,89
.db 84,80,75,70,65,60,55,50
.db 46,41,37,32,28,25,21,18
.db 15,12,10,8,7,6,5,5
.db 5,6,7,9,11,13,16,20
.db 23,28,32,37,43,49,55,61
.db 68,75,82,89,97,104,112,120
JB direktivasi kerakli bayt sonini saqlab qoladi dastur
xotirasida. Direktivga o'tkazilgan parametrlar vergul bilan ajratilgan
iboralar ketma-ketligi. Har biri ifoda yoki 0...255 oralig'idagi raqam
bo'lishi kerak yoki ha wat da hisoblash natija V bu bir xil diapazon.
45
ADABIYOT
1. Baranov V.N. AVR mikrokontrolörlarini qo'llash: sxemalar,
algoritmlar, dasturlar / V.N. Baranov. - M .: Dodeka-XXI, 2004
yil. — 288 Bilan.
2. Belov A.V. Biz yaratamiz qurilmalar mikrokontrollerlarda / A.V.
Belov — Sankt-Peterburg : Fan Va Texnika, 2007 yil. — 304
Bilan.
3. Grebnev V.V. Mikrokontrollerlar oilalar AVR kompaniyalar Atmel
/ V.V. Grebnev. — M. : RadioSoft, 2002 yil. — 176 Bilan.
4. Evstifeev A.V. Mikrokontrollerlar AVR oilalar Kichkina Va
ATMEL / A.V dan mega. Evstifeev. - M .: Dodeka- XXI, 2004
yil. — 560 Bilan.
5. Trumpert IN. AVR-RISC mikrokontrollerlar : qator Bilan
nemis / IN. Trumpert. — Kiev : MK-Press, 2006 yil. — 464
Bilan.
46
Download