Fórum témák

» Több friss téma
Fórum » Arduino
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   151 / 863
(#) misi93 válasza TavIR-AVR hozzászólására (») Szept 8, 2015 /
 
Ha a chipid kiolvasom akkor mitől leszek előrébb? vagy ez az, hogy milyen típusú IC vezérli a kijelzőt?
(#) Laca13 válasza Kera_Will hozzászólására (») Szept 9, 2015 /
 
Nem is olyan elvetemült az ötlet! ITT egy egész érdekes elképzelés.
(#) Kera_Will válasza Laca13 hozzászólására (») Szept 9, 2015 /
 
Hurrá ez már nem is off topic , Arduino is van benne !
A hozzászólás módosítva: Szept 9, 2015
(#) icserny hozzászólása Szept 9, 2015 /
 
Vannak olyan OpenWRT-képes routerek (például TP-Link WR-703N) amelyek USB host csatlakozóval is rendelkeznek, így egy Arduino kártya ugyanúgy csatlakoztatható és ugyanúgy kommunikálhat, mint egy PC-hez kötve. Természetesen a router olcsóbb és kevesebbet fogyaszt, mint egy PC.

Az MSP430 mikrovezérlők topikban mutattam egy hasonló megoldást. Egy FTDI chippel szerelt Arduino nano-val még egyszerűbb lett volna a dolgom.
A hozzászólás módosítva: Szept 9, 2015
(#) csabeszq válasza icserny hozzászólására (») Szept 9, 2015 /
 
Hát, az FTDI-vel egyszerű dolgod nem lesz. Vegyél CH340G-s Arduino nanot.
(#) icserny válasza csabeszq hozzászólására (») Szept 9, 2015 /
 
Nincs vele gondom. Az FTDI chip (FT232)talán a leginkább támogatott USB-UART protokol konverter. A PL-2303 és a CP2102 is eléggé támogatott.
(#) erdeidominik1999 hozzászólása Szept 11, 2015 /
 
Szaisztok! Az lenne a kérdésem, hogy egy ardinót tudok használni külső programozónak? Mert van egy olyan ardum, aminek rossz a programozó chipje, de maga az ardu működik rendesen, és akkor azt valahova be tudnám építeni, de nem szeretnék egy programozót venni egy alkalomért.
(#) tomat5 válasza erdeidominik1999 hozzászólására (») Szept 11, 2015 /
 
Szia!
Nekem így sikerült:
Bővebben: Link
(#) erdeidominik1999 válasza tomat5 hozzászólására (») Szept 11, 2015 /
 
Köszönöm, ki fogom próbálni!
(#) erdeidominik1999 hozzászólása Szept 11, 2015 /
 
Sziasztok! A múltkor volt róla szó, hogy az i2c nem jó 10-15 méter távolságra, valaki javasolta, hogy használjak oneWire-t, leszedtem a libet, de nem igazán értem a mintaprogiban lévő dolgokat: pl hol adom meg ez eszköz címét? Illetve a write-nál (cím,adat)-ként kell?
(#) david10 válasza erdeidominik1999 hozzászólására (») Szept 12, 2015 / 1
 
Szia,
Itt van egy példa arra, hogy hogyan lehet szenzorokat keresni vele: Link
OneWire-t még soha nem használtam, de remélem, hogy a link-el segítettem.
(#) Laca13 válasza icserny hozzászólására (») Szept 13, 2015 /
 
Találtam egy pont nekem kitalált rendszert, igaz hogy én nem látok benne arduinot. Nem tudom, hogy csak én vagyok figyelmetlen, de a mikrokontrollerről nem sok infót találtam, vagy a megadott infók már elegendőek a jártasabbaknak?
(#) Laca13 válasza Laca13 hozzászólására (») Szept 13, 2015 /
 
Ezt elszúrtam, a Link lemaradt.
(#) teglascs válasza Laca13 hozzászólására (») Szept 14, 2015 /
 
(#) cupika97 hozzászólása Szept 14, 2015 /
 
Sziasztok. Tudna nekem valaki segíteni? Kapucsengőt szeretném kicsit automatizálni. Nyomógomb megnyomására küldjön egy email az Arduino, mert a mobil mindig nálam van, és egyből jelez ha mail jött. Ha kicsit lassú is lenne - pár másodpercre gondolok- az sem baj. Aki akar valamit, az úgy is vár . Arduino UNO, és ethernet shield-em van.
A hozzászólás módosítva: Szept 14, 2015
(#) saua válasza cupika97 hozzászólására (») Szept 14, 2015 /
 
Szia,

Itt egy teljes leírás, a cikk második részét próbáltam, tökéletesen működik: email
Ezt a kódot használva az "e" betü begépelésekor küldi a mailt.
A hozzászólás módosítva: Szept 14, 2015
(#) Laca13 válasza teglascs hozzászólására (») Szept 14, 2015 /
 
Az odáig oké, én is találtam még 2500ft-ért is. Amiről én nem találtam konkrét infót az ez a 8 bites mikrokontroller rész.
(#) cupika97 válasza saua hozzászólására (») Szept 14, 2015 /
 
És még tunál segiteni hogy gombnyomásra működjön?
(#) saua válasza cupika97 hozzászólására (») Szept 14, 2015 /
 
keress egy olyan nyomógombos kódot ami a gomb megnyomásakor egyetlen impulzust ad (pergésmentesítés) például itt a 08kesleltetes kód.
(#) cupika97 válasza saua hozzászólására (») Szept 14, 2015 /
 
Addig eljutottam hogy beraktam eztet:
  1. const int buttonPin = 2;
  2. int buttonState;
(#) morfondi válasza cupika97 hozzászólására (») Szept 14, 2015 /
 
Bővebben: Link
A hozzászólás módosítva: Szept 14, 2015
(#) erdeidominik1999 válasza cupika97 hozzászólására (») Szept 14, 2015 / 1
 
Ez kell neked:
  1. int buttonPin=2;
  2. int last_buttonState=HIGH;
  3.  
  4. void setup(){
  5.  pinMode(buttonPin,INPUT_PULLUP);
  6. }
  7.  
  8. void loop(){
  9.  
  10. if(digitalRead(buttonPin)!=last_buttonState){  
  11. if(digitalRead(buttonPin)==LOW){
  12. //ide jön az email
  13.  
  14. }
  15. last_buttonState=LOW;
  16. }
  17.  
  18. }
(#) david10 hozzászólása Szept 15, 2015 /
 
Sziasztok,
Kaptam egy beltéri egységet, aminek a dobozzába egy RPi-t szeretnék beszerelni webszerverként.
Az előlapját is megszeretném vezérelni, amin HCT4094M-es Shift Registerek vannak.
Mivel még soha nem írtam programot Shift Registerhez, ezért az Arduino-val szeretném kezdeni.
Az előlapon van egy TSOP2138-as IR vevő.
A kérdesem: Ha az IR vevőnek a kimenetére véletlenségből 5V-ot kapcsolok a Shift Registeren keresztül, akkor megtud valamelyik alkatrész hibásodni?
A válaszokat előre is köszönöm!
(#) sanyi_n hozzászólása Szept 16, 2015 /
 
Sziasztok Fórumozók!

Első hozzászólás regisztráció után. Alapvetően C++ programozó vagyok és faragok egy kis hobbi projektet itthon. Elektronikában kezdőként próbálok egy LED kijelzőt összerakni amire 4 számot írok ki. Vettem egy leginkább noname (amúgy wayjun technologies által gyártott 12 lábas, 4 digites, 8 szegmens per digit kijelzőt). Kimértem a lábakat. Bedugtam egy arduino uno-ba két 74HC595-öt (sorban, egymás után, 6 parallel data out lábat használok mind a kettőn, egyik a LED alsó, másik a felső lábait hajtja), 220K ellenállásokat és mögé a kijelzőt.

A 12 lábból 4 mondja meg melyik digit-re megy az írás, ezeket szép lehet bitenként állítgatni.

Minden szép, minden jó, egy kivétellel. Bármilyen szegmenseket írok ki (számok, pont, stb) az megjelenik és jó helyen van. Egyszerre többet is ki lehet írni, ha ugyanaz a szám, azaz tudok pl. olyat írni, hogy 8888 és 5555 de olyat nem tud, hogy 0888 vagy 5556. Ha egymás után több szám kerül kiírásra (azt próbálgatom, hogy <üres><üres><üres>0 utána <üres><üres>1<üres> utána <üres>2<üres><üres>) akkor csak az utolsó 2-es látható, a 0 és az 1 eltűnik.

Eljutottam arra a pontra, hogy ötletem sincs. Arra tippelek, hogy valami alapvető hiba van a dologban és csak úgy tűnik, hogy majdnem működik...
Van arra valamilyen metódus, hogy a latch/clock/data pin-ek kapcsolgatásával ki több számot is ki tudjak írni? Valami varázslat, stb...

Lerajzoltam hogyan raktam össze dolgot, csatolom. A display egy négy digites (a rajzon 4 egydigites van, 4 digites beilleszthető képet nem találtam).

A kód ilyesmi (a teljes hosszabb és bonyolultabb, így jobban érthető talán mi a gondom).
A két egymás utáni shiftOut rakja össze a 12 lábra az adatot amit utána felülír (ezt szeretném ha inkrementális lenne, vagy akárhogy máshogy működne; 4 x 2 shiftOut esetén ugyanúgy csak az utolsó kettő byte-ból látszik az adat):
  1. const int CLOCK_PIN = 2;
  2. const int LATCH_PIN = 3;
  3. const int DATA_PIN = 4;
  4.  
  5. void setup() {
  6.   // Arduino portok
  7.   pinMode(CLOCK_PIN, OUTPUT);
  8.   pinMode(LATCH_PIN, OUTPUT);
  9.   pinMode(DATA_PIN, OUTPUT);
  10. }
  11.  
  12. void Show(int Digit1, int Digit2, int Digit3, int Digit4, int Num1, int Num2) {
  13.   if (Digit1 > 0) {
  14.    Num1 |= 0b00100000;
  15.   }
  16.   if (Digit2 > 0) {
  17.    Num1 |= 0b00000100;
  18.   }
  19.   if (Digit3 > 0) {
  20.    Num1 |= 0b00000010;
  21.   }
  22.   if (Digit4 > 0) {
  23.    Num2 |= 0b00000001;
  24.   }
  25.  
  26.   shiftOut(DATA_PIN, CLOCK_PIN, LSBFIRST, Num1);
  27.   delayMicroseconds(5);
  28.   shiftOut(DATA_PIN, CLOCK_PIN, LSBFIRST, Num2);
  29.   delayMicroseconds(5);
  30. }
  31.  
  32. void loop() {
  33.   // Ez a '8.'
  34.   int Out1 = 0b00011001;
  35.   int Out2 = 0b00111110;
  36.  
  37.   digitalWrite(LATCH_PIN, LOW);
  38.  
  39.   // LCD, 1 = nem látható, 0 = látható
  40.   Show(1, 1, 0, 0, Out1, Out2); // <üres> <üres> 8. 8.
  41.   Show(0, 1, 0, 1, Out1, Out2); // 8. <üres> 8. <üres>
  42. //// Azt szeretném ha 8. <üres> 8. 8. lenne, azaz előzőt
  43. //  Show(1, 1, 1, 1, Out1, Out2); // <üres> <üres> <üres> <üres>
  44.  
  45.   digitalWrite(LATCH_PIN, HIGH);
  46.  
  47.   delay(5000);
  48. }


Nem egyszerű, legalábbis nekem.

Tud valaki segíteni azzal, hogy elmondja mit csinálok rosszul és hogyan lenne jobb?

Köszönöm,
Sanyi
A hozzászólás módosítva: Szept 16, 2015
(#) Buvarruha válasza sanyi_n hozzászólására (») Szept 16, 2015 /
 
Ilyen esetben multiplex üzemmódban kell hajtani a kijelzőket. Első-második-harmadik-negyedik és minden esetben kapcsolni kell a közösített anódokat, vagy katódokat is (nem tudom milyen a kijelződ, vagy hogy kötötted be) megfelelő frekvencián, hogy ne villogjon.
(#) kaqkk válasza sanyi_n hozzászólására (») Szept 16, 2015 /
 
Minden digitnek kell egy 595 mert csak egy digitet tárol a következő beérkezése kitolja az előzőt , a közös lábakat meg egyszerűen tápra-vagy gnd re kötöd és ha jól emlékszem a clk jellel iratod ki a számot ha a proci kitolta ..
(#) csatti2 válasza sanyi_n hozzászólására (») Szept 16, 2015 /
 
A közös anódot, illetve katódot ne ellenálláson keresztül hajtsd meg (változni fog a fényerő, attól függően, hány szegmenst gyújtasz ki különben). Az IC helyett (az csak max 20mA-t tud) használhatsz pnp/npn (megint csak attól függ az anód vagy a katód a közös) tranzisztort erre a célra.

A meghajtás lényege az, hogy mindig csak egy digit katódját/anódját engedélyezzed, majd azt a számot írod ki a maradék lábakkal, ami oda való (javasolt digitváltás elött mindig kikapcsolni a szegmenseket, így elkerülhető a szellemkép). Nagyon gyorsan kell egymás után frissíteni így a digiteket és akkor simán összeáll az egész egy villogásmentes képpé elötted. A váltásokat javasolt egy időzítő megszakításban megvalósítani, akkor szépen állítható a gyakoriságuk és a főprogram futását sem zavarja.

Mellékeltem mintát egy régi projektemből.
A hozzászólás módosítva: Szept 16, 2015
(#) Spumifater hozzászólása Szept 16, 2015 /
 
Sziasztok!

Most ismerkedek egy Arduino Uno R3-mal. Próbálok minél több infót begyűjteni róla. Valahol azt olvastam (csak sajnos már nem emlékszem melyik oldalon), hogy az IOREF kivezetéssel szabályozható a digitális kimenetek jelszintje. Azaz nem 5V-aon dolgoznak, hanem 3.3 V-on. Csak a módját nem tudom. Valaki fel tudna homályosítani erről?

Válaszokat előre is köszönöm!
(#) csatti2 válasza Spumifater hozzászólására (») Szept 16, 2015 /
 
Rosszul olvastad. Vannak olyan speciális verziók, ahol kiválasztható a feszültségszint, de az általános verzió szigorúan csak 5V-os (UNO) és akkor sem ez a pin szolgál a kiválasztásra (ez a pin mindig kimenet!).
Az IOREF pin arra szolgál, hogy azok a shield-ek, amelyeknek számít (pl. a DUE az 3V3-as) a jelszint és tudják is kezelni a különböző feszültségszintet, megfelelően reagálhassanak rá.
(#) Spumifater válasza csatti2 hozzászólására (») Szept 16, 2015 /
 
Köszönöm a választ!

Igazából minél többet olvasok erről annál nagyobb a képzavar. De így már világos. Tulajdonképpen csak azért kértem infót mert szeretném összekötni egy SPI-buszos tft-vel. A képzavar miatt azt gondoltam, hogy azért nem sikerült feléleszteni a konfigurációt mert a jelszintek nem egyeznek. Most megkerestem a TFT adatlapját. Elméletileg 5V-3.3V-os.
Ezek szerint valamit nem jól csináltam. Majd egyszer rájövök hol a hiba.
Következő: »»   151 / 863
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem