Re: Dotazy k STM32F103C8T6 a multiplexované řízení LED displeje.

Martin Hanek martin na hanek.net
Čtvrtek Březen 11 08:01:52 CET 2021


Ale USB DFU nepodporuje upgrade na dálku přes sériovou linku, ne?

Martin Hanek

Dne 11.03.2021 v 0:07 Petr Zahradník napsal(a):
> Vždyť v STM32 obvodech (ne úplně ve všech, ale ve většině ano) je bootloader už vestavěný přímo v systémové ROM. Jmenuje se to USB DFU Bootloader. Já jsem ho už několikrát zkoušel a funguje. Pravda, setkal jsem se i s tím, že se mi nechtěl načíst ten správný driver pro DFU, to se nějak blbě řešilo, ale byl k tomu nějaký workaround. Na internetu je kolem toho dost informací, podívej se třeba sem přímo od ST:
>
> https://www.youtube.com/watch?v=Kx7yWVi8kbU
>
> Petr Zahradník, počítačový expert
> e-mail: clexpert na clexpert.cz
> mobil: 602 409 601, telefony: 475 501 627, 910 256 000
> http://www.clexpert.cz, http://www.zahradniksebavi.cz
> Petr Zahradník, Computer Laboratory
> Obvodová 740/14, 400 07 Ústí nad Labem
>
> -----Original Message-----
> From: Hw-list <hw-list-bounces na list.hw.cz> On Behalf Of Martin Hanek
> Sent: Wednesday, March 10, 2021 9:12 PM
> To: hw-list na list.hw.cz
> Subject: Re: Dotazy k STM32F103C8T6 a multiplexované řízení LED displeje.
>
> Řeším bootloader, protože není nějak potřeba, resp. nálada jej do MCU
> psát. Myslím si, že u nového/neznámého MCU by to zabralo stejně nebo
> více času, jak samotný hlavní fw. Jeho princip a funkce jsou mi jasné.
> Software do PC, který bude fw odesílat není mým úkolem, takže jej
> neřeším. Pokud bude v MCU bootloader, tak předám popis, protokol a ať se
> stará někdo jiný.
> Když jsem kouknul na ten "chip45boot", tak dodávají jak bootloader, tak
> nahrávací software, prostě kompletní řešení.
>
> Martin Hanek
>
> Dne 10.03.2021 v 20:58 Jaroslav Buchta napsal(a):
>> Pokud resite takovoy detail jako bootloader na strane MCU, tak
>> nevim... Co ma byt to, co tam program dostane?
>>
>> Ja pouzivam system, ze v MCU je permanentne bootloader a na vyssi
>> adrese pak aplikace. Bootloader ocucha stav (hlavicka, CRC...
>> aplikace) a spusti ji. Samozrejme je nutny nejaky mechanismus, aby se
>> zabranilo spusteni pri update. Na to zas ma aplikace nejaky prikaz, ze
>> zabise do backup registru/pameti nejaky magic word a udela RESET.
>> Bootloader to pozna a nespusti ji. IMHO je zasadni, aby behem update
>> nemohlo dojit ke stavu, ze uz nebude mozne nahrani firmware, i kdyz se
>> update jakkoli prerusi. V tom pripade bootloader pozna, ze aplikace ma
>> chybnou hlavicku nebo CRC, nespusti ji a je mozny update. Jak uz jsem
>> psal, nejcasteji na to pouzivam modbus a vlastni aplikaci v C#, jestli
>> to jede pres UART nebo TCP uz zalezi na situaci. Pokud se bootloader i
>> zamkne, je v podstate nemozne, aby nebyl proveditelny update po
>> jakekoli udalosti (ale spis to nedelam, predpokladam, ze by mohl byt
>> nutny i update bootloaderu ;-) )
>>
>> Dne 10.03.2021 v 20:39 Martin Hanek napsal(a):
>>> Dobrý večer,
>>> děkuji všem kolegům za odpovědi. Zareaguji na vše.
>>> Teď jste mě tedy znejistěli s tím, STM32F103C8T6 je starý typ, někdy
>>> i falšovaný a doporučujete jiný. Na druhou stranu na něj zazněla i
>>> chvála. Tak jsem na vážkách.
>>> Ony ty kopie budou asi více či méně povedené klony: CS32F103,
>>> GD32F103, CH32F103
>>> https://hackaday.com/2020/10/22/stm32-clones-the-good-the-bad-and-the-ugly/
>>>
>>> https://zeptobars.com/en/read/GD32F103CBT6-mcm-serial-flash-Giga-Devices
>>>
>>> Co se týká té eeprom, určitě není problém připojit externí. Displej
>>> nechám v multiplexu, ono to tak bylo doposud a fungovalo to bez
>>> problémů.
>>> Doposud jeden řádek displeje mající 6ks 7-segmentovek a matrix 5x7
>>> řídil malý PIC16F1826 a věřím, že to bez problémů stíhal. Komunikace
>>> přes RS485, bez bootloaderu.
>>> Nároky na ten procesor tedy skoro nejsou, zlepšení má být v tom, že
>>> tam bude bootloader pro aktualizaci fw přes RS485 a pokud bude
>>> dostatek pinů, tak by mohl řídit až 3 takové řádky.
>>>
>>> Zbývá mi jediné důležité kritérium a to je ten bootloader přes RS485.
>>> Požadovaná funkce je ta, že se hlavní program resetuje, bootloader
>>> naběhne, přijme postupně novou verzi fw, zapíše ji do flash a spustí
>>> ji. Podstatné je, že k tomu zařízení nemusím jít.
>>> Nechce se mi s tím trávit více času než je nutné. Kolega, který by to
>>> měl programovat, má s bootloadery zkušenosti, už nějaké udělal,
>>> fungují dobře, ale jsou určené pro Renesasy. Chtěl jsem mu pouze
>>> ulehčit práci, aby vyšel z něčeho hotového. Nebráním se ani komerčním
>>> věcem, našel jsem třeba toto:
>>> https://www.chip45.com/software/chip45boot-sourcecode/
>>> Mám kvůli tomu cukání dát tam nějaký Atmel.
>>>
>>> Martin Hanek
>>>
>>>
>>> _______________________________________________
>>> HW-list mailing list  -  sponsored by www.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list