radovi forumasa sa ubrzanog kursa pbp
Moderators: pedja089, stojke369, [eDo], trax
Re: radovi forumasa sa ubrzanog kursa pbp
dakle ovako...
da sad ne otvaram novu temu (samo radi jedne informacije) zanima me ovo:pošto mi je dosadio onaj pic16f84 odlučio sam si kupiti pic16f877 i naišao na problem! Zanima me pošto ja koristin RCD programator s kojim sam vrlo zadovoljan kako s njim isprogramirati taj 16f877 pošto on ima 40 pin-ova te da li je to uopće moguće??? Ovdje na shemama sam vidio da on može isprogramirati ga.
...i da pošto vidim da on ima 2 mase i dva + da li se one spajaju normalno (kao da je jedna masa i jedan +)?
EDIT:@pedja nemožeš vjerovati koliko sam ti zahvalan na tom kursu!!!
da sad ne otvaram novu temu (samo radi jedne informacije) zanima me ovo:pošto mi je dosadio onaj pic16f84 odlučio sam si kupiti pic16f877 i naišao na problem! Zanima me pošto ja koristin RCD programator s kojim sam vrlo zadovoljan kako s njim isprogramirati taj 16f877 pošto on ima 40 pin-ova te da li je to uopće moguće??? Ovdje na shemama sam vidio da on može isprogramirati ga.
...i da pošto vidim da on ima 2 mase i dva + da li se one spajaju normalno (kao da je jedna masa i jedan +)?
EDIT:@pedja nemožeš vjerovati koliko sam ti zahvalan na tom kursu!!!
Re: radovi forumasa sa ubrzanog kursa pbp
Za programiranje ti treba RB6,RB7,MCLR,Vcc i GND.
I to spajas bez obzira koji je pic u pitanju. I za 12XXX isti pinovi samo sto umesto RB6 i RB7 idu GP0 i GP1...
Ne znam kojim redom, lako se proveri u datasheetu...
I to spajas bez obzira koji je pic u pitanju. I za 12XXX isti pinovi samo sto umesto RB6 i RB7 idu GP0 i GP1...
Ne znam kojim redom, lako se proveri u datasheetu...
Re: radovi forumasa sa ubrzanog kursa pbp
evo primjer jednog frekvencmetra s autorange-om:
Code: Select all
define OSC 16
DEFINE LCD_BITS 4
DEFINE LCD_DREG PORTA
DEFINE LCD_DBIT 0
DEFINE LCD_RSREG PORTB
DEFINE LCD_RSBIT 3
DEFINE LCD_EREG PORTB
DEFINE LCD_EBIT 5
DEFINE LCD_LINES 2
pause 250
lcdout $fe,1,"Frekvencmetar"
pause 1500
lcdout $FE,1,"Loading..."
pause 1000
hz var word
khz var word
deckhz var word
start:
count portb.2,1000,hz
if hz > 1000 then
khz = hz / 1000
deckhz = hz - khz * 1000
lcdout $fe,1,"CH1:", dec khz,".",dec3 deckhz,"kHz"
else
lcdout $fe,1,"CH1:", dec hz,"Hz"
endif
goto start
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Kod za 4_kanalni prekidac. Tasterom Up-Downe bira se jedan od cetiri kanala .Koji je kanal izabran, vidi se na led displeju. Tasterom On-Of menja se stanje na datom kanalu. Tasterom reset ponistava se programirano stanje. Svaki klik na taster pracen je zvucnom signalizacijom. Sklop rasdi i pomocu bilo kog daljinskog.
http://www.youtube.com/watch?v=V3zlIlTgb4k" onclick="window.open(this.href);return false;
http://www.youtube.com/watch?v=V3zlIlTgb4k" onclick="window.open(this.href);return false;
Code: Select all
trisa=0
trisb=%11110000
symbol led1=portb.4
symbol led2=portb.5
symbol led3=portb.6
symbol led4=portb.7
symbol taster1=portb.3
symbol taster=portb.0
symbol tastera1=portb.1
symbol tastera= portb.2
symbol buzer=porta.4
output buzer
input taster1
input taster
input tastera1
input tastera
starostanje var bit
novostanje var bit
starostanje= taster
starostanje1 var bit
novostanje1 var bit
starostanje1=taster1
starostanjea var bit
novostanjea var bit
starostanjea=tastera
starostanjea1 var bit
novostanjea1 var bit
starostanjea1=tastera1
i var byte
i=0
pocetak:
novostanjea=tastera
novostanjea1=tastera1
If novostanjea<starostanjea or novostanjea1<starostanjea1 then
i=i+1
sound buzer,[110,10]
endif
if i>4 then i=1
lookup i, [0,1,2,3,4],porta
pause 120
if i=0 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
low led1
low led2
low led3
low led4
endif
starostanje=novostanje
starostanje1=novostanje1
if i=1 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led1
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=2 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led2
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=3 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led3
pause 120
endif
starostanje=novostanje
starostanje1=novostanje1
if i=4 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
toggle led4
pause 120
endif
starostanje1=novostanje1
starostanje=novostanje
starostanjea=novostanjea
starostanjea1=novostanjea1
goto pocetak
end
Re: radovi forumasa sa ubrzanog kursa pbp
svaka čast! Bravo!
Zanima me kako si riješio ovo s daljinskim da ga kontroliraš. Možeš li mi objasniti?
Inače ovo može biti jako koristan sklop
Zanima me kako si riješio ovo s daljinskim da ga kontroliraš. Možeš li mi objasniti?
Inače ovo može biti jako koristan sklop
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Iskoristio sam portb.1 i portb.3.Na njima se detektuje signal sa pic-a12f629. Komandom IF -OR -THen, ista komanda moze da se ucita rucno ili daljinskim.
Re: radovi forumasa sa ubrzanog kursa pbp
Lepo odradjeno.
A sta je sa kodom za PIC12F629?
Kako si napisao da prepoznaje razlicite protokole, RC5, NEC itd...
Ili je mozda iskoriscen hex iz ovog sklopa
A sta je sa kodom za PIC12F629?
Kako si napisao da prepoznaje razlicite protokole, RC5, NEC itd...
Ili je mozda iskoriscen hex iz ovog sklopa
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Na zalost kod za pic12f629 nisam ja pisao . Iskoristio sam postojeci.
http://www.ivica-novakovic.from.hr/IrOn ... m#IrOnOff2" onclick="window.open(this.href);return false;
http://www.ivica-novakovic.from.hr/IrOn ... m#IrOnOff2" onclick="window.open(this.href);return false;
Re: radovi forumasa sa ubrzanog kursa pbp
Svaka cast, sindja1204, daj nam sad opisi cijeli projekat, shema, plocica, kodovi i sl! Kad si nas vec zagolicao sa ovim videom i kratkim opisom
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Postavljam Shemu i PCb u Gotove projekte...
Re: radovi forumasa sa ubrzanog kursa pbp
@sindja1204 jako dobar nacin da iskoristis ir kontrolu, jer na ovaj nacin ne moraju samo 4 izlaza, vec moze koliko hoces.
Pokusaj napraviti kod za prijem ir signala, mislim da ne bi trebalo da bude neki problem, a ne bi bilo lose da ovde bude i primer za to u pic basicu.
Pokusaj napraviti kod za prijem ir signala, mislim da ne bi trebalo da bude neki problem, a ne bi bilo lose da ovde bude i primer za to u pic basicu.
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Nisam siguran da sam te bas najbolje razumeo. Po originalnoj shemi Pic 12f629 prepoznaje dva koda i menja stanje na svoja dva pina. Jedan sam iskoristio za up-downe, a drugi za on-of. sto je sasvim dovoljno. Ovim nacinom moguce je kontrolisati onoliko kanala koliko ima raspolozivih pinova na picu koji je upotrevljen (16f84a). Meni je bilo potrebno 4 kanala za cetiri grejaca.
Normalno,ako bi se izostavio pic 12f629 i kod ucitao direktno u pic koji kontrolise potrosace, povecao bi se i broj kanala.
Normalno,ako bi se izostavio pic 12f629 i kod ucitao direktno u pic koji kontrolise potrosace, povecao bi se i broj kanala.
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Evo i dopune koda za ovaj IR prekidac. Svakim pritiskom na taster aktivira se (kumulativno) sledeci kanal [1/1+2/1+2+3/1+2+3+4] dok se na nuli vrsi reset. Broj aktivnih kanala pokazuje se na displeju.
Code: Select all
trisa=0
trisb=%11110000
symbol led1=portb.4
symbol led2=portb.5
symbol led3=portb.6
symbol led4=portb.7
symbol taster1=portb.3
symbol taster=portb.0
symbol tastera1=portb.1
symbol tastera= portb.2
symbol buzer=porta.4
output buzer
input taster1
input taster
input tastera1
input tastera
starostanje var bit
novostanje var bit
starostanje= taster
starostanje1 var bit
novostanje1 var bit
starostanje1=taster1
starostanjea var bit
novostanjea var bit
starostanjea=tastera
starostanjea1 var bit
novostanjea1 var bit
starostanjea1=tastera1
i var byte
i=0
pocetak:
novostanjea=tastera
novostanjea1=tastera1
If novostanjea<starostanjea or novostanjea1<starostanjea1 then
i=i+1
sound buzer,[110,10]
endif
if i>4 then i=0
lookup i, [0,1,2,3,4],porta
pause 120
if i=0 then
novostanje=taster
novostanje1=taster1
endif
if novostanje<starostanje or novostanje1<starostanje1 then
sound buzer,[110,10]
low led1
low led2
low led3
low led4
endif
starostanje=novostanje
starostanje1=novostanje1
if i=0 then low led1: low led2: low led3: low led4
if i=1 then high led1
if i=2 then high led1: high led2
if i=3 then high led1: high led2: high led3
if i=4 then high led1: high led2: high led3: high led4
starostanje1=novostanje1
starostanje=novostanje
starostanjea=novostanjea
starostanjea1=novostanjea1
goto pocetak
end
Re: radovi forumasa sa ubrzanog kursa pbp
Imao sam mali nedostatak u programu dimer. Ako se pritisne taster (za pojacavanje ili smanjivanje svjetla) i zadrzi duze onda ce on pojacati (ili smanjiti) , nerijetko, do maksimuma tj. tesko je kontrolisati nivo -precizno podesavanje. Za prevazilazenje ovog problema iskoristio sam Pedjin fazon sa komparacijom staro stanje-novo stanje (hvala Pedja) i sad ovaj program ima 30 lvl preciznog podesavanja. Kod donosim u ovom postu a isti cu iskoristiti za "digitalni potenciometar" kojeg radim i uskoro se nadam da cu objaviti shemu, plocoicu i cio projekat u "gotovim projektima".
Code: Select all
'****************************************************************
'* Name : dimer1.BAS *
'* Author : [niho] *
'* Notice : Copyright (c) 2010 [niho] *
'* : All Rights Reserved *
'* Date : 21.01.2010 *
'* Version : 1.1 *
'* Notes : *
'* : *
'****************************************************************
@ DEVICE pic16f84a,XT_OSC,WDT_OFF,PROTECT_OFF 'definicija konfiguracije
DEFINE OSC 4 'definicija oscilatora
i VAR BYTE 'postavka prvog brojaca (varijable)
sstu var bit 'staro stanje pojacaj
nstu var bit 'novo stanje pojacaj
sstd var bit 'staro stanje smanji
nstd var bit 'novo stanje smanji
i=1
SYMBOL LED=portb.7 'postavka simbola zamjene pinova
SYMBOL taster1=portb.0
symbol taster2=portb.1
OUTPUT LED
INPUT TASTER1 'postavke ulaza-pojacavanje int.svjetla
input taster2 'smanjivanje intenziteta svjetla
sstu = taster1
sstd = taster2
pocetak: 'radni potprogram
nstu = taster1
nstd = taster2
low led
pause i
high led
pause 30-i
if nstu < sstu then i=i+1 'pojacavanje svjetla
if nstd < sstd then i=i-1 'smanjivanje svjetla
if i>30 then i=30 'ogranicenje pauze
if i<1 then i=1
sstu = nstu
sstd = nstd
goto pocetak
end ' kraj
Re: radovi forumasa sa ubrzanog kursa pbp
pozdrav svim clanovima aktivnim u ovoj temi.
imam instaliranu vistu, pa mi kompajler ne radi.
jel bi mogao netko uskocit da mi ovaj programcici pretvori u .hex?
ovaj program bi trebao upaliti relej, drzati ga ukljucenim 10min,
onda ga iskljuciti i cekati 0,5s
nakon toga upaliti drugi i drzati ga ukljucenim 10min.
nakon 10min iskljuciti, pricekati 0,5s i krenuti ispocetka.
unaprjed hvala
imam instaliranu vistu, pa mi kompajler ne radi.
jel bi mogao netko uskocit da mi ovaj programcici pretvori u .hex?
Code: Select all
OUTPUT PORTB.7
OUTOUT PORTB.6
pocetak:
HIGH PORTB.7
LOW PORTB.6
PAUSE 600000
LOW PORTB.7
LOW PORTB.6
PAUSE 500
LOW PORTB.7
HIGH PORTB.6
PAUSE 500
GO TO pocetak
END
onda ga iskljuciti i cekati 0,5s
nakon toga upaliti drugi i drzati ga ukljucenim 10min.
nakon 10min iskljuciti, pricekati 0,5s i krenuti ispocetka.
unaprjed hvala
Sačuvajte drveće => pojedite dabra.
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Imas male greske u kodu, i nece ti izvrsavati komande kako si zamislio
hex
Code: Select all
OUTPUT PORTB.7
OUTPUT PORTB.6
pocetak:
HIGH PORTB.7
LOW PORTB.6
PAUSE 60000
LOW PORTB.7
LOW PORTB.6
PAUSE 500
LOW PORTB.7
HIGH PORTB.6
PAUSE 500
Goto pocetak
END
hex
Code: Select all
:1000000028288F018E00FF308E07031C8F07031CEA
:10001000232803308D00DF300F2003288D01E83EB8
:100020008C008D09FC30031C18288C070318152838
:100030008C0764008D0F15280C181E288C1C222894
:1000400000002228080083130313831264000800B1
:10005000831686130613831286178316861383125C
:100060000613831606138312EA308F0060300220D5
:1000700086138316861383120613831606138312C0
:1000800001308F00F430022086138316861383120A
:10009000061783160613831201308F00F4300220F6
:0600A0002C28630051282A
:02400E00F53F7C
:00000001FF
- sindja1204
- Odlično uznapredovao
- Posts: 792
- Joined: 03-05-2009, 11:57
- Location: Beograd
Re: radovi forumasa sa ubrzanog kursa pbp
Sa ovim kodom funkcionise
HEX
Ovo je vreme za min. Ubaci jos u kod naredbu For i=1 To 10 Da bi dobio pauzu od 10 min.
Code: Select all
OUTPUT PORTB.7
OUTPUT PORTB.6
pocetak:
portb=0
HIGH PORTB.7
pause 60000
low PORTB.7
pause 500
high PORTB.6
pause 60000
low PORTB.6
pause 500
Goto pocetak
END
Code: Select all
:1000000028288F018E00FF308E07031C8F07031CEA
:10001000232803308D00DF300F2003288D01E83EB8
:100020008C008D09FC30031C18288C070318152838
:100030008C0764008D0F15280C181E288C1C222894
:1000400000002228080083130313831264000800B1
:10005000831686130613831286018617831686136A
:100060008312EA308F0060300220861383168613D5
:10007000831201308F00F430022006178316061316
:100080008312EA308F0060300220061383160613B5
:10009000831201308F00F43002202C2863004E2898
:02400E00F53F7C
:00000001FF
Re: radovi forumasa sa ubrzanog kursa pbp
nažalost neće da ga programira....pedja089 wrote:Za programiranje ti treba RB6,RB7,MCLR,Vcc i GND.
I to spajas bez obzira koji je pic u pitanju. I za 12XXX isti pinovi samo sto umesto RB6 i RB7 idu GP0 i GP1...
Ne znam kojim redom, lako se proveri u datasheetu...
prepozna koji je pic (što znaći da je dobro spojeno) ali neće ga izprogramirati prikaže mi grešku!
Re: radovi forumasa sa ubrzanog kursa pbp
Nesto nisi dobro spojio, ja to stalno radim. Proveri imas li 13V na mclr.
Re: radovi forumasa sa ubrzanog kursa pbp
napon mi varira ali maksimalni je samo 5v
kako da ga povećam?
koristim ovaj programator: http://www.elektronika.ba/118/pic-programator-v1/" onclick="window.open(this.href);return false;
kako da ga povećam?
koristim ovaj programator: http://www.elektronika.ba/118/pic-programator-v1/" onclick="window.open(this.href);return false;