izmenjeno 2 puta, poslednji put alarmi ns 10.11.2014. u 00:59
Izmene poruke
- alarmi ns10.11.2014. u 00:59zapis iz teksta poruke
- alarmi ns09.11.2014. u 23:35zapis iz teksta poruke
Molio bi za malu pomoc treba da napravim uredjaj koi ce zamenjivati sesmaist tasterta u simlaciji moja ideja radi super al na uredjaju nece moja zamisao je da pic 12f683 gura u dva shift registra 74hc595 i nakon toga da ide na draiver,kad uredjaju dam napon ledice vezane za izlazne pinove samo blicnu,program kucam u pbp evo koda molim vas nek mi neko kaze gde gresim
Code:
#CONFIG
__CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _MCLRE_OFF & _BOD_OFF & _CP_OFF & _PWRTE_ON
#ENDCONFIG
DEFINE OSC 4
Include "modedefs.bas" ' Pozivanje moda sift registra
'-------------------------- PDESAVANJA -------------------------------
ANSEL = $30
WPU = $37
CMCON0 = 7 ' Analog comparators off
TRISIO = %111000 '5-ULAZ
'---------------------- definicije sift recistra-----------------------
gore var GPIO.4
dole var GPIO.5
stanje var GPIO.3
INPUT stanje
'DEFINICIJA PINOVA ZA SIFT REGISTER
'***************************************************
DataPin var GPIO.0 ' Shift data pin 0 *
ClkPin var GPIO.1 ' Shift clock pin 1 *
Strobe var GPIO.2 'PUSTA BBOJ KROZ REGISTAR *
'***************************************************
Strobe = 0
x var word
y var word
x1 var word
y1 var word
x1=0
y1=0
x = 0 'GORE
y = 0 'DOLE
I VAR BYTE
PAUSE 500
pocetak:
'**************PODIZE**************************
if stanje=0 then podize
if stanje=1 then spusta
podize:
y=0
DO while gore = 1
loop
do while gore = 0
loop
x=1
CALL IZLAZ
for i = 1 to 7
x=x*2
call izlaz
next i
'*************SPUSTA***************
spusta:
x=0
do while dole = 1
loop
do while gore = 0
loop
y=1
call izlaz
for i = 1 to 7
y=y*2
call izlaz
next i
goto podize
'*********************************************
izlaz:
x1=x
y1=y
Shiftout DataPin, ClkPin, MSBFIRST,[Y1,X1]'PRVI BROJ JE ZADNJI SHIFT REGISTAR
Pulsout Strobe,10
pause 500
'*****************STAVLJA GA NA NULU*******************
X1=0
Y1=0
Shiftout DataPin, ClkPin, MSBFIRST,[Y1,X1]'PRVI BROJ JE ZADNJI SHIFT REGISTAR
Pulsout Strobe,10
pause 500
return
End
#CONFIG
__CONFIG _INTRC_OSC_NOCLKOUT & _WDT_OFF & _MCLRE_OFF & _BOD_OFF & _CP_OFF & _PWRTE_ON
#ENDCONFIG
DEFINE OSC 4
Include "modedefs.bas" ' Pozivanje moda sift registra
'-------------------------- PDESAVANJA -------------------------------
ANSEL = $30
WPU = $37
CMCON0 = 7 ' Analog comparators off
TRISIO = %111000 '5-ULAZ
'---------------------- definicije sift recistra-----------------------
gore var GPIO.4
dole var GPIO.5
stanje var GPIO.3
INPUT stanje
'DEFINICIJA PINOVA ZA SIFT REGISTER
'***************************************************
DataPin var GPIO.0 ' Shift data pin 0 *
ClkPin var GPIO.1 ' Shift clock pin 1 *
Strobe var GPIO.2 'PUSTA BBOJ KROZ REGISTAR *
'***************************************************
Strobe = 0
x var word
y var word
x1 var word
y1 var word
x1=0
y1=0
x = 0 'GORE
y = 0 'DOLE
I VAR BYTE
PAUSE 500
pocetak:
'**************PODIZE**************************
if stanje=0 then podize
if stanje=1 then spusta
podize:
y=0
DO while gore = 1
loop
do while gore = 0
loop
x=1
CALL IZLAZ
for i = 1 to 7
x=x*2
call izlaz
next i
'*************SPUSTA***************
spusta:
x=0
do while dole = 1
loop
do while gore = 0
loop
y=1
call izlaz
for i = 1 to 7
y=y*2
call izlaz
next i
goto podize
'*********************************************
izlaz:
x1=x
y1=y
Shiftout DataPin, ClkPin, MSBFIRST,[Y1,X1]'PRVI BROJ JE ZADNJI SHIFT REGISTAR
Pulsout Strobe,10
pause 500
'*****************STAVLJA GA NA NULU*******************
X1=0
Y1=0
Shiftout DataPin, ClkPin, MSBFIRST,[Y1,X1]'PRVI BROJ JE ZADNJI SHIFT REGISTAR
Pulsout Strobe,10
pause 500
return
End