pic Porta i porte problem

S

seyyah

Guest
BSF STATUS, RP0; BANK1

MOVLW B'00000110 "
MOVWF ADCON1

CLRF TRISE

BCF STATUS, RP0; BANK0BSF Porte, 0
BSF Porte, 1
BSF Porte, 2Podczas używania Porta i porte cyfrowe I / O, nie mogę używać bsf i BCF z tych portów, podobnie jak inne porty.W powyższym kodzie.Tylko porte [2] pozostaje 1 i inne 0.Dla jakich bitowe i wykorzystania bsf, że bit jest ustawiony na 1, a inne są ustawione na 0.I nie mógł rozwiązać ten.To jest tylko porblem z Porta i porte.Próbowałem portb; It's OK.Ja robię coś źle?

 
Wszystkich cyfrowych PORTY WYJŚCIA A & E

BCF STATUS, rp1; WYCZYŚĆ BANKU 2 / 3
BSF STATUS, RP0; SET BANK 1 BITS
MOVLW b'00000111 "; PORTY wszystkich cyfrowych ZADAŃ PORTY PINS
MOVWF ADCON1; LOAD IT ADCON1
CLRF TRISA; PORTA ALL FOR ALL WYJŚCIA
CLRF TRISE; WSZYSTKIE Porte SET wszystkie wyjścia
BCF STATUS, RP0; RESET DO BANKU 0
CLRW; uprzątaćDIGITAL wszystkie wyjścia z wyjątkiem E0 OPCJONALNY I / O PIN NA E

BCF STATUS, rp1; WYCZYŚĆ BANKU 2 / 3
BSF STATUS, RP0; SET BANK 1 BITS
MOVLW b'00000111 "; PORTY wszystkich cyfrowych ZADAŃ PORTY PINS
MOVWF ADCON1; LOAD IT ADCON1
CLRF TRISA; PORTA ALL FOR ALL WYJŚCIA
CLRW; WYCZYŚĆ W REGISTER
MOVLW b'11111110 "; zamiast CLRF TRISE MOŻESZ
MOVWF TRISE; TUTAJ Aby ustawić kod PIN, na przykład w /
Wy/ / CLRF TRISE; WSZYSTKIE Porte SET wszystkie wyjścia
BCF STATUS, RP0; RESET DO BANKU 0
CLRW; uprzątać
LUB

Dla wszystkich cyfrowych WEJŚCIA PORT A i E

BCF STATUS, rp1; WYCZYŚĆ BANKU 2 / 3
BSF STATUS, RP0; SET BANK 1 BITS
MOVLW b'00000111 "; PORTY wszystkich cyfrowych ZADAŃ PORTY PINS
MOVWF ADCON1; LOAD IT ADCON1 REGISTER
MOVLW b'00111111 "; ustawić wszystkie PINS BOTH port INPUT
MOVWF TRISA; PORTA ALL FOR ALL WYJŚCIA
MOVWF TRISE; WSZYSTKIE Porte SET wszystkie wyjścia
BCF STATUS, RP0; RESET DO BANKU 0
CLRW; uprzątać

TRIS E zignoruje bity 3 do 7 NINIEJSZE DROŻNY

http://www.epemag.wimborne.co.uk/pictutorial.pdf
Pierwszych stron są najlepsze
Reszta to JEGO WŁASNE kompilator być może trzeba będzie dokładnie JEŚLI CHCESZ BIT SET PORT E PODCZAS KORZYSTANIA Przeniesienie analogiczne, ale jest łatwo MOŻLIWE

OSTATECZNE READ THIS DOBRE TEKSTY TERAZ
http://www.microchip.com/download/lit/suppdoc/refernce/midrange/33023a.pdf<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />
 
OK, I have done the same thing których pan mówi.
BSF porte, 0 czyni porte [0] = 1 po tym, gdy ten kod jest
BSF porte, 1 port [1] muszą być 1 i porte [0] musn't zmian i pobytu 1.
Ale zmiany do zera.
Myślę, że to błąd.To staje się w isis zarówno stare wersje i nowe wersje.MPLAB 6.30 daje inny wynik i działa zgodnie z oczekiwaniami.
Postaram go pic także realne.

 
W praktyce to działa bez problemu.Ale w isis nie.Czy to jest błąd lub ma coś innego?

 
Wydaje się, korzystania z PIC ADC.Domyślnie jest włączona ADC i wszystkie kołki są wejściami analogowymi.Wyczyść ADON bitowych w ADCON0 rejestru.

 
To nie zmieniły niczego.Ten sam kod działa w rzeczywistym, to nie działa w isis poprawnie.

 
skreślony przez małpy
Ostatnio edytowane przez sick_man w dniu 14 września 2003 2:56, edited 1 raz w sumie

 
i dobrze ....!!

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />

bardzo paskudny błąd dla mnie zbyt
Ostatnio edytowane przez sick_man w dniu 14 września 2003 2:56, edited 1 raz w sumie

 
skreślony przez małpy
Ostatnio edytowane przez sick_man w dniu 14 września 2003 2:56, edited 1 raz w sumie

 
ahhaaaa
wydaje się wiele błędów w isis model pic 877

Oto przykładowy kod
że inits każdym porcie jako wyjście lub jako I / O do wyboru w drodze

ale tylko inits i ustawia na zero

nawet przerwy ustawić punkt
Czyniąc to można oczekiwać symulatorze, aby zatrzymać w initalised państwa

ale musi mieć symulator do exec DLL init rutynowych i jest jej częścią
tak, gdy symulator przestaje po init
it wont ukończyli rejestr ustanowiony w pełni

tak to jest błąd w apps symantics lub w jego rutyny placmentsJeśli używasz tej szesnastkowy kod pic symulator ide to określa wszystkie porty, ale pozostawia wszystkie na zero w stanie bez sim () a nice touch ten sposób można szybko uzyskać init poprawne jak to jest Infront of you

Być może tak jak jest przy użyciu drodze do pracy
rollon usługę Pak

<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Chłodny" border="0" />Przepraszamy, ale musisz logowania w celu wyświetlenia tego zajęcia

 
dalszy

test z symulatora pic ide
potwierdza, że wszystkie porty sprawozdania z wyników powyższego plików hex

tak to jest zawężona do modelu

Być może starsze modelu dosnt mieć te limity
poszukaj pic87x.dll ze starszej wersji jednak można zauważyć, że didnt
work także wstępnie SP6 v5.2 (() i uznał za nie do pracy z dowolnej wersji do lite z kluczowych więc jej nie ma plaster lub innych ..innego niż ten mój doradztwo spróbować pic symulator ide
jego heeps o wiele lepiej na accuricy bez granic
lub jakichkolwiek problemów po wykonaniu pełnego programu z klawiszy
to działa dobrze, a Kupiłem go

tak ...swój pisk wiarygodne narzędzie, które ma tylko dowiódł swojej własnej warto mieć

 
witaj

po piśmie bitu rutynowych (Mam ból ramienia teraz)
wydaje się wszystkich portów szpilki pracy, ale dopiero po 1 cykl kod

zajrzyj na ten port Blaster bitu rutynowe do Strobe jeden wąż wokół portów przetwórców

jest spowolniony do 500 Hz, zegar, aby zobaczyć steppings

youll ogłoszenia również zabawne jest to port A4 dosnt pracy
ale reszta to !!!!!w pic87xdll mimo ....co to przejęzyczenie z labcenter .....
symulator symantics źle i nie Ra4 bitowy zestaw funkcji

może ktoś może sporządzić kilka cyklicznych badań na inne zakresy
zajrzyj

Może wystarczy do zmiany położenia wstrzymania prawidłowo
aby umożliwić init cykli

I potwierdził to w operacji pic symulator ide
i ponownie w tej aplikacji to działało zgodnie z oczekiwaniami i bity ustawia każdy bitI dodała dalsze badania (wszystkie prace ok pamiętać w symulatorze pic ide)
w pozostałej części 16F87X serii isis
wszystkie sprawozdania pin RA4 poza zasięgiem nie itterating (to)
więc może to być itfmodel sprawdzić
I dodał logiką analizator i sprawdzane portu
wygląda na to, że istnieje wyjście, ale to jest 1 do 10 dnia cyklu
szerokość impulsu tak dosnt powodować itfmodel prawidłowo

Patrząc dalej w to zdałem sobie sprawę, że rozpoczęcie wstrzymania po naciśnięciu pauzy, aby rozpocząć SIM
zakończy jednym cyklu
To tłumaczy, dlaczego e0 portu pin przekracza będzie coś zrobić z pierwszego przejścia przed wstrzymać i gdzie Breakpoint jest
Postaram się go po prostu do init
aby zobaczyć co się dzieje, chociaż
i
didnt alos ustawić org pamięci vecter
ale ja dont pomyśleć ten jest zbyt ważny
Przepraszamy, ale musisz logowania w celu wyświetlenia tego zajęcia

 
Hmm.Podczas dodaje rezystory pull-up do portów, to zaczął działać prawidłowo.

 
hum

one ARENT nessisary infact i jest to złe wydarzenie danych

jak buty i ładuje init
Mam potwierdzone takim przypadku
na prawdziwym mikro 877 typ także zgodnie z oczekiwaniami i to działa dobrze
tylko daje init usunięciu wszystkich niskich rejestrów zgodnie z oczekiwaniami

również na picsimulator ide i wykonuje jak na chipie

tak ..jeśli to cured problem dla Ciebie

well done

ale czy masz na myśli portu E0?i port pin A4?

cured tą metodą?czy oba?
tak modelu brakuje portu pullups na tych pinach Myślę, że jest więcej jak kilka pin kierunku są niekompletne lub nieprawidłowo umieszczone w źródłach

 
Napisałem źródła w mojej pierwszej wiadomości.ra4 nie jest używany.Porte jest wykorzystywany w całości.Jeżeli wystąpił błąd, nie było realnej pracy.W mojej pracy i rzeczywistego wykorzystania niektórych Porta bitów i wszystkie Porte bitów jak cyfrowe wyjście.Aby sprawdzić, 3 diody LED i pojechaliśmy z porte szpilki.Wszystkie diody LED mają serie rezystorów.W ten układ to din't działać prawidłowo.Podczas dodać pullup rezystory w szeregu diod działało doskonale.

 
Jeśli stosowane PORTA Y Porte WHO PORT DIGITAL CONFIG:
TRISA = o INPUT OUTPUT;
TRISE = INPUT OUTPUT o:
ADCON0 = 0b00000110;Jeśli stosowane PORTA Y Porte WHO PORT ANALOG CONFIG:
TRISA = INPUT;
TRISE = INPUT:
ADCON0 = 0b10000000;

 
Ok wiemy.A jeśli spojrzeć na poprzednie wiadomości zrobiliśmy tak.Problemem jest to, że nie.Przy okazji nie używać adcon0,
używamy adcon1.

 

Welcome to EDABoard.com

Sponsor

Back
Top