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   469 / 838
(#) kobold99 válasza vargham hozzászólására (») Aug 10, 2018 /
 
Melyik bit lehet lezárni az arduinot kiolvasás védelemhez?
A hozzászólás módosítva: Aug 10, 2018
(#) vargham válasza kobold99 hozzászólására (») Aug 10, 2018 /
 
Arduino sokféle MCUval létezik. Olvasd el az adott eszköz adatlapját, le van benne írva.
(#) kobold99 válasza vargham hozzászólására (») Aug 10, 2018 /
 
328 érdekelne melyik lock bit az ami a kiolvasást blokkolja?
A hozzászólás módosítva: Aug 10, 2018
(#) sargarigo válasza kobold99 hozzászólására (») Aug 11, 2018 /
 
Ha jól értem, akkor a datasheet 347-348. oldala ezt taglalja.
(#) kobold99 válasza sargarigo hozzászólására (») Aug 11, 2018 /
 
Arduino ide alatt config fájlba hogy kell definiálni pl uno alatt?
Ahogy látom te érted is mert én nem azért kérdeztem meg !
Köszi!
A hozzászólás módosítva: Aug 11, 2018
(#) KoblogPerGyok válasza bujan hozzászólására (») Aug 11, 2018 /
 
Szép történet nem mondom...

Kicsit ráfaragtál ezzel. Van a környezetedben valaki akinek van működőképes UNO-ja? (és kockázat vállaló hangulatban van?)

Mert ha igen akkor:

https://www.youtube.com/watch?v=HHF45zhe_9U

A vége felé van az érdekes rész. Gondolom egy az egyben bepakol mindent a működőképes gépről a boot loader nélkülire. mint annak idején az xcopy…
(#) vargham válasza KoblogPerGyok hozzászólására (») Aug 11, 2018 /
 
Mégegyszer kérdezem: Fuse bitek rendben vannak?

Amúgy meg segítek szívesen, ezt is írtam már.
(#) KoblogPerGyok válasza vargham hozzászólására (») Aug 11, 2018 /
 
Nem tudom, nem látok át a neten keresztül, de megpróbálhatom meghekkelni. Kicsi az esély, de talán sikerül.

Azért írtam neki ezt, mert ha nem nagyon megy a fuse bitek piszkálgatása, akkor gyalu és egy működőről klónozással mindent. Ez olyan, mikor kis Windows hiba esetén inkább ujrarakjuk az egész rendszert, de néha beválik.


De lehet nem így működik az egész.
A hozzászólás módosítva: Aug 11, 2018
(#) RoliNyh válasza KoblogPerGyok hozzászólására (») Aug 11, 2018 / 1
 
Az "ablak" rendszer újra rakása mindig beválik...
(#) sargarigo válasza kobold99 hozzászólására (») Aug 11, 2018 /
 
Spoiler: Nem vagyok szakértője.

Nem vagyok biztos benne hogy létezik ilyen opció arduino alatt. Kicsit félrevezető, hogy arduino-nak hívják a vasat is, meg az IDE-t is. Előbbin foglal helyet egy atmel328p vezérlő, amit mondjuk úgy nyers módban lehet égetni, meg fuse biteket piszkálni, meg ilyesmi.

Utóbbi viszont a keretrendszer, ami tartalmazza a bootloadert, és a rengeteg csillivilli könyvtárat. Nem tudom mennyire értesz hozzá, nem akarlak alázni azzal hogy esetleg alap dolgokat magyarázok, bocsánat is érte.

Lényeg, hogy ha magát a vezérlőt mondjuk avrdude-val piszkálod (ez tudja például a fuse biteket kapcsolgatni [vagy avrstudio, stb]), akkor lehet hogy nem fog többé arduino-ként működni. Természetesen visszaállítható a dolog, de ez már tudást is igényel. Kiszedheted a bootloadert is, és helyet takarítasz meg vele, egyúttal dobod az arduino keretrendszert is, használod sima avr-ként.

Szerintem ha nem vagy biztos ebben a dologban, akkor inkább tedd egy dobozba, és öntsd ki műgyantával. Jobb mint a fuse bitek. 100%-ban nem véd, de 99%-ra jó lesz.
A hozzászólás módosítva: Aug 11, 2018
(#) dudzsi hozzászólása Aug 12, 2018 /
 
Sziasztok!
Lenne egy amatőr kérdésem. Hol kell itt értéket adni a H, M, S-nek. Mert ha a loop-ba irok értéket azt nem veszi fel. Köszi
(#) kapu48 válasza dudzsi hozzászólására (») Aug 12, 2018 /
 
  1. void setup() {
  2.   Serial.begin(9600);
  3. lcd.begin(16, 2);
  4.  
  5. // Set up count down timer with 10s and call method onComplete() when timer is complete.
  6.     // 00h:00m:10s
  7.   H = 1;  // <<<<
  8.   M = 2;
  9.   S = 3;    
  10.   timer.setCounter(H, M, S, timer.COUNT_DOWN, onComplete);
  11.  
  12.     // Print current time every 1s on serial port by calling method refreshClock().
  13.     timer.setInterval(refreshClock, 1000);
  14.    
  15. }
(#) dudzsi válasza kapu48 hozzászólására (») Aug 12, 2018 /
 
Ezt tudom. De én változtatni szeretném az értékeket gombokkal. Itt még nincs benne az a rész. Ha a loop álá berakok új értékeket akkor azok nem érnek semmit.
(#) kapu48 válasza kapu48 hozzászólására (») Aug 12, 2018 / 1
 
Irsz egy rutint és meghívod mikor kel, a megfelelő értékekkel pl.:
  1. #include "Countimer.h"
  2. #include <LiquidCrystal_I2C.h>
  3.  
  4. Countimer timer;
  5. int H = 0;
  6. int M = 0;
  7. int S = 0;
  8.  
  9.  
  10. LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);
  11.  
  12. void setup() {
  13.   Serial.begin(9600);
  14. lcd.begin(16, 2);
  15.  
  16. // Set up count down timer with 10s and call method onComplete() when timer is complete.
  17.     // 00h:00m:10s
  18.   H = 1;
  19.   M = 2;
  20.   S = 3;    
  21.   timer.setCounter(H, M, S, timer.COUNT_DOWN, onComplete);
  22.  
  23.     // Print current time every 1s on serial port by calling method refreshClock().
  24.     timer.setInterval(refreshClock, 1000);
  25.    
  26. }
  27.  
  28. }
  29. void refreshClock() {
  30.   Serial.print("Current count time is: ");
  31.     Serial.println(timer.getCurrentTime());
  32.    
  33. }
  34.  
  35. void onComplete() {
  36.   Serial.println("Complete!!!");
  37.   lcd.clear();
  38.  
  39.   lcd.setCursor(0, 1);
  40. lcd.print("Complete!!!");
  41.  delay(1000);
  42.  lcd.clear();
  43.  
  44. }
  45.  
  46. void setTimer(int h, int m, int s) {
  47.    timer.setCounter(h, m, s, timer.COUNT_DOWN, onComplete);
  48.  
  49.     // Print current time every 1s on serial port by calling method refreshClock().
  50.     timer.setInterval(refreshClock, 1000);
  51. }
  52.  
  53. void loop() {
  54.    // Run timer
  55.  
  56.  timer.run();
  57.  lcd.setCursor(0, 1);
  58.   lcd.print(timer.getCurrentTime());
  59.    
  60.    if(!timer.isCounterCompleted()) {
  61.       timer.start();
  62.     }
  63.  
  64.    setTimer(0, 0, 10);    
  65. }
(#) dudzsi válasza kapu48 hozzászólására (») Aug 12, 2018 /
 
Köszi igy már megy. Probáltam ezt is csak kimaradtak belöle dolgok.
(#) kobold99 válasza sargarigo hozzászólására (») Aug 12, 2018 /
 
köszi!
(#) berkesandor hozzászólása Aug 22, 2018 /
 
Megépítettem ezt a projektet:
Bővebben: Link Bővebben: Link .
Nagyon jól működik, egyetlen szépséghibája van, a rotary encoder fordítva működik.
Ez ugyan csak apróság, de ha lehet softveresen javítanám a hibát.
Hogyan tudom megfordítani?
D2 D4 pin deklatációját megfordítottam, de akkor nem is működik.
Vagy csak a nyák faragásával tudom megoldani ? (ezt nem hinnén).
A hozzászólás módosítva: Aug 22, 2018
(#) kapu48 válasza berkesandor hozzászólására (») Aug 22, 2018 / 1
 
Próbáld meg felcserélni a műveleteket a jelzett sorban:
  1. void ENCODER::cnangeINTR(void) {                // Interrupt function, called when the channel A of encoder changed
  2.  
  3.   bool rUp = digitalRead(mPIN);
  4.   unsigned long now_t = millis();
  5.   if (!rUp) {                                   // The channel A has been "pressed"
  6.     if ((pt == 0) || (now_t - pt > overPress)) {
  7.       pt = now_t;
  8.       channelB = digitalRead(sPIN);
  9.     }
  10.   } else {
  11.     if (pt > 0) {
  12.       byte inc = increment;
  13.       if ((now_t - pt) < overPress) {
  14.         if ((now_t - changed) < fast_timeout) inc = fast_increment;
  15.         changed = now_t;
  16.         //if (channelB) pos -= inc; else pos += inc;
  17.         if (channelB) pos += inc; else pos -= inc;    //<<<<<<<<<<<<<<<<<<<<<<<<<
  18.         if (pos > max_pos) {
  19.           if (is_looped)
  20.             pos = min_pos;
  21.           else
  22.             pos = max_pos;
  23.         }
  24.         if (pos < min_pos) {
  25.           if (is_looped)
  26.             pos = max_pos;
  27.           else
  28.             pos = min_pos;
  29.         }
  30.       }
  31.       pt = 0;
  32.     }
  33.   }
  34. }
A hozzászólás módosítva: Aug 22, 2018
(#) berkesandor válasza kapu48 hozzászólására (») Aug 22, 2018 /
 
Köszönöm szépen, ennyi volt a helyes megfejtés (amire nyilván nem jöttem rá).

(Van + nyákom, ha érdekel utok küldeni)
Még egyszer köszönöm.
(#) kapu48 válasza berkesandor hozzászólására (») Aug 22, 2018 /
 
Örülök, hogy segíthettem!

Köszönöm, nem érdekel a nyák.
(#) Kovidivi válasza berkesandor hozzászólására (») Aug 22, 2018 /
 
Ha megfordítottad volna a rotary-ra menő két szélső vezetéket, szerintem akkor is megfordult volna a tekerési irány.
(#) tbarath válasza berkesandor hozzászólására (») Aug 22, 2018 /
 
Ha van fölösleges nyákod akkor én szeretnék egyet kérni.

Kösz,
Tamás
(#) berkesandor válasza Kovidivi hozzászólására (») Aug 22, 2018 /
 
Nyákon van a rotary, nem olyan egyszerű.
(#) berkesandor válasza tbarath hozzászólására (») Aug 22, 2018 /
 
PM
(#) proba válasza berkesandor hozzászólására (») Aug 22, 2018 /
 
Egy autós szimulátor építő emberkénél találkoztam olyan megoldással, a vezérlő pont fordítva működött mint kellett volna. Megoldás: a képernyőt tükörből nézve használta.
(#) sargarigo válasza proba hozzászólására (») Aug 22, 2018 /
 
Jajj
(#) Kovidivi válasza berkesandor hozzászólására (») Aug 22, 2018 /
 
Elkaparod a két vezetősávot és kis vezetékkel átkötöd a megfelelő helyre. De ha a programot átírtad, akkor ez a tipp csak a későbbiekre szól, ha ugyanilyen problémád lenne.
(#) berkesandor válasza Kovidivi hozzászólására (») Aug 23, 2018 /
 
  1. // Rotary encoder interface
  2. const byte R_MAIN_PIN = 2;                      // Rotary Encoder main pin (right)
  3. const byte R_SECD_PIN = 4;                      // Rotary Encoder second pin (left)
  4. const byte R_BUTN_PIN = 3;                      // Rotary Encoder push button pin


Itt megcseréltem, de nem működött. Ugyanaz mint a vezetősáv csere?
(#) vargham válasza berkesandor hozzászólására (») Aug 23, 2018 /
 
Idézet:
„Itt megcseréltem, de nem működött. Ugyanaz mint a vezetősáv csere?”

Nem. A main pin mindenképpen a kettesen legyen. Az encoder feldolgozásához ugyanis külső megszakítást használ, ami fixen azon a pinen érhető el.
Tehát vagy a kódot írod át fordított működésre, vagy az enkóder kivetezéseit kötöd fordítva.
(#) Akashi hozzászólása Aug 24, 2018 /
 
Sziasztok.

Beléptem az Arduinósok táborába, gondoltam ilyen "öreg" fejjel nem árt ha tanulgatom, ismerkedek a mikro kontroller világgal is.
Az első lépéseken túl vagyok, összeállítottam egy blinky-t, és egy hőmérő-páratartalom mérőt lcd kijelzővel.

Azt szeretném kérdezni tőletek, hogy magát a chipet le tudom klónozni?
Van egy DIP-es UNO-m, és van egy tartalék ATMEGA328P-PU chipem.
Teljesen kezdő vagyok, csak két napja van meg az Arduinóm.
Következő: »»   469 / 838
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.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