Stránka 1 z 1
Programování PIC 12F629
Napsal: 26 úno 2012, 19:15
od emilijano
Dobrý den,již delší dobu se věnuji programování většiny PICů,většinou to jde v pohodě,občas ne.Ted mi nastal jeden problém,udělal jsem si prográmek pro PIC 12F629,vše mi chodí.Mám tam 2 výstupy,3 vstupy.Jakmile nasetuji 1. výstup (BSF 05,0) tak se sepne relé1,po chvilce nasetuji 2. výstup (BSF 05,1) sepne se mi relé2,ale relé 1 mi odpadne.Jakoby se výstup 05,0 vynuloval,jakoby mohl být jen jeden výstup aktivní.Tak nevím co s tím.
Předem děkuji za případnou radu.
Emil Liberec.
Napsal: 26 úno 2012, 19:37
od Atlan
No citat datasheet .. pri portoch by mala byt poznamka RMW, read modify write. Skus dat nejake oneskorenie medzi tymi prikazmi....10ms.
Napsal: 26 úno 2012, 21:47
od procesor
Daj sem ten program, nie sme parta veštcov.
Napsal: 27 úno 2012, 07:12
od Galileo
Pravděpodobně máš ten výstup přetížený, přečti v datasheetu něco o tom
jak PIC zpracovává příkaz ke změně na výstupu.
Napsal: 27 úno 2012, 10:45
od procesor
Tak, tak.
Ak sa budí tranzistor, v báze by mal byť odpor minimálne 1k2, radšej 1k5 (Ioh <-3mA).
Ak sa budí MOSFET to Atlanové počkanie môže pomôcť.
Aj zapojenie výstupov by chcelo vidieť.
Napsal: 29 úno 2012, 21:28
od keno10
nesom si isty ale BSF maze celu bunku a nastavi 1 ku len na danom bite ak nemas priamo pomenovany bit
skus to spravit cez working aj nastavenie (ci je in/out)
Napsal: 29 úno 2012, 22:19
od procesor
Ešte že nie si si istý...
![Rolling Eyes :roll:](./images/smilies/icon_rolleyes.gif)
Napsal: 01 bře 2012, 00:11
od keno10
procesor píše:Ešte že nie si si istý...
![Rolling Eyes :roll:](./images/smilies/icon_rolleyes.gif)
cuacam si to z prstu...
skus si tam dat miesto rele diody a uvidis co to robi bohuzial sa to momentalne ucim na skole (aj na strednej som mal asembler rok) a viem ze ked je vystup dajme tomu napriklad na porte A a pouzijes
BSF PORTA,0
BSF PORTA,1
tak svieti iba druha pretoze BSF/BCF ak nieje bit pomenovany tak zmaze register a nastavi iba jeden doticny bit (ak je ale bit pomenovany napr bsf STATUS,RP0 tak zmeni iba bit nazvany RP0 a ostatok registra status ponecha napokoji)
movlw 0x03
movwf PORTA
zasvieti obe
pripadne
movlw 0x01
movwf PORTA
"sem vloz ako ches riesit oneskorenie ...."
movlw 0x03
movwf PORTA
Napsal: 01 bře 2012, 00:23
od procesor
To sú mi novinky o
pomenovaných a nepomenovaných bitoch
Poklus naspäť do školy a pýtať si naspäť školné (aj z jazyka).