Kandungan siaran
Tug’ilganimdan boshlab elektronika ichida yurgan bo’lsamda microcontrollerlar ichiga shu yil mart oyidan boshlab kirib keldim. O’rganish uchun ko’p ham vaqtim ketmadi. O’rtacha hisobda bir yarim oy yetarlicha bo’ldi men uchun. Ikkinchi oydan esa birinchi buyurtmamni oldim. Boshlanishida arduino (atmega) bugun esa broadcom, arm chiplar bilan ishlashni o’rganib boryapman. Aniqroq aytganda atmega chiplar unchalik qiziqtirmay qo’ygan meni. Balkim arm bilan oraliq farqdadir hamma gap. Sizlarga esa soddaroq bo’lishi uchun atmegadan vaz o’qishni boshlayveraman. Atmega bu 1996-yilda avr olilasida dunyoga kelgan 8-birli RISC michropchip hisoblanadi. Bugunki kunda asosan atmega 328, atmega 2560 va kichik attiny versiyalari keng omma tomonidan qo’llanib kelinadi. Masalan atmega328da Xotira: 32Kb (0.5 bootlader uchun) Chip maksimal tezligi: 20Mhz Kuchlanish: 1.8-5.5v Quvvatlanish: 40mA SRAM: 2 KB EEPROM: 1 KB Kirish va chiqish pillar: 14ta (Bundan 6 donasi puls modulatsiya uchun ham ishlaydi) Maksilmal o’tkazuvchanlik: 200mA Arduino ham ayni shu chiplardan tashkil topgan. Arduino unoda dip atmega328p ishlatilgan bo’lsa, arduino megada atmega 2560 qo’llanilgan. Albatta bularning imkoniyat darajalari turlicha hisoblanadi. Arduino unoda chipga qo’shimcha tarzda lm1117 5 va 3.3 kuchlanish konvertori, 16Mhz kvarts, atmega16da foydalanuvchiga qulay bo’lishi uchun usb serial kiritilgan. Dasturlash c va c++ tillari orqali amalga oshiriladi. Bunda asosiy ikki funktsiya void setup() va void loop() muhim ro’l tutadi. Dasturni esa unoga Arduino IDE dasturidan foydalanib yoki turli programmatorlardan foydalanib hex shaklida yuklash mumkin. Setup funksiyasi chip bootladerdan o’tgach bir marta ishga tushib dasturni sozlash uchun xizmat qiladi. Bunda pinlar vazifasi, turli boshqa funksiyalarni ishga tushirish mumkin. Loop funktsiyasi chipga qo’yilgan kvarts o’lchamiga qarab doimiy yangilanib turadi. Bunda asosan doimiy ish jarayonida yuklatiladigan kodlar biriktiriladi. Qo’shimcha tarzda aytib o’tish lozimki dasturga bir va undan ortiq kutubxonalar yoki arduino kenggaytmasi ino fayllarni ham yuklash mumkin. Buyog’i tasavvur va bilimga bog’liq. Tajriba (ish jarayoni videoda berilgan): //ushbu funktsiya chip ish boshlaganda bir marotaba qo’llaniladi void setup() { // 13-sonli pinni quvvat chiqarish vazifasida ishga tushirish // LED_BUILTIN o’rnida 13 raqamini ham qo’llash mumkin. pinMode(LED_BUILTIN, OUTPUT); } //ushbu funksiya chip ish jarayonida qayta-qayta ishga tushiriladi void loop() { digitalWrite(LED_BUILTIN, HIGH); // svetodiodni yoqish delay(1000); // bir soniya davomida kutish digitalWrite(LED_BUILTIN, LOW); //svetodiodni o’chirish delay(1000); // bir soniya davomida kutish } @devcon