Programmeringshjälp önskas!
Programmeringshjälp önskas!
Jag skulle behöva hjälp med att göra ett litet enkelt program till en µC som är lämplig för ändamålet.
Tanken är att den ska ta en spänning på mellan 0-5 V på ADC:en och jämföra den med 6 olika spänningsnivåer. Dessa 6 olika spänningsnivåer motsvarar 6 olika knappar på ratten i min SAAB. Som ut produkt ska den skicka ut en "byte" paralellt motsvarande knapp. Dessa paralella bitar matas sedan in i en USB-tangentbords-emulator som skickar vidare knapptryckningen till datorn som en HID device.
Tangentbordsemulatorn är denna http://www.radovan.org/EasyInput/index.htm
Alla tips på hur µC ska programmeras mottages varmt! Jag är helt grön på området!
Tanken är att den ska ta en spänning på mellan 0-5 V på ADC:en och jämföra den med 6 olika spänningsnivåer. Dessa 6 olika spänningsnivåer motsvarar 6 olika knappar på ratten i min SAAB. Som ut produkt ska den skicka ut en "byte" paralellt motsvarande knapp. Dessa paralella bitar matas sedan in i en USB-tangentbords-emulator som skickar vidare knapptryckningen till datorn som en HID device.
Tangentbordsemulatorn är denna http://www.radovan.org/EasyInput/index.htm
Alla tips på hur µC ska programmeras mottages varmt! Jag är helt grön på området!
- PHermansson
- EF Sponsor
- Inlägg: 4340
- Blev medlem: 22 december 2004, 00:46:38
- Ort: Särestad Grästorp
- Kontakt:
En tanke som slår mig är att använda PIC18F2550 eller liknande med Microchips HID-kod. Då räcker det med en krets och man får en bra kodbas att börja med. Det som behöver göras är att skriva kod som läser A/D'n och skickar motsvarande info till datorn.
Påminner lite om det jag grejar med för tillfället, fast jag använder en 4550 med CDC-koden. Har än så länge lyckats skicka en förprogrammerad text till HyperTerminal, nästa steg nu är att läsa av en A/D-pinne och skicka detta värde till datorn.
Vill man testa detta är http://pic18fusb.online.fr/wiki/wikka.php?wakka=CdcCOMx en guldgruva. Tydliga steg-för-steg instruktioner på hur man kommer igång.
Påminner lite om det jag grejar med för tillfället, fast jag använder en 4550 med CDC-koden. Har än så länge lyckats skicka en förprogrammerad text till HyperTerminal, nästa steg nu är att läsa av en A/D-pinne och skicka detta värde till datorn.
Vill man testa detta är http://pic18fusb.online.fr/wiki/wikka.php?wakka=CdcCOMx en guldgruva. Tydliga steg-för-steg instruktioner på hur man kommer igång.
> En tanke som slår mig är att använda PIC18F2550 eller liknande med Microchips HID-kod.
En väldig overkill om man redan har det lilla färdiga USB interfacet
på länken och den gör vad som behövs.
Det blir inte många rader asm för att läsa ADC och lägga ut lämpliga
"koder" till USB-chippet...
> Alla tips på hur µC ska programmeras mottages varmt!
1. Man väljer fabrikat.
2. Man väljer modell.
3. Man installerar en utvecklingsmiljö.
4. Man skriver koden och skapar en HEX fil.
5. Man "flashar" processorn med koden.
That's it.
Om det var något annat du ville veta så får du fråga lite mer specifikt.
En väldig overkill om man redan har det lilla färdiga USB interfacet
på länken och den gör vad som behövs.
Det blir inte många rader asm för att läsa ADC och lägga ut lämpliga
"koder" till USB-chippet...
> Alla tips på hur µC ska programmeras mottages varmt!
1. Man väljer fabrikat.
2. Man väljer modell.
3. Man installerar en utvecklingsmiljö.
4. Man skriver koden och skapar en HEX fil.
5. Man "flashar" processorn med koden.
That's it.
Om det var något annat du ville veta så får du fråga lite mer specifikt.
>1. Man väljer fabrikat.
>2. Man väljer modell.
>3. Man installerar en utvecklingsmiljö.
>4. Man skriver koden och skapar en HEX fil.
>5. Man "flashar" processorn med koden.
>
>That's it.
>Om det var något annat du ville veta så får du fråga lite mer specifikt.
Precis dom där punkterna vill jag ha hjälp med
Vilken µC är lämplig t ex? Vill lära mig programmera AVR-familjen i första hand. Fast vad vet väl jag...
Asm är iallafall det språk vad jag förstår som är bäst om man inte kan något annat från grunden.
>2. Man väljer modell.
>3. Man installerar en utvecklingsmiljö.
>4. Man skriver koden och skapar en HEX fil.
>5. Man "flashar" processorn med koden.
>
>That's it.
>Om det var något annat du ville veta så får du fråga lite mer specifikt.
Precis dom där punkterna vill jag ha hjälp med

Asm är iallafall det språk vad jag förstår som är bäst om man inte kan något annat från grunden.
OK, nedanstående *kan* vara påverkat av att jag själv levererar programmeringsutrustning till ett "visst" fabrikat... 
>>> 1. Man väljer fabrikat.
www.microchip.com
>>> 2. Man väljer modell.
Tja, PIC16F88 (av en tillfällighet har jag den : http://www.jescab.se/Prod_PIC.html )
>>> 3. Man installerar en utvecklingsmiljö.
MPLAB
>>> 4. Man skriver koden och skapar en HEX fil.
knappa, knappa, testa, knappa, testa, knappa, knappa, svära, knappa, knappa...
>>> 5. Man "flashar" processorn med koden.
T.ex med hjälp av en sådan här : http://www.jescab.se/Wisp628.html
(Tillfälligt slut, men det ska vara åtgärdat om ca 1 vecka...)

>>> 1. Man väljer fabrikat.
www.microchip.com
>>> 2. Man väljer modell.
Tja, PIC16F88 (av en tillfällighet har jag den : http://www.jescab.se/Prod_PIC.html )

>>> 3. Man installerar en utvecklingsmiljö.
MPLAB
>>> 4. Man skriver koden och skapar en HEX fil.
knappa, knappa, testa, knappa, testa, knappa, knappa, svära, knappa, knappa...
>>> 5. Man "flashar" processorn med koden.
T.ex med hjälp av en sådan här : http://www.jescab.se/Wisp628.html
(Tillfälligt slut, men det ska vara åtgärdat om ca 1 vecka...)
Jag håller med cykze, låter som ett bra 'nybörjarprojekt'.
Trevligt att du vill lära dig AVR! Själva mjukvaran skriver du antingen i programmers notepad, eller i AVRstudio(båda gratis). Sedan för att flasha AVRen (jag förutsätter att du saknar hårdvara) behöver du någon form av anslutning mellan dator och uC. Enklast vore förståss att köpa ett STK500 utvecklingskort, men det är ju tråkigt att bara köpa och roligare att bygga själv. Du kan med en handfull billiga komponenter bygga en programmerare för parallellporten, se kopplingsschema:
http://www.lancos.com/e2p/betterSTK200.gif
Om du programmerar i PN(programmers notepad), behöver du bara installera ett plug-in som heter AVRdude(gratis) så kan du flasha AVRen ifrån PN. programmerar du i AVRstudio, får du tanka hem ponyprog(gratis) och flasha med. Jag såg att ditt tangentbord-USBchip även accepterar seriell data, det betyder att du skulle kunna klara dig med en uC som har 1A/D och 2I/O för det du vill göra. Men om du köper t.ex en AVR ATtiny26, så kostar den lite över 30:- hos ELFA. Den har 11-kanalers 10b A/D, totalt 16I/O och intern oscillator. Fördelen med intern oscillator är att du inte behöver någon extern kristall. Personligen kan jag ingen ASM, jag kör C, men det finns säkert andra som kan hjälpa dig med det. Lycka till!!!
Trevligt att du vill lära dig AVR! Själva mjukvaran skriver du antingen i programmers notepad, eller i AVRstudio(båda gratis). Sedan för att flasha AVRen (jag förutsätter att du saknar hårdvara) behöver du någon form av anslutning mellan dator och uC. Enklast vore förståss att köpa ett STK500 utvecklingskort, men det är ju tråkigt att bara köpa och roligare att bygga själv. Du kan med en handfull billiga komponenter bygga en programmerare för parallellporten, se kopplingsschema:
http://www.lancos.com/e2p/betterSTK200.gif
Om du programmerar i PN(programmers notepad), behöver du bara installera ett plug-in som heter AVRdude(gratis) så kan du flasha AVRen ifrån PN. programmerar du i AVRstudio, får du tanka hem ponyprog(gratis) och flasha med. Jag såg att ditt tangentbord-USBchip även accepterar seriell data, det betyder att du skulle kunna klara dig med en uC som har 1A/D och 2I/O för det du vill göra. Men om du köper t.ex en AVR ATtiny26, så kostar den lite över 30:- hos ELFA. Den har 11-kanalers 10b A/D, totalt 16I/O och intern oscillator. Fördelen med intern oscillator är att du inte behöver någon extern kristall. Personligen kan jag ingen ASM, jag kör C, men det finns säkert andra som kan hjälpa dig med det. Lycka till!!!

Om du vill lära dig AVR i C så rekomenderar jag Smiley Micros bok starkt.
Den är igenom grunderna bra och är lätt att läsa/förstå.
Den går inte igenom allt men de som man inte lär sig där finns det alltid andra sätt att ta reda påt.
Länk: http://www.smileymicros.com/
Personligen köpte jag "BOOK, BUTTERFLY, AND PROJECTS KIT COMBO" och en AVR-ISP MKII då min Butterfly fick det vanliga lockbit felet som kan hända när man flashar den ibland.
//Emil
Den är igenom grunderna bra och är lätt att läsa/förstå.
Den går inte igenom allt men de som man inte lär sig där finns det alltid andra sätt att ta reda påt.

Länk: http://www.smileymicros.com/
Personligen köpte jag "BOOK, BUTTERFLY, AND PROJECTS KIT COMBO" och en AVR-ISP MKII då min Butterfly fick det vanliga lockbit felet som kan hända när man flashar den ibland.
//Emil
Letade runt pa natet efter hardvara; man kan ju undra hur Elfa lyckas salja en enda pryl. En Atmega8 kostar t ex 67.50 kr inkl moms. Kopte 20 for ca 10 kr styck pa Ebay.
Ang programmerare, kan man kopa billigaste ISP prylen eller ar det battre att satsa pa nagot annat? En STK500 ar lite val saftig att borja med tycker jag.
Den har kanske? Link
Ang programmerare, kan man kopa billigaste ISP prylen eller ar det battre att satsa pa nagot annat? En STK500 ar lite val saftig att borja med tycker jag.
Den har kanske? Link
> En Atmega8 kostar t ex 67.50 kr inkl moms. Kopte 20 for ca 10 kr styck pa Ebay.
Ja, ja...
Och om du har problem med dom ?
Ger eBay säljaren garantier och returmöjligheter ?
De flesta har *lite* mer tilltro till ELFA än någon okänd säljare på eBay.
Sen är priset ca 52:- inkl moms om du vill ha 20 st...
> Den har kanske? Link
Visst, så länge som du har en PC med parr-port...
Ja, ja...

Och om du har problem med dom ?
Ger eBay säljaren garantier och returmöjligheter ?
De flesta har *lite* mer tilltro till ELFA än någon okänd säljare på eBay.
Sen är priset ca 52:- inkl moms om du vill ha 20 st...
> Den har kanske? Link
Visst, så länge som du har en PC med parr-port...