A A A
  • Elkészített RGB LED vezérlő
    Elkészített RGB LED vezérlő
  • RGB LED vezérlő belső felépítés
    RGB LED vezérlő belső felépítés
  • Belső felépítés kicsit közelebről
    Belső felépítés kicsit közelebről
  • LED-ek hűtése
    LED-ek hűtése

RGB LED vezérlő

A szoftver a lelke az egész vezérlésnek, így erről is írnék pár szót. Tehát: A program AVR Studio és WinAVR segítségével készült, C nyelven. Raktam bele megjegyzéseket, így talán egyszerűbb lesz a megértése. Amit csak lehetett, kihoztam #define -ba, így rendkívül egyszerű és jól átlátható lett a kód. Ezt mindenki másnak is javaslom, aki programozásra adja a fejét C nyelven. Használjátok a #define -t! Nagyon jó dolog. A program ebben a formájában teljesen kitölti az ATtiny2313-as flash memóriáját, így sokat fejleszteni már nem lehet rajta, maximum csak akkor, ha valahol butít az ember rajta, vagy átírja az egészet ASM-re. A kódot igyekeztem úgy megírni, hogy mások számára is érthető legyen. Ettől függetlenül egy teljesen kezdőnek lehet, hogy mégis gondot fog okozni. De semmi probléma, megérteni úgyis csak annak kell, aki bele akar nyúlni a kódba. A többieknek mellékelem a lefordított hex fájlt.

 

V2.0-ás Szoftver

A programot tovább fejlesztetem. Így a led vezérlő programok száma 15-re nőtt. Az új programok mindegyike egy álvéletlenszám-generátorra épül. Így akinek a többi program unalmas volt, az remélhetőleg ezekkel az új programokkal elégedett lesz. Mivel az új program optimalizáció nélkül már nem fért bele az Attiny2313 -as 2K-s flash memóriájába, így az új V2.0 -ás program lefordításához az AVRStudio -ban be kell kapcsolni az -O1 -es optimalizációt. Így 2046byte lesz a lefordított program mérete, ami azt jelenti, hogy a 2048byte -os tárhelyet 99.9%-ig kihasználjuk. Gyakorlatilag ezzel elértünk az ATtiny2313-as határaihoz. Ha valaki mégis szeretné a kódot tovább fejleszteni, akkor mindenképpen azzal kell kezdenie, hogy valamit kidob belőle, mert különben nem fog beleférni a tárhelybe. Mellékelem a V2.0 -ás kód c forrását és a lefordított hex file-t is.

 

 

 

 

Pages: « Previous 1 2 3 4