dünyanın en yaygın mikrokontrolcü geliştirme kartı olan arduino uno’da kullanılan atmega328 mikrokontrolcüsünü tanıyalım.
atmega328 arduino uno’nun yanında arduino pro mini ve arduino nano’da da kullanılıyor. sparkfun ve adafruit gibi şirketler de bu çip üzerine arduino muadili kartlar geliştiriyorlar.
pic serisi mikrokontrolcülerini de üreten microchip şirketinin alt şirketi haline gelen atmel’in ürettiği 8 bit yapıda olan bu çip risc mimarisini kullanıyor. 32 kilobayt program hafızasına, 2 kilobayt sram’e ve 1 kilobayt eeprom hafızasına sahip. 32 adet genel maksat register’a sahip. bu register’lar sram’in bir parçası olarak kullanılıyor.
arduino’ya yüklediğimiz kodlar atmega328’in içindeki program hafızasına yazılıyor. bunu da arduino ide ile aracı iletişim kuran bootloader’ı sayesinde yapıyor. bootloader kodu program hafızasının en başında yer alıyor ve seri iletişim üzerinden gelen program kodunu hafızanın geri kalanına yazıyor.
mikrokontrolcünün yapısına biraz daha derinden girecek olursak, avr (advanced virtual risc) altyapısına sahip. temel özellikleri gelişmiş risc yapısı, düşük maliyeti, kabul edilebilir performans, düşük güç tüketimi, programlanabilir seri usart yapısı ve kod kilitleme özelliği ile basit gömülü sistemler için biçilmiş kaftan. ancak bu çipin arduino sayesinde ünlü olduğunu söylesek hata etmiş olmayız.
6 pwm pini, analog-dijital dönüştürücü (adc) için 8 pini, 3 dahili timer’ı (2si 8 bit ve üçüncüsü 16 bit) bulunuyor. temelde 5 volt ile çalışan mikrokontrolcü, 16 mhz yerine 8 mhz ile çalıştırılırsa 3,3 volt’a kadar da inebiliyor.