skraceni kurs ucenja picbasica

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

Moderators: pedja089, stojke369, [eDo], trax

Post Reply
Glingur
Posts: 3
Joined: 11-10-2011, 15:47

Re: skraceni kurs ucenja picbasica

Post by Glingur »

Prvo sam postavio pitanje, a onda se setio da treba 200nS za izvrsenje jedne instrukcije :oops:
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 »

To zavrsi od brzine na kojoj radi procesor.
hvarovic
Posts: 7
Joined: 08-05-2011, 23:32

Re: skraceni kurs ucenja picbasica

Post by hvarovic »

Pozdrav, počeo sam se baviti s mikrokontrolerima, i pratim ovu temu jer je vrlo dobro objašnjeno programiranje u pbp od samoga početka. jucer sam bio u chipoteci i pitao za lcd display pa mi je prodavač dao GDM1602E jer nisu imali lcd sa kontrolerom hd44780. Rekao je da je sve to u principu isto i koliko sam našao na internetu, on koristi S6A0069(ili kompatibilni) kontroler. Mene zanima da li se može u picbasicu napisati program za taj display i da li mogu koristiti taj lcd kao i hd44780 tj. da li moram otici kupiti drugi lcd ili mogu nekako iskoristiti ovaj koji sam kupio? Da još kažem, uzeo sam i 16f84a pa bi se rado igrao s time :)). hvala unaprijed na odgovorima.
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 »

Valjda moze...
Najjednostavnije ti je probaj...
hvarovic
Posts: 7
Joined: 08-05-2011, 23:32

Re: skraceni kurs ucenja picbasica

Post by hvarovic »

Ništa mi onda drugo ne preostaje nego isprobati :). Malo čitam po netu i vidim da drugi imaju problema s takvim displayom jer im se pojavljuju samo kockice a nikakva slova. moram najprije nekakvu exp. ploču napraviti pa ću onda tek moći isprobati. Poslao sam ti PP.
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 »

Takve stvari pitaj na forumu. A i procitaj usput pravila.
atom1
Pocetnik na forumu
Pocetnik na forumu
Posts: 36
Joined: 12-09-2011, 22:58

Re: skraceni kurs ucenja picbasica

Post by atom1 »

Ljudi pozdrav
Evo, ako netko hoce komunicirati sa ludim covjekom sad ima priliku,naime vec me 7 dana ubija project sa lcd-om.
projekt je bio slozen na protboard i fino radio tak dugo dok nije sve palo na pod i evo problema sad prilikom ukljucenja na lcd-u se prikazuju neke gluposti, nakon nekoliko ukljucenja i gasenja radi normalno,pa opet nestaju slova ,itd.
zamijenio sam prot board,nekoliko puta sve ponovno spajao,zamijenio lcd, pic,reprogramirao pic i dalje isto.
jedino je ostalo napajanje isto(atx od racunala),sutra cu napraviti stabilizirano samo za to, i vise nemam ideje kaj jos propustam.
Ima li jos ko kakvu ideju(osim nosenja cesnjaka oko vrata)? :shock:
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 »

atom1 wrote:...
Evo, ako netko hoce komunicirati sa ludim covjekom sad ima priliku....
Ja neču! :roll:
Real Radios Glow in the Dark!
User avatar
InTheStillOfTheNight
Odlično uznapredovao
Odlično uznapredovao
Posts: 938
Joined: 01-06-2006, 17:54
Location: Zagreb

Re: skraceni kurs ucenja picbasica

Post by InTheStillOfTheNight »

Jeli taj ludi decko pomislio kako njegov projekt nije dobro radio niti prije pada??
Samo kad mu je pao na glavu očito je mogao primjetiti da se LCD ponekad ne inicijalizira dobro?
Ako netko 7 dana izmjeni sve i opet ne najde gresku vjerojatno je moguće da to nikada nije ni radilo dobro.

Ja bi to trazio ovako:
1. Stavio novi PIC
2. Isprogramirao HEX
3. Stavio novi LCD
4. Nakon toga dobro se zabuljio u shemu i program i prvo pogledao jeli se tvoj MCU sigurno i dobro resetira prilikom paljenja, a isto tako i inicijalizira li tvoj program dobro LCD prilikom palenja.

Inače LCD jedino ne voli padati i ako on padne onda se pomakne ona prokleta guma unutra i LCD ispisuje hijeroglife.

Trebao bi dobro razmotriti i mogućnost kako ti niti jedan od ta 2 LCD-a ne valja. Sve ostalo je jako dobro otporno na udarce. Možeš probati i sa trećim ispravnim LCD-om.
InTheStillOfTheNight
atom1
Pocetnik na forumu
Pocetnik na forumu
Posts: 36
Joined: 12-09-2011, 22:58

Re: skraceni kurs ucenja picbasica

Post by atom1 »

:D :D :D
Evo nakon cijelog dana rada zamijenjene sve komponente i napravljena pločica, sklop sa drugim lcd-om radio sasvim drugacije (povremeno nije prikazivao prvi red) nakon toga stavljen potpuno novi 2x8 lcd i sad radi odlicno-bacam se na novi hex
atom1
Pocetnik na forumu
Pocetnik na forumu
Posts: 36
Joined: 12-09-2011, 22:58

Re: skraceni kurs ucenja picbasica

Post by atom1 »

evo nakon cjelodnevnog razmatranja ima nekih zakljucaka
posto radim sa 16f628 sa vanjskim oscilatorom je prikaz na svim lcd-ima bio dobar
kod koristenja internog prikaz prvog reda se pomjera udesno tako da fali prvo slovo
kod sljedeceg programiranja sam koristio $FE,$80+1, mozda to nije najbolji nacin ali funkcionira
User avatar
Kizo
Pravo uznapredovao :)
Pravo uznapredovao :)
Posts: 387
Joined: 01-11-2009, 22:40
Location: Hrvatska

Re: skraceni kurs ucenja picbasica

Post by Kizo »

@hvarovic: imam isti takav iz chipoteke GMD1602E sa osv. žuti i najnormalnije radi sa driverima za hd44780; posebni znakovi, custom znakovi, sve bez problema.

Ovo sa crnim kvadratićima u gornjem redu je poznata stvar i dešava se ako LCD nije dobro inicijaliziran. Naime, MCU, ovisno o tipu, može početi raditi već na 2V, dok LCD ne radi ispod 4.5V i kad uključiš napajanje elektroliti se nisu ni napunili do nominalnog napona, a ovaj mu je već poslao inicijalizacijsku rutinu.
Rješenje je vrlo jednostavno. Negdje na početku koda staviš nešto tipa:

Code: Select all

_delay_ms(500);	//pričekaj dok napon ne naraste na nominalnu vrijednost
initLCD();		//ponovno pozovi inicijalizacijsku rutinu
ili se možeš izvući uključivanjem brown-out reseta.

Inače, taj LCD mi se pokazao kao prva liga, super se vidi direkt pod suncem, pozadinsko osvjetljenje dosta jako, kontrast te vidljivi kutovi odlični vidi se normalno skroz sa strane, dobra brzina osvježavanja, sve u svemu jako dobar LCD za te novce.
hvarovic
Posts: 7
Joined: 08-05-2011, 23:32

Re: skraceni kurs ucenja picbasica

Post by hvarovic »

pozdrav, evo ja sam sastavio experimentalnu ploču i počinjem se malo igrati s ledicama. Imam jedno pitanje vezano uz picbasic - kojom naredbom se izlazi iz beskonačne petlje?
Blink:
high b0
pause 500
low b0
pause 500
high b1
pause 500
low b1
pause 500
IF a=0 then
goto start:
endif
goto blink
end

Pokušao sam unutar blink: stavti IF a=0 then GOTO start: uvjet ali mi uvjet ne radi tj. stalno vrti beskonačnu petlju :? :? :?
User avatar
WhiteHead
Pravi forumaš
Pravi forumaš
Posts: 1627
Joined: 28-06-2007, 18:36
Location: 75,35k; B&H

Re: skraceni kurs ucenja picbasica

Post by WhiteHead »

Možda ode na Start pa odatle opet na Blink.... :D
Ako kaniš pobijediti, ne smiješ izgubiti
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 »

Ne postoji naredba za izlazak iz beskonacne petlje...
Jednostavno nemoj ih praviti i neces imati problema...
Sta je a? Odakle ti to a?
hvarovic
Posts: 7
Joined: 08-05-2011, 23:32

Re: skraceni kurs ucenja picbasica

Post by hvarovic »

WhiteHead wrote:Možda ode na Start pa odatle opet na Blink.... :D
Pokusao sam to ali mi nije radilo.
pedja089 wrote:Ne postoji naredba za izlazak iz beskonacne petlje...
Jednostavno nemoj ih praviti i neces imati problema...
Sta je a? Odakle ti to a?
Ma pokušao sam napraviti program da ako pritisnem tipku A0 da mi ledice počinju beskonačno blinkati, a kad pritisnem npr A1 da se zaustave odnosno da mi se počinje izvoditi neki drugi dio programa.

A sam definirao ulaz na portu a
symbol a=porta.0
input a
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 »

'Jedan od nacina...
'Taster je vezan na masu, drugi kraj na pin i na pull up.

SYMBOL Taster=PortA.0
INPUT Taster
SYMBOL Led1=PortA.1
OUTPUT Led1
SYMBOL Led2=PortA.2
OUTPUT Led2
Led1=0
Led2=0

BlinkLed1:
TOGGLE Led1
PAUSE 100
IF Taster =0 THEN GOTO BlinkLed2
GOTO BlinkLed1

BlinkLed2:
TOGGLE Led2
PAUSE 100
IF Taster =0 THEN GOTO BlinkLed1
GOTO BlinkLed2
END
atom1
Pocetnik na forumu
Pocetnik na forumu
Posts: 36
Joined: 12-09-2011, 22:58

Re: skraceni kurs ucenja picbasica

Post by atom1 »

Ja sam to rijesio sa naredbom button, evo primjera iz programa
FOR l=1 TO BROJ
button PORTB.6, 0, 120, 10, B1, 1,START
lcdout $fe,1, "Vr1 ",dec broj
LCDOUT $FE, $80+8, "Pos ",DEC l
LCDOUT $FE, $C0, "**************** "
pause 800
NEXT L
probaj pa vidi- taster treba malo duze drzati da bi reagirao
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 »

To je zbog ove pauze od 800ms...
Edit:
Jos jedna stvar...
Ja to resavam ili interaptom(redje), ili tako sto umesto pauze od xx sekundi napravim petlju, u kojoj proveravam ulaze. I ukoliko se desi dogadjaj recimo kao ovaj skok, onda odma moze to da se uradi, nema cekanja...
hvarovic
Posts: 7
Joined: 08-05-2011, 23:32

Re: skraceni kurs ucenja picbasica

Post by hvarovic »

evo već se mučim 3 sata da napravim jedan program. dakle ovako kada uključim uređaj, sve ledice moraju biti ugašene. kada pritisnem taster onda se moraju upaliti dvije ledice od kojih jedna svjetli 30 sekundi, a druga 30+10 sekundi. u međuvremenu ako svjetle obadvije i ako pritisnem taster obje se moraju ugasiti, a ako se jedna od njih ugasila a druga još svijetli pa ako onda pritisnem taster moraju opet obje svijetliti kao na početku programa. znači mora sve krenuti ispočetka i tako do beskonačnosti.
pokušavam to riješiti s pauzama ali izgleda da mi program ne ide dalje dok se ne završi pauza :? kad uzmem u obzir stanje nakon pauze, nije mi više odgovarajuče jer mi se jedna ledica ugasi i ne mogu više skenirati izlaze pica :?
Post Reply