Isprogramirao sa PICF628 u basic compileru u pic sumulator ide programu
i sve to lijepo prebacio preko ic-prog u pic ali na kraju isprogramiran pic nece da radi iso kao da oscilator u njemu nece da se vrti
pic je na šemi spojen ovako
rb0 - dolazi signal sa tsop
rb3 - ulaz (prekidac) + ili gnd
rb4 ,5 ,6 , 7 izlazi
napojen sa 5v je spojen gdje treba da napaja pic
svi ostali pinovi vise u zraku
evo mog koda pa ako možete da mi pomognete
Define CONF_WORD = 0x3f38
Dim irpulse_length(13) As Word
Dim xx As Byte
Dim command As Byte
Dim commandizmemorije As Byte
Dim b As Byte
b = 0
TRISB = %00001101
TRISA = %00000000
INTCON.T0IE = 1 'enable Timer0 interrupts
INTCON.GIE = 1 'enable all un-masked interrupts
OPTION_REG.T0CS = 0 'set Timer0 clock source to internal instruction cycle clock
WaitMs 2000
RB7 = 0
RB4 = 1
WaitMs 2000
RB4 = 0
RB5 = 1
WaitMs 2000
RB5 = 0
RB6 = 1
WaitMs 2000
RB6 = 0
RB7 = 1
WaitMs 2000
RB7 = 0
getstartbits:
Dim irpulse_length1(13) As Byte
'poništenje varijabli
For xx = 1 To 12
irpulse_length1(xx) = 0
Next xx
'___________________
'ServoIn PORTB.0, irpulse_length1(0)
If irpulse_length1(0) < 200 Then
WaitMs 100
Goto getstartbits
Endif
irpulse_length1(0) = 0
For xx = 1 To 12
'ServoIn PORTB.0, irpulse_length1(xx)
Next xx
If irpulse_length1(1) < 100 Then
command.0 = 0
Else
command.0 = 1
Endif
If irpulse_length1(2) < 100 Then
command.1 = 0
Else
command.1 = 1
Endif
If irpulse_length1(3) < 100 Then
command.2 = 0
Else
command.2 = 1
Endif
If irpulse_length1(4) < 100 Then
command.3 = 0
Else
command.3 = 1
Endif
If irpulse_length1(5) < 100 Then
command.4 = 0
Else
command.4 = 1
Endif
If irpulse_length1(6) < 100 Then
command.5 = 0
Else
command.5 = 1
Endif
If irpulse_length1(7) < 100 Then
command.6 = 0
Else
command.6 = 1
Endif
If irpulse_length1(8) < 100 Then
command.7 = 0
Else
command.7 = 1
Endif
If RB4 = 1 Then
Write 1, command
RB4 = 0
RB5 = 1 'led
Else
Read 1, commandizmemorije
RB6 = 1 'led
If command = commandizmemorije Then
If RB7 = 1 Then
RB7 = 0
Else
RB7 = 1
Endif
Endif
Endif
WaitMs 2000
Goto getstartbits
'RB5 = 0
RB6 = 0
End
On Interrupt 'Timer0 interrupt routine
WaitMs 100
If RB3 = 0 Then
b = 0
Endif
If RB3 = 1 And b = 0 Then
RB4 = 1
b = 1
'WaitMs 1
Endif
INTCON.T0IF = 0 'enable new TMR0 interrupts
Resume
pic simulator ide
Moderators: pedja089, stojke369, [eDo], trax
evo i sema.Ne znam fali li sta ovome,oscilator je inetrni tako mislim da je to to.
http://www.elektronika.ba/forum/uploadz ... _sema1.JPG
http://www.elektronika.ba/forum/uploadz ... _sema1.JPG
Znajuči osnovne postulate programiranja, a pic basic kad sam ga vidio
nikad nisam bio sretan. Napisao si na jednom mjestu END. To za pic 16F628 znači kraj. time si mu dao do znanja da dalje nema ništa više. Uredno si počeo dalje pisati program. To znači drugim riječima to prepiši prije naredbe END. Kompajliraj i probaj programirati.
nikad nisam bio sretan. Napisao si na jednom mjestu END. To za pic 16F628 znači kraj. time si mu dao do znanja da dalje nema ništa više. Uredno si počeo dalje pisati program. To znači drugim riječima to prepiši prije naredbe END. Kompajliraj i probaj programirati.
end moram staviti tu jer da bi napisao "On interupt" u pic basicu mora ici ovako ,kako sam ja upoznat sa pic basicom.
Imate li neko drugo rjesenje i neki drugi sofware za programiranje ,u asembleru ne znam radit a basic mi je idealno rjesenje.
Zanima me da nisam mozda nesto na semi pogresno spojio(npr zauzeo pinove za input ili output koje nisam smjeo) ili pogrijesio sa konfiguracijskim bitom na poceku koda,koristim interni oscilator.
Imate li neko drugo rjesenje i neki drugi sofware za programiranje ,u asembleru ne znam radit a basic mi je idealno rjesenje.
Zanima me da nisam mozda nesto na semi pogresno spojio(npr zauzeo pinove za input ili output koje nisam smjeo) ili pogrijesio sa konfiguracijskim bitom na poceku koda,koristim interni oscilator.
semu sam poslao u postu gore.
to je ustvari dekoder za TV REMOTE .zelim da prvo memorisem kod sa daljinskog u eprom.da mi prebacio pic u memori mod treba da imam logicku jedinicu na rb3.ulaz za ir signal je na rb0 gdje sam postavi tsop ir receiver.
sve to je dobro postavljeno jos samo da proradi pic.ako hoces mogu i asembler kod poslati
ovaj dio na pocetku koda
WaitMs 2000
RB7 = 0
RB4 = 1
WaitMs 2000
RB4 = 0
RB5 = 1
WaitMs 2000
RB5 = 0
RB6 = 1
WaitMs 2000
RB6 = 0
RB7 = 1
WaitMs 2000
RB7 = 0
sam postavio iz razloga da vidim jel mi proradio pic kad upalim sklop,medjutim nece ni da mrdne kako da je mrtav, isto kao da interni oscilator ne radi
pa eto nadam se da sam dao dovoljno informacija
to je ustvari dekoder za TV REMOTE .zelim da prvo memorisem kod sa daljinskog u eprom.da mi prebacio pic u memori mod treba da imam logicku jedinicu na rb3.ulaz za ir signal je na rb0 gdje sam postavi tsop ir receiver.
sve to je dobro postavljeno jos samo da proradi pic.ako hoces mogu i asembler kod poslati
ovaj dio na pocetku koda
WaitMs 2000
RB7 = 0
RB4 = 1
WaitMs 2000
RB4 = 0
RB5 = 1
WaitMs 2000
RB5 = 0
RB6 = 1
WaitMs 2000
RB6 = 0
RB7 = 1
WaitMs 2000
RB7 = 0
sam postavio iz razloga da vidim jel mi proradio pic kad upalim sklop,medjutim nece ni da mrdne kako da je mrtav, isto kao da interni oscilator ne radi
pa eto nadam se da sam dao dovoljno informacija