Tartalomjegyzék:

Hack egy CFA735/CFA835: 4 lépés
Hack egy CFA735/CFA835: 4 lépés

Videó: Hack egy CFA735/CFA835: 4 lépés

Videó: Hack egy CFA735/CFA835: 4 lépés
Videó: اختراق موقع اجنبي بواسطة منظمة الشرس هكر -hacked by egy hack 2024, Július
Anonim
Hack egy CFA735/CFA835
Hack egy CFA735/CFA835

Van olyan projektje, amelyhez kijelzőre, billentyűzetre és némi memóriára van szüksége, de a Crystalfontz CFA735 vagy CFA835 modul előtelepített firmware -je nem az, amit keres? Szerencséje van - feltörheti ezeket a modulokat az egyéni firmware betöltéséhez.

A CFA735 és a CFA835 sokoldalú intelligens LCD modulok. Mind a Crystalfontz CFA735, mind a CFA835 a CFA10052 hardvermodulon alapul, ezért ebben az oktatóanyagban a CFA735 és/vagy CFA835 neve CFA10052 lesz. A CFA10052 átprogramozható, hogy saját egyedi firmware -t futtasson.

  • STMicroelectronics STM32F401 mikrovezérlő
  • ARM 32 bites Cortex ™ -M4 CPU @ 84 MHz
  • 256K Flash, 64K RAM
  • 244 x 68 képpontos háttérvilágítású LCD
  • Sitronix ST7529 32 szürkeárnyalatos grafikus LCD vezérlő
  • A Buck-boost kapcsoló tápegység széles tápfeszültség-tartományt tesz lehetővé
  • Külön kapcsoló LED fényerő -szabályozó billentyűzethez és LCD háttérvilágításhoz
  • 6 gombos háttérvilágítású billentyűzet
  • 4x kétszínű (piros/zöld) LED
  • USB2 interfész
  • microSD kártyahely
  • 5 általános célú IO csap (GPIO)
  • Több soros/SPI/I2C/CAN interfész (a GPIO használatától függően).

Ez az oktatóanyag megmutatja, hogyan lehet kicserélni a CFA10052 készüléken szállított firmware -t egy új firmware -re, amely:

  1. Változó rács megjelenítése az LCD -n, aktuális háttérvilágítással, LCD kontraszt és a billentyűzet állapotadatai;
  2. A billentyűzet segítségével szabályozhatja a háttérvilágítást és az LCD kontrasztot.
  3. Változtassa meg sorban a négy LED színét vörösről zöldre.
  4. Engedélyezze a USART soros portot az 1. fejléc 1. és 2. lábán (115200 baud), és visszhangozza a kapott adatokat.
  5. Engedélyezze az USB virtuális soros portot, és visszhangozza a kapott adatokat a gazdagéphez.
  6. Tartalmazza, de nem demonstrálja az uSD olvasási/írási fájlhozzáférést.

Természetesen megírhatja saját firmware -jét, és betöltheti ezeket a lépéseket.

FONTOS JEGYZET:

A Crystalfontz CFA10052 hardvermodul rendszerindítóval és CFA735/CFA835 firmware -rel programozva kerül szállításra. A rendszerbetöltő és a CFA735/CFA835 firmware nem nyílt forráskódú, a felhasználó nem másolhatja ki őket a CFA10052-ből, és a felhasználó sem programozhatja őket a CFA10052-re. Ha végül vissza szeretne térni a CFA735/CFA835 firmware -hez, vissza kell küldenie a Crystalfontz -hoz, hogy újraprogramozza.

Kellékek

  • Crystalfontz CFA10052 (hardver v1.1 vagy újabb) modul (CFA735 / CFA835)
  • PC (Windows/Linux/OSX), STM32CubeIDE és STM32 ST-LINK Utility telepítve
  • STMicroelectronics ST-LINK (V2 vagy V3) programozási felület
  • CFA10052 programozókábel (részletek alább)
  • Egyéni firmware (vagy használja a miénk itt)
  • Ha Windows 7/8/8.1/10 (vagy azzal egyenértékű szerververziót) használ, és szeretné tesztelni az USB virtuális soros portját, akkor innen kell letöltenie az illesztőprogramokat. Az USB soros port anélkül fog működni, hogy további illesztőprogramokra lenne szükség Windows 10+, Linux, OS-X rendszereken.

1. lépés: Kellékek összegyűjtése/létrehozása

Kellékek összegyűjtése/létrehozása
Kellékek összegyűjtése/létrehozása

Javasoljuk, hogy az STM32CubeIDE segítségével töltse be és használja ezt a példa firmware projektet. Az STM32CubeIDE egy ingyenes, Eclipse -en alapuló IDE, amelyet az STMicroelectronics úgy módosított, hogy magában foglalja az STM32 specifikus eszközöket. Az IDE letölthető az STM32CubeIDE weboldaláról.

Az STM eszközkonfigurációs eszköz megfelelő működésének fenntartásához csak az eszközkonfigurációs eszköz által létrehozott forráskódot kell szerkesztenie a megfelelő "USER CODE BEGIN xxx" és "USER CODE END xxx" megjegyzésblokkok között.

Ezután döntse el, hogy CFA10052 programozókábelért lépjen kapcsolatba velünk, vagy készítse el sajátját. Ebben az oktatóanyagban nem részletezzük a kábel elkészítését, de ha saját CFA10052 programozókábelt szeretne készíteni, akkor a csatlakozásokat a GitHub oldalon találja meg, ennek legjobb módja, ha egy tizenhat tűs szalagkábelt, és illessze össze az ST Link kábeléhez.

2. lépés: Törölje a meglévő firmware -t

Törölje a meglévő firmware -t
Törölje a meglévő firmware -t
Törölje a meglévő firmware -t
Törölje a meglévő firmware -t

Ha a CFA10052 modulja meg van töltve a mellékelt CFA735 vagy CFA835 firmware -rel, először törölnie kell a kilépő firmware -t, mielőtt új firmware -t telepítene. A flash memória olvasás- és írásvédett, és el kell távolítani az egyéni firmware betöltése előtt.

A telepített firmware eltávolítására két módszer létezik:

  1. Húzza ki az USB -kábelt (vagy tápegységet) a CFA10052 modulból.
  2. Csatlakoztassa a CFA10052-t az ST-LINK-hez a programozókábel segítségével (lásd fent), az ST-LINK-et pedig a gazdagéphez.
  3. Tartsa lenyomva a fel / le gombokat a CFA10052 készüléken, miközben az USB -kábelt a CFA10052 -hez (vagy tápegységhez) csatlakoztatja. A CFA10052 -nek most a Crystalfontz Bootloader képernyőt kell megjelenítenie.
  4. Futtassa az STM32 ST-LINK segédprogramot. A "Target" menüben nyissa meg az "Option Bytes" ablakot. A "Kiolvasási védelem" mezőben válassza a "0. szint" lehetőséget. Kattintson a Apply (Alkalmaz) gombra. A Crystalfontz firmware -t eltávolítottuk, és minden egyedi firmware programozható.

Alternatív módszer (ha nem tud belépni a Crystalfontz Bootloaderbe a billentyűk lenyomásával):

  1. Húzza ki az USB -kábelt (vagy tápegységet) a CFA10052 modulból.
  2. Csatlakoztassa a BOOT0 tesztpontot (egy kis párna a CFA10052 modul hátoldalán, a H1 csatlakozó közelében) 3,3 V vagy 5 V feszültséghez.
  3. Csatlakoztassa a CFA10052-t az ST-LINK-hez a programozókábel segítségével (lásd fent), az ST-LINK-et pedig a gazdagéphez.
  4. Kapcsolja be a CFA10052 készüléket (vagy csatlakoztassa az USB tápellátáshoz). A kijelzőnek üresnek kell lennie.
  5. Futtassa az STM32 ST-LINK segédprogramot. A "Target" menüben nyissa meg az "Option Bytes" ablakot. A "Read Out Protection" mezőben válassza a "Level 0" lehetőséget. Kattintson a Apply (Alkalmaz) gombra. A Crystalfontz firmware -t eltávolítottuk, és minden egyedi firmware programozható.
  6. Nincs szükség a BOOT0 érintkező 3.3V/5V -ra történő csatlakoztatására.

3. lépés: Fordítsa össze és töltse be a firmware -t a CFA10052 -be

Fordítsa össze és töltse be a firmware -t a CFA10052 -be
Fordítsa össze és töltse be a firmware -t a CFA10052 -be

Miután eltávolította a Crystalfontz által szállított firmware -t, készen áll a saját firmware fordítására és betöltésére. Ennek az oktatóanyagnak a céljaira néhány alternatív firmware -t szállítottunk, amelyek a billentyűzet segítségével szabályozhatják a háttérvilágítás fényerejét és a kijelző kontrasztját.

A firmware fordításához:

  1. Nyissa meg az STM32CubeIDE -t
  2. A Fájl menüben válassza az Importálás, majd a „Meglévő projektek importálása a munkaterületre” lehetőséget.
  3. A gyökérkönyvtár mezőben válassza ki a példa firmware könyvtárát.
  4. Kattintson a Befejezés gombra.
  5. A Project Explorerben válassza ki a cfa10052_example projektet, majd nyissa meg az Src és a "main.c" fájlt.
  6. A Projekt menüben válassza a "Projekt létrehozása" lehetőséget.

A firmware programozásához és futtatásához a CFA10052 készüléken:

  1. Húzza ki az USB -kábelt (vagy tápegységet) a CFA10052 modulból.
  2. Csatlakoztassa a CFA10052-t az ST-LINK-hez a programozókábel segítségével (lásd fent), az ST-LINK-et pedig a gazdagéphez.
  3. Csatlakoztassa az USB -kábelt (vagy tápegységet) a CFA10052 -hez.
  4. Győződjön meg arról, hogy a firmware -projekt elkészült (lásd a fenti lépéseket), és hogy a "Bináris fájlok" megjelenik a "Project Explorer" "cfa10052_example" alatt.
  5. Ha a "Bináris fájlok" nem látható, kattintson a jobb gombbal a "cfa10052_example" projektre, és válassza a Frissítés lehetőséget.
  6. Válassza a Futtatás menüt, majd a „Hibakeresési konfigurációk” lehetőséget.
  7. A bal oldali hibakeresési cél típusok kiválasztó mezőben kattintson a jobb gombbal az "STM32 Cortex-M Application" elemre, és válassza az "Új konfiguráció" lehetőséget.
  8. Megjelenik egy konfigurációs ablak. Az alapértelmezett beállítások rendben vannak. Kattintson az Alkalmaz, majd a Bezárás gombra.
  9. A Futtatás menüben válassza a "Hibakeresés másként", majd az "STM32 Cortex Application" lehetőséget. Az STM32CubeIDE most csatlakozzon az ST-LINK-hez, és töltse fel és futtassa a firmware-t a CFA10052 készüléken.

A fenti lépések csak a projekt első betöltésekor szükségesek az STM32CubeIDE rendszerben. A firmware forráskódjának módosítása után csak a projekt újratelepítése (Ctrl-B parancsikon) és a CFA10052 programozása (F11 billentyűparancs) szükséges.

A firmware bármely normál STM32 rendszerbetöltő módszerrel is betölthető (a hibakeresés csak az SWD interfész és az ST-LINK használatával érhető el). Például, ha soros kapcsolatot használ, akkor USART1 használható (RX = H1-Pin1 és TX = H1-Pin2). Az STM32 rendszerbetöltőről és az interfészekről részletesebb információkat itt talál.

4. lépés: Licencek

A Crystalfontz által szállított forráskódot a The Unlicense, egy licenc nélkül, minden feltétel nélkül adják meg, amely munkákat közkinccsé szentel. Az engedély nélküli művek, módosítások és nagyobb művek különböző feltételek mellett és forráskód nélkül terjeszthetők. Részletekért tekintse meg az UNLICENCE fájlt, vagy a unlicense.org webhelyet.

Az STM32CubeIDE által létrehozott forráskód és az STMicroelectronics könyvtárak szerzői jogi (c) 2019 STMicroelectronics. Minden jog fenntartva. A szoftverkomponenst az ST engedélyezte a BSD 3-záradékos licenc, a "Licenc" alapján; Ezeket a fájlokat csak a Licencnek megfelelően használhatja. A Licenc egy példányát az opensource.org/licenses/BSD-3-Clause címen szerezheti be.

Ajánlott: