Fórum témák
» Több friss téma |
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Sziasztok,
Azt hogy felkerekitsem az erteket azt elertem, megcsinaltam, de most valami olyasmire lenne szuksegem ami ket tizedes pontossaggal irja ki ugy hogy az utolso szamjegy mindig csak 0 vagy 5 legyen. Valahogy igy 5,05 vagy 5,10 vagy 5,15. Ezt hogy csinalhatnam meg ? Jol jonne a segitseg. Koszonom.
Szia!
Típuskonverziókkal megoldható. Amennyiben az "ertek" float típusú, a float(int(ertek*20))/20 öt századra kerekített érték lesz. A hozzászólás módosítva: Dec 3, 2014
Sziasztok! Van-e valakinek ötlete, mi lehet a probléma: futtatni szeretném pl. a "Menubackend" menürendszert egy Sanguino (ATMEGA644P) klónon, felprogramoztam a Sanguino bootloadert. Teszt kis programokkal, prímán mennek, kimeneti tesztek, analóg be-ki, soros monitor (ascii tábla kiiratás). Azonban ha egy menürendszer mintapéldát töltök fel, megőrül a kijelző, elszáll a progi. 16 MHz-es kvarc, szűrés a tápfeszen. Honnan lehet kideríteni, mi a rossz, a bootloader esetleg, a fordító? Ugyanaz UNO-n (vagy ATMEGA328P-vel próbapanelon) prímán megy. Csak azért kellene a 644P, mert az UNO-n kevés a menühöz meg a progihoz a 32 kB. Csak a fejem vakargatom, olvasom a fórumokat, meg morfondírozok, de nem jutottam előbbre. Előre is köszi.
Én ugyan nem ismerem ezt a Sanguino (ATMEGA644P) klónot.
De azt hiszem Ardunió nem kezeli a (ATMEGA644P)t. Mivel direkte kihangsúlyoztad, hogy ugyanazt az eljárást használod, mint ATMEGA328P-ve! Ez pedig eleve hibás, mert a botloader nem az ATMEGA644 nagyobb memória végére kerül, hanem valahova a közepére. Mivel azt az ATMEGA328-hoz méretezték.
Köszi. A bootloader az a 644P-hez való, és az Arduino IDE környezet hardware mappájába az ajánlás szerint be vannak töltve az adatok, és a 644P-hez való bootloadert használom. Megjelenik a panelok között mint Sanguino 644P, a hozzá való soros illesztővel az apróbb példaprogik lefutnak prímán. Ugyanaz a program átváltva UNO-ra és az UNO-t rádugva jól megy, pl. 13 kB méretű az egyik ilyen menubackend minta. Semmit nem változtatva a mintaprogin, visszaváltok Sanguino panelra, feltöltöm, és a panel megőrül tőle. Látom, hogy 13 kB a 63 kB-ból, tehát még van bőven hely. Kérdés lehet még, hogy esetleg az Arduino IDE core részén nem kell-e változtatni, vagy esetleg a lefordított kódot hol lehet megtekinteni, hol lehet hibát keresni benne?
Értelemszerűen ugyanaz a kód nem fog Atmega644-en és Atmega328P-n futni.
Teljesen más a lábkiosztás, másféle timerek, regiszterek vannak, ezért teljesen más szoftvert kell Atmega328P-re feltölteni, mint Atmega644P-re. Az Arduino ezt úgy oldja meg, hogy fordításnál a megfelelő mikrokontrollerre átfordítja, hogy más kód fusson. Az Atmega644P nem támogatott Arduino-n, szóval valamit azért fusizni is kellett neked, hogy egyáltalán leforduljon. Távolról a problémát is nehéz megérteni, mert annyi jött le, hogy egy 28 lábú chipet egy 40 lábúval helyettesítettél és nem megy. Fogalmam sincs, hogy ezt hogy sikerült elérni, mert teljesen inkompatibilis a két rendszer. Valószínűleg teljesen más a hardver is, ezért a kettő összehasonlíthatatlan. Lehet LCD kijelzőt programozni Atmega644P-vel is, de más programmal és más huzalozással. Teljesen normális, hogy egyikről nem tudod változtatás nélkül átvinni a másikra. A hozzászólás módosítva: Dec 4, 2014
Akkor nem jól fogalmaztam. Ugyanazt tettem, mintha UNO-n írt programot az Arduino IDE-ben lefordítva, letöltve az UNO-ba megy. Az alappanelt átváltva a Sanguino-ra, lefordítva, letöltve a Sanguino-ra, ugyanaz az egyszerűbb program vagy programok mennek rajta. Majd betöltve egy korábban UNO-n tesztelt programot, pl. MenuBackend demo, átírva a megfelelő lábakat pl. a Liquidcrystal-ban, elindul, de megőrül egy kis idő múlva. Fusiztam, mert a hardware alá be kell tenni egy Sanguino könyvtárat, és innen már Sanguino panelt is választhatsz. Vagy akár Atmega1284P (128 kB , nagyobb RAM, több EEPROM) is használható. Maga az Arduino környezet nem jelez hibát, lefordul a progi, le is töltődik, csak sajnos ami 328-on megy, valamiért nem megy 644P-n. A core könyvtárba is betöltök minden specifikus fájlt. Csak azt nem értem, hogy más hogy használja Arduino-ból a 644P-t 3d printer vezérlésére.
Ugyanazt játszom el, mintha UNO-ról Mega2560-ra váltanék. Progi marad, panel változik. De ezt még megpróbálom, kíváncsiságból.
A hozzászólás módosítva: Dec 4, 2014
Abban biztos vagy, hogy a szoftver jó (ami az Atmega644-et kezeli)?
Vannak I2C LCD-k, bár gondolom azzal nem lenne problémád. Amit gyanítok, hogy a 14 lábú LCD-d van, a kábeleket meg valahogy félrekötötted. Azt sem tudjuk, hogy van-e benne PWM (háttérvilágítás), ami máshol lehet Atmega644-en,... Innen messziről nem egyszerű véletényt mondani. A hozzászólás módosítva: Dec 4, 2014
Akkor pontosítok. A lábak jó helyre vannak kötve. Az LCD normál, bekötve RS, RW földre, EN, D4,D5,D6,D7 bekötve. Sima LCD progi jól megy, kiiratás ok, még a definiált karaktekek is jól jelennek meg, kiiratás jól változik, pl. egy szám növelés. A Liquidcrystal beállítva megfelelően. A 644P-ben a megfelelő bootloader van beégetve, az Arduino IDE fordít, letölt, a progi indul, jól fut. Ha a Menubackend minta kerül bele megfelelő beállítások után, Liquidcrystal pinek átírva, akkor a menu kezdőlapja még jól megjelenik, a kiiratás ok, de rövid idő után már nem tudom gombokkal a menüt léptetni, a proci néha újraindul, ami egy egyszerű progival nem fordul elő. pl. LED-ek villogtatása pl. órákig. Olyan, mintha az IDE nem jól fordítaná le a memória mutatókat használó progit, csak nem tudom, hol lehetne ezt megnézni, disassembler? vagy valami listafájl?
Koszi a segitseget, de oszinten olyan lama vagyok hogy nekem nem jon be.
Sziasztok!
Van egy 2.2" SPI soros lcd-m, amihez az Adafruit ILI9340 könyvtárát használom. A kijelző 3.3V-tal vezérelhető, a szintillesztéshez CD4050 ic-t használok. Az ajánlott bekötés mellett a szoftveres SPI szépen meghajtja a panelt, de dög lassú. A hardveres SPI viszont csak egy szép fehér képernyőt eredményez. Egyelőre dugaszolós próbapanelen raktam össze, de próbáltam minél rövidebb vezetékeket használni. Próbáltam kínai Arduino Nano 3.0-val és egy AVR-Duino / R3 panellel is, de az eredmény ugyanaz. Mi lehet még a gond? A bekötés az alábbi, az ILI9340 által javasolt: #define _sclk 13 #define _miso 12 #define _mosi 11 #define _cs 10 #define _dc 9 #define _rst 8 Mondjuk ebből a MISO szoftveres módban biztosan kihagyható, de bekötöttem a biztonság kedvéért.
> a proci néha újraindul
AVR-es karrierem során sokszor volt, hogy az AVR újraindult, ez vagy hardver, vagy szoftver probléma. Hardver esetén a RESET lábon zaj jelent meg, vagy az AREF pin lebegett, vagy a VCC eszméletlenül zajos volt. Ha van valamiféle oszcilloszkóp-szerűséged, akkor nézd meg, hogy mi van a VCC és a RESET lábakon. AREF és a föld közé rakjál 100nF-ot. Ha a hardver hibát kizártad, akkor jön a szoftver: - győződj meg, hogy a bootloadert értelmes emberek írták-e és nem kapcsolták-e be szórakozásból a watchdog-ot
Ha nem hardver hiba és nem watchdog, akkor már csak egy maradt hátra: verem túlcsordulás. Küldök mintaprogramot, hogy hogyan tudod a vermet túlcsorgatni. Ilyenkor esetenként RESET-el, lásd példaprogram.
A hozzászólás módosítva: Dec 5, 2014
Szia!
Ha még nem tetted meg akkor a CS-t állítsd be kimenetnek a setupban és kapcsolg high-ba. Nekem legalábbis ez segített. Üdv.
Üdv. Olyan problémám volna hogy próbáltam arduino uno-ra egy sketch-et lefordítani,de mindig beketötött a tv szóba. Felteszem a problémát kapcsolásal mindenel eggyüt. Hátha valaki tud segíteni.
![]() Szerk.: Arduino uno,a 328p-vel. ![]() A hozzászólás módosítva: Dec 5, 2014
Kipróbáltam 1.0.5 verzión, probléma nélkül lefordult.
Nekem 1.0.5-r2 van azon nem futott le. Lehet a program hibás?
Nem tudom, nekem az 1.0.6 verzióval egy rakás program nem fordul le, úgyhogy könnyen előfordulhat. Illetve nem feltétlen hibás, csak az alaprendszerben megváltozott néhány dolog, amit követni kellene a fordítandó programokban.
Egy linket tudnál küldeni hol érhetem el a normál 1.0.5 verziót? Mert ha le akarom tölteni az arduino oldaláról,ott is az r2 van fent.
![]()
Telepítés után ujra jelentkezem.
![]()
Most látom, hogy tényleg. Ez érdekes, akkor valami más nem stimmel.
A libeket a megfelelő helyre másoltad? A hozzászólás módosítva: Dec 5, 2014
Tehát sima 1.0.5-ös nincs csak az r2 verzió?
Felraktam egy sima 1.0.5-öst de azzal is itt a hiba.
Azért, mert a zipben levő könyvtárakat nem másoltad a helyére.
A Controllers és a TVout a c:\program files\arduino\libraries alatt kell hogy legyen. Miután odamásoltad, indítsd újra az Arduino IDE-t. A hozzászólás módosítva: Dec 5, 2014
Már rendben működik.
![]()
Sziasztok!
Már régóta van 2 arduino-klónom, és a napokban nem tudtam egyikre sem programot feltölteni. Sem usb-n, sem programozóval. "Varification error, content mismatch" hibaüzenet jelenik meg. A flash meg "szeméttel" van tele. Szerintetek mivel van a hiba?
Gondolom szórakoztál valamit a programozóval és kinyírtad az Arduinokon a bootloadert.
Az Arduino-kat alapból nem tudod programozni programozóval, mert oda bootloader kell. Bármilyen kódot feltöltesz, törlöd vele a bootloadert. Minden programozás úgy kezdődik, hogy a programozó kiadja a "chip erase" parancsot és mindent kitöröl. A Flash/EEPROM tartalma csupa 1 bit lesz (255). Ezután a feltöltő program képes egyesével kikapcsolni a biteket. A feltöltő minden 1-es bitet képes 0-ra átírni. Visszafelé már nem képes erre, ami egyszer 0 volt, abból 1 már nem lesz. (Gondolom a programozón kikapcsoltad a chip törlést, ezért nem sikerül feltölteni rendesen semmit) Amit javaslok: - adj ki programozóval teljes törlést, míg minden alapállapotba nem kerül - töltsd vissza az alappanelhez tartozó bootloader-t - használj USB-t feltöltéshez A hozzászólás módosítva: Dec 8, 2014
Szia. A hamis FTDI csipekt miatt az eredeti gyártó a frissítésével tiltja az USB-soros átalakítót. Tavir-AVR oldalan van erről egy cikk. Keresd meg ott mi a megoldás.
|
Bejelentkezés
Hirdetés |