Оглавление:

Взломать CFA735 / CFA835: 4 шага
Взломать CFA735 / CFA835: 4 шага

Видео: Взломать CFA735 / CFA835: 4 шага

Видео: Взломать CFA735 / CFA835: 4 шага
Видео: КАК ВЗЛОМАТЬ ЛЮБУЮ ИГРУ НА ANDROID 2024, Ноябрь
Anonim
Взломайте CFA735 / CFA835
Взломайте CFA735 / CFA835

У вас есть проект, которому нужен дисплей, клавиатура и немного памяти, но предварительно загруженная прошивка на модуль Crystalfontz CFA735 или CFA835 - не совсем то, что вы ищете? Вам повезло - вы можете взломать эти модули, чтобы загрузить кастомную прошивку.

CFA735 и CFA835 - универсальные интеллектуальные ЖК-модули. И Crystalfontz CFA735, и CFA835 основаны на аппаратном модуле CFA10052, поэтому в этом руководстве CFA735 и / или CFA835 будут называться CFA10052. CFA10052 можно перепрограммировать для работы с вашей собственной прошивкой.

  • Микроконтроллер STMicroelectronics STM32F401
  • 32-битный процессор ARM Cortex ™ -M4 @ 84 МГц
  • 256 КБ флэш-памяти, 64 КБ ОЗУ
  • ЖК-дисплей с подсветкой 244 x 68 пикселей
  • Sitronix ST7529 32-дюймовый графический ЖК-контроллер в градациях серого
  • Импульсный импульсный источник питания обеспечивает широкий диапазон питающего напряжения.
  • Отдельное переключение контроллеров яркости светодиодов для подсветки клавиатуры и ЖК-дисплея
  • 6-кнопочная клавиатура с подсветкой
  • 4 двухцветных (красный / зеленый) светодиода
  • Интерфейс USB2
  • слот для карты microSD
  • 5 контактов ввода-вывода общего назначения (GPIO)
  • Несколько последовательных интерфейсов / SPI / I2C / CAN (в зависимости от использования GPIO).

Из этого туториала Вы узнаете, как заменить встроенное ПО, поставляемое с CFA10052, на новое встроенное ПО, которое:

  1. Отображение на ЖК-дисплее переменной сетки с текущей подсветкой, контрастностью ЖК-дисплея и информацией о состоянии клавиатуры;
  2. Управляйте подсветкой и контрастностью ЖК-дисплея с помощью клавиатуры.
  3. Последовательно измените цвет четырех светодиодов с красного на зеленый.
  4. Включите последовательный порт USART на контактах 1 и 2 заголовка 1 (115200 бод) и отобразите все полученные данные.
  5. Включите виртуальный последовательный порт USB и отправьте все полученные данные обратно на хост.
  6. Включает, но не демонстрирует, доступ к файлам для чтения / записи uSD.

Конечно, вы можете написать свою собственную прошивку и загрузить ее, выполнив следующие действия.

ВАЖНАЯ ЗАМЕТКА:

Аппаратный модуль Crystalfontz CFA10052 поставляется с запрограммированным загрузчиком и прошивкой CFA735 / CFA835. Загрузчик и прошивка CFA735 / CFA835 не имеют открытого исходного кода и не могут быть скопированы с CFA10052 пользователем, а также не могут быть запрограммированы пользователем на CFA10052. Если вы в конечном итоге захотите вернуться к прошивке CFA735 / CFA835, вам придется отправить ее обратно в Crystalfontz, чтобы перепрограммировать.

Запасы

  • Модуль Crystalfontz CFA10052 (аппаратная версия 1.1 или новее) (CFA735 / CFA835)
  • ПК (Windows / Linux / OSX) с установленной утилитой STM32CubeIDE и STM32 ST-LINK
  • Программный интерфейс STMicroelectronics ST-LINK (V2 или V3)
  • Кабель для программирования CFA10052 (подробности ниже)
  • Кастомная прошивка (или воспользуйтесь нашей здесь)
  • Если вы используете Windows 7/8 / 8.1 / 10 (или эквивалентные серверные версии) и хотите протестировать виртуальный последовательный порт USB, вам необходимо загрузить драйверы отсюда. Последовательный порт USB будет работать без дополнительных драйверов в Windows 10+, Linux, OS-X.

Шаг 1. Соберите / создайте припасы

Собирать / создавать припасы
Собирать / создавать припасы

Мы рекомендуем использовать STM32CubeIDE для загрузки и использования этого примера проекта прошивки. STM32CubeIDE - это бесплатная IDE, основанная на Eclipse, которая была модифицирована STMicroelectronics для включения специальных инструментов STM32. IDE можно загрузить на веб-странице STM32CubeIDE.

Чтобы поддерживать правильную работу инструмента конфигурации устройства STM, вы должны только редактировать исходный код инструмента конфигурации устройства, созданный между соответствующими блоками комментариев «USER CODE BEGIN xxx» и «USER CODE END xxx».

Затем решите, обращаться ли к нам за кабелем для программирования CFA10052 или сделать свой собственный. Мы не собираемся подробно разбирать кабель в этом руководстве, но если вы хотите сделать свой собственный программный кабель CFA10052, вы можете найти подключения на странице GitHub, лучший способ сделать это - начать с Шестнадцатиконтактный ленточный кабель и соедините его с кабелем ST Link.

Шаг 2. Удалите существующую прошивку

Удалить существующую прошивку
Удалить существующую прошивку
Удалить существующую прошивку
Удалить существующую прошивку

Если в ваш модуль CFA10052 загружена входящая в комплект прошивка CFA735 или CFA835, вам необходимо сначала стереть существующую прошивку перед установкой новой прошивки. Флэш-память защищена от чтения и записи и должна быть удалена перед загрузкой пользовательской прошивки.

Есть два метода удаления установленной прошивки:

  1. Отсоедините USB-кабель (или блок питания) от модуля CFA10052.
  2. Подключите CFA10052 к ST-LINK с помощью кабеля для программирования (см. Выше), а ST-LINK к главному компьютеру.
  3. Удерживайте кнопки вверх и вниз на CFA10052 при подключении кабеля USB к CFA10052 (или источнику питания). CFA10052 теперь должен отображать экран загрузчика Crystalfontz.
  4. Запустите утилиту STM32 ST-LINK. В меню «Target» откройте окно «Option Bytes». В поле «Защита от чтения» выберите «Уровень 0». Нажмите Применить. Прошивка Crystalfontz была удалена, и теперь можно запрограммировать любую кастомную прошивку.

Альтернативный метод (если вы не можете войти в загрузчик Crystalfontz, удерживая клавиши):

  1. Отсоедините USB-кабель (или блок питания) от модуля CFA10052.
  2. Подключите контрольную точку BOOT0 (небольшая площадка на задней панели модуля CFA10052, рядом с разъемом H1) к 3,3 В или 5 В.
  3. Подключите CFA10052 к ST-LINK с помощью кабеля для программирования (см. Выше), а ST-LINK к главному компьютеру.
  4. Включите CFA10052 (или подключите его к источнику питания USB). Дисплей должен быть пустым.
  5. Запустите утилиту STM32 ST-LINK. В меню «Target» откройте окно «Option Bytes». В поле «Read Out Protection» выберите «Level 0». Нажмите Применить. Прошивка Crystalfontz была удалена, и теперь можно запрограммировать любую кастомную прошивку.
  6. Подключение вывода BOOT0 к 3.3V / 5V больше не требуется.

Шаг 3: скомпилируйте и загрузите прошивку на CFA10052

Скомпилируйте и загрузите прошивку на CFA10052
Скомпилируйте и загрузите прошивку на CFA10052

После удаления прошивки, поставляемой Crystalfontz, вы готовы скомпилировать и загрузить свою собственную прошивку. Для целей этого руководства мы предоставили альтернативную прошивку, которая позволяет с клавиатуры управлять яркостью подсветки и контрастностью дисплея.

Для компиляции прошивки:

  1. Откройте STM32CubeIDE
  2. В меню «Файл» выберите «Импорт», затем «Импортировать существующие проекты в рабочую область».
  3. В поле корневого каталога выберите каталог с этим примером прошивки.
  4. Щелкните кнопку Готово.
  5. В обозревателе проектов выберите проект cfa10052_example, затем откройте файлы Src и main.c.
  6. В меню «Проект» выберите «Создать проект».

Чтобы запрограммировать и запустить прошивку на CFA10052:

  1. Отсоедините USB-кабель (или блок питания) от модуля CFA10052.
  2. Подключите CFA10052 к ST-LINK с помощью кабеля для программирования (см. Выше), а ST-LINK к главному компьютеру.
  3. Подключите кабель USB (или блок питания) к CFA10052.
  4. Убедитесь, что проект встроенного ПО был собран (см. Шаги выше) и «Двоичные файлы» отображаются в разделе «cfa10052_example» в Project Explorer.
  5. Если «Двоичные файлы» не отображаются, щелкните правой кнопкой мыши проект «cfa10052_example» и выберите «Обновить».
  6. Выберите меню «Выполнить», затем «Конфигурации отладки».
  7. В поле выбора типов целей отладки слева щелкните правой кнопкой мыши «Приложение STM32 Cortex-M» и выберите «Новая конфигурация».
  8. Откроется окно конфигурации. Настройки по умолчанию в порядке. Нажмите кнопку «Применить», затем кнопку «Закрыть».
  9. В меню «Выполнить» выберите «Отладить как», затем «Приложение STM32 Cortex». STM32CubeIDE должен теперь подключиться к ST-LINK, загрузить и запустить прошивку на CFA10052.

Вышеуказанные шаги требуются только при первой загрузке проекта в STM32CubeIDE. После того, как были внесены изменения в исходный код прошивки, потребуется только перекомпоновка проекта (сочетание клавиш Ctrl-B) и программирование CFA10052 (сочетание клавиш F11).

Прошивку также можно загрузить с помощью любого из обычных методов загрузчика STM32 (отладка доступна только с использованием интерфейса SWD и ST-LINK). Например, при использовании последовательного соединения можно использовать USART1 (RX = H1-Pin1 и TX = H1-Pin2). Для получения более подробной информации о загрузчике STM32 и интерфейсах см. PDF-файл здесь.

Шаг 4: Лицензии

Исходный код, поставляемый Crystalfontz, предоставляется с использованием Безлицензии, лицензии без каких-либо условий, которая посвящает произведения общественному достоянию. Нелицензионные произведения, модификации и более крупные произведения могут распространяться на других условиях и без исходного кода. Подробности см. В файле UNLICENCE или на unlicense.org.

Исходный код, созданный STM32CubeIDE, и библиотеки STMicroelectronics защищены авторским правом (c) 2019 STMicroelectronics. Все права защищены. Компонент программного обеспечения лицензирован ST в соответствии с лицензией BSD 3-Clause, «Лицензия»; Вы не можете использовать эти файлы, кроме как в соответствии с Лицензией. Вы можете получить копию лицензии на сайте opensource.org/licenses/BSD-3-Clause.

Рекомендуемые: