- Huawei Mate X6 - keleti oldal, nyugati oldal
- Samsung Galaxy A56 - megbízható középszerűség
- Milyen okostelefont vegyek?
- Kicsomagolták a Vivo X Fold 5-öt (videó és fotók)
- Szerkesztett és makrofotók mobillal
- iPhone topik
- Honor 200 Pro - mobilportré
- Android alkalmazások - szoftver kibeszélő topik
- VoLTE/VoWiFi
- Samsung Galaxy A54 - türelemjáték
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
ecaddsell
aktív tag
válasz
fpeter84 #9637 üzenetére
"azt keresem hogy egy adott LCD-t mivel tudnék a létező leggyorsabban meghajtani"
HW referencia regiszterekkel:
https://www.espressif.com/sites/default/files/documentation/esp32_technical_reference_manual_en.pdfMivel az EP32 nem tartalmaz kijelzőt (a kijelzős board-ok is tipikusan valamilyen soros protokollal vannak hozzákötve tip. SPI) ezért soros protokol esetén HW SPI-t kell használni, vagy ha direktbe van a GPIO pinekhez kötve a kijelző akkor a pineket írva.
A direct GPIO-ra meg ezt a fórumbejegyzést találtam, szóval mennie kellene.
Most, hogy látom, így esetleg több pint is lehet írni (remélhetőleg tökéletesen egyszerre), lehet engem is fog érdekelni a dolog...
Viszont ha jól látom ennek a sebessége a HW SPI alatt van (valamiért), szóval a soros protokolhoz képest nem biztos, hogy akkora a nyereség.
Még 1 link:
GPIO.out_w1ts = (1 << TogglePin);
GPIO.out_w1tc = (1 << TogglePin); -
Janos250
őstag
válasz
fpeter84 #9637 üzenetére
Na, a gyanúm beigazolódni látszik:
gpio_reg.h file
#define GPIO_ENABLE_W1TC_REG (DR_REG_GPIO_BASE + 0x0028)A soc.h fájlban vannak a base címek:
#define DR_REG_GPIO_BASE 0x3ff44000Vagyis a GPIO_ENABLE_W1TC_REG a 0x3ff44028 egy CÍM.
Tehát:
*((volatile uint32_t *) (GPIO_ENABLE_W1TC_REG)) = .... ;
vagy:
*((volatile uint32_t *) (DR_REG_GPIO_BASE + 0x28)) = .... ;Próbáld ki!
Egyébként, ha már használtuk a rendszerben az adott perifériát, akkor a "mindenfélék" be vannak állítva, lehet közvetlenül írni, olvasni a regisztereket, minden faxni nélkül.
-
Janos250
őstag
válasz
fpeter84 #9637 üzenetére
Mégegyszer átfutva a kérdésed:
a GPIO_ENABLE_W1TC_REG gyanúm szerint egy adott regiszter CÍME. Általában úgy szokták az ilyesmit definiálni, hogy egy base + az offset. Próbáld kiíratni a GPIO_ENABLE_W1TC_REG-et, és megvan a címed, próbálj oda a számmal megadott címre írni, a követlen memória írásra szokásos módon. -
Janos250
őstag
válasz
fpeter84 #9637 üzenetére
Itt is megy a közvetlen regiszter írás. A dolog annyival macerásabb, hogy ugyanaz a regiszter több mindenre is használható, ezért van egy mátrix, amiben meg kell adni, hogy mire akarjuk használni. Egyes funkciók (pl. UART) "közvetlenül" (bypass) érik el a regisztereket, mások meg egy mátrixon keresztül. Pl. a közvetlen eléréshez ha nem jelöljük ki, órajelet sem kap az a hardver rész, ami az adott funkciót végzi, és a regisztereket sem tudjuk írni, illetve olvasásánaál fals értéket kapunk. Valamikor tavaly bütyköltem vele, akkor néztem, használtam. Ha jól emlékszem, a kulcsszavak GPIO matrix, és IO_MUX. Pontosan már nem emlékszem, valahova leírtam, de hirtelenjében nem találom, és a héten nagyon el vagyok havazva.
Egyébként ez a mátrixos dolog teszi lehetővé, hogy bármelyik GPIO-t bármelyik lábra teheted. -
Új hozzászólás Aktív témák
Hirdetés
- SZÜNETMENTES TÁPOK
- Telefon felvásárlás!! Samsung Galaxy A22/Samsung Galaxy A23/Samsung Galaxy A25/Samsung Galaxy A05s
- 2db Dell PowerEdge R740 2U Rack Szerver és 3db Netapp FAS2040 NAS
- Motorola G72 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB RAM RTX 5060 Ti 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest