Forumul electronistilor

Forum de Electronica. Comunitatea electronistilor, radioamatorilor si hobby-stilor din Romania.
 FAQ • REGULAMENT FORUM •  Înregistrare •  Autentificare 
Acum este Joi Apr 17, 2014 3:59 pm

Ora este UTC + 2 [ DST ]




Scrie un subiect nou Acest subiect este închis, nu puteţi modifica mesaje sau să scrieţi răspunsuri viitoare.
 [ 4 mesaje ] 
Autor Mesaj
MesajScris: Mie Iun 26, 2013 6:27 pm 
Neconectat
Utilizator
Avatar utilizator

Membru din: Mie Apr 22, 2009 12:59 pm
Mesaje: 164
Localitate: iasi
Domiciliu: iasi
E un joc de lumini pe leduri , aici doar o parte din el , care a compilat , dar remane blocat in prima bucla , adica in loc sa execute rutina de 3 ori ...merge la infinit in ea. Unde am gresit ?


list p=16f877a
#include <p16f877a.inc>
__CONFIG _CP_OFF& _WDT_OFF& _BODEN_OFF& _PWRTE_ON& _XT_OSC& _WRT_OFF& _LVP_OFF& _CPD_OFF

;initializare

cblock
a1 ; folosite pentru delay
a2
b1
b2
b3
c1
c2
c3
count1
endc
porta equ 05
portb equ 06
portc equ 07
portd equ 08
porte equ 09
trisa equ 85
trisb equ 86
trisc equ 87
trisd equ 88
trise equ 89

org 0x000
clrf porta ; Initialize port A
clrf portb ; Initialize port B
clrf portc
clrf porte ; Initialize port C
BANKSEL ADCON1 ;disable analogue inputs
movlw 0x06
movwf ADCON1
BANKSEL PORTA

bsf STATUS,RP0 ; RAM bank 1

clrf TRISA ; All pins port A output
clrf TRISB ; All pins port B output
clrf TRISC ; All pins port C output

bcf STATUS,RP0 ;BACK TO BANK0



start
clrf porta
clrf portb
clrf portc
clrf porte

movlw d'3' ; efect aruncare rosu
movwf count1
aruncaR call aruncR
decfsz count1
goto aruncaR

movlw d'3' ; efect aruncare blue
movwf count1
aruncaB call aruncB
decfsz count1
goto aruncaB


goto start

aruncR
movlw b'00000001'
movwf portb
call delay_01s
movlw b'00000010'
movwf portb
call delay_01s
movlw b'00000100'
movwf portb
call delay_01s
movlw b'00001000'
movwf portb
call delay_01s
movlw b'00010000'
movwf portb
call delay_01s
movlw b'00100000'
movwf portb
call delay_01s
movlw b'01000000'
movwf portb
call delay_01s
movlw b'10000000'
movwf portb
call delay_01s
movlw b'001'
movwf porte
call delay_01s

return

delay_01s

movlw 0x1E
movwf a1
movlw 0x4F
movwf a2
delay_01sec
decfsz a1, f
goto $+2
decfsz a2, f
goto delay_01sec


goto $+1
nop


return

end


Sus
 Profil  
 
 Subiectul mesajului: nu reusesc sa ies din prima bucla..!Help..!
MesajScris: Mie Iun 26, 2013 6:27 pm 
Avatar Robotel
4 mesaje

Linkuri sponsorizate de la Google


Sus
 Profil Trimiteţi mesaj privat E-mail  
MesajScris: Mie Iun 26, 2013 7:31 pm 
Neconectat
Utilizator
Avatar utilizator

Membru din: Mar Oct 03, 2006 11:45 am
Mesaje: 246
Localitate: Bucuresti
Incearca cu :
decfsz count1,f


Sus
 Profil  
 
MesajScris: Joi Iun 27, 2013 9:41 am 
Neconectat
Utilizator
Avatar utilizator

Membru din: Mie Apr 22, 2009 12:59 pm
Mesaje: 164
Localitate: iasi
Domiciliu: iasi
Elef scrie:
Incearca cu :
decfsz count1,f

Da , mare dreptate ,.....am reusit sa ies din bucla ...si am inteles si de ce..! Merci


Sus
 Profil  
 
MesajScris: Sâm Iun 29, 2013 9:29 am 
Neconectat
Utilizator
Avatar utilizator

Membru din: Mie Apr 22, 2009 12:59 pm
Mesaje: 164
Localitate: iasi
Domiciliu: iasi
Rog un moderator sa stearga topicul !Multumesc.


Sus
 Profil  
 
Afişează mesajele din ultimele:  Sortează după  
Scrie un subiect nou Acest subiect este închis, nu puteţi modifica mesaje sau să scrieţi răspunsuri viitoare.
 [ 4 mesaje ] 

Ora este UTC + 2 [ DST ]


Cine este conectat

Utilizatorii ce navighează pe acest forum: Niciun utilizator înregistrat şi 3 vizitatori


Nu puteţi scrie subiecte noi în acest forum
Nu puteţi răspunde subiectelor din acest forum
Nu puteţi modifica mesajele dumneavoastră în acest forum
Nu puteţi şterge mesajele dumneavoastră în acest forum
Nu puteţi publica fişiere ataşate în acest forum

Mergi la:  
?epelu?












.
Furnizat de phpBB® Forum Software © phpBB Group
Translation/Traducere: phpBB România
[ Time : 0.065s | 14 Queries | GZIP : On ]