Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
De ha ilyen sűrűn akarsz rádiózni? Akkor nagyobb lesz a fogyasztásod a tervezetnél.
Vagy ha kicsit van kedved nézelődni, az arduino kódot vissza lehet fejteni. Gondolom nem túl bonyolult. Utána már a pic is mehet.
Ennél tágabban programozható ídőzítöttn em találsz.
Ami ráadásúl 1 évig is üzemel 1 gombellemről. Using the hardware real-time clock (RTC) in ... - STMicroelectronic...alarms A hozzászólás módosítva: Ápr 5, 2018
Idézet: „Téves az RTC ismereted!” Szia! Igazad van! Rosszul értelmeztem! Jobban megnézve egy részletesebb adatlapon: - 20 bites előosztó, - 32 bites számláló, Mivel a számláló (és az előosztó) beállítható tetszőleges kezdőértékre, és a számláló túlcsordulása ébresztheti az MCU-t, így tetszőleges érték állítható be (elvileg 30 us-os felbontás 32768Hz kvarccal). Ha az STM fut arduino alól, és még az RF24 lib-et tudom használni vele az nagyon jó lenne. Kérdés még lenne ezzel kapcsolatban nagyon sok, főleg az arduinó alá beintegrálás módja, és az esetleges eltérések a használatban.(minden arduino utasítás fut rajta, melyik nem vagy máshogy, ... ?) Idézet: „De ha ilyen sűrűn akarsz rádiózni? Akkor nagyobb lesz a fogyasztásod a tervezetnél.” Szia! 1 központ és max. 100 -200 Node-ot akarok/szeretnék, szigorú időablakos módban használni NRF24L01-el. A központ fogyasztása a legnagyobb, de itt van hálózati táp. A node-ok viszont akkuról (18650-2000mAh, vagy fele akkora fizikai méretű 1000mAh) mennek, itt kell takarékoskodni.De ezek minden ciklusban (4 sec) csak 1ms-ig mennek 80mA-el (adás) plusz 10-15 ms-ig 6 mA-el (feldolgozási idő). Így elég sokáig kitart az akku.
Szia!
Már "visszafejtettem" (PIC-re), de mégsem úgy működik mint arduino alatt. Minden bizonnyal én rontottam el valamit, de már meguntam a hibakeresést. Néha megy az ACK payload-os dinamikus hosszúságú adés/vétel, néha meg nem. Ha kikapcsolom az MPLABX debugját, akkor életre kel, (bár ekkor sem mindig), ha debug üzemmódban vagyok akkor legtöbbször nem megy ! Elég sokat foglalkoztam vele, -szinte eredmény nélkül- így most inkább másik megoldást/utat keresek.Már csak azért is mert az RF kommunkáció csak egy része az egész feladatnak. A nagyobb falat a hálózat üzemeltetése lenne, ha lenne egy stabilan működő RF kommunikációm....... Amúgy is elszörnyeszt hogy egy funkcióhoz 33 regisztert kell beállítanom az NRF-ben!
Ha külső eszköz? Még ez is fontos:
STM32F103xx RTC calibration.pdf Bővebben: Link A hozzászólás módosítva: Ápr 5, 2018
Ezt mi okoza?
hova telepítetted, és melyik alkalmazás?
nálam itt van, és gondnélkül fordúl pl.: c:\Users\Kapu48\Documents\Arduino\hardware\Arduino_STM32\STM32F1\libraries\RTClock\examples\Test_RTClock\ Idézet: „Sketch uses 15 460 bytes (23%) of program storage space. Maximum is 65 536 bytes. Global variables use 2 824 bytes of dynamic memory. ” A hozzászólás módosítva: Ápr 5, 2018
Van 1 érdekes project, egyből lefordult az STM32F103C-re!
Bővebben: Link Optimized High Speed NRF24L01+ Driver Class Kérdés, hogy fut is hiba nélkül az adott HW kiépítésen? A SPI része kérdéses föleg, azt szerintem adoptálni kellene. A hozzászólás módosítva: Ápr 6, 2018
Sziasztok!
2 uno között szeretnék 5 értéket átvinni, egyikről a másikra. A küldés-fogadás megy, viszont szét kellene válogatni a vevő oldalon a kapott értékeket. Tehát az adatcsomagból kiválogatni, hogy mi mihez tartozik, ebben kérném a hozzáértő segítségeket. Köszi.
Bocsánat, az lemaradt, hogy soros /tx-rx/ vonalon.
Minden adatod elé teszel egy jellemzô karaktersort, vagy ha egyszerre küldöd (mármint egymás után) akkor egy indító karaktersort is teszel elé, és azt figyelteted a másik oldalon. Ha az indító karakterek megvannak, onnan tudod hogy a következô az 1. éles adat, az azt követô a 2., stb.
Az elgondolás részemről is ilyesmi, viszont egy példa sokat segítene.
Talán megoldás lehet, hogy a küldő oldalon az értékekhez hozzáadok 100-200-300-400-500 és a fogadó oldalon meg feltételhez kötöm, a kapott értéket, majd kivonom és ott az eredeti érték. Természetesen mind az 5 küldendő érték 0-99 közötti, ezért gondolnám, hogy a fentebb hozzáadott "azonosítókkal" rendben működhet a dolog. A hozzászólás módosítva: Ápr 6, 2018
Szóval írjuk is meg neked?
Tessék (most csak notepadon írtam meg, nem teszteltem, de szerintem kb. jó lehet):
A hozzászólás módosítva: Ápr 6, 2018
A kód csak ötletadó, nem kipróbált, hibák lehetnek benne.
mint pl.: 18. sor helyesen: beugr2=0; Illetve a változók nincsenek inicializálva, stb. Idézet: „2 uno között szeretnék 5 értéket átvinni, egyikről a másikra.” Ha a biztonságos, adatvesztés/adathiba nélküli átvitelre nincs szükség akkor a már javasolt megoldások teljesen jók lehetnek. Ha az átvitt adatokban meg akarsz bízni valamilyen szinten akkor érdemesebb máshogy szervezni az üzenetek felépítését : Például : STA, DST, SRC,DCNT, DATA 0 .. n, SUMLO, SUMHI, STO ahol : STA - Start byte (értéke pl:1) DST - Címzett (értéke 0..255) SRC - Feladó (értéke:0..255) DCNT - Adatbyte-ok száma DATA 0..n - adatbyte-ok SUMLO - (DST-től DATA n-ig a byte-ok összege) low byte SUMHI - (DST-től DATA n-ig a byte-ok összege) high byte STO - Stop byte (pl : 2) STA és STO byte-ok (első és utolsó byte az üzenetben) konverzió nélkül kerülnek átvitelre. Az összes többi byte hexa karakterenként lesz továbbítva, tehát minden byte 2 db hexa karakter alakban (Lo-Hi sorrendben) kerül adásba. Pl : byte : 1 171 bináris alak : 00000001 10101011 Hexa forma : 0x01 0xAB Átvitel sorrendje (Lo-Hi): 1,0 B,A Átvitt karakter : 49,48 66,65 Mint látszik is az üzenetben (a Start és Stop byte-ok kivételével) csak egy erősen szűkített karakter készlettel dolgozunk. Számjegyek : 0 (ASCII 48) - 9 (ASCII 57) Hexa betűk : A (ASCII 65) - F (ASCII 70) ELŐNYÖK : - átviteli hibák könyebb észlelése, (a fenti értékkészleten kívüli karakterek HIBÁSAK, kivéve a start és stop karaktereket), - tovább növeli az átviteli hiba észlelési valószínűségét a 2byte-os ellenőrző összeg képzése (vételi oldalon a vett adatokból kiszámoljuk az ellenörző összeget -szumma- és ha ez nem egyezik a vett ellenörző összeggel, akkor HIBA van), - az adatok száma (DCNT) is segíti ahibák azonosítását (ha vett DCNT nem egyezik a tényleges adatok számával, akkor HIBA van ), - az adatrész (DATA) felépítése egyértelműen azonosíthatja az adatokat (mivel tudjuk hol kezdődik, és hol van vége ) - könnyű azonosítani az üzenet elejét és végét (a start és stop byte-ok értékét a fenti értékkészleten kívül kell választani !) - egyértelmű címzett és feladó azonosítás (pl RS485 rendszerben) HÁTRÁNYOK : - közel 2x akkora lesz az üzenetek mérete, - küldés előtt hexa formára kell alakítani, a vételi oldalon pedig hexa számból vissza kell állítani a byte-ot Remélem tudtam egy kicsit segíteni...
Előző üzenetemben a formázás miatt nem értelmezhető a példa, ezért leírom mégegyszer:
Pl : byte : 1 bináris alak : 00000001 Hexa forma : 0x01 Átvitel sorrendje (Lo-Hi): 1,0 Pl : byte : 171 bináris alak : 10101011 Hexa forma : 0xAB Átvitel sorrendje (Lo-Hi): B,A Így már olvashatóbb.
igen ide alatt látja az stm32 eszközöket!
De egy sima blink forditotam csak volna!
Direkt kivan hangsúlyozva a telepítési útmutatóban, hogy az arduino1.6.5 változatát töltsed le!
Sziasztok!
Egy 40x4 kijelzőt szeretnék illeszteni egy Mega alaplapra..Elméletileg telepítettem a LiquidCrystal440-et,meg is jelent az 1.8.2-as könyvtárában.. Mégsem akarja az igazságot,ezzel a hibaüzenettel megáll a fordítás: [quote][/Arduino: 1.8.2 (Windows 7), Alaplap:"Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)" C:\Users\dell760\Documents\Arduino\libraries\Liquidcrystal440\LiquidCrystal440.cpp:7:22: fatal error: WProgram.h: No such file or directory #include "WProgram.h" compilation terminated. exit status 1 Hiba a(z) Arduino/Genuino Mega or Mega 2560 alaplapra fordításra. Sima LiquidCrystal könyvtárral el tudom indítani,ha az RW-t gnd-re kötöm.Az e1 e2-t pedig párhuzamosan..De akkor ugyanazt írja a felső két sorba,mint az alsó kettőbe.. Köszönöm a segítséget...
Ha nem találja? Akkor telepítsed:
wprogram.h library arduino download Vagy javítsd át: #include "Arduino.h" -ra. A hozzászólás módosítva: Ápr 6, 2018
A 4x40 -es kijelzők tulajdonképen két darab illesztő áramkört tartalmaznak. Ha párhuzamosan kötöd az E1 és E2 kivezetést, akkor természetesen mindkét kontroller ugyan azokat a parancsokat hajtja végre. Ahhoz, hogy függetlenül kezeld őket, az E1-et és az E2-t külön-külön kell vezérelned.
Alapvetően nem kell biztonságos legyen. Elég ha küldve-fogadva van és feldolgozva.
Köszi a részletes leírást, de ennyire nem kívánom bonyolítani.
Nagyon kezdő vagyok még az arduino világában..
Pontosan mit is javítsak át? |
Bejelentkezés
Hirdetés |