Перейти к содержанию
    

Кто-нибудь всерьез копал CH32V307?

собственно интересует, кто-нибудь реализовывал на нем бутлоадер по uart для смены прошивки удаленно?

Изменено пользователем Sergiusu

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а оно там не встроено случаем?

Built-in 28K byte system memory (System FLASH), used for system boot program storage (manufacturer
curing boot loader).
128 bytes are used for system non-volatile configuration word storage, and 128 bytes are used for user
selection word storage.
At startup, one of 3 boot modes can be selected through the boot pins (BOOT0 and BOOT1):
l Boot from program flash
l Boot from system memory
l Boot from internal SRAM
The bootloader is stored in the system memory, and the contents of the program Flash memory storage can be
reprogrammed through the USART1 and USB interface.

CH32V305FBP6.PDF

Изменено пользователем haker_fox
Отформатировал текст.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подтверждаю, бутлоадер встроенный и позволяет прошивать как по UART, так и по USB. Для прошивки можно использовать заводскую утилиту WCHISPTool.

Для входа в загрузчик необходимо перевести контроллер в режим бутлоадера, выставив нужный чежим через ножки BOOT0 BOOT1 и сделав Reset.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 3/7/2024 at 10:40 AM, ruslan21083i said:

Подтверждаю, бутлоадер встроенный и позволяет прошивать как по UART, так и по USB. Для прошивки можно использовать заводскую утилиту WCHISPTool.

Для входа в загрузчик необходимо перевести контроллер в режим бутлоадера, выставив нужный чежим через ножки BOOT0 BOOT1 и сделав Reset.

У STM32 тоже встроенный загрузчик по UART и по USB есть и утилита своя есть, но многие пишут и используют свой загрузчик.

Например, в своем загрузчике можно реализовать шифрование, можно сделать переход в режим загрузчика не по ножке, что требует вскрытия корпуса,

а по команде от ПК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В своем загрузчике startup от производителя не заработает, т.к. там делается переход в U-режим. И уже попытка записи csr в startup приложения вызовет сбой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 3/7/2024 at 2:40 PM, adnega said:

В своем загрузчике startup от производителя не заработает, т.к. там делается переход в U-режим. И уже попытка записи csr в startup приложения вызовет сбой.

Значит нужен свой startup

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, dimka76 сказал:

Значит нужен свой startup

	li t0, 0x1f
	csrw 0xbc0, t0
	/* Enable nested and hardware stack */
	li t0, 0x0b
	csrw 0x804, t0
	/* Enable floating point and interrupt =0x6088 / =0x7888 */
	li t0, 0x7888
	csrs mstatus, t0

	la t0, _vector_base
	ori t0, t0, 3
	csrw mtvec, t0

	/*
	la t0, main
	csrw mepc, t0
	mret
	*/

	j main

Можно поправить исходный примерно так.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...