6-Tajriba ishi
Ishdan maqsad: CodeVisionAVR va Proteus dasturiy paketlari bilan tanishish, Atmega8 mikrokontrolleri bilan ishlash ko’nikmasiga ega bo’lish hamda mikrokontroller portlari bilan ishlash.
Nazariy qism
Portlarga murojaat kiritish/chiqarish registrlari orqali amalga oshiriladi. Kiritish/chiqarish adreslar maydonida har bir port uchun 3 tadan adres ajratilgan. Ularga quyidagi registrlar joylashgan: PORTx portining ma’lumotlar registry, ma’lumotlar yo’nalishi registry DDRx va port oyoqchalarining registry PINx. Registrlarning aniq nomi x belgisining o’rniga portning nomini qo’yish orqali olinadi. Mos ravishda, A portining registrlari PORTA, DDRA, PINA, B portiniki esa PORTB, DDRB, PINB va h.k. deb nomlanadi. PINx registri yordamida portning chiqishlaridagi fizik signalning qiymatini o’qish amalga oshirilganligi sababli, ular faqat o’qishga yaroqli, qolgan ikkiregistr esa ham o’qishga, ham yozishga yaroqli.
Qurilmalar
IBM PC kompyuteri
CodeVisionAVR dasturiy paketi
Proteus dasturiy paketi
Programmator AVR910
Loyiha platasi, mikrokontroller, svetodiod, qarshiliklar
12v li manba bloki
Dastur
16-razryadli sonni ikkilik-o’nlik songa aylantirib, B portining svetodiodlariga quyidagi ketma-ketlikda chiqaruvchi dasturni tuzing: avval o’n ming (BCD2), keyin minglar va yuzlar (BCD1), va keyin esa o’nlar va birlar (BCD0).
Dasturni CodeVisionAVR dasturiy paketida tuzamiz va Proteus dasturiy paketidagi mikrokontrollerli blokimizga yuklaymiz. Dastur quyidagi tartibda ishlaydi: 16-bitli son 0 dan 655 35 gacha bo’lganligi uchun 5 xanali raqamni aniqlash kerak.
Shaxsiy topshiriqlar:
Guruh jurnalidagi raqami
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
11
|
12
|
13
|
14
|
15
|
Vazifa raqamlari
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
1
|
Guruh jurnalidagi raqami
|
16
|
17
|
18
|
19
|
20
|
21
|
22
|
23
|
24
|
25
|
26
|
27
|
28
|
29
|
30
|
Vazifa raqamlari
|
2
|
3
|
4
|
5
|
6
|
7
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
1
|
2
|
Sakkizta svetodiodli qatorda bitta svetodiodli yuruvchi olovning u yoqdan bu yoqqa yugurib yurishi.
Sakkizta svetodiodli qatorda yettita svetodiodli yuruvchi olovning u yoqdan bu yoqqa yugurib yurishi.
Svetodiodlarning davriy ketma-ket yonishini tashkil qilish.
Markazdan chetga qarab yuruvchi olov.
Ikki chetdan markazga qarav yuruvchi olov.
Sakkizta svetodiodli qatorda bitta svetodiodli yuruvchi olovning yo’nalishini o’zgartirmasdan yurishi.
Sakkizta svetodiodli qatorda yettita svetodiodli yuruvchi olovning yo’nalishini o’zgartirmasdan yurishi.
Do'stlaringiz bilan baham: |