Fórum témák
- • LCD TV probléma
- • Mosogatógép hiba
- • Inverteres hegesztőtrafó
- • Analóg oszcilloszkóp javítása
- • Audiofil, High End Audio
- • Házilag építhető fémkereső
- • Sárga Kazettás Piaci Nintendo (8bit)
- • Műhelyünk felszerelése, szerszámai
- • Fejhallgató erősítő
- • Ultrahangos párásító
- • Elektronikai témájú könyvek újságok
- • Akkumulátoros fúró
- • Vásárlás, hol kapható?
- • Retro számítógépek
- • Tranzisztor teszter
- • Erősítő mindig és mindig
- • Tranzisztorok helyettesítése
- • BEKO Mosó/Szárító gép
- • Arduino
- • Vezeték nélküli hangátvitel
- • Muzeális készülékek-alkatrészek restaurálása
- • Mobiltelefon hiba
- • Elektromos kerékpár akkumulátorának helyettesítése
- • Li-Ion saját akkucsomag készítése
- • FOK-GYEM TR9178 tápegység
- • Háromfázisú aggregátor
- • Autós erősítős kérdések, problémák
- • Távirányító javítás
- • Biciklilámpa / bringalámpa
- • Eredményjelző
- • RC távirányítás modellekhez
- • VF3 - 6 végerősítő
- • Lemezjátszó beállítása, javítása
- • Sütő javítás
- • Padlófűtés vezérlés
- • Számítógépes áramkörszimuláló programok
- • Videoton EA-7386-s erösítő
- • Kombikazán működési hiba
- • Felajánlás, azaz ingyen elvihető
- • Suzuki Swift elektronika
- • Páraérzékelő szenzor
- • VIDEOTON RT (RA) 6380S
- • Számítógép hiba, de mi a probléma?
- • Nextion érintőképernyős HMI, UART kommunikációval
- • Hangsugárzó építés, javítás - miértek, hogyanok
- • Alternativ HE találkozó(k)
- • GPS GSM modulok programozása
- • Digitális kapcsoló
- • Porszívó javítás
- • Szintetizátor javítás
- • Orsós magnók
- • Dobozolási technikák, műszerdobozok
- • USB bekötése
- • Elfogadnám, ha ingyen elvihető
- • Időzítő
» Több friss téma
|
A klónok CH340 Soros-USB illesztőjének drivere ( Letöltés)
DigitalRead, DigitalWrite helyett ezt használod gyorsabb, if - ek helyett switch case talán úgy is gyorsabb.
Kicsit tovább fűzve a hozzászólásodat:
// --- PIN MODE: OUTPUT ---
DDRD |= _BV (0); // pinMode (0, OUTPUT);
DDRD |= _BV (1); // pinMode (1, OUTPUT);
DDRD |= _BV (2); // pinMode (2, OUTPUT);
DDRD |= _BV (3); // pinMode (3, OUTPUT);
DDRD |= _BV (4); // pinMode (4, OUTPUT);
DDRD |= _BV (5); // pinMode (5, OUTPUT);
DDRD |= _BV (6); // pinMode (6, OUTPUT);
DDRD |= _BV (7); // pinMode (7, OUTPUT);
DDRB |= _BV (0); // pinMode (8, OUTPUT);
DDRB |= _BV (1); // pinMode (9, OUTPUT);
DDRB |= _BV (2); // pinMode (10, OUTPUT);
DDRB |= _BV (3); // pinMode (11, OUTPUT);
DDRB |= _BV (4); // pinMode (12, OUTPUT);
DDRB |= _BV (5); // pinMode (13, OUTPUT);
DDRC |= _BV (0); // pinMode (A0, OUTPUT);
DDRC |= _BV (1); // pinMode (A1, OUTPUT);
DDRC |= _BV (2); // pinMode (A2, OUTPUT);
DDRC |= _BV (3); // pinMode (A3, OUTPUT);
DDRC |= _BV (4); // pinMode (A4, OUTPUT);
DDRC |= _BV (5); // pinMode (A5, OUTPUT);
// --- PIN MODE: INPUT ---
DDRD &= ~_BV (0); // pinMode (0, INPUT);
DDRD &= ~_BV (1); // pinMode (1, INPUT);
DDRD &= ~_BV (2); // pinMode (2, INPUT);
DDRD &= ~_BV (3); // pinMode (3, INPUT);
DDRD &= ~_BV (4); // pinMode (4, INPUT);
DDRD &= ~_BV (5); // pinMode (5, INPUT);
DDRD &= ~_BV (6); // pinMode (6, INPUT);
DDRD &= ~_BV (7); // pinMode (7, INPUT);
DDRB &= ~_BV (0); // pinMode (8, INPUT);
DDRB &= ~_BV (1); // pinMode (9, INPUT);
DDRB &= ~_BV (2); // pinMode (10, INPUT);
DDRB &= ~_BV (3); // pinMode (11, INPUT);
DDRB &= ~_BV (4); // pinMode (12, INPUT);
DDRB &= ~_BV (5); // pinMode (13, INPUT);
DDRC &= ~_BV (0); // pinMode (A0, INPUT);
DDRC &= ~_BV (1); // pinMode (A1, INPUT);
DDRC &= ~_BV (2); // pinMode (A2, INPUT);
DDRC &= ~_BV (3); // pinMode (A3, INPUT);
DDRC &= ~_BV (4); // pinMode (A4, INPUT);
DDRC &= ~_BV (5); // pinMode (A5, INPUT);
// --- DIGITAL WRITE: HIGH ---
PORTD |= _BV (0); // digitalWrite (0, HIGH);
PORTD |= _BV (1); // digitalWrite (1, HIGH);
PORTD |= _BV (2); // digitalWrite (2, HIGH);
PORTD |= _BV (3); // digitalWrite (3, HIGH);
PORTD |= _BV (4); // digitalWrite (4, HIGH);
PORTD |= _BV (5); // digitalWrite (5, HIGH);
PORTD |= _BV (6); // digitalWrite (6, HIGH);
PORTD |= _BV (7); // digitalWrite (7, HIGH);
PORTB |= _BV (0); // digitalWrite (8, HIGH);
PORTB |= _BV (1); // digitalWrite (9, HIGH);
PORTB |= _BV (2); // digitalWrite (10, HIGH);
PORTB |= _BV (3); // digitalWrite (11, HIGH);
PORTB |= _BV (4); // digitalWrite (12, HIGH);
PORTB |= _BV (5); // digitalWrite (13, HIGH);
PORTC |= _BV (0); // digitalWrite (A0, HIGH);
PORTC |= _BV (1); // digitalWrite (A1, HIGH);
PORTC |= _BV (2); // digitalWrite (A2, HIGH);
PORTC |= _BV (3); // digitalWrite (A3, HIGH);
PORTC |= _BV (4); // digitalWrite (A4, HIGH);
PORTC |= _BV (5); // digitalWrite (A5, HIGH);
// --- DIGITAL WRITE: LOW ---
PORTD &= ~_BV (0); // digitalWrite (0, LOW);
PORTD &= ~_BV (1); // digitalWrite (1, LOW);
PORTD &= ~_BV (2); // digitalWrite (2, LOW);
PORTD &= ~_BV (3); // digitalWrite (3, LOW);
PORTD &= ~_BV (4); // digitalWrite (4, LOW);
PORTD &= ~_BV (5); // digitalWrite (5, LOW);
PORTD &= ~_BV (6); // digitalWrite (6, LOW);
PORTD &= ~_BV (7); // digitalWrite (7, LOW);
PORTB &= ~_BV (0); // digitalWrite (8, LOW);
PORTB &= ~_BV (1); // digitalWrite (9, LOW);
PORTB &= ~_BV (2); // digitalWrite (10, LOW);
PORTB &= ~_BV (3); // digitalWrite (11, LOW);
PORTB &= ~_BV (4); // digitalWrite (12, LOW);
PORTB &= ~_BV (5); // digitalWrite (13, LOW);
PORTC &= ~_BV (0); // digitalWrite (A0, LOW);
PORTC &= ~_BV (1); // digitalWrite (A1, LOW);
PORTC &= ~_BV (2); // digitalWrite (A2, LOW);
PORTC &= ~_BV (3); // digitalWrite (A3, LOW);
PORTC &= ~_BV (4); // digitalWrite (A4, LOW);
PORTC &= ~_BV (5); // digitalWrite (A5, LOW);
// --- DIGITAL READ ---
x = (PIND & _BV (0)) == 0; // digitalRead (0);
x = (PIND & _BV (1)) == 0; // digitalRead (1);
x = (PIND & _BV (2)) == 0; // digitalRead (2);
x = (PIND & _BV (3)) == 0; // digitalRead (3);
x = (PIND & _BV (4)) == 0; // digitalRead (4);
x = (PIND & _BV (5)) == 0; // digitalRead (5);
x = (PIND & _BV (6)) == 0; // digitalRead (6);
x = (PIND & _BV (7)) == 0; // digitalRead (7);
x = (PINB & _BV (0)) == 0; // digitalRead (8);
x = (PINB & _BV (1)) == 0; // digitalRead (9);
x = (PINB & _BV (2)) == 0; // digitalRead (10);
x = (PINB & _BV (3)) == 0; // digitalRead (11);
x = (PINB & _BV (4)) == 0; // digitalRead (12);
x = (PINB & _BV (5)) == 0; // digitalRead (13);
x = (PINC & _BV (0)) == 0; // digitalRead (A0);
x = (PINC & _BV (1)) == 0; // digitalRead (A1);
x = (PINC & _BV (2)) == 0; // digitalRead (A2);
x = (PINC & _BV (3)) == 0; // digitalRead (A3);
x = (PINC & _BV (4)) == 0; // digitalRead (A4);
x = (PINC & _BV (5)) == 0; // digitalRead (A5);
Így is gyorsabb:
ignitionTime = (periodTime*91/100)-100; a ignitionTime = (0.9123*periodTime)-100; helyett.
Lehet pontosabban is csak meg kell nézni nehogy túlcsordulás legyen.
13. 14. sorban is van hiba
(#) |
JoeA hozzászólása |
Máj 24, 2019 |
|
/ |
|
|
Az ATTiny modulok mekkora feszültséggel mennek? Már találtam vagy 3 féle rajzot, 5, 12 és 16V tápfesszel (elvileg mind a digispark verzió). Autóba kellene, ott elvileg a 14,4 a maximum, gondolom a 16-os megfelelő lenne csak melyik panel az ami a rajzhoz tartozhat? Van valakinek tapasztalata?
Szia.
Ott biztos van valamilyen szabályzó 5V-ra.
Mutasd meg azokat a rajzokat.
google
és sorban nyitogattam meg őket.
Ez 16V-ot ír. A baj, hogy eléggé szét kellene szednem az autóm, hogy beépítsem és a helyére kell tenni, hogy kipróbáljam, ezért hezitálok! 15 perc a szétszerelés, nem volna kedvem 2-3-4 alkalommal megtenni
Ha szimpla 3 lábú stabilizátor van benne, akkor nézd meg az adatlapját. Azt is vedd figyelembe, hogy 15V-ból 5V-ot csinálni ezekkel a sima áteresztős stabilizátorokkal legfeljebb 33% hatásfokkal lehetséges, ezért az áramfelvétel is számíthat.
Nézegetem, de az e-bayen ahonnan venném, nem túl jó képek vannak, így csak reménykedem, hogy valami rendesebb stabi lesz rajta. Ha nem, akkor építek valamit elé
Az Attiny85 Adatlap alapján (lásd: 1. oldalon az "operating voltage" részt) 5V.
Tehát, ahogy már más is írta, ott a regulátor a nagyobb bemenő feszültséghez.
AZONBAN: ettől még továbbra is 5V-os maximális jeleket vár a az I/O pontokra.
Ajánlott arra figyelni, hogy ne kapjon sokkal több bemenő feszültséget, mint amit előállít az LDO. Mivel ezek nem kapcsolóüzemű szabályzók, ezért nehezen disszipálják el a felesleget. 9, max 12V legyen a bemenő. Lehetne akár egy Step-Down (pl: LM2596) vagy hasonló, amivel 2-3 V-al többet adsz be a panelnak, mint az 5V. Az LDO-k általában 0-5 és 1,2 v közötti (típusfüggő) dropout feszültséggel rendelkeznek. tehát MINIMUM ennél nagyobb legyen a bemenő (persze kell a tartalék)!
Az 5v ok a bemeneteken, csak arra gondoltam, hogy ha megfőzöm a stabilizátort rajta, akkor dobhatom ki Már ha más bajt nem csinál... 4,7-es zenerekkel gondoltam a jelszint illesztést.
Igen, oda kell figyelni arra, hogy mennyi legyen a bemenő a stabilizátornak.
Hasonló helyzetben - ESP8266, mely 3,3 V-ról jár - nekem egy saját panelen ADS1117-el kapta a 3.3V-ot. Annak pedig 5V-ról adtam tápellátást (Step-Down, vagy más esetben 5V kapcsolóüzemű táp), pont hasonló okok miatt.
A zener alkalmazása jó, ne felejtsd a megfelelő bekötést és természetesen a soros ellenállást is, melyen a különbözet esik.
Ezek a kapcsolóüzeműek hogy viselkednek változó bemenő fesznél? A kimenet teljesen stabil vagy követi a bemenőt? Nézegetem ezeket a kis modulokat és sok alkatrész nincs rajtuk Az autómban van egy USB-s töltő, ami mutatja feszültséget és 11,5-től 14,2-ig minden van, attól függően, hogy milyen fogyasztókat kapcsolok be. Álló motortól járóig természetesen, de járó motor mellett is leesik néha 11,9ig ha olyat kapcsolok be.
Én 5V-ra állítanám, és kihagyva a lapon található stabilizátort, erről az 5V-ról hajtanám az Arduino-t.
11V-ról 8V-ra DC-DC konverterrel csökkenteni nem sok értelme van, a lapon található IC-nek meg legrosszabb esetben 3V is kellhet (5+3=8V). Szóval vagy az egyik, vagy a másik, de nem együtt (egymás után). Minimizálni kell a fogyasztást, és akkor nem fog a stab. fűteni.
Sziasztok!
Vettem kínából egy Nano V3.0 MINI USB ATmega328P CH340G 5V 16M mc-t, de nem tudom felprogramozni. Még egy blink program se megy fel rá.
BN: Ismeretlen alaplap
VID: 1A86
PID: 7523
SN: Tölts fel bármilyen vázlatot, hogy kinyerhesd
Van ötletetek?
Ezt illeszd be a boards.txt-be:
##############################################################
## --------------------------
nano. menu. cpu. atmega328- 57600. upload. maximum_size= 30720
nano. menu. cpu. atmega328- 57600. upload. maximum_data_size= 2048
nano. menu. cpu. atmega328- 57600. upload. speed= 57600
nano. menu. cpu. atmega328- 57600. bootloader. low_fuses= 0xFF
nano. menu. cpu. atmega328- 57600. bootloader. high_fuses= 0xDA
nano. menu. cpu. atmega328- 57600. bootloader. extended_fuses= 0xFD
Csak egy kósza ötlet: biztos van rajta bootloader? Én megpróbálnám elsőre azt rátölteni.
(Az újabbakon amit vettem, már alapból rajta volt a blink.)
Melyik programot kell használni hozzá?
Az enyémek ugyanezek (szintén kínából vettem egy „szatyorral” ), van rajta bootloader, próbáld ki amit írtam. A bootloader miatt nem tudod programozni, de nem kell cserélni, ha a feltöltésre elegendő az 57600-as sebesség. A hozzászólás módosítva: Máj 25, 2019
Nálam csak ennyi van, légyszi képen mutasd hogy hova kell tenni. Még sosem csináltam ilyet.
Persze.
Driver letölt a fenti,sárga fejlécből. Majd az old bootloadert használni. A hozzászólás módosítva: Máj 25, 2019
A driver fent van old bootloaderen se tudom programozni.
Nem tudom milyen rendszert használsz, nálam linuxon a következő helyen van:
~/.arduino15/packages/arduino/hardware/avr/1.6.209/boards.txt
Az arduino program verziója 1.8.7.
Használtam a googlet kicsit és találtam neked ezt: arduinoeditor
Windowsnál nem tudom, hogy hol vannak a beállítási fájlok, de a beállításokat ha megnyitod, alul kiírja, hogy merre keresgélj. Sima szövegszerkesztővel beilleszted, elmented, újraindítod az ide-t és benne lesz. Valami ilyesmi:
C:\Users\...\AppData\Arduino15\packages\arduino\hardware\avr\ A hozzászólás módosítva: Máj 25, 2019
Csak egy Ardunio-d van? Ha van másik is kéznél, akkor nézd meg azzal , hátha hibás a CH340 -es. A hozzászólás módosítva: Máj 25, 2019
Egy Arduino nem Arduino.
(#) |
JoeA hozzászólása |
Máj 25, 2019 |
|
/ |
|
|
Egy gyors kérdés:
Ha a CH340 tönkrement a panelen, van mód egyszerűen feltölteni egy programot?
ELőzmény:
Kicsit próbálkoztunk a zaza99 paneljével és a hibaüzenet: avrdude: verification error, first mismatch at byte 0x0002. A google több találatot adott, volt ahol bootloader hibát írtak és volt ahol hw hibát amikor a CH chip cseréjét javasolták. A zaza99 hiba.txt-jében lévő első avrdude hibajelentés nálam is jelentezett, akkor az általam javasolt 57600as sebességű boards.txt módosítás megoldotta a gondot, 5db nanoval próbáltam, mind megy. Az az utáni verification error számomra eddig ismeretlen volt és itt most megáll a tudomány egyenlőre, mert nincs másik panel amiről tovább lépnénk. Ha bootloader hiba lesz, akkor simán menthető, de ha csipet kell cserélni, akkor szerintem az ára miatt inkább valami fix helyre be kéne építeni ahol nem kell az usb.
ISP?
Forrasztások rendben vannak? Kinaiaknál elengedősek szoktak néha lenni.
Nem tudom, nem az enyém! Én csak teamvieweren át próbáltam segíteni zaza99-nek, a hardware-t nem láttam.
Usb-n keresztül próbáltuk.
|
|