Saturday, April 18, 2009

Omgjord programmerare

Nu har det inte hänt så mycket sen senast, har haft fullt upp med annat. Men jag spenderade ändå ett par kvällar för att få till min programmerare. Som jag visade i det här inlägget var min första version byggd på kopplingsdäcket. Inte speciellt snyggt, platskrävande och oöverskådligt. Sidan jag byggde min programmerare efter visade exempel på hur man kunde bygga in den i en D-Sub-kontakt, och det har jag nu också gjort. Litet och smidigt! Det var dock inte helt lätt att få till alla lödningar på det lilla experimentkortet som sitter inuti. Det blev en och annan svordom under tiden.....

Programmeraren inbyggd i D-Sub kontakthus.

Nästa projekt är som jag nämnt tidigare att få till en USB-programmerare så att jag inte behöver använda en separat dator med seriell port. När den är byggd så ska jag ta tag i något av mina "riktiga" projekt.

Monday, April 13, 2009

LCD-display

Elektronikbyggandet har fortsatt! Införskaffade mig en 2x16 LCD-display från Kjell&Co i helgen, som är HD44780-kompatibel. Det sistnämnda innebär i alla fall att den är kompatibel med en viss sorts styrning. Antingen kan man styra den med 4-bitars eller 8-bitars gränssnitt, vilket i sin tur kräver 7 respektive 11 lediga I/O pinnar på uC'n. 4/8 för den parallella datakommunikationen och 3 st för instruktionshantering. Till att börja med blev det en bra övning i lödteknik, då 14 st (11 st I/O + 5V + GND + kontrastkontroll) kablar skulle fästas vid displayens kretskort. Efter några totalt misslyckade försök lyckades jag till slut komma till insikt med hur man gör när man löder - skulle dock inte kalla mig för en expert riktigt än.

Sedan blev det en hel del programmering och forumhjälp. Jag börjar nu bli medveten om den stora skillnaden att avlusa program i datorn jämfört med program på en extern uC. Det är ganska svårt att få till printf-debug på en extern krets utan någon display. Förhoppningsvis kommer jag nu framöver kunna använda displayen just i avlusnings-sammanhang. En blinkande diod som är betydligt enklare att implementera är lite torftig på att uttrycka information. Ett fel som tog väldigt lång tid att hitta, och som jag höll på att bli helt galen av är kanske värt att nämna. I början när jag satte en pinne till 1 för att tala om för LCD'n att jag ville läsa av ett svar från den (om den var redo för nästa kommando) hängde sig uC'n i nån typ av evig loop. Problemet visade sig vara att den pinnen jag använde var kopplad till jord via min programmerare (som jag inte kopplat ur mellan programmeringarna). Efter att ha åtgärdat det fungerade det finfint.


Mitt första lyckade LCD-experiment (den gigantiska penisliknande
saken i mitten är en potentiometer för att styra kontrasten)

Som man kan se ovan rullar displayen nu! Nästa steg blir att bygga upp ett litet bibliotek funktioner för att hantera den på ett smidigt sätt. Ska också beställa lite mer prylar för att kunna bygga ihop en USB-programmerare så att jag slipper sitta med en extra dator bara för att kunna programmera kretsen.

Friday, April 10, 2009

Elektronikbygge

Nu har det visst gått ett tag sen jag bloggade, innan jul verkar det som. Jobbet flyter i alla fall på som vanligt, mycket att göra. Nu är det i alla fall påsk, och jag har passat på att bli grymt förkyld.

Hur som helst, för ett tag sedan fick jag för mig att jag skulle börja laborera med mikroprocessorer. Hur jag kom in på det spåret har jag redan glömt bort, men jag rev av en beställning på diverse prylar som verkade bra att ha. Jag valde att inte köpa en färdig programmerare utan att bygga en själv. Kanske inte så smart egentligen eftersom jag aldrig pysslat med sånt här förut, men jag tog det som en lärorik upplevelse. Dessutom kostar en färdig från 300kr och uppåt, medans en hemmabyggd går på kanske 50kr i komponentkostnad. Döm om min förvåning när jag på en kväll fått den att fungera!

Mitt kopplingsdäck med en fullt fungerande seriell programmerare.

Nu när jag fått min seriella programmerare att fungera ska jag försöka bygga ihop en USB-programmerare istället. Just nu måste jag låna Emelies bärbara dator eftersom min egen inte har någon seriell port. När det är avklarat ska jag börja med något av mina projekt.
  • Automatisk P-skiva
  • Avståndsvarnare/parkeringsradar
  • Accelerometer
  • Automatisk blomvattningsanläggning
Ett ganska stort steg i komplexitet från mitt nuvaranda enda stordåd att få en lysdiod att blinka. Men men, skam den som ger sig! Det behöver ju inte bli klart på en helg. Bilden nedan visar mitt labb-skrivbord. Att hålla reda på alla små elektronikkomponenter är inte helt lätt, måste hitta på nåt smart sätt att organisera upp allt.

Skrivbordet där jag bygger ihop saker.

Det var allt för den här gången. Tänkte försöka blogga lite oftare från och med nu med lite uppdateringar på hur det går.

Tjingeling!