Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Ez az egész Basic-ben 60%-ot fogyaszt. (csak kíváncsiságból kipróbáltam; a kapcsolási értékek EEPROMban, SW serial meg egy LED+Kimenet). A villogó (úgy, ahogy Te írtad) 13-15%. Szóval Arduino-C++-ban bele fog az férni, csak a kezdeti maceráskodások alapban ennyit esznek, lehet, egy üres program is lesz vagy 10%, aztán lassan nő.
Igazad legyen, most nekiállok megírni, aztán meglátom mekkora lesz a méret. A softserialtól azért kicsit tartok, mert ha nem tudom összehozni, akkor lesz 20db felesleges Attiny13 -as tokom...
Aztán mégis meg kell vennem a kétszer annyiba kerülő 85 -öt, amiben van hardveres kommunikáció is. Ráadásul az még plusz egy hónap mire ideér... És még a 13 -ra is várnom kell egy hónapot amúgy is. Ha benyelem, és mégis a 85 -öst kell majd használnom, máris két hónap csúszás van...
A SW serial-tól ne tarts, ezen nem segít a T85 USI egysége, mivel ha belső oszcillátorról hajtod, ugyan olyan "pontatlan" lesz, mint a SW-es megoldás ezen kívül az USI 8-bites regiszterrel rendelkezik, Neked kell varázsolni start/stop-bitet ha RS232-szerű kommunikációt akarsz (SPI/I2C-re van az kitalálva) Ha bajban vagy, ki tudlak segíteni SO8 (keskeny) tokú T13-akkal, én RGB LEDvezérléseket ácsolok belőle, van kb 40-50db.
A gondom ott kezdődik, hogy amint átváltok Attiny13 -ra, és ellenőrzöm a kódot:
Rögtön hibába ütközik, mivel nem ismeri a Serial fügvényt: Idézet: „ Arduino: 1.6.12 (Windows 7), Alaplap:"ATtiny13, 9.6 MHz internal osc., 2.7v, -Os LTO enabled (default)" D:\_Arduino 1.6.12_\Projekt\Li-IonCellBalancer\Li-IonCellBalancer.ino: In function 'void setup()': Li-IonCellBalancer:13: error: 'Serial' was not declared in this scope Serial.begin(57600); ^ D:\_Arduino 1.6.12_\Projekt\Li-IonCellBalancer\Li-IonCellBalancer.ino: In function 'void loop()': Li-IonCellBalancer:23: error: 'Serial' was not declared in this scope Serial.println(fReadVcc()); ^ Li-IonCellBalancer:23: error: 'fReadVcc' was not declared in this scope Serial.println(fReadVcc()); ^ exit status 1 'Serial' was not declared in this scope This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. ” A fReadVcc hiba most nem érdekel, az ki lesz véve belőle úgy is...
Ehhez elég sülthal vagyok, de nem kell megmondani, hogy melyik láb lesz a soros?
Nekem elsőre az ugrott be, hogy mivel az hardveres függvény, azért nem ismeri.
Próbáltam a szoftverest, de azt meg nem találja a könyvtárban, pedig már be is másoltam a *.ino fájl mellé.
Idézet: „ Arduino: 1.6.12 (Windows 7), Alaplap:"ATtiny13, 9.6 MHz internal osc., 2.7v, -Os LTO enabled (default)" D:\_Arduino 1.6.12_\Projekt\Li_IonCellBalancer\Li_IonCellBalancer.ino:2:28: fatal error: SoftwareSerial.h: No such file or directory #include <SoftwareSerial.h> ^ compilation terminated. exit status 1 Error compiling for board ATtiny13. Invalid version found: 1.0.1b1 This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. ”
Ebben majd a hozzáértők biztos segítenek... A kevés hely miatt szerintem a lebegőpontos cuccokat nem biztos, hogy ajánlatos használni, én ADC értéket küldenék ki illetve azzal komparálnék (de ez csak apró meglátásom, majd kiderül, bele fér-e a T13-ba). No, de előbb működjön a soros!
Ismeritek az Arduino Web editor -t?
Arduino web editor... Kipróbálnám, de nem találok benne Attiny13 -at, arra nem lehet fejleszteni ezen keresztül?
Ide nem jók a <> kacsacsörök!
Igy kel:
És milyen távolság lessz a 2 soros eszköz között? Mert a TTL jel max 20 - 50cm.-re mehet. Ha távolabbra kel? Akkor Kellene az TTL - Rs232 vagy USB átalakítók. A hozzászólás módosítva: Júl 20, 2017
Pofám leszakad, de jó, hogy két helyen is csőrös zárójelbe van írva, akkor nekik hogy a pimba megy?
SoftSer1... SoftSer2... Persze nekem is pont a két hibásra kell ráakadnom... Nem messze, max az 50cm -t tartom mindenképp... A hozzászólás módosítva: Júl 20, 2017
Nem hiba az!
Hanem a környezettöl füg mit kel alkamahni. (Éppen hol vannak a 'SoftSerial.c-h')
Ok, akkor nem értem...
És idézőjelek közé téve sem megy... Idézet: „ Arduino: 1.6.12 (Windows 7), Alaplap:"ATtiny13, 9.6 MHz internal osc., 2.7v, -Os LTO enabled (default)" D:\_Aarduino_1.8.3_\Projekt\Li_IonCellBalancer\Li_IonCellBalancer.ino:1:28: fatal error: SoftwareSerial.h: No such file or directory #include "SoftwareSerial.h" ^ compilation terminated. exit status 1 Error compiling for board ATtiny13. This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. ” A hozzászólás módosítva: Júl 20, 2017
Vannak:
A standard könyvtár függvényei, típusai és makrói standard headerekben vannak deklarálva. Ezek a standard headerek: <assert.h> <limits.h> <signal.h> <stdlib.h> <ctype.h> <locale.h> <stdarg.h> <string.h> <errno.h> <math.h> <stddef.h> <time.h> <float.h> <setjmp.h> <stdio.h> Egy headerhez az #include <headernev> direktívával férhetünk hozzá. A headerek bármilyen sorrendben és akárhányszor beépíthetők a programba. Egy headert bármilyen külső deklaráción vagy definíción kívül, vagy bármely, a headerben deklarált függvény, típus vagy adat felhasználása előtt kell beépíteni. A headernek nem szükséges a forrásállományban lenni. A forrásállományban levőkre hivatkozunk: #include "headernev" formában.
Erre a feladatra inkább ezt használonám:
ATMEGA8U2 Kicsi és minden benne van, nem kel mellé + USB illesztő.
Naszóval, mivel a ATTinyCore mappában (ami a 24, 44, 84, 25, 45 és 85 ös tokokat támogatja) van SoftwareSerial mappa, átmásoltam a MicroCore mappába (ami a 13 -as tokot támogatja), és aban alapból nincs SotwareSerial mappa.
Csakhogy itt meg az a probléma, hogy gondolom nem kompatibilis egyik a másikkal, mert ismét hibát dob. Azt hiszem, az Attiny13 -hoz való SoftwerSerial -t kellene szerezni valahonnan, de azt én nem találtam... Idézet: „ Arduino: 1.6.12 (Windows 7), Alaplap:"ATtiny13, 9.6 MHz internal osc., 2.7v, -Os LTO enabled (default)" In file included from D:\_Aarduino_1.8.3_\Projekt\Li_IonCellBalancer\Li_IonCellBalancer.ino:1:0: C:\Users\username\AppData\Local\Arduino15\packages\MicroCore\hardware\avr\1.0.2\libraries\ SoftwareSerial/SoftwareSerial.h:100:18: error: conflicting return type specified for 'virtual size_t SoftwareSerial::write(uint8_t)' virtual size_t write(uint8_t byte); ^ In file included from C:\Users\username\AppData\Local\Arduino15\packages\MicroCore\hardware\avr\1.0.2\libraries\ SoftwareSerial/Stream.h:26:0, from C:\Users\username\AppData\Local\Arduino15\packages\MicroCore\hardware\avr\1.0.2\libraries\ SoftwareSerial/SoftwareSerial.h:36, from D:\_Aarduino_1.8.3_\Projekt\Li_IonCellBalancer\Li_IonCellBalancer.ino:1: C:\Users\username\AppData\Local\Arduino15\packages\MicroCore\hardware\avr\1.0.2\cores\ microcore/Print.h:45:18: error: overriding 'virtual void Print::write(uint8_t)' virtual void write(uint8_t) = 0; ^ exit status 1 Error compiling for board ATtiny13. This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences. ” A hozzászólás módosítva: Júl 20, 2017
Gondolkoz már!
Amit Te akarsz, az nem férbele a: Non-volatile Program and Data Memories - 1K Byte of In-System Programmable Program Memory Flash ??? Endurance: 100,000 Write/Erase Cycles - 64 Bytes Internal SRAM ???
Kezdő memoria foglalása:
Jó, akkor maradjunk annyiban, hogy úgyse fog beleférni. Meglátom a 85 mit szól hozzá...
Abban már van: 15. USI – Universal Serial Interface
Nem kel neki a SoftSerial! A következő gond, hogy a belső oscilátor nem elég pontos a soros átvitel ídőzítéséhez. Ezért kel a külső kvarc. Igy viszont már kevés pin marad. A hozzászólás módosítva: Júl 20, 2017
Szerintem simán belefér.
A szoftver serial kommunikációt ki kell bogozni, az csak sima bit banging. Megadni neki egy megfelelő lábat, és csak a szükséges fv.-eket átvenni. Float-ot felejtsd el. Egy adc érték beolvasása, összehasonlítása alig foglal valami helyet. A szoftver seriallal kell vigyázni, de az se ehet túl sokat. A hozzászólás módosítva: Júl 20, 2017
Ha Basicben belefért (60%), akkor C++-ban szerintem jóval kisebb lesz. A SW sorost meg ha máshogy nem, írd meg kibitezgetéssel meg várakozásokkal, akkor méretre már okosabbak leszünk.
Sziasztok!
Lehet, hogy kimúlt az arduino nanom? Mert ha csatlakoztatom a géphez, nem jelez, hogy valamit rádugtam, csak a két led (TX, POW) világít pirosan. Az arduino IDE programban az eszközöknél ki tudom választani, de a Port kijelölés nem aktív. Ezt a hibaüzenetet kapom: "avrdude: ser_open(): can't open device "\\.\COM3": A rendszer nem találja a megadott fájlt." Hogyan tudom megváltoztatni a port számát? Köszönöm előre is.
Simán meghalhatott, de a win frissítés esetleg elkaszálta a drivert. Szedd le a drivert, tedd fel újra a PC-re, hátha csak ez a gond.
Sajnos nem vagyok olyan penge programozásban, hogy egy ilyet megírjak magam.
A netről összeollózni meg, hááát nem vennék rá mérget, hogy az is működne...
Köszi, azt hogyan csináljam?
Nem tudom, mert nem írtad, hogy kínai klón, amihez CH340 -kell, mint a topik tetején megadott, vagy sem. Ha az, akkor ha jól emlékszem annak van uninstall opciója, utána újraindítás, megint telepítés. (win7, 8,10, stb???)
Neked kell tudnod, hogy milyen drivert tettél fel annak idején!
Nem tudom milyen gyártmány, úgy kaptam.
Futtattam az uninstall/install programot, csak nem indítottam újra közötte. Idézet: van benne. „CH340”
Naszóval, én valami ilyesmire gondoltam:
És mivel az ellenőrzés szerint: Idézet: „ Sketch uses 2 422 bytes (59%) of program storage space. Maximum is 4 096 bytes. Global variables use 68 bytes (26%) of dynamic memory, leaving 188 bytes for local variables. Maximum is 256 bytes. ” máris 2.5kb, így az Attiny13 -ba nem fér bele. Nem tudom ezt hogy lehetne még egyszerűben, szerintem sehogy. Szóval marad a 45/85 tok. Viszont, hogy ez a kód mennyire van rendben, arról fogalmam sincs... Bár ez még csak egy cellát ellenőriz, ha ebből készítek 17 darabot, még valahogy be kellene implementálni, hogy az adatokat csak akkor küldje, amikor vagy megszakítás jön, vagy lekérdezi a soros porton a fő arduino... A hozzászólás módosítva: Júl 20, 2017
Az összes digitalWrite, analogRead, pinMode fv-t le kell cserélni. Az Arduinos az nagyon pazarló. Van rá biztos valami segítség a neten.
|
Bejelentkezés
Hirdetés |