Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Kolektahin / Lumikha ng Mga Pantustos
- Hakbang 2: Burahin ang Umiiral na Firmware
- Hakbang 3: Ipunin at I-load ang Iyong Firmware Sa CFA10052
- Hakbang 4: Mga Lisensya
Video: Mag-hack ng CFA735 / CFA835: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Mayroon ka bang isang proyekto na nangangailangan ng isang display, isang key pad, at ilang memorya, ngunit ang naunang preloaded firmware sa CrystalFontz CFA735 o CFA835 module ay hindi masyadong kung ano ang iyong hinahanap? Swerte ka - maaari mong i-hack ang mga modyul na ito upang mai-load ang pasadyang firmware.
Ang CFA735 at CFA835 ay maraming nalalaman matalinong mga module ng LCD. Parehong batay sa module ng hardware ng CFA10052 ang Crystalshez CFA735 at CFA835, kaya habang sa tutorial na ito ang CFA735 at / o CFA835 ay tinukoy bilang CFA10052. Ang CFA10052 ay maaaring muling ma-program upang patakbuhin ang iyong sariling pasadyang firmware.
- STMicroelectronics STM32F401 microcontroller
- ARM 32-bit Cortex ™ -M4 CPU @ 84 MHz
- 256K Flash, 64K RAM
- 244 x 68 pixel backlit LCD
- Sitronix ST7529 32 grayscale graphic LCD controller
- Pinapayagan ng suplay ng paglipat ng Buck-boost na malawak na saklaw ng boltahe ng suplay
- Paghiwalayin ang paglipat ng LED Controller ng ilaw para sa keypad at LCD backlight
- 6 na button na backlit keypad
- 4x bi-kulay (pula / berde) LEDs
- Interface ng USB2
- slot ng microSD card
- 5 pangkalahatang layunin IO pin (GPIO)
- Maramihang mga serial / SPI / I2C / CAN interface (depende sa paggamit ng GPIO).
Ipapakita sa iyo ng tutorial na ito kung paano palitan ang firmware na nagpapadala sa isang CFA10052 ng bagong firmware na:
- Ipakita sa LCD ang isang alternating grid, na may kasalukuyang mga backlight, LCD kaibahan at impormasyon sa katayuan ng keypad;
- Kontrolin ang mga backlight at LCD na kaibahan gamit ang keypad.
- Baguhin ang kulay ng apat na LEDs mula pula hanggang berde nang magkakasunod.
- Paganahin ang serial port ng USART sa Header-1 pin 1 & 2 (115200 baud), at i-echo ang anumang natanggap na data.
- Paganahin ang USB virtual serial port, at i-echo ang anumang natanggap na data pabalik sa host.
- May kasamang, ngunit hindi nagpapakita, basahin / isulat ang pag-access ng file.
Siyempre, maaari mong isulat ang iyong sariling firmware at i-load ito gamit ang mga hakbang na ito.
MAHALAGANG PAALAALA:
Ang mga barko ng module ng hardware ng Crystalbestz CFA10052 na naka-program sa isang bootloader at CFA735 / CFA835 firmware. Ang bootloader at CFA735 / CFA835 firmware ay hindi bukas na mapagkukunan, at hindi makopya mula sa CFA10052 ng gumagamit, at hindi rin mai-program sa CFA10052 ng gumagamit. Kung nauuwi ka sa kagustuhan na bumalik sa CFA735 / CFA835 firmware, kailangan mong ipadala ito pabalik sa Crystalfontz upang mai-program ito muli.
Mga gamit
- Crystalfontz CFA10052 (hardware v1.1 o mas bago) Module (CFA735 / CFA835)
- PC (Windows / Linux / OSX) na naka-install ang STM32CubeIDE at STM32 ST-LINK Utility
- STMicroelectronics ST-LINK (V2 o V3) interface ng programa
- CFA10052 programming cable (mga detalye sa ibaba)
- Pasadyang firmware (o gamitin ang amin dito)
- Kung gumagamit ka ng Windows 7/8 / 8.1 / 10 (o katumbas na mga bersyon ng Server) at nais na subukan ang USB virtual serial port, kakailanganin mong mag-download ng mga driver mula dito. Ang USB serial port ay gagana nang hindi nangangailangan ng mga karagdagang driver sa Windows 10+, Linux, OS-X.
Hakbang 1: Kolektahin / Lumikha ng Mga Pantustos
Inirerekumenda namin ang paggamit ng STM32CubeIDE upang mai-load at magamit ang halimbawang proyekto ng firmware na ito. Ang STM32CubeIDE ay isang libreng IDE batay sa Eclipse na binago ng STMicroelectronics upang isama ang mga tukoy na tool ng STM32. Ang IDE ay maaaring ma-download sa STM32CubeIDE webpage.
Upang mapanatili ang tamang pagpapatakbo ng tool ng pagsasaayos ng aparato ng STM, dapat mo lamang i-edit ang tool sa pagsasaayos ng aparato na nilikha source-code sa pagitan ng pagtutugma ng "USER CODE BEGIN xxx" at "USER CODE END xxx" na mga bloke ng komento.
Susunod, magpasya kung makipag-ugnay sa amin para sa isang CFA10052 programming cable o upang gawin ang iyong sarili. Hindi namin pupunta sa paggawa ng detalye ng cable sa tutorial na ito, ngunit kung nais mong gumawa ng iyong sariling CFA10052 programming cable, mahahanap mo ang mga koneksyon sa pahina ng GitHub, ang pinakamahusay na paraan upang magawa ito ay magsimula sa isang labing-anim na pin ribbon cable at i-splice ito sa cable para sa ST Link.
Hakbang 2: Burahin ang Umiiral na Firmware
Kung ang iyong module ng CFA10052 ay puno ng ibinigay na CFA735 o CFA835 firmware kailangan mo munang burahin ang lumalabas na firmware bago mag-install ng bagong firmware. Ang flash memory ay nabasa at isinulat na protektado at dapat na alisin bago ma-load ang pasadyang firmware.
Mayroong dalawang pamamaraan para sa pagtanggal ng naka-install na firmware:
- Idiskonekta ang USB cable (o power supply) mula sa module ng CFA10052.
- Ikonekta ang CFA10052 sa ST-LINK gamit ang programming cable (tingnan sa itaas), at ang ST-LINK sa host PC.
- Hawakan ang mga pindutan ng pataas at pababa sa CFA10052 habang isinasaksak ang USB cable sa CFA10052 (o supply ng kuryente). Ang CFA10052 ay dapat na ipakita ang screen ng Crystalfontz Bootloader.
- Patakbuhin ang STM32 ST-LINK Utility. Sa menu na "Target", buksan ang window na "Option Bytes". Sa kahon na "Basahin ang Proteksyon", piliin ang "Antas 0". I-click ang Ilapat. Ang Crystalfontz firmware ay tinanggal na ngayon at ang anumang pasadyang firmware ay maaaring ma-program na ngayon.
Alternatibong pamamaraan (kung hindi mo mailagay ang Crystalfontz Bootloader sa pamamagitan ng paghawak ng mga key):
- Idiskonekta ang USB cable (o power supply) mula sa module ng CFA10052.
- Ikonekta ang BOOT0 test-point (isang maliit na pad sa likod ng module ng CFA10052, malapit sa konektor ng H1) sa 3.3V o 5V.
- Ikonekta ang CFA10052 sa ST-LINK gamit ang programming cable (tingnan sa itaas), at ang ST-LINK sa host PC.
- Lakas sa CFA10052 (o ikonekta ito sa USB power). Dapat na blangko ang display.
- Patakbuhin ang STM32 ST-LINK Utility. Sa menu na "Target", buksan ang window na "Option Bytes". Sa kahon na "Read Out Protection", piliin ang "Antas 0". I-click ang Ilapat. Ang Crystalfontz firmware ay tinanggal na ngayon at ang anumang pasadyang firmware ay maaaring ma-program na ngayon.
- Ang koneksyon ng BOOT0 pin sa 3.3V / 5V ay hindi na kinakailangan.
Hakbang 3: Ipunin at I-load ang Iyong Firmware Sa CFA10052
Kapag natanggal ang naibigay na firmware ng Crystalshez, handa ka nang mag-compile at mag-load ng iyong sariling firmware. Para sa mga layunin ng tutorial na ito, nagsuplay kami ng ilang mga alternatibong firmware na nagbibigay sa kontrol ng keypad ng liwanag ng backlight at pagpapakita ng kaibahan.
Upang maipon ang firmware:
- Buksan ang STM32CubeIDE
- Sa menu ng File, piliin ang I-import, pagkatapos ay "I-import ang Mga Umiiral na Mga Proyto Sa Workspace".
- Sa root Directory box, piliin ang direktoryo ng halimbawang firmware na ito.
- I-click ang Tapos na pindutan.
- Sa Project Explorer, piliin ang cfa10052_example na proyekto, pagkatapos buksan ang Src, at "main.c" na file.
- Sa menu ng Project, piliin ang "Build Project".
Upang mai-program at patakbuhin ang firmware sa CFA10052:
- Idiskonekta ang USB cable (o power supply) mula sa module ng CFA10052.
- Ikonekta ang CFA10052 sa ST-LINK gamit ang programming cable (tingnan sa itaas), at ang ST-LINK sa host PC.
- Ikonekta ang USB cable (o power supply) sa CFA10052.
- Tiyaking naitayo ang proyekto ng firmware (tingnan ang mga hakbang sa itaas), at lilitaw ang "Mga binary" sa ilalim ng "cfa10052_example" sa Project Explorer.
- Kung hindi nakikita ang "Mga Binary", i-right click ang proyektong "cfa10052_example" at piliin ang Refresh.
- Piliin ang Run menu, pagkatapos ay ang "Mga Pag-configure ng Pag-debug".
- Sa kahon ng pagpipilian ng mga uri ng target na debug sa kaliwa, Mag-right-click sa "STM32 Cortex-M Application", at piliin ang "Bagong Configuration".
- Ipapakita ang isang window ng pagsasaayos. OK ang mga default na setting. I-click ang Ilapat pagkatapos ang Close button.
- Sa Run menu, piliin ang "Debug As", pagkatapos ang "STM32 Cortex Application". Dapat na kumonekta ang STM32CubeIDE sa ST-LINK, at i-upload at patakbuhin ang firmware sa CFA10052.
Ang mga hakbang sa itaas ay kinakailangan lamang sa paglo-load ng proyekto sa unang pagkakataon sa STM32CubeIDE. Matapos magawa ang mga pagbabago sa source-code ng firmware, muling itatayo ang proyekto (pintasan ng Ctrl-B) at pag-program ng CFA10052 (F11 key shortcut) ang kinakailangan.
Maaari ding mai-load ang firmware gamit ang alinman sa normal na mga pamamaraan ng bootloader ng STM32 (magagamit lamang ang pag-debug gamit ang interface ng SWD at isang ST-LINK). Halimbawa, kung gumagamit ng serial connection, maaaring magamit ang USART1 (RX = H1-Pin1 at TX = H1-Pin2). Para sa mas detalyadong impormasyon tungkol sa bootloader at mga interface ng STM32, tingnan ang PDF dito.
Hakbang 4: Mga Lisensya
Ang mapagkukunang-code na ibinigay ng Crystalbestz ay ibinibigay gamit ang The Unlicense, isang lisensya na walang mga kundisyon na kung saan ay naglalaan ng mga gawa sa pampublikong domain. Ang mga hindi lisensyang gawa, pagbabago, at mas malalaking gawa ay maaaring maipamahagi sa ilalim ng iba't ibang mga termino at walang source code. Tingnan ang UNLICENCE file, o unlicense.org para sa mga detalye.
Ang STM32CubeIDE ay lumikha ng source-code at mga aklatan ng STMicroelectronics ay Copyright (c) 2019 STMicroelectronics. Nakalaan ang lahat ng mga karapatan. Ang sangkap ng software ay lisensyado ng ST sa ilalim ng lisensya ng BSD 3-Clause, ang "Lisensya"; Maaaring hindi mo magamit ang mga file na ito maliban sa pagsunod sa Lisensya. Maaari kang makakuha ng isang kopya ng Lisensya sa opensource.org/licenses/BSD-3- Clause.
Inirerekumendang:
Paano Mag-Flash o Mag-Program ng ESP8266 SA Firmware sa pamamagitan ng Paggamit ng ESP8266 Flasher at Programmer, IOT Wifi Module: 6 Hakbang
Paano Mag-Flash o Mag-Program ng ESP8266 AT Firmware sa pamamagitan ng Paggamit ng ESP8266 Flasher at Programmer, IOT Wifi Module: Paglalarawan: Ang Modyul na ito ay isang USB adapter / programmer para sa mga module na ESP8266 ng uri ng ESP-01 o ESP-01S. Maginhawang nilagyan ito ng isang 2x4P 2.54mm babaeng header upang mai-plug ang ESP01. Din nito sinisira ang lahat ng mga pin ng ESP-01 sa pamamagitan ng isang 2x4P 2.54mm male h
Paano Mag-code at Mag-publish ng Matlab 2016b sa Word (Gabay sa Mga Nagsisimula): 4 na Hakbang
Paano Mag-code at Mag-publish ng Matlab 2016b sa Word (Gabay sa Mga Nagsisimula): Ang Matlab ay isang programa sa wika na may mahusay na pagganap na ginagamit upang makalkula ang mga teknikal na resulta. Ito ay may kakayahang pagsamahin ang mga visual, pagkalkula, at programa sa isang madaling gamitin na paraan. Sa program na ito, maaaring mag-publish ang gumagamit ng mga problema at solusyon
Paano Mag-download at Mag-install ng Arduino IDE ?: 8 Mga Hakbang
Paano Mag-download at Mag-install ng Arduino IDE?: Ang pag-download at Pag-install ng Arduino IDE ay napakadali. Ang Arduino IDE ay isang libreng software
Tutorial: Paano Mag-calibrate at Mag-interface ng Load Cell Sa Arduino UNO: 3 Mga Hakbang
Tutorial: Paano Mag-calibrate at Mag-interface ng Load Cell Sa Arduino UNO: Kumusta, ipapakita namin sa iyo ang tutorial: Paano i-calibrate at i-load ang cell ng interface o HX711 Balance Module na may Arduino UNO. Paglalarawan tungkol sa HX711 Balance Module: Ang module na ito ay gumagamit ng 24 high- katumpakan A / D converter. Ang chip na ito ay dinisenyo para sa high-pre
Paano Mag-record at Mag-download ng Iyong Pasadyang Ringtone: 7 Mga Hakbang
Paano Mag-record at Mag-download ng Iyong Pasadyang Ringtone: Kaya? Nais mong makakuha ng iyong sariling pasadyang ringtone, ha? Kaya, napunta ka sa tamang pahina ng Mga Makatuturo. Bago kami magsimula dapat kong ipaalala sa iyo na ito ay para sa mga aparato ng IOS (mga aparatong Apple tulad ng isang Ipad, Ipod, Iphone atbp.) At mga Mac computer (gagana sa anumang Mac, kahit