Skip to content

AndrejChoo/portable_programmer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

portable_programmer

Устройство прСдставляСт ΠΈΠ· сСбя ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅ - Π΅Π³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚, собранный ΠΈΠ· ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ для записи ΠΈ считанныС Π΄Π°Π½Π½Ρ‹Π΅ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… микросхСм памяти Π½Π° SD ΠΊΠ°Ρ€Ρ‚Π΅. Π― Π½Π°Π·Ρ‹Π²Π°ΡŽ устройство ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ Π½Π΅ являСтся Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹ΠΌ, Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ схСмы зарядки ΠΈ питания ΠΎΡ‚ аккумулятора, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ собрано ΠΈΠ· Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ Π½Π° ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅, Ρ‡Ρ‚ΠΎ обуславливаСт довольно большиС Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ устройства. Π₯отя ΠΌΠ΅ΠΆΠ΅Ρ‚ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ совмСстно с power-Π±Π°Π½ΠΊΠΎΠΌ.

view

Как Π²ΠΈΠ΄Π½ΠΎ, устройство собрано Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΠΌ извСстной ΠΏΠ»Π°Ρ‚Π΅ Black pill с STM32F411CEU Π½Π° Π±ΠΎΡ€Ρ‚Ρƒ. Она ΠΈΠΌΠ΅Π΅Ρ‚ достаточно большиС ΠΎΠ±ΡŠΡ‘ΠΌΡ‹ Flash ΠΈ SRAM (Ρ‡Ρ‚ΠΎ достаточно ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ ΠΏΡ€ΠΈ создании устройств с графичСским, Π΄Π°ΠΆΠ΅ тСкстовым интСрфСйсом), ΠΈΠΌΠ΅Π΅Ρ‚ интСрфСйс SDIO (Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ сильно ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ‡ΠΈΠΏΠΎΠΌ ΠΏΡ€ΠΈ использовании CubeMX ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ чтСния/записи SD ΠΊΠ°Ρ€Ρ‚Ρ‹), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· встроСнный USB Ρ€Π°Π·ΡŠΡ‘ΠΌ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π΅Ρ‚ USB-bootloader.

Π’ качСствС дисплСя использован Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ 176Ρ…220 Ρ‚ΠΎΡ‡Π΅ΠΊ Π½Π° Π±Π°Π·Π΅ ili9225, управляСмый ΠΏΠΎ SPI. ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° внСшнС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ дисплСй Π½Π° Π±Π°Π·Π΅ ST7735, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½Ρ‹ΠΌ дисплССм.

Π Π°Π·ΡŠΡ‘ΠΌ MicroSD ΠΊΠ°Ρ€Ρ‚Ρ‹ распаян Π½Π° ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ (см. Ρ„ΠΎΡ‚ΠΎ Π½ΠΈΠΆΠ½Π΅ΠΉ стороны ΠΏΠ»Π°Ρ‚Ρ‹).

ГрафичСский интСрфСйс Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² Π²ΠΈΠ΄Π΅ тСкстового мСню. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ устройства Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ пяти ΠΊΠ½ΠΎΠΏΠΎΠΊ (Up,Down,Left,Right,Set).

ΠžΠ±Ρ‰Π΅Π½ΠΈΠ΅ с внСшнСй срСдой (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ Ρ‡ΠΈΠΏΠ°ΠΌΠΈ) осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π·ΡŠΡ‘ΠΌΠ° 7Ρ…2 ΠΏΠΈΠ½, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅, SPI4 (mosi,miso,sck), I2C1 (scl, sda) ΠΈ нСсколько GPIO.

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° со: SPI Flash 25Ρ…Ρ… (ΠΏΠΎ 25Ρ…Ρ…128 Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ€Π°Π±ΠΎΡ‚Ρƒ 25Ρ…Ρ…128 ΠΈ 25Ρ…Ρ…256 добавлю Π² процСссС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ); I2C EEPROM 24Ρ…Ρ…; Microwire EEPROM 93xx сСрии; AVR8 ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°ΠΌΠΈ (Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ нСсколько ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, список ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ "avr_devs.h").

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° устройство Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚, ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² выводятся ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ Π² ΠΎΠ΄Π½Ρƒ строку. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚ΠΎΠ»ΠΎΠ³Π° Ρ„Π»Π΅ΡˆΠΊΠΈ. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄Π»ΠΈΠ½Π½Ρ‹Ρ… ΠΈΠΌΡ‘Π½ Ρ„Π°ΠΉΠ»ΠΎΠ², Π½ΠΎ Π½Π΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ слишком Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»Ρ‚ΠΎΡ€Ρ‹ строки дисплСя для отобраТСния ΠΈΠΌΡ‘Π½. ΠŸΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Π² Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ· 8 символов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΎΠΊ устройства.

Для программирования ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ (Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния). Если ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ HEX Ρ„Π°ΠΉΠ», Ρ‚ΠΎ просто Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ тСкст Ρ„Π°ΠΉΠ»Π° Π² Π²ΠΈΠ΄Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±Π°ΠΉΡ‚ (Π±ΡƒΠΊΠ²). ВстроСнного HEX2BIN ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€Π° Π½Π΅Ρ‚, поэтому HEX Ρ„Π°ΠΉΠ»Ρ‹ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Ρ€Π°Π½Π΅Π΅.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π²Π½Π΅ΡˆΠ½ΠΈΡ… микросхСм памяти ΠΊ Ρ€Π°Π·ΡŠΡ‘ΠΌΡƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅: SPI Flash DO->miso, DI->mosi, CLK->sck, CS->PB12; I2C EEPROM SCL->scl, SDA->sda; Microwire EEPROM DO->PB1, DI->PB0, CLK->PB2, CS->PA2; AVR MOSI->PB0, MISO->PB1, SCK->PB2, RST->PB12.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ для CubeIDE находится Π² ΠΏΠ°ΠΏΠΊΠ΅ "source", ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠ°ΠΌΠ½Π΅ΠΉ STM32 (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Black pill Π½Π° STM32F401, STM32L ΡΠ΅Ρ€ΠΈΡŽ ΠΈΠ»ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ 99% ΠΊΠΎΠ΄Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ написано Π½Π° HAL), Π° Ссли Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚ΡŒ усилий, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠ°ΠΌΠ½ΠΈ с достаточным ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠΌ Flash памяти (ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ RP2040, ΠΏΡ€Π°Π²Π΄Π° придётся ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ SD ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π° SPI ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π»ΠΈΠ½ΠΈΠΈ SPI для дисплСя, ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ внСшнСго Ρ€Π°Π·ΡŠΡ‘ΠΌΠ°).

Если ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»ΠΎΡΡŒ Π΄Π°Π½Π½ΠΎΠ΅ устройство, Π½Π΅ ΠΏΠΎΠ»Π΅Π½ΠΈΡ‚Π΅ΡΡŒ ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π·Π²Ρ‘Π·Π΄ΠΎΡ‡ΠΊΡƒ.

About

Portable programmer for spi-flash, serial eeprom e.t.c.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published