Fórum témák
» Több friss téma |
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.
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 .
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
A PIC RX lába és a +5 V közé rakj egy 10 kΩ-os ellenállatot, hátha csak ez a baj.
Kösz holnap megpróbálom.( most már hideg van a sufniban forrasztani !)
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
Ebben az esetben nem a barátod. Oszcilloszkóp és/vagy logikai analizátor kell megvizsgálni a jeleket.
Ü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.
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
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.
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
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.
Kösz Sanyi Bácsi !
A többit privátban. Üdv MGy
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
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
|
Bejelentkezés
Hirdetés |