Turinys:

Nulaužkite CFA735/CFA835: 4 žingsniai
Nulaužkite CFA735/CFA835: 4 žingsniai

Video: Nulaužkite CFA735/CFA835: 4 žingsniai

Video: Nulaužkite CFA735/CFA835: 4 žingsniai
Video: Raspberry Pi, USB-Serial, Crystalfonts CFA633 2024, Lapkritis
Anonim
Nulaužkite CFA735/CFA835
Nulaužkite CFA735/CFA835

Ar turite projektą, kuriam reikia ekrano, klaviatūros ir šiek tiek atminties, tačiau iš anksto įkelta programinė įranga „Crystalfontz CFA735“arba „CFA835“modulyje nėra tai, ko ieškote? Jums pasisekė - galite nulaužti šiuos modulius ir įkelti pasirinktinę programinę -aparatinę įrangą.

CFA735 ir CFA835 yra universalūs išmanieji LCD moduliai. Tiek „Crystalfontz CFA735“, tiek „CFA835“yra pagrįsti CFA10052 aparatūros moduliu, todėl šios pamokos metu CFA735 ir (arba) CFA835 bus vadinami CFA10052. CFA10052 galima perprogramuoti, kad būtų paleista jūsų pasirinkta programinė įranga.

  • STMicroelectronics STM32F401 mikrovaldiklis
  • ARM 32 bitų „Cortex ™ -M4“procesorius @ 84 MHz
  • 256K blykstė, 64K RAM
  • 244 x 68 pikselių foninis apšvietimas
  • Sitronix ST7529 32 pilkų atspalvių grafinis LCD valdiklis
  • „Buck-boost“perjungimo šaltinis leidžia platų maitinimo įtampos diapazoną
  • Atskiri perjungiami LED ryškumo valdikliai, skirti klaviatūrai ir LCD apšvietimui
  • 6 mygtukų foninio apšvietimo klaviatūra
  • 4x dviejų spalvų (raudonos/žalios) šviesos diodai
  • USB2 sąsaja
  • „microSD“kortelės lizdas
  • 5 bendrosios paskirties IO kaiščiai (GPIO)
  • Kelios nuosekliosios/SPI/I2C/CAN sąsajos (priklausomai nuo GPIO naudojimo).

Ši pamoka parodys, kaip pakeisti CFA10052 siunčiamą programinę -aparatinę įrangą nauja programine įranga, kuri:

  1. LCD ekrane rodyti kintamą tinklelį su dabartiniais foniniais apšvietimais, LCD kontrastu ir klaviatūros būsenos informacija;
  2. Valdykite apšvietimą ir LCD kontrastą naudodami klaviatūrą.
  3. Pakeiskite keturių šviesos diodų spalvą iš raudonos į žalią.
  4. Įjunkite USART nuoseklųjį prievadą 1 ir 2 antraštės smeigtukuose (115200 baudų) ir pakartokite visus gautus duomenis.
  5. Įjunkite USB virtualų nuoseklųjį prievadą ir pakartokite visus gautus duomenis atgal į pagrindinį kompiuterį.
  6. Apima, bet nerodo uSD skaitymo/rašymo failo prieigą.

Žinoma, galite parašyti savo programinę -aparatinę įrangą ir įkelti ją atlikdami šiuos veiksmus.

SVARBI PASTABA:

„Crystalfontz CFA10052“aparatinės įrangos modulis yra užprogramuotas naudojant įkrovos įkroviklį ir CFA735/CFA835 programinę įrangą. Įkrovos įkėlimo programa ir CFA735/CFA835 programinė įranga nėra atvirojo kodo, vartotojas negali jų nukopijuoti iš CFA10052, o vartotojas negali jų užprogramuoti CFA10052. Jei galiausiai norite grįžti prie CFA735/CFA835 programinės įrangos, turėsite ją atsiųsti atgal į „Crystalfontz“, kad ji būtų perprogramuota.

Prekės

  • „Crystalfontz CFA10052“(aparatinės įrangos v1.1 ar naujesnė versija) modulis (CFA735 / CFA835)
  • Kompiuteris („Windows“/„Linux“/OSX) su įdiegta „STM32CubeIDE“ir „STM32 ST-LINK Utility“
  • STMicroelectronics ST-LINK (V2 arba V3) programavimo sąsaja
  • CFA10052 programavimo kabelis (išsami informacija žemiau)
  • Individuali programinė įranga (arba naudokite mūsų čia)
  • Jei naudojate „Windows 7/8/8.1/10“(arba lygiavertes serverio versijas) ir norite išbandyti USB virtualųjį nuoseklųjį prievadą, turite atsisiųsti tvarkykles iš čia. USB nuoseklusis prievadas veiks nereikalaujant papildomų tvarkyklių „Windows 10+“, „Linux“, OS-X.

1 žingsnis: Surinkite/sukurkite reikmenis

Rinkti/kurti reikmenis
Rinkti/kurti reikmenis

Rekomenduojame naudoti STM32CubeIDE, norėdami įkelti ir naudoti šį pavyzdinį programinės įrangos projektą. „STM32CubeIDE“yra nemokama „Eclipse“pagrindu sukurta IDE, kurią pakeitė „STMicroelectronics“, įtraukdama tam tikrus STM32 įrankius. IDE galima atsisiųsti iš STM32CubeIDE tinklalapio.

Kad tinkamai veiktų STM įrenginio konfigūravimo įrankis, turite redaguoti tik įrenginio konfigūravimo įrankio sukurtą šaltinio kodą tarp atitinkamų komentarų blokų „USER CODE BEGIN xxx“ir „USER CODE END xxx“.

Tada nuspręskite, ar kreiptis į mus dėl CFA10052 programavimo kabelio, ar susikurti savo. Šioje pamokoje išsamiai nenurodysime kabelio, bet jei norite sukurti savo CFA10052 programavimo kabelį, jungtis galite rasti „GitHub“puslapyje, geriausias būdas tai padaryti yra pradėti nuo šešiolikos kaiščių juostinį kabelį ir prijunkite jį prie „ST Link“kabelio.

2 veiksmas: ištrinkite esamą programinę -aparatinę įrangą

Ištrinkite esamą programinę -aparatinę įrangą
Ištrinkite esamą programinę -aparatinę įrangą
Ištrinkite esamą programinę -aparatinę įrangą
Ištrinkite esamą programinę -aparatinę įrangą

Jei jūsų CFA10052 modulis yra pakrautas su pridedama CFA735 arba CFA835 programine įranga, prieš diegdami naują programinę -aparatinę įrangą pirmiausia turite ištrinti išeinančią programinę -aparatinę įrangą. „Flash“atmintis yra apsaugota nuo skaitymo ir rašymo ir turi būti pašalinta prieš įkeliant pasirinktinę programinę -aparatinę įrangą.

Yra du būdai pašalinti įdiegtą programinę -aparatinę įrangą:

  1. Atjunkite USB kabelį (arba maitinimo šaltinį) nuo CFA10052 modulio.
  2. Prijunkite CFA10052 prie ST-LINK naudodami programavimo kabelį (žr. Aukščiau), o ST-LINK-prie kompiuterio.
  3. Prijunkite USB kabelį prie CFA10052 (arba maitinimo šaltinio) laikydami CFA10052 aukštyn ir žemyn klavišus. Dabar CFA10052 turėtų būti rodomas „Crystalfontz Bootloader“ekranas.
  4. Paleiskite „STM32 ST-LINK Utility“. „Target“meniu atidarykite langą „Option Bytes“. Laukelyje „Perskaitymo apsauga“pasirinkite „0 lygis“. Spustelėkite Taikyti. Dabar „Crystalfontz“programinė įranga pašalinta ir dabar gali būti užprogramuota bet kokia pasirinktinė programinė įranga.

Alternatyvus metodas (jei negalite patekti į „Crystalfontz Bootloader“laikydami klavišus):

  1. Atjunkite USB kabelį (arba maitinimo šaltinį) nuo CFA10052 modulio.
  2. Prijunkite BOOT0 bandymo tašką (mažą pagalvėlę CFA10052 modulio gale, netoli H1 jungties) prie 3.3V arba 5V.
  3. Prijunkite CFA10052 prie ST-LINK naudodami programavimo kabelį (žr. Aukščiau), o ST-LINK-prie kompiuterio.
  4. Įjunkite CFA10052 (arba prijunkite prie USB). Ekranas turi būti tuščias.
  5. Paleiskite „STM32 ST-LINK Utility“. Meniu „Target“atidarykite langą „Option Bytes“. Langelyje „Read Out Protection“pasirinkite „Level 0“. Spustelėkite Taikyti. Dabar „Crystalfontz“programinė įranga pašalinta ir dabar gali būti užprogramuota bet kokia pasirinktinė programinė įranga.
  6. BOOT0 kaiščio prijungti prie 3.3V/5V nebereikia.

3 veiksmas: sukompiliuokite ir įkelkite programinę -aparatinę įrangą į CFA10052

Sudarykite ir įkelkite programinę -aparatinę įrangą į CFA10052
Sudarykite ir įkelkite programinę -aparatinę įrangą į CFA10052

Kai „Crystalfontz“tiekiama programinė įranga bus pašalinta, būsite pasiruošę kompiliuoti ir įkelti savo programinę -aparatinę įrangą. Šios pamokos tikslais mes pateikėme alternatyvią programinę -aparatinę įrangą, leidžiančią klaviatūrai valdyti foninio apšvietimo ryškumą ir ekrano kontrastą.

Norėdami surinkti programinę -aparatinę įrangą:

  1. Atidarykite STM32CubeIDE
  2. Meniu Failas pasirinkite Importuoti, tada „Importuoti esamus projektus į darbo vietą“.
  3. Šakninio katalogo laukelyje pasirinkite šio pavyzdinio programinės įrangos katalogą.
  4. Spustelėkite mygtuką Baigti.
  5. „Project Explorer“pasirinkite projektą „cfa10052_example“, tada atidarykite „Src“ir „main.c“failą.
  6. Projekto meniu pasirinkite „Sukurti projektą“.

Norėdami užprogramuoti ir paleisti programinę -aparatinę įrangą CFA10052:

  1. Atjunkite USB kabelį (arba maitinimo šaltinį) nuo CFA10052 modulio.
  2. Prijunkite CFA10052 prie ST-LINK naudodami programavimo kabelį (žr. Aukščiau), o ST-LINK-prie kompiuterio.
  3. Prijunkite USB kabelį (arba maitinimo šaltinį) prie CFA10052.
  4. Įsitikinkite, kad programinės aparatinės įrangos projektas buvo sukurtas (žr. Aukščiau nurodytus veiksmus), o „Binaries“rodomas „Project Explorer“skiltyje „cfa10052_example“.
  5. Jei „Dvejetainiai failai“nematomi, dešiniuoju pelės mygtuku spustelėkite projektą „cfa10052_example“ir pasirinkite Atnaujinti.
  6. Pasirinkite meniu „Vykdyti“, tada „Derinimo konfigūracijos“.
  7. Kairėje esančiame derinimo tikslų tipų pasirinkimo laukelyje dešiniuoju pelės mygtuku spustelėkite „STM32 Cortex-M Application“ir pasirinkite „New Configuration“.
  8. Bus parodytas konfigūracijos langas. Numatytieji nustatymai yra gerai. Spustelėkite Taikyti, tada mygtuką Uždaryti.
  9. Meniu Vykdyti pasirinkite „Derinti kaip“, tada „STM32 Cortex Application“. Dabar STM32CubeIDE turėtų prisijungti prie ST-LINK, įkelti ir paleisti programinę-aparatinę įrangą CFA10052.

Pirmiau minėti veiksmai reikalingi tik pirmą kartą įkeliant projektą į STM32CubeIDE. Pakeitus programinės aparatinės įrangos šaltinio kodą, reikia tik iš naujo sukurti projektą (Ctrl-B spartusis klavišas) ir užprogramuoti CFA10052 (F11 klavišų spartusis klavišas).

Programinę-aparatinę įrangą taip pat galima įkelti naudojant bet kurį įprastą STM32 įkrovos metodą (derinimas galimas tik naudojant SWD sąsają ir ST-LINK). Pvz., Jei naudojamas nuoseklusis ryšys, gali būti naudojamas USART1 (RX = H1-Pin1 ir TX = H1-Pin2). Norėdami gauti daugiau informacijos apie STM32 įkrovos tvarkyklę ir sąsajas, skaitykite PDF čia.

4 žingsnis: licencijos

„Crystalfontz“pateiktas šaltinio kodas pateikiamas naudojant „The Unlicense“-licenciją be jokių sąlygų, kuri darbus skiria viešai. Nelicencijuoti kūriniai, modifikacijos ir didesni darbai gali būti platinami skirtingomis sąlygomis ir be šaltinio kodo. Daugiau informacijos rasite UNLICENCE faile arba unlicense.org.

STM32CubeIDE sukurtos šaltinio kodo ir STMicroelectronics bibliotekos yra autorių teisės (c) 2019 STMicroelectronics. Visos teisės saugomos. Programinės įrangos komponentas yra licencijuotas ST pagal BSD 3 sąlygų licenciją, „Licenciją“; Jūs negalite naudoti šių failų, tik laikydamiesi licencijos. Licencijos kopiją galite gauti adresu opensource.org/licenses/BSD-3-Clause.

Rekomenduojamas: