Fórum témák

» Több friss téma
Fórum » PIC BASIC
 
Témaindító: hinar_, idő: Máj 7, 2008
Témakörök:
Lapozás: OK   23 / 23
(#) Thowra válasza eSDi hozzászólására (») Márc 23, 2017 /
 
Az adathalom vegyes, jöhet bármi mert 0-9 és A-Z paraméter is van.
Pl jöhet 01,AX,Z9... .
Most úgy oldottam meg a dolgot, hogy 2 CR közti szakaszt nézek.
Ha CR jön, számláló reset majd minden adatnál növelem. A következő CR után megnézem hány byte jött és ha 9 (adat+CR) akkor elemzem, ha 13 akkor kuka.
(#) eSDi válasza Thowra hozzászólására (») Márc 23, 2017 /
 
Ez is egy jó megoldás.
(#) Thowra válasza eSDi hozzászólására (») Márc 24, 2017 /
 
Tegnap délután óta stabilan működik.
Beletettem egy számlálót ami számolja az eldobott csomagokat és 371 eddig.
Remélem nem lesz több gond vele .
(#) mgy hozzászólása Feb 10, 2018 /
 
A következő soros kapcsolatot szeretném megvalósítani.
Vevő: Pic16f887
serin2 si,16780,100,i,[wait("2"),hgr,lgr,had,lad,f,hco,lco]

utasítás veszi egy másik PIC

Serout so, n2400, ["2",d1,d2,d3,d4,d5,d6,d7] hét adatbájtját ( Ez oké!)

Ezt az adatsort Arduinoval szeretném adni.

Az Arduino részprogramja:

Serial.write(50); //a marker
Serial.write(highByte(gr)); //send low byte of 10 bits analogue read
Serial.write(lowByte(gr)); //send high byte of 10 bits analogue read
Serial.write(highByte(analogRead(A0))); //send low byte of 10 bits analogue read
Serial.write(lowByte(analogRead(A0))); //send high byte of 10 bits analogue read
Serial.write(0);
Serial.write(highByte(cou));
Serial.write(lowByte(cou));

Ezt a PIC nem hajlandó venni !

Az arduino TX kimenetére Bluetooth modult kötve 9600 baud sebességgel az arduino program működik. (telefonomon teszteltem)

Az arduino TX kimenetét egy PIC soros bemenet,közvetlenül miért nem fogadja ?
Foglalkozott-e valaki ilyesmivel.
Észrevételt előre is köszönöm.
MGy
A hozzászólás módosítva: Feb 10, 2018
(#) Bakman válasza mgy hozzászólására (») Feb 10, 2018 / 1
 
A PIC RX lába és a +5 V közé rakj egy 10 kΩ-os ellenállatot, hátha csak ez a baj.
(#) mgy válasza Bakman hozzászólására (») Feb 10, 2018 /
 
Kösz holnap megpróbálom.( most már hideg van a sufniban forrasztani !)
(#) mgy válasza Bakman hozzászólására (») Feb 11, 2018 /
 
Sajnos nem jött össze !
Egy arduino TX-en kiküldött soros adatcsomagot kellene vennem egy PIC16f887-tel.
A barátom sem segített ( Google polgártárs ).
MGy
(#) Bakman válasza mgy hozzászólására (») Feb 11, 2018 /
 
Ebben az esetben nem a barátod. Oszcilloszkóp és/vagy logikai analizátor kell megvizsgálni a jeleket.
(#) eSDi válasza mgy hozzászólására (») Feb 11, 2018 /
 
Üdv!

Milyen BASIC ez? Egyeznek a sebességek és a beállítások? A vételnél mi az a 16780, a 100 és az i? Adásnál pedig mi az az n2400? Gyanítom, hogy a sebességhez van köze, s ha így van akkor nagyon nem egyeznek.
(#) mgy válasza eSDi hozzászólására (») Feb 11, 2018 /
 
Ez a PICBASIC PRO lenne.
http://melabs.com/resources/pbpmanual/
Az utasítások 2 PIC között működnek. (tehát a beállítások és paraméterek jók )
100 ms várakozási idő után ugorjon az i programrészhez.
16780 lásd a mellékletben.

serin si,n2400,["2"],hgr,lgr,had,lad,f,hco,lco - várakozásos változat sem működik.
(Még egyszer a PIC-PIC kommunikáció minden változatnál működik.)

Arduino modulokkal gyűjtök mérési adatokat. Át szeretném küldeni egy 16F887- re további feldolgozás céljából.
Az Arduinós programban átírtam a Serial.begin (9600) -ra. Egy HC-06 -ra rákötve a telefonom is tudom venni a kívánt adatokat. (vagyis az arduinós adás is jó)
Magyarul egy arduin-pic soros kommunikációra keresnék példát (Picbasic-ben).
Reagálásodat kösz.
Mgy
(#) eSDi válasza mgy hozzászólására (») Feb 11, 2018 / 1
 
Túlkomplikált egy BASIC ez is. Remélem nem 9600-al küldöd a PIC felé, ha 2400-as baud van beállítva a PIC-ben. Invertálás biztosan kell?
Mode = 16780 (2400 baud, no parity, inverted)
Valami ilyen apróságon csúszik el a dolog, működnie kellene. Teljesen mindegy honnan jön az adat. Kellene egy logikai analizátor, vagy legalább egy PC terminál programmal, hogy lásd a tényleges beállításokat. A BT modul előfordulhat, hogy érzékelni tudja a bitsebességet és a polaritást is. Így beállítja magát.
(#) mgy válasza eSDi hozzászólására (») Feb 12, 2018 /
 
Kösz !
Az invertálás tényleg nem kell ! (az eddigi pic-es kommunikációimból belém rögződött !!)

2. hibám az arduinós programnál :
Serial.print("2") nem azonos a Serial.print(50) -nel. ??????

Ezek kiküszöbölésével tökéletes !!
Ötleteket még egyszer köszönöm.
MGy
(#) Barkóca válasza mgy hozzászólására (») Feb 12, 2018 / 1
 
Hmm, lemaradtam de lényeg a végeredmény csak azt akarom kérdezni neked van e ilyen mint a képen hasznos kis jószág nekem sokat segített a soros kommunikációnál ,ha nincs rendelj egyet olcsó mint a hóvirágsajt ,elindítod kiküldöd az adatot elmented,kianalizálod, és megvagyhadnagy már gondolkodhatsz is, hogy rábeszéld az arduinót hogy olyat kotyvasszon amit megeszik a pic vagy a picket veszed rá a reformkonyhára,szóval jó kis cucc vagy ha megint arra járok viszek neked egyet.
Üdv.
(#) mgy válasza Barkóca hozzászólására (») Feb 13, 2018 /
 
Kösz Sanyi Bácsi !
A többit privátban.
Üdv MGy
(#) mgy hozzászólása Márc 20, 2018 /
 
Egy programrészlet:

low sd
serin2 portc.7,16780,300,kihagy,[wait("DHT"),co]
gosub meres
high sd
serout portc.6,n2400,[c1,c2,c3,p1,p2,p3,13]

A pic16f887 rx lába c.7 tx lába c.6 mégsem működik a serin2 utasítás.A nyák már így van gyártva.
Amennyiben bármely más portot (lábat) használok működik a soros kapcsolat.
Mit lehet tenni, hogy az rx,tx láb működjön serin2 utasítással.
Ötleteket köszönöm
MGy
A hozzászólás módosítva: Márc 20, 2018
(#) otvenkilenc válasza mgy hozzászólására (») Márc 20, 2018 /
 
Emlékeim szerint a vételnél vár az idézőjelben lévő karakterre "2" Ha ez beérkezik akkor veszi csak az adatot. Tehát az Arduino adatküldését kezd a 2 karakterrel.
A hozzászólás módosítva: Márc 20, 2018
Következő: »»   23 / 23
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem