skraceni kurs ucenja picbasica

Rasprava o PIC mikrokontrolerima, PIC projekti i drugo vezano za PIC-eve...

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

pedja089 wrote:Zato sto se pise ENDIF...
Gledao sam sta si pitao, i ne vidim neku svrhu tih pitanja...
Mislim da bi puno vise naucio, da seo i video sta hoces da pravis, pa onda sam resio na koji nacin da dodjes do toga. Pa kad znas nacin tj algoritam, onda bi imalo smisla pitati za komandu, naredbu, smernicu neku kako da napises kod...
Da upravu si pedja evo upravo racunam i pokusavam da dodjem do nekog do cilja puno pohvala ovom kursu i tebi koji si ga zapoceo super je a ima i divnih ljudi koji zaista puno pomognu
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

drugari jedno pitanjce
ako iz glavnog programa pozovem neku labelu dali bi izasao iz te lebele i vratio se na glavni program ako ovo napisem i ako je netacno primer
if a=5 then return
znaci ako a nije 5 dali bi izasao iz te labele
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

Ne, išlo bi dalje po programu.

DAJ STAVLJAJ CELI KOD, PA ČEŠ DOBITI PRAVI ODGOVOR!
Ovako je samo tapkanje po tami.
Real Radios Glow in the Dark!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

branez jos uvek racunam kako da uradim racunam treba mi sledece

ako je prota.0=1 i portc.o=1
da iskoci iz labele zato sam postavio to pitanje da napravim na papiru ceo tok a neznam kako ovo da definisem
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

LJUDI MALA POMOC
KAD NAPISEM
PORTD=2^0
ZASTO NEUPALI R.0 KAD JE TO 1
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

Imaš u programu veliko pomoč, koja kaže:
HIGH Pin

Make the specified Pin high. Pin is automatically made an output. Pin may be a constant, 0-15, or a variable that contains a number 0-15 (e.g. B0) or a pin name (e.g. PORTA.0).

Example

HIGH 0 ' Make Pin0 an output and set it high (~5 volts)
HIGH PORTA.0 ' Make PORTA, pin 0 an output and set it high (~5 volts)
led VAR PORTB.0 ' Define LED pin
HIGH led ' Make LED pin an output and set it high (~5 volts)

Alternatively, if the pin is already an output, a much quicker and shorter way (from a generated code standpoint) to set it high would be:

PORTD.0 = 1 ' Set PORTD pin 0 high
To ^ nije isto nuli.
Real Radios Glow in the Dark!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

hvala,lakse mi je bilo da racunam tako al resio sam na drugi nacin!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

Pomagajte jako sam zapeo nemogu da napravim da se led vraca unazad kad je pod pauzom i stisne se taster koji jos nije definisan radi provere nesme led naspram leda da bude upaljen kako to da izvedem?

Code: Select all

' DEFINISANJE

define osc 4
adcon1 = 7

' DEFINISANJE PORTOVA

trisc=%00000000
trisd=%00000000
trisb=%00000000
symbol taster=porte.0
input taster

; STAVLJANJE PORTOVA NA NULU
 portc=%00000000
 portd=%00000000
 portb=%00000000
 
' DEFINISANJE BROJEVA ZA MNOZENJE GORNJI RED
a VAR byte          'PRVI LED
b VAR word          'DRUGI LED
c VAR word          'TRECI LED
k var word
X VAR word  'BROJ ZA SABIRANJE GORNJI RED

 o var byte 'PROMENJLIVA ZA 4/3 ZA PRVI KORAK
'BROJEVI KOJI SE DELI DONJI RED 

h VAR byte
j VAR word
r var word
p var word
y var WORD  'BROJ ZA SABIRANJE DONJI RED
'PROMENLJIVE 3/4
m VAR WORD
m1 VAR byte
m2 var word
m3 var word
m4 var word        


n var word
n1 var word 
n2 var word
n3 var word
'PROMENLJIVE 4/3
l var word
l1 var byte
l2 var word
l3 var word
l4 var word

g var word
g1 var word
g2 var word
g3 var word
  

'TASTER
t var byte



' PROMENLJIVE ZA GORNJI RED


q0 var bit
q1 var bit
q2 var bit
q3 var bit
q4 var bit
q5 var bit
q6 var bit
q7 var bit
q8 var bit
q9 var bit

; PROMENLJIVA ZA DONJI RED
 w0 var bit
 w1 var bit
 w2 var bit
 w3 var bit
 w4 var bit
 w5 var bit
 w6 var bit
 w7 var bit
 w8 var bit
 W9 var bit
 'DONJI PORT
 a=1
 b=2
 c=4
 k=8
 n=0
 x=a+b+c+k+n
 'GORNJI PORT
  h=1
  j=2
  r=4
  p=8
  m=0
 y=h+j+r+p+m      
  'GORNJI RED
: gornji
'********************************
'*   PRVI LED ZA 3/4            *
'********************************
if h=128 then
n1=1
n2=2
n3=4
m1=1
m2=2
m3=4
m4=8
a=0
 b=0
 c=0
 k=0
 h=0
 j=0
r=0
p=0

endif
'***********************************
'*     PRVI LED 4/3                *
'***********************************
if m1=128 then
l1=1
l2=2
l3=4
l4=8
g1=1
g2=2
g3=4
n1=0
n2=0
n3=0
m1=0
m2=0
m3=0
m4=0
endif



'******************************
'*    PROGRAM                 *
'******************************
  l=l1+l2+l3+l4
  g=g1+g2+g3
  
  
  n=n1+n2+n3
  m=m1+m2+m3+m4
  x=a+b+c+k+n+l
  y=h+j+r+p+m+g
  w0= y mod 2
  if w0 =1 then y=y-1
  y=y/2
  w1= y mod 2
  if w1=1 then Y=y-1
  y=y/2
  w2= y mod 2
  if w2 = 1 then y=y-1
  y=y/2
  w3= y mod 2
  if w3 = 1 then y=y-1
  y=y/2
  w4= y mod 2
  if w4 = 1 then y = y-1
  y=y/2
  w5 = y mod 2
  if w5 = 1 then y=y-1
  y=y/2
  w6 = y mod 2
  if w6 = 1 then y=y-1
  y=y/2
  w7= y mod 2
  if w7 = 1 then y=y-1
  y=y/2
  w8= y mod 2
  if w8 = 1 then y=y-1
  y=y/2
  w9=y mod 2
  
 
 
 'DONJI PORT
 
 q0= x mod 2
 if q0 = 1 then x=x-1
 x=x/2
 q1= x mod 2
 if q1 = 1 then x=x-1
 x=x/2
 q2=x mod 2
 if q2 = 1 then x=x-1
 x=x/2
 q3= x mod 2
 if q3 =1 then x=x-1
 x=x/2
 q4=x mod 2
 if q4 = 1 then x=x-1
 x=x/2
 q5=x mod 2
 if q5 = 1 then x=x-1
 x=x/2
 q6=x mod 2
 if q6 = 1 then x=x-1
 x=x/2
 q7=x mod 2
 if q7 = 1 then x=x-1
 x=x/2
 q8=x mod 2
 if q8 = 1 then x=x-1
 x=x/2
 q9=x mod 2
 ' PROVERA PORTOVA
 if q0=1 and w9=1 then mnozenje
 if q1=1 and w8=1 then mnozenje
 if q2=1 and w7=1 then mnozenje
 if q3=1 and w6=1 then mnozenje
 if q4=1 and w5=1 then mnozenje
 if q5=1 and w4=1 then mnozenje
 if q6=1 and w3=1 then mnozenje
 if q7=1 and w2=1 then mnozenje
 if q8=1 and w1=1 then mnozenje
 if q9=1 and w0=1 then mnozenje
   
 'IZLAZ NA PRVI PORT
 portc.0=q0
 portc.1=q1
 portc.2=q2
 portc.3=q3
 portc.4=q4
 portc.5=q5
 portc.6=q6
 portc.7=q7
 portd.0=q8
 portd.1=q9
  
   

 portd.3=w0
 portd.2=w1
 portb.7=w2
 portb.6=w3
 portb.5=w4
 portb.4=w5
 portb.3=w6
 portb.2=w7
 portb.1=w8
 portb.0=w9
     pause 200            'PAUSE 800          
 portd.4=1                'PAUSAAAAAAAAAAA
                          'PAUSE1900
 portd.4=0  

 call pauza
'********************************* 
'*          4/4                  *
'*********************************
 :mnozenje 
  k=k*2   'PRVI LED
  if k=1024 then   'DRUGI LED
  c=c*2
  k=c*2
  endif
  if c=512 then        'TRECI LED
  b=b*2
  c=b*2
  k=c*2
  endif
 if b=256 then 
 a=a*2
 b=a*2
 c=b*2
 k=c*2
 endif
 if a=128 then
 a=1
 b=2
 c=4
 k=8
 p=p*2
 endif 
 if p=1024 then
 r=r*2
 p=r*2
 a=1
 b=2
 c=4
 k=8
 endif
 
 
 if r=512 then
 a=1
b=2
c=4
k=8
j=j*2
r=j*2
p=r*2
endif

if j=256 then
a=1
b=2
c=4
k=8
h=h*2
j=h*2
r=j*2
p=r*2
endif
'*********************************** 
'*            3/4                  *
'***********************************                                 
 n3=n3*2
 if n3=1024 then
 n2=n2*2
 n3=n2*2
 endif 
 if n2=512 then
 n1=n1*2
 n2=n1*2
 n3=n2*2
 endif
 if n1=256 then 
 n1=1
 n2=2
 n3=4
 m4=m4*2
 endif 
 if m4=1024 then
 m3=m3*2
 m4=m3*2
 n1=1
 n2=2
 n3=4
 endif
 if m3=512 then
 m2=m2*2
 m3=m2*2
 m4=m3*2
 n1=1
 n2=2
 n3=4
 endif
 if m2=256 then
 m1=m1*2
 m2=m1*2
 m3=m2*2
 m4=m3*2
 n1=1
 n2=2
 n3=4
 endif

'**************************************
'*          4/3                       *
'**************************************

 l4=l4*2
 if l4=1024 then
 l3=l3*2
 l4=l3*2
 endif
 if l3=512 then 
 l2=l2*2
 l3=l2*2
 l4=l3*2 
  endif  
if l2=256 then
l1=l1*2
l2=l1*2
l3=l2*2
l4=l3*2
endif


goto gornji

'**************************
'*     PAUZA              *
'**************************

:pauza
for t=0 to 100
:p1
if taster = 0 then zaustavi
pause 1
next t
if t<100 then p1
return
:zaustavi
do while taster = 0
loop
do
loop until taster = 0
do while taster = 0 
loop
return
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

resio sam moj problem dali neko moze niki programator da mi preporuci
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

Kupi taj programer. Podupire brdo mikrokontrolera.
Real Radios Glow in the Dark!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

uuu cifra...a pic kit2 kakav je?
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

Real Radios Glow in the Dark!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

meni nesto najprostije treba,tako nesto koji pinovi idu na njega?
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

Pa to ti je to (oba programatora)! Prosto ko pasulj, instaliraš program i utakneš USB -> programiraš :!: :roll:
Real Radios Glow in the Dark!
ivan malesevic
Penjem se :)
Penjem se :)
Posts: 80
Joined: 10-11-2012, 15:02

Re: skraceni kurs ucenja picbasica

Post by ivan malesevic »

puno hvala samo jos nesto sad citam da se 16f877 nepravi vise ako ga nema u radnjama 16f877a jer zamena sve isto?
Branez
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 457
Joined: 22-04-2008, 16:27
Location: Maribor(SLO) Koprivnica(HR)
Contact:

Re: skraceni kurs ucenja picbasica

Post by Branez »

PIC16F877A sve piše.
Real Radios Glow in the Dark!
Darkoo
Penjem se :)
Penjem se :)
Posts: 55
Joined: 30-11-2012, 12:56
Location: Aleksinac , Srbija
Contact:

Re: skraceni kurs ucenja picbasica

Post by Darkoo »

Izuzetno dobra tema , sve pohvale .

Imam jedan problem ,a to je sa pic12f675 to jest ne mogu nikako da mu setujem gpio.3 da bude ulazni sto u stvari samo to i moze biti . Nisam pocetnik u ovoj oblasti ali i nisam i neki vrhunski proogramer , jos ucim i edukujem se . Obicno me zeznu neke gluposti kao ova :ohno: .
Kako bi izgledalo podesavanje registra da ovaj pin bude ulazni ??
Veliko hvala
User avatar
pedja089
Administrator sajta
Administrator sajta
Posts: 7876
Joined: 20-02-2007, 14:50
Location: Beočin -Srbija

Re: skraceni kurs ucenja picbasica

Post by pedja089 »

Pogledaj u datasheetu... Moras iskljuciti MCLR u postavkama na programatoru...
Darkoo
Penjem se :)
Penjem se :)
Posts: 55
Joined: 30-11-2012, 12:56
Location: Aleksinac , Srbija
Contact:

Re: skraceni kurs ucenja picbasica

Post by Darkoo »

Koristim razvojni sistem Easypic 5 ,a on koristi picflash programator jer tako je podrzan i ima ga ugradjen u sebi.
Citao sam vise puta datasheet i nikako da uspem da ga nateram da bude ulazni i funkcionise.
Pozdrav
Darkoo
Penjem se :)
Penjem se :)
Posts: 55
Joined: 30-11-2012, 12:56
Location: Aleksinac , Srbija
Contact:

Re: skraceni kurs ucenja picbasica

Post by Darkoo »

pokusacu da ga iskljucim ako ima tu opciju sam programator .
Hvala
Post Reply