INHOUDSOPGAWE:

Hack 'n CFA735/CFA835: 4 stappe
Hack 'n CFA735/CFA835: 4 stappe

Video: Hack 'n CFA735/CFA835: 4 stappe

Video: Hack 'n CFA735/CFA835: 4 stappe
Video: The Time Value of Money in Finance – Part I (2024 CFA® Level I Exam – QM – Module 2) 2024, Julie
Anonim
Hack 'n CFA735/CFA835
Hack 'n CFA735/CFA835

Het u 'n projek wat 'n skerm, 'n sleutelbord en 'n bietjie geheue benodig, maar die vooraf gelaaide firmware op die Crystalfontz CFA735- of CFA835 -module is nie presies wat u soek nie? U het geluk - u kan hierdie modules hack om aangepaste firmware te laai.

Die CFA735 en CFA835 is veelsydige intelligente LCD -modules. Beide die Crystalfontz CFA735 en CFA835 is gebaseer op die CFA10052 hardeware module, so tydens hierdie tutoriaal word na die CFA735 en/of CFA835 verwys as die CFA10052. Die CFA10052 kan herprogrammeer word om u eie firmware te gebruik.

  • STMicroelectronics STM32F401 mikrobeheerder
  • ARM 32-bis Cortex ™ -M4 CPU @ 84 MHz
  • 256K flits, 64K RAM
  • 244 x 68 pixel skerm met verligting
  • Sitronix ST7529 grafiese LCD -beheerder van 32 grysskale
  • Buck-boost-skakelaar kan 'n wye spanningsbereik toelaat
  • Afsonderlike skakelaars met LED -helderheidsbeheerders vir bedieningspaneel en LCD -agterligte
  • 6 knoppies met agtergrondbeligting
  • 4x tweekleurige (rooi/groen) LED's
  • USB2 -koppelvlak
  • microSD -kaartgleuf
  • 5 algemene IO -penne (GPIO's)
  • Veelvuldige seriële/SPI/I2C/CAN -koppelvlakke (afhangende van die gebruik van GPIO).

Hierdie handleiding sal u wys hoe u die firmware wat op 'n CFA10052 gestuur word, vervang met 'n nuwe firmware:

  1. Wys 'n afwisselende rooster op die LCD met huidige agterligte, LCD -kontras en inligting oor die bedieningspaneel;
  2. Beheer die agterligte en die LCD -kontras met die bedieningspaneel.
  3. Verander die kleur van die vier LED's van rooi na groen in volgorde.
  4. Aktiveer die USART-seriële poort op kop-1 penne 1 en 2 (115200 baud), en herhaal die ontvangde data.
  5. Aktiveer die virtuele USB -seriële poort en herhaal die ontvangde data terug na die gasheer.
  6. Sluit toegang tot uSD -lêer/skryflêer in, maar toon dit nie aan nie.

U kan natuurlik u eie firmware skryf en dit laai met behulp van hierdie stappe.

BELANGRIKE NOTA:

Die Crystalfontz CFA10052 hardeware -module word geprogrammeer met 'n selflaaiprogram en CFA735/CFA835 -firmware. Die selflaaiprogram en CFA735/CFA835-firmware is nie oopbron nie en kan nie deur die gebruiker van die CFA10052 gekopieer word nie, en kan ook nie deur die gebruiker op die CFA10052 geprogrammeer word nie. As u uiteindelik wil terugkeer na die CFA735/CFA835 -firmware, moet u dit terugstuur na Crystalfontz om dit te herprogrammeer.

Voorrade

  • Crystalfontz CFA10052 (hardeware v1.1 of later) module (CFA735 / CFA835)
  • PC (Windows/Linux/OSX) met STM32CubeIDE en STM32 ST-LINK Utility geïnstalleer
  • STMicroelectronics ST-LINK (V2 of V3) programmeerkoppelvlak
  • CFA10052 programmeerkabel (besonderhede hieronder)
  • Pasgemaakte firmware (of gebruik ons s'n hier)
  • As u Windows 7/8/8.1/10 (of gelykwaardige bedienerweergawes) gebruik en die virtuele USB -seriële poort wil toets, moet u bestuurders hier aflaai. Die seriële USB-poort werk sonder dat ekstra bestuurders nodig is vir Windows 10+, Linux, OS-X.

Stap 1: Versamel/skep voorrade

Versamel/skep voorrade
Versamel/skep voorrade

Ons beveel aan dat u die STM32CubeIDE gebruik om hierdie firmware -projek te laai en te gebruik. STM32CubeIDE is 'n gratis IDE gebaseer op Eclipse wat deur STMicroelectronics gewysig is om STM32 -spesifieke gereedskap in te sluit. Die IDE kan op die STM32CubeIDE -webblad afgelaai word.

Om die korrekte werking van die STM-apparaatkonfigurasiehulpmiddel te handhaaf, moet u slegs die apparaatkonfigurasiehulpmiddel wat die bronkode geskep het, wysig tussen die ooreenstemmende "GEBRUIKERSKODE BEGIN xxx" en "GEBRUIKERSKODE EINDE xxx" kommentaarblokke.

Besluit vervolgens of u ons wil kontak vir 'n CFA10052 -programmeerkabel of om u eie te maak. Ons gaan nie in detail in hierdie tutoriaal die kabel in detail uitvoer nie, maar as u u eie CFA10052 -programmeerkabel wil maak, kan u die verbindings op die GitHub -bladsy vind; die beste manier om dit te doen is om te begin met 'n sestien pen lintkabel en verbind dit aan die kabel vir die ST Link.

Stap 2: Vee bestaande firmware uit

Vee bestaande firmware uit
Vee bestaande firmware uit
Vee bestaande firmware uit
Vee bestaande firmware uit

As u CFA10052 -module gelaai is met die meegeleverde CFA735- of CFA835 -firmware, moet u eers die bestaande firmware uitvee voordat u nuwe firmware installeer. Die flitsgeheue is lees- en skryfbeveilig en moet verwyder word voordat persoonlike firmware gelaai kan word.

Daar is twee metodes om die geïnstalleerde firmware te verwyder:

  1. Ontkoppel die USB -kabel (of kragtoevoer) van die CFA10052 -module.
  2. Koppel die CFA10052 aan die ST-LINK met behulp van die programmeerkabel (sien hierbo) en die ST-LINK met die gasheer-rekenaar.
  3. Hou die op- en afknoppies op die CFA10052 ingedruk terwyl u die USB -kabel in die CFA10052 (of kragtoevoer) aansluit. Die CFA10052 moet nou die Crystalfontz Bootloader -skerm vertoon.
  4. Begin die STM32 ST-LINK Utility. Open die venster 'Opsie -bytes' in die menu 'Doel'. Kies "Vlak 0" in die boks "Uitleesbeskerming". Klik op Apply. Die Crystalfontz -firmware is nou verwyder en enige aangepaste firmware kan nou geprogrammeer word.

Alternatiewe metode (as u nie die Crystalfontz Bootloader kan betree deur sleutels in te hou nie):

  1. Ontkoppel die USB -kabel (of kragtoevoer) van die CFA10052 -module.
  2. Koppel die BOOT0-toetspunt ('n klein kussing aan die agterkant van die CFA10052-module, naby die H1-aansluiting) aan 3.3V of 5V.
  3. Koppel die CFA10052 aan die ST-LINK met behulp van die programmeerkabel (sien hierbo) en die ST-LINK met die gasheer-rekenaar.
  4. Skakel die CFA10052 aan (of koppel dit aan USB -krag). Die skerm moet leeg wees.
  5. Begin die STM32 ST-LINK Utility. Open in die "Target" -kieslys die venster "Option Bytes". In die "Read Out Protection" -kassie, kies "Level 0". Klik op Apply. Die Crystalfontz -firmware is nou verwyder en enige aangepaste firmware kan nou geprogrammeer word.
  6. Die aansluiting van die BOOT0 -pen op 3.3V/5V is nie meer nodig nie.

Stap 3: Stel u firmware op en laai dit op die CFA10052

Stel u firmware op en laai dit op die CFA10052
Stel u firmware op en laai dit op die CFA10052

Nadat die firmware van Crystalfontz verwyder is, is u gereed om u eie firmware saam te stel en te laai. Vir die doeleindes van hierdie tutoriaal het ons 'n paar alternatiewe firmware verskaf wat die bedieningspaneel beheer oor die helderheid van die agtergrond en die kontras van die skerm.

Om die firmware op te stel:

  1. Maak die STM32CubeIDE oop
  2. Kies In die kieslys lêer Invoer en dan "Invoer van bestaande projekte in die werkruimte".
  3. Kies die gids van hierdie voorbeeld firmware in die wortelgids boks.
  4. Klik op die knoppie Voltooi.
  5. Kies in die Project Explorer die cfa10052_example -projek, maak dan die Src- en "main.c" -lêer oop.
  6. Kies "Bou projek" in die menu Projek.

Om die firmware op die CFA10052 te programmeer en uit te voer:

  1. Ontkoppel die USB -kabel (of kragtoevoer) van die CFA10052 -module.
  2. Koppel die CFA10052 aan die ST-LINK met behulp van die programmeerkabel (sien hierbo) en die ST-LINK met die gasheer-rekenaar.
  3. Koppel die USB -kabel (of kragtoevoer) aan die CFA10052.
  4. Maak seker dat die firmware -projek gebou is (sien stappe hierbo) en dat 'Binaries' onder 'cfa10052_example' in die Project Explorer verskyn.
  5. As 'Binaries' nie sigbaar is nie, klik met die rechtermuisknop op die 'cfa10052_example'-projek en kies Herlaai.
  6. Kies die menu Run en dan "Ontfoutingskonfigurasies".
  7. Regskliek op die "STM32 Cortex-M-toepassing" in die keusevak aan die linkerkant van die ontfoutingstipes, en kies "Nuwe konfigurasie".
  8. 'N Konfigurasievenster sal vertoon word. Die standaardinstellings is OK. Klik op die Pas toe en dan die Sluit knoppie.
  9. Kies "Ontfout as" in die menu Uitvoer en dan "STM32 Cortex -toepassing". STM32CubeIDE moet nou aan die ST-LINK koppel, en die firmware oplaai op die CFA10052.

Bogenoemde stappe is slegs nodig om die projek vir die eerste keer in STM32CubeIDE te laai. Nadat veranderinge in die bronkode van die firmware aangebring is, is slegs die heropbou van die projek nodig (Ctrl-B-kortpad) en die programmering van die CFA10052 (F11-sleutelkortpad).

Firmware kan ook via enige van die normale STM32-laaiprogramme gelaai word (ontfouting is slegs beskikbaar met behulp van die SWD-koppelvlak en 'n ST-LINK). Byvoorbeeld, as u seriële verbinding gebruik, kan USART1 gebruik word (RX = H1-Pin1 en TX = H1-Pin2). Vir meer gedetailleerde inligting oor die STM32-laaiprogram en koppelvlakke, sien die PDF hier.

Stap 4: Lisensies

Die bronkode wat Crystalfontz verskaf, word verskaf deur gebruik te maak van The Unlicense, 'n lisensie sonder enige voorwaardes wat werke aan die openbare domein toewy. Ongelisensieerde werke, wysigings en groter werke kan onder verskillende terme en sonder bronkode versprei word. Sien die UNLICENCE -lêer, of unlicense.org vir meer inligting.

STM32CubeIDE geskep bronkode en STMicroelectronics-biblioteke is kopiereg (c) 2019 STMicroelectronics. Alle regte voorbehou. Die sagteware-komponent word deur ST gelisensieer onder BSD 3-Clause-lisensie, die "Lisensie"; U mag hierdie lêers nie gebruik nie, behalwe in ooreenstemming met die lisensie. U kan 'n afskrif van die lisensie verkry by opensource.org/licenses/BSD-3-Clause.

Aanbeveel: