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   274 / 864
(#) kapu48 válasza sany hozzászólására (») Okt 9, 2016 /
 
Azért villog, mert 19*8 ábrának definiáltál tömböt, de abból csak az 0-ást töltötted fel értékekkel!
  1. unsigned char i;
  2. unsigned char j;
  3.  
  4. int Max7219_pinCLK = 10;
  5. int Max7219_pinCS = 9;
  6. int Max7219_pinDIN = 8;
  7.  
  8. /*
  9.  Azért villog, mert 19*8 ábrának definiáltál tömböt, de abból csak az 0-ást töltötted fel értékekkel!
  10. unsigned char disp1[19][8]={0x0c,0x1e,0x3e,0x7c,0x7c,0x3e,0x1e,0x0c};  // folytatni kellene
  11. // Animálhatod a szívet.
  12. // Vagy töltsd fel mind a 19-et valami értékkel:
  13.  */
  14.  unsigned char disp1[19][8] = {{0x0c,0x1e,0x3e,0x7c,0x7c,0x3e,0x1e,0x0c},
  15.                                {0x0c,0x1e,0x3e,0x7c,0x7c,0x3e,0x1e,0x0c},
  16.                                {0x0c,0x1e,0x3e,0x7c,0x7c,0x3e,0x1e,0x0c},
  17.                                {0x0c,0x1e,0x3e,0x7c,0x7c,0x3e,0x1e,0x0c}
  18.                                 //….
  19.                               };
  20.  
  21.  
  22. void Write_Max7219_byte(unsigned char DATA)
  23. {  
  24.   unsigned char i;
  25.   digitalWrite(Max7219_pinCS,LOW);  
  26.   for(i=8;i>=1;i--)
  27.   {    
  28.     digitalWrite(Max7219_pinCLK,LOW);
  29.     digitalWrite(Max7219_pinDIN,DATA&0x80);
  30.     DATA = DATA<<1;
  31.     digitalWrite(Max7219_pinCLK,HIGH);
  32.   }                                
  33. }
  34.  
  35. void Write_Max7219(unsigned char address,unsigned char dat)
  36. {
  37.   digitalWrite(Max7219_pinCS,LOW);
  38.   Write_Max7219_byte(address);          
  39.   Write_Max7219_byte(dat);              
  40.   digitalWrite(Max7219_pinCS,HIGH);
  41. }
  42.  
  43. void Init_MAX7219(void)
  44. {
  45.   Write_Max7219(0x09, 0x00);      
  46.   Write_Max7219(0x0a, 0x03);      
  47.   Write_Max7219(0x0b, 0x07);      
  48.   Write_Max7219(0x0c, 0x01);      
  49.   Write_Max7219(0x0f, 0x00);      
  50. }
  51.  
  52. void setup()
  53. {
  54.  
  55.   pinMode(Max7219_pinCLK,OUTPUT);
  56.   pinMode(Max7219_pinCS,OUTPUT);
  57.   pinMode(Max7219_pinDIN,OUTPUT);
  58.   delay(50);
  59.   Init_MAX7219();
  60. }
  61. /*
  62. void loop()  
  63. {
  64.    // Igy sorban megjeleniti a 19 ábrádat.
  65.   for(j=0;j<19;j++)
  66.   {
  67.     for(i=1;i<9;i++){
  68.       Write_Max7219(i,disp1[j][i-1]);
  69.     }
  70.     delay(500);
  71.   }  
  72. }
  73. */
  74. void loop()  
  75. {
  76.    
  77.     for(i=1;i<9;i++){   // Vagy Igy csak az 0-ás ábrát.
  78.       Write_Max7219(i,disp1[0][i-1]);
  79.     }
  80.     delay(500);
  81.      
  82. }


Azt a lehetőséget választod amelyik neked jobb!
A hozzászólás módosítva: Okt 9, 2016
(#) wifi196 hozzászólása Okt 9, 2016 /
 
Sziasztok!
Adott egy Arduino Uno vezérlő és egy rotary encoder, nyomógombos verziós. Midi rendszerben szeretném használni, akár mint egy potméter akár kihasználva a 360 fok előnyeit. Találtam már sok féle megoldást, de sajnos egyik se működött a midit kezelő szoftveremmel.
Ezen az oldalon található példa áll talán a legközelebb amit szeretnék kihozni ebből az egészből. Viszont nem tudom feltölteni valamiért az Unomra, mert sehogy se találja a hozzárendelt fájl-t pedig sok féle képpen próbáltam már hozzárendelni.
Tudnátok nekem ebben segíteni, vagy hogy hogyan tudnám megvalósítani az elképzelésem?
Köszönöm!
(#) sany válasza kapu48 hozzászólására (») Okt 9, 2016 /
 
Köszi. Most már világos.
A hozzászólás módosítva: Okt 9, 2016
(#) sany válasza kapu48 hozzászólására (») Okt 9, 2016 /
 
Még az lenne a kérdésem, hogy a következő kódrészlet nem befolyásolja magának a karakternek e megjelenését illetve idejét?

  1. void Init_MAX7219(void)
  2. {
  3.   Write_Max7219(0x09, 0x00);    
  4.   Write_Max7219(0x0a, 0x03);    
  5.   Write_Max7219(0x0b, 0x07);      
  6.   Write_Max7219(0x0c, 0x01);    
  7.   Write_Max7219(0x0f, 0x00);    
  8. }


Tudom, hogy ezek a címek a MAX7219 katalógusából kiolvashatóak.
(#) atus1981 hozzászólása Okt 9, 2016 /
 
Sziasztok!
Készítettem nyomtatott áramkört egy atmega328(rajta az arduino bootloader) köré, rajta minden szükséges alkatrész( kvarc, 22p-22p, ardu13-as láb kivezetve, ftdi usb-s programozónak lábak, stb). Kérdésem, hogy a feltöltésnél melyik opciót kell választanom? Mivel nem UNO, meg nem is NANO.
Köszönöm a választ.
(#) icserny válasza atus1981 hozzászólására (») Okt 9, 2016 /
 
Arduino nano szerintem jó választás.
Az FTDI USB-UART átalakító DTR lába és az Arduino RESET lába közé kötöttél kondenzátort (100nF)? Ha nem, akkor letöltéskor neked kell RESET-elni a mikrovezérlőt.
(#) atus1981 válasza icserny hozzászólására (») Okt 9, 2016 /
 
Ha UNO-t választom, akkor a program felöltődik, de nem indul el az atmega. Ha resetelem vagy elveszem a tápot, akkor az új programmal indul a proci, hiba nélkül.
Természetesen van kondi és felhúzó ellenállás is, tehát automata a programozás ebből a szempontból.
(#) world-s válasza icserny hozzászólására (») Okt 9, 2016 /
 
Sziasztok!
A péntek éjszakám pár demo összeollózáslába telt (nincs potimalizálva), hogy tudjak demozni egy kiállításon.
Sajna meg is mutatkozott a nano hátránya. A 128x64-es kijelző kezelésén kívül nem nagyon kell mit beletenni. a 2K sram nagyon kevés ha 1k a buffer (adafruit).
Egy másik Lib-et használva lehetett megoldani, hogy valamit működjön, de az meg így nagyon lassú.

Van valami köztes megoldás, mert így, hogy 75% a kijelző SRAM igénye így esélytelen.
Van ilyen hogy EEPROM bővítés. SRAM-ra nincs ilyen lehetőség amit pl. a bufferre fel lehetne használni?

A demo itt, hogy látszódjon mi a gond: DEMO1
(#) pjg válasza wifi196 hozzászólására (») Okt 9, 2016 /
 
Szerezz be egy encoder.h fájlt.
(#) vizor válasza world-s hozzászólására (») Okt 9, 2016 /
 
Az 1Kb úgy jön ki, hogy 1bit=1 pixel, mivel mono a kijelző, így (128x64)/8=1024byte. Pont ezért van benne ekkora, hogy ne legyen lassú. Összerakja a képet a bufferbe, majd tolja kifele a portokra egyszerre. A méretet fordításkor állítja be, ha nagyobb lenne a kijelző még nagyobb lenne a buffer. EEPROM-ban még lassabb lenne és pár óra alatt el is "kopna" az írástól.
(#) atus1981 válasza icserny hozzászólására (») Okt 9, 2016 /
 
Ha a NANO-t választom, akkor nem tölti fel a programot.
(#) pjg válasza wifi196 hozzászólására (») Okt 9, 2016 /
 
The code uses the encoder library, which is included with the Teensyduino install.
(#) pjg válasza wifi196 hozzászólására (») Okt 9, 2016 /
 
(#) world-s válasza vizor hozzászólására (») Okt 9, 2016 /
 
Köszi.
Az EEPROM tudom erre nem jó.
Azért kérdeztem, hogy Más valami felejtő memória nincs -e erre...
(#) vizor válasza world-s hozzászólására (») Okt 9, 2016 /
 
SPI memóriák vannak, az Arduino.cc-n írnak is róla, csak nem tudom elég gyors lenne-e.
(#) world-s válasza vizor hozzászólására (») Okt 9, 2016 /
 
Köszi.
Utána járok, hogy van -e infó a kettő házasításáról...

STM32F103-höz tud valaki olyan drivert, ami alapján hajlani is a Win felismeri?
A hozzászólás módosítva: Okt 9, 2016
(#) kapu48 válasza world-s hozzászólására (») Okt 9, 2016 /
 
Az STM32F103-ban nincsen USB-t használó botloader!
Gyártás során kerül bele botloader, amihez ST-LINK néven árulnak programozót.

Van eredeti gyári jó drága, viszont van rajta JTAG-is ezért gyorsabb!
És van Ebay-es olcsón, de csak soros programozást tud .
A hozzászólás módosítva: Okt 9, 2016
(#) world-s válasza kapu48 hozzászólására (») Okt 9, 2016 /
 
Kicsit részletezné, mert nem teljesen tiszta.

Erről van szó: STM32F103-MS
Az USB akkor mire ró rajta?
A pro mini miatt egy ilyenem van: FTDI232
(#) RoliNyh válasza world-s hozzászólására (») Okt 9, 2016 /
 
Itt azt írja a tulajdonságokban (ha erről van szó), tápfeszültség és kommunikáció, ha lehet hinni neki...

STM32F103-MS...
(#) world-s válasza RoliNyh hozzászólására (») Okt 10, 2016 /
 
Én is így gondoltam.

Amúgy ESP8266-tot használt már valaki Arduino keretrendszer alatt?
Örültem, hogy itt mennyivel több memória van a nanohoz képet, de nem.
Maga a fordított program is nagyságrendileg nagyobb.
Adafruit 128x64-es demo:
  1. Sketch uses 242 701 bytes (23%) of program storage space. Maximum is 1 044 464 bytes.
  2. Global variables use 33 132 bytes (40%) of dynamic memory, leaving 48 788 bytes for local variables. Maximum is 81 920 bytes.


Remélem van valamit rosszul állítok be.
(#) kapu48 válasza world-s hozzászólására (») Okt 10, 2016 /
 
A részletezést inkább kihagynám!

Inkább itt 1 link:
Bővebben: Icserny Link
(#) world-s válasza kapu48 hozzászólására (») Okt 10, 2016 /
 
Köszi.
De az én kártyámon gyárilag van USB.
Akkor is nem azon keresztül kell feltölteni a programokat?
Akkor az mire vagy?

Ha most hülyeséget kérdeztem, akkor előre is bocsi.
(#) kapu48 válasza world-s hozzászólására (») Okt 10, 2016 /
 
Nem unod már sokadszor feltenni ugyanazt a kérdést?

Ott a link és olvasd végig az oldalt, és a benne található további oldalakat is!
Mert ez nem 1 hetes szenvedés lesz!
(#) world-s válasza kapu48 hozzászólására (») Okt 10, 2016 /
 
Kösz.
Bocs, hagyjuk.

Dobom a kukába.
Hiába olvastam el, nem értettem hogy pontosan hogy van ennyi.
Most egy sejtésem van, hogy FW-kell rátenni talán így, de hogy utána hasonlóan használhatom mint az arduinot vagy sem, azt nem vili.

Bocs.
A hozzászólás módosítva: Okt 10, 2016
(#) icserny válasza world-s hozzászólására (») Okt 10, 2016 /
 
Itt és emitt megírtam, hogy mit kell csinálni.
Igen, firmware-t kell rátenni (legalább egy USB-UART átalakító kell hozzá, vagy egy ST-link programozó - utángyártott is lehet).
Igen, utána Arduino-hoz hasonlóan használható. Természetesen az Arduinohoz készült könyvtárak nem mindegyike fog automatikusan működni vele, mivel hardverileg más.
A hozzászólás módosítva: Okt 10, 2016
(#) mateatek válasza world-s hozzászólására (») Okt 10, 2016 /
 
Nem értem, hogy miért kell használni ebben az esetben olyan kijelzőt, ami lezabálja az erőforrásaidat.
A demovieón látottak alapján megfelelhetne egy ilyen kijelző is. Bele is férne, működne is, és az erőforrás is megmaradna.
(#) world-s válasza mateatek hozzászólására (») Okt 10, 2016 /
 
Köszi.
Ez hasznos infó amúgy.

Nem tudom fejből, de méretileg még lehet be is férne.
(ebből csak nagyobbat láttam eddig.)
A sajátomnál is a kijelzőt a panelről le kellett választani, mert belógott volna a vetni elé.

Viszont elég közel van, és elég sötét is van odabent.
Ezért a kavarcos megoldást alapban ki is húztam, mert valószínű nem látnám, mert úgy kell kicsit majdnem bebandzsítani az olvasáshoz.
Először LED-es kijelzőt alaktartam, de csak 9 szegmensest találtam, amin kicsit nehézkes lenne minden kommunikáció, mert csak pár betűt lehet valahogy számkijelzővel ábrázolni.

Mivel volt egy ilyenem, és az oled alapban világít, és így olvasható volt, ezért raktam be ezt.

Legvégső esetben közben jött egy 128x32-es verzió is. Ez kevesebbet enne gondolom, de jó lenne nem kéne azt a részt újra építeni ha van megoldás.

Gondolom a buffer addig kell, míg kiszámolja az egy képernyőnyit, aztán a következő változásig nem is szükséges. De pont azért keresek alternatívát, hogy lehet a vezérlő, vagy vezérlők cseréjével is lehet játszani.
(#) JZoli hozzászólása Okt 10, 2016 /
 
Köszönöm mindenkinek a sok segítséget, így most már legalább az egyszerű dolgok felé el tudok indulni! Remélem sikerül valamit összehozni ezzel az Arduinoval. Viszont én is csatolnék egy linket amit egy másik fórumon kaptam, nekem nagyon tetszik, és ez is az alapokról indul:Hobbirobot
A hozzászólás módosítva: Okt 10, 2016
(#) devergo74 hozzászólása Okt 10, 2016 /
 
A fórumot olvasva, nem egyértelmű számomra, hogy melyik a jobb csatlakozású arduino panel. Ezalatt a normál, mini usb-s variációkra értem. Van aki a normál, van aki a minit favorizálja. Az hogy milyen csatlakozóval van felszerelve az arduino panel, nem mindegy?
Tudom, volt aki írta, a mini usb-s nem olyan stabil, de csak ennyi lenne a kettő között a különbség?
(#) vizor válasza world-s hozzászólására (») Okt 10, 2016 /
 
Még mindig nem érted a buffer lényegét. Azt nem lehet csak úgy megszüntetni/létrehozni, mert akkor elvész a lényege. Másodpercenként nagyon sokszor van rá szükség, ha megszünteted és létrehozod, nagyon kevés időd marad a helyét használni és a kijelzés ugyanúgy lassú lesz. 128x32-es képernyőnél 512 byte a buffer (128x32)/8, más különbség nincs. Annyi, hogy ilyenkor bele kell nyúlni az Adafruit-ba és átállítani a méretet amik #define formában vannak. A másik vezérlőnél meg el tudom képzelni, hogy nem 1 biten tárolt egy pixelt hanem 1 byte-on és akkor 8192 byte volt a buffer.

Amúgy van 16 szegmenses LED kijelző is, azon már minden betűt meg lehet jeleníteni normálisan. Hestore-ban alfanumerikus néven vannak.
Következő: »»   274 / 864
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