Problem s pull-up u PIC16F883 - jak zapnout?

Dobry vecer,
jiz druhy den marne zapasim se zapnutim pull-up rezistoru na portu B u PIC16F883.
Mam nastaveno:
OPTION_REG,RBPU = 0
WPUB = FFh
PORTB = Input (TRISB = FFh)

Pokud jsem neco neprehledl, melo by to byt vse, co je zapotrebi k zapnuti pull-up na portu B. Presto pri jeho nacteni dostavam urovne L (potvrzeno merenim multimetrem primo na portu B - cca 0,8V)

Poradte, prosim …

Dekuji

Vlasta

:arrow_right: administrator: přejmenováno z "Problem s pull-up u PIC16F883"

Proč si to nepřečteš třeba v datasheetu? Nastavil jsi správně registr ANSELH jak tam píší?

Omlouvám se, nastavení registru ANSELH jsem zapomněl uvést.

Pro jistotu přikládám výpis inicializace mého programu, pokud by se na to někdo chtěl mrknout.

V datasheetu jsem to samozřejmě hledal, ale už nevidím nic, co by s tím mohlo souviset.

Děkuji.

Vl.
Inic-vypis.txt (1.16 KB)

Jeste existuje RBPU :wink:

EDIT : v prvnim prispevku ho nastavujes, v kodu sem to nenasel

Nastavuji ho v řádku
movlw b’10000000’
movwf OPTION_REG

Uznávám, že zde je nastaven nesprávně na “1”, ale původně tam byla “0” - už jsem ze zoufalství testoval, zda v datasheetu není chyba.

Nejprve jsem měl tento bit nulován instrukcí BCF OPTION_REG,NEG_RPBU, když to nefungovalo, tak jsem to napsal tak, jak jsem na začátku.
Bohužel nefunguje nic.

Vl.

TRISB = FFh
RPBU = 0
WPUB = FFh

ani v takom to poradi to nechodi ?, pri simulacii naskakuju bity tak ako maju, v diasembleri to vyzera dobre ? Merak je dufam digital neprepnuty na meranie prudu :smiley:

Uznávám, že netuším, kde to nastavuješ. Tak nějak mám pocit, že už jsem fakt slepej.

Tahle to mám já a funguje to, sice u 16F887

banksel OPTION_REG movlw b'00000111' movwf OPTION_REG ;PORTB banksel TRISB ; vyber banky movlw b'11111111' ; 0 vstup, 1 vystup movwf TRISB ; sup do TRISu banksel ANSELH movlw b'00000000' ; 1-AD nebo 0-I/O movwf ANSELH banksel IOCB ; INTERRUPT-ON-CHANGE PORTB REGISTER movlw b'00000000' ; 1 - ON, 0- OFF movwf IOCB banksel WPUB ; PULL-UP PORTB REGISTER movlw b'11111111' ; pullup 1-ON 0-OFF movwf WPUB