Få igång ADC till 18F452

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
xezer
Inlägg: 65
Blev medlem: 8 mars 2005, 20:41:21

Få igång ADC till 18F452

Inlägg av xezer »

Hej,
Jag har länge nu försökt få igång ADCn till den lille pic-uslingen.
Jag har läst databladet om och om igen men blir inte så mycket klokare :/
Hittade en guide på microchip som var rätt bra, men inte alls säker på att jag lyckades initiera det rätt iaf :(

Hur som helst här kommer koden
http://rafb.net/p/oKeutU94.html
Det är nere på Start: (rad 275) som det ska initieras och läsas av.

Sedan har picen 10bitars ADC, kan jag vänsterjustera resultatet och bara läsa av ADRESH för att få 8bit av resultatet?

Tack på förhand
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Vad händer ?
Vad händer inte ?

> Sedan har picen 10bitars ADC, kan jag vänsterjustera resultatet
> och bara läsa av ADRESH för att få 8bit av resultatet?

Du har ju redan konfigurerat ADCON1 för det !?

Rent spontant ser det OK ut, och det finns ingen anledning att
dyka djupare i det utan att veta vad *problemet* är...
xezer
Inlägg: 65
Blev medlem: 8 mars 2005, 20:41:21

Inlägg av xezer »

Ett klant-fel var att jag skrivit
MOVLW ADRESH,
det är nu bytt till
MOVF ADRESH, W

Nu fungerar det bättre, Jag får ut olika tecken beroende på hur mycket jag matar in.
Jag testar med en K8055, som är ett USB interface med analoga och digitala in och utgångar.
Då när jag skickar ut 255 analogt, vilket borde vara 11111111, får jag upp ett "roten-ur" tecken på LCDn, som har 11101000 i teckentabellen?
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Inlägg av sodjan »

Hur mycket "fel" är det om du räknar om det i volt ?
xezer
Inlägg: 65
Blev medlem: 8 mars 2005, 20:41:21

Inlägg av xezer »

När jag mätte fick ut 4.65V, så det var antagligen det som var felet; att den inte levererer tillräckligt. Kopplade sedan in direkt från matningskällan (som är 5V) och då fick jag mycket riktigt upp den lilla fyrkanten som är 11111111.
Men skönt! Då verkar det fungera då :D

Tack för all hjälp!
Skriv svar