12f675 nenaběhne

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

Moderátor: Moderátoři

Odpovědět
Zpráva
Autor
Uživatelský avatar
dvestezar
Příspěvky: 5
Registrován: 20 led 2011, 00:00

12f675 nenaběhne

#1 Příspěvek od dvestezar »

Mám 12f675 a někde sem narazil na demo pro velleman P8048. Tak jsem chtěl pic narychlo testnout a natlačil to do něj, ale pic neběží. Ať koukám jak koukám na ASM tak tam nevidím nic co by bylo špatně. ASM jsem už dlouho nebastlil :( Správnost kódu je ověřena několikrát a v různých programech co s p8048 komunikují.

Programátor velleman P8048.
Přílohy
main.asm
demo
(1.23 KiB) Staženo 133 x
Uživatelský avatar
monterjirka
Příspěvky: 2855
Registrován: 14 čer 2003, 00:00
Bydliště: Blížejov

#2 Příspěvek od monterjirka »

Neběží jak?
Nekomunikuje nebo se procák chová jako úplně "mrtvej"?
Uživatelský avatar
dvestezar
Příspěvky: 5
Registrován: 20 led 2011, 00:00

#3 Příspěvek od dvestezar »

Chová se jako mrtvý, ale při programování komunikuje. Myslel jsem na špatně nastavený ocsilátor, ale je nastavený interní a výstupy jako IO. Past vedle pasti .... Když tam dám starý testovací 16F627 a natáhnu demo, tak jede vpoho s interním osc. Proto hledám chybu v každým nastavovacím bitu, ale nic .... nebo aspoň nic nevidím.
Uživatelský avatar
dvestezar
Příspěvky: 5
Registrován: 20 led 2011, 00:00

#4 Příspěvek od dvestezar »

No teď du spat ale v dokumentaci sem našel ohledně inicializace

Kód: Vybrat vše

bcf     STATUS,RP0 ;Bank 0
clrf    GPIO ;Init GPIO
movlw   07h ;Set GP<2:0> to
movwf   CMCON ;digital IO
bsf     STATUS,RP0 ;Bank 1
clrf    ANSEL ;Digital I/O
movlw   0Ch ;Set GP<3:2> as inputs
movwf   TRISIO ;and set GP<5:4,1:0> as outputs


Note: The ANSEL (9Fh) and CMCON (19h)
registers (9Fh) must be initialized to
configure an analog channel as a digital
input. Pins configured as analog inputs will
read ‘0’. The ANSEL register is defined for
the PIC12F675.


a protože je to 675 tak mě zaráží řádek 42 "comparator off"
teď už mi to hlava nebere, ale kouknu na ANSEL, pokud někdo neporadí
Uživatelský avatar
feliz_navidad
Příspěvky: 959
Registrován: 15 říj 2009, 00:00

#5 Příspěvek od feliz_navidad »

Implicitně jsou po Power On Reset nastaveny GP0-GP1 jako vstupy komparátoru a GP0,1,2,4 obecně jako analogové vstupy. Komparátor jsi v tom main.asm programu vypnul, analogové vstupy ale ne.
Uživatelský avatar
dvestezar
Příspěvky: 5
Registrován: 20 led 2011, 00:00

#6 Příspěvek od dvestezar »

Takže nezáleží na TRISIO musí se ještě vypnout analogy, jinak fungují jen jako vstupy .... V tom případě to bude asi ono, večer testnu. Dík
Uživatelský avatar
dvestezar
Příspěvky: 5
Registrován: 20 led 2011, 00:00

#7 Příspěvek od dvestezar »

Tak obědová pauza to jistí. ANSEL nastaveno a vše OK. Dík
Odpovědět

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