PIC12F675 Poradí někdo s AD převodníkem?

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

PIC12F675 Poradí někdo s AD převodníkem?

#1 Příspěvek od 89C2051 »

Převodník je 10 bitový, čili jeden bit asi 0,004883V na krok. Na minimum 0V by měl mít hodnotu 00 00000000 při 4,995V bude mít 11 11111111.
Přesně to mi ale nefunguje. Ten AD převod dosáhne 00 00000000 při 0,0V, a 11 11111111 již při 4,43V (měřeno METEXEM M3860D).
Pokud se napětí zvýší na 4,436V, je výsledek převodu 11 00000000. Při napětí 4,442V, je výsledek převodu 11 00000001, atd. až do 4,99V,
kdy se dosáhne opět hodnoty 11 11111111. Tento převodník má tak dva vrcholy.
Tak teď raďte. Budu rád za každou radu.
Pokud někdo chce přidám i program. (mohl by někdo tento program vyzkoušet i na jiném kusu PIC12F675 z jiné výrobní série.
Čau Martin
Naposledy upravil(a) 89C2051 dne 11 pro 2009, 19:10, celkem upraveno 1 x.

Uživatelský avatar
Pawalo
Příspěvky: 87
Registrován: 06 říj 2005, 02:00
Bydliště: Tábor
Kontaktovat uživatele:

#2 Příspěvek od Pawalo »

jestli je to v asembleru tak bych do programu nahlidnul.

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#3 Příspěvek od 89C2051 »

Tak jo, zejtra sem dám odkaz na program. Ještě chci vyzkoušet, jestli to bude dělat to samé i s PIC16F676. Budu muset trochu upravit program pro tento mikrokontroler.

Uživatelský avatar
mikollar
Příspěvky: 1406
Registrován: 26 pro 2004, 01:00
Bydliště: Košice - okolie

#4 Příspěvek od mikollar »

Vref+ mas interne? ake napajacie U ma picka?

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#5 Příspěvek od 89C2051 »

Zkoušel jsem vnitřní i vnější referenci. Pořád to samé. Napájení 5V stab.

Uživatelský avatar
mikollar
Příspěvky: 1406
Registrován: 26 pro 2004, 01:00
Bydliště: Košice - okolie

#6 Příspěvek od mikollar »

to ukladanie do registra z lava alebo z prava mas dobre?

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#7 Příspěvek od 89C2051 »

ADFM 1 = řazení zprava

Uživatelský avatar
Galileo
Příspěvky: 77
Registrován: 09 lis 2009, 01:00

#8 Příspěvek od Galileo »

A kontroluješ před přečtením registru ADRESH a ADRESL vynulování bitu ADCON 1? (dokončení AD převodu)

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#9 Příspěvek od 89C2051 »

myslíš tohle?
BTFSC ADCON0,GO
GOTO $-1

Uživatelský avatar
Pawalo
Příspěvky: 87
Registrován: 06 říj 2005, 02:00
Bydliště: Tábor
Kontaktovat uživatele:

#10 Příspěvek od Pawalo »

a doba před zahájenim AD převodu? stihne se dostatečně nabít vzorkovací kondík?

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#11 Příspěvek od 89C2051 »

Vnitřní oscilátor 4MHz, dělící poměr 101. Zkoušel jsem i 111 a převod v režimu SLEEP. Pořád to samé.

Uživatelský avatar
Galileo
Příspěvky: 77
Registrován: 09 lis 2009, 01:00

#12 Příspěvek od Galileo »

Já nevím, ale nepatří tam spíš

BTFSC ADCON1,GO

bitem 0 ten převodník zapínáš, ale vlastní převod spouštíš bitem 1

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#13 Příspěvek od 89C2051 »

Já programuji také v asembleru.
ADON bit0 v registru ADCON0 mám nahozen.
GO bit1 v registru ADCON0 nahazuji až před vlastním převodem a pak jej testuji na ukončení převodu.

Uživatelský avatar
Galileo
Příspěvky: 77
Registrován: 09 lis 2009, 01:00

#14 Příspěvek od Galileo »

Tak to je OK.Nejlepší bude hodit to sem celý, takhle je to tápání ve tmě.

Uživatelský avatar
89C2051
Příspěvky: 23
Registrován: 18 úno 2007, 01:00

#15 Příspěvek od 89C2051 »

Máš pravdu zejtra to sem hodim. Díky čau.

Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“