|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
kolesar67 Član
Pridružen-a: Sre 23 Jul 2008 15:39 Prispevkov: 12 Aktiv.: 0.06 Kraj: Stična
|
Objavljeno: Sre Jul 23, 2008 8:36 pm Naslov sporočila: PORTB pri PIC-u |
|
|
Imam težavo pri nastavitvi PORTB kot izhod pir PIC16F628 in pri PIC16F887. Pina RB6 in RB7 se nočeta postaviti v visoko stanje. Če napišem npr ukaz:
molw .255
movwf PORTB
in s tem želim postaviti v visok nivo vse pine na portB se postavijo na visok nivo le spodnih 6 pinov (RB0:RB5), kljub temu da so vsi pini na tem portu definirani kot izhod
kje je težava?
hvala _________________ v vinu je resnica |
|
Nazaj na vrh |
|
|
Silvo Moderator
Pridružen-a: Pon 24 Feb 2003 17:09 Prispevkov: 14555 Aktiv.: 65.35 Kraj: Koroška-okolica Dravograda
|
Objavljeno: Sre Jul 23, 2008 8:40 pm Naslov sporočila: |
|
|
Napiši vso kodo, da vidimo kje je problem. _________________ lp
Silvo |
|
Nazaj na vrh |
|
|
kolesar67 Član
Pridružen-a: Sre 23 Jul 2008 15:39 Prispevkov: 12 Aktiv.: 0.06 Kraj: Stična
|
Objavljeno: Sre Jul 23, 2008 9:05 pm Naslov sporočila: |
|
|
Tule je koda:
title "16F887 tst"
list p=16f887
#include "p16f887.inc"
errorlevel -302
__CONFIG _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_OFF & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT
__CONFIG _CONFIG2, _WRT_OFF & _BOR21V
org 0x00
goto glavni
org 0x04
org 0x05
glavni
bcf STATUS,RP0 ; bank0
bcf STATUS,RP1
clrf PORTB
bsf STATUS,RP0 ; bank1
bcf STATUS,RP1
clrf TRISB ; PORTB bo izhod
bcf STATUS,RP0 ; bank0
bcf STATUS,RP1
movlw b'11111111'
movwf PORTB
tri
goto tri
end _________________ v vinu je resnica |
|
Nazaj na vrh |
|
|
jur Član
Pridružen-a: Pet 02 Dec 2005 14:45 Prispevkov: 5142 Aktiv.: 23.09 Kraj: [color=zelena]Ljubljana[/color]
|
Objavljeno: Čet Jul 24, 2008 8:53 am Naslov sporočila: |
|
|
Možno je, da imata pina kratek stik na tiskanini/vezju, ali pa sta dol potegnjena z kakšno elektroniko. Če daš na pin procesorja (na primer) kakšen malo močnejši rele, bo rele potegnil pin na nulo, ne glede, da boš nanj dal logično enko.
Če imaš PICa v podnožju, ga vzemi ven in izmeri upornost tiskanine od obeh problematičnih pinov proti masi. Mora biti vsaj kakšnih 200 do 300 ohmov. Če je manj, je to že bolj kratek stik in procesor ne bo zmogel logične enke.
Če imaš oba chipa (PIC16F628 in pri PIC16F887), moraš v chip naložiti pravi program. V kodi imaš include za specifičen chip. Če naložiš kodo v napačnega, lahko dosežeš čudno delovanje.
Če imaš med delovanjem chipa na pina RB6 in RB7 priključen programator, ti lahko ta vpliva na nivoje. Odklopi ga.
Jur |
|
Nazaj na vrh |
|
|
kolesar67 Član
Pridružen-a: Sre 23 Jul 2008 15:39 Prispevkov: 12 Aktiv.: 0.06 Kraj: Stična
|
Objavljeno: Čet Jul 24, 2008 9:13 am Naslov sporočila: |
|
|
Hvala vsem za trud pri reševanju tega problema, našel sem kje tiči problem. Programator je bil v Debug režimu (tega je potrebno izklopiti), zato pa programator potrebuje pina za Clok in Data za programiranje, to pa se nahaja ravno na pinih RB6 in RB7 na obeh konrolerjih 16F628 in 16F887.
Robert _________________ v vinu je resnica |
|
Nazaj na vrh |
|
|
aly Član
Pridružen-a: Tor 28 Sep 2004 14:51 Prispevkov: 9407 Aktiv.: 42.23 Kraj: Kranj - struževo
|
Objavljeno: Čet Jul 24, 2008 9:46 am Naslov sporočila: |
|
|
V podobnih primerih je lahko v uC default aktivna kakšna periferija, ki zasede pine, na primer ADC ali komparator. Primer 16F628. _________________ I'm going to stand outside, so if anyone asks, I'm outstanding |
|
Nazaj na vrh |
|
|
|
|
Ne, ne moreš dodajati novih tem v tem forumu Ne, ne moreš odgovarjati na teme v tem forumu Ne, ne moreš urejati svojih prispevkov v tem forumu Ne, ne moreš brisati svojih prispevkov v tem forumu Ne ne moreš glasovati v anketi v tem forumu Ne, ne moreš pripeti datotek v tem forumu Ne, ne moreš povleči datotek v tem forumu
|
Uptime: 68 dni
Powered by phpBB © 2001, 2005 phpBB Group
|