Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить

CH340G как UART мост с возможностью ISP программирования

Вс фев 19, 2023 14:08:48

Хочу использовать CH340G не только как uart мост для обычной работы, но и через USB менять прошивку в устройстве. Плюс подружить с SPI чипом на шине.
datasheet CH340G https://static.efetividade.net/img/ch34 ... -34852.pdf

Заморочка стала в недостатке выходов для ногодрыга.
Необходимо три ноги на выход (RESET, CLK, MOSI) и лишь одна на вход. В чипе наоборот избыток входящих линий. Приходится забирать все три выходные линии. В том числе и TXD.

2 TXD Output UART Data Transmit output.
3 RXD Input UART Data Receive input.
9 CTS# Input UART flow control signal Clear to Send.
10 DSR# Input UART flow control signal Data Set Ready.
11 RI# Input UART flow control signal Ring In.
12 DCD# Input UART flow control signal Data Carrier Detect.
13 DTR# Output UART flow control signal Data Terminal Ready.
14 RTS# Output UART flow control signal Request to Send.


В сети найти получилось лишь пару вариантов и оба они юзают TXD. И никакой развязки SPI:
https://www.instructables.com/Serial-TTL-AVR-ISP/
http://nerdralph.blogspot.com/2014/05/p ... ammer.html

1. Можно сделать отдельный переключатель "перпрошивка", который зажимает reset МК.
Так мы обойдемся лишь двумя линиями DTR# RTS#, avrdude остается лишь зашить кристалл.
Не знаю, как дудка отнесется к "неуправляемому" reset.
Вроде как простой вариант, но наличие переключателя кумарит и нет развязки SPI

2. Еще вариант добавить буфер 74HC244. Скрестить STK200, CH340G и avrdude: RTS# подцепить на reset МК и включение буфера, TXD использовать для сигнала CLK через буфер. Так и развязка SPI будет и TXD освобождается.
Имеем, пусть и неспешный, внутренний программатор. Не занимаем память бутлоадером.

Как вам вариант? Буду рад вашим мыслям, идеям, уточнениям.
Ответить