Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Oshonsoft Pic Simulator IDE

[es] :: Elektronika :: Mikrokontroleri :: Oshonsoft Pic Simulator IDE

[ Pregleda: 2084 | Odgovora: 5 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

tox!e
Toni Gualtieri
NS

Član broj: 20007
Poruke: 180
*.mainstream.co.yu.

ICQ: 267386221


Profil

icon Oshonsoft Pic Simulator IDE27.11.2005. u 00:01

Kao prvo radim u Pic Simulator IDE programu.Problem je sledeci:

Na serijskom ulazu mikrokontrolera (PIC16f84) mi stizu razni podaci (poruke), a meni treba da PIC "slusa" sta dolazi, i ako naidje vec neka predefinisana poruka, on na to da reaguje.
Npr.:
Predefinisano je ovo : 06915689450002040A91
A na ulazu dobijam : A5487F460460078 (pa onda naidje) 06915689450002040A91 (na sta bi PIC trebalo da izvrsi npr.PORTB.5=1) i onda ponovo nailaze podaci i kada ponovo naidje 06915689450002040A91 da izvrsi neku drugu instrukciju npr. PORTB.5=0 .

Unapred hvala.
27.11.2005. u 00:01 

_str_

Član broj: 53798
Poruke: 695
*.177.eunet.yu.



Profil

icon Re: Oshonsoft Pic Simulator IDE27.11.2005. u 08:07
Ako je pristizanje "poruka" razdvojeno, odnosno nisu poslate u "cugu", mozes iskoristiti to
kasnjenje da PIC detektuje kraj poruke i onda primljenu poruku preuzme u dalje "razmatranje". Ako su poruke sastavljene onda moras imati definisanu duzinu poruke da bi PIC posle svakog primljenog bajta odlazio na proveru primljene poruke. Sto se tice drugog dela pitanja, mozes definisati jedan registar da broji "ispravne" poruke i na osnovu njega uraditi dalje grananje programa.
__*__
*___*
27.11.2005. u 08:07 

tox!e
Toni Gualtieri
NS

Član broj: 20007
Poruke: 180
*.mainstream.co.yu.

ICQ: 267386221


Profil

icon Re: Oshonsoft Pic Simulator IDE27.11.2005. u 11:24
Za drugi deo vec imam ideju kako da je odradim.Meni je problem ovaj prvi deo.
Naime o cemu se radi:
PIC salje zahtev za slanje podataka prikljucenom uredjaju.Taj uredjaj pri primljenom zahtevu pocinje sa slanjem podataka.Znam duzinu poruke koja treba da se primi, i da jos da napomenem, da su ti podaci u hexadecimanlom zapisu.
Uspeo sam da odradim, da PIC odradi instrukciju posle npr 5 primljenih bajtova, ali meni treba, da izvrsi instrukciju posle 5 bajtova (ali vec predefinisanih bajtova, ne kojekakvih, jer onda cela stvar nema svrhe).
27.11.2005. u 11:24 

_str_

Član broj: 53798
Poruke: 695
*.240.EUnet.yu.



Profil

icon Re: Oshonsoft Pic Simulator IDE27.11.2005. u 12:05
Nisam siguran dali sam razumeo. Ako PIC vec primi pet bajtova onda bi posle prijema trebao da ih uporedi sa pet konstanti (bajtova) koje si programski podesio prilikom programiranja ili zadao nekim drugim putem. Znaci proverava bajt0 sa bajt0primljeni i tako do bajt4. Ako jednakost nije ispunjena nista od izvrsenja komande.
Opet da napomenem da nisam razumeo, jer u tvome pitanju stoji i odgovor?
__*__
*___*
27.11.2005. u 12:05 

tox!e
Toni Gualtieri
NS

Član broj: 20007
Poruke: 180
*.mainstream.co.yu.

ICQ: 267386221


Profil

icon Re: Oshonsoft Pic Simulator IDE27.11.2005. u 15:48
Problem je u tome, sto neuspevam nikako da uradim to uporedjivanje.
27.11.2005. u 15:48 

lord Vader

Član broj: 57936
Poruke: 757
217.65.192.*



Profil

icon Re: Oshonsoft Pic Simulator IDE27.11.2005. u 20:00
Pretpostavimo da se PIC nalazi u stanju čekanja i da nailazi pogrešna poruka. Pretpostavimo da je poruka od 3B i nema nikakav overhed da bi bilo lakše. Neka je komanda koju očekujemo 123, a primaš 124.
Primaš prvi bajt, porediš ga sa prvim bajtom poruke koju očekuješ, 1 i 1 su identični i čekaš drugi bajt. Primaš drugi bajt i porediš sa drugim koji očekuješ 2=2 OK. Primaš treći bajt i porediš ga sa trećim koji očekuješ 4=3 NIJE OK. Ovde provaljuješ da to nije očekivana komanda i restartuješ proces primanja, odnosno čekaš početak sledeće komande.
Ako ti stigne 123 komanda u poslednjem poređenju će biti 3=3 i tada vidiš da je primljena komanda koja je očekivana i odradiš akciju koju hoćeš.

Ako radiš u asembleru onda ovako. U m_Novi se nalazi primljeni bajt, a u m_KomandaB0 očekivani.


Code:

movf      m_Novi, w
xorwf     m_KomandaB0, w
btfsc      STATUS, Z
goto       Isti_Su

Nisu_Isti
....
...
..


Ovako radiš za svaki bajt.

Pitaj šta ti nije jasno.

[Ovu poruku je menjao lord Vader dana 27.11.2005. u 21:03 GMT+1]
2 sxy 4 ma shirt
27.11.2005. u 20:00 

[es] :: Elektronika :: Mikrokontroleri :: Oshonsoft Pic Simulator IDE

[ Pregleda: 2084 | Odgovora: 5 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.