STM32 bootloader

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Středa Červen 29 09:51:12 CEST 2016


To bude zalezet na tom, jakou verzi USB stacku pouzivaji. STM knihovna 
(spis priklad) na to ma jednoduche funkce ale je lepsi to jeste osetrit 
nejakym bufferem. Asi bych se podival do zdrojaku tech ar...no knihoven, 
jak to pouzivaji.
To STM USB je ale integrovano dost agresivne a v podstate veskera 
cinnost probiha v ISR, nerad to pouzivam, dost to narusuje ostatni funkce.

Dne 29.06.2016 v 9:46 Michal Grunt napsal(a):
> Takhle, já vím jak přesměrovat printf na hw UART to není problém, ale
> nevím jak se zachází s tím "USB sériovým portem" - VCP? Jestli je
> nutné celé USB inicializovat a kdo ví co na něm nastavovat (nedělá to
> bootloader?) nebo stačí použít pouze pár příkazů, aby šel znak na ten
> VCP (bez printf, printf je nyní bezpředmětné).
>
> Dne 29. června 2016 9:38 Peter janiš <peto.janis na gmail.com> napsal(a):
>> Možno pomôže: http://www.keil.com/forum/56766/
>> Alebo potom google: "printf redirect to UART"
>>
>> p.j.
>>
>> 2016-06-29 9:32 GMT+02:00 Michal Grunt <michal.grunt na gmail.com>:
>>> No mě by právě zajímalo co se skrývá pod funkcí write. Printf jako
>>> takové (z stdlib) není problém. Pokud použiji klasické systémové
>>> printf a ne Arduino (žádný bootloader, atd. jenom gcc a SPL) tak
>>> prostě inicializuji UART a upravím jednu funkci (asi putchar teď z
>>> hlavy nevím), která nasměruje znaky na UART. A mě by zajímalo jak
>>> nasměrovat znaky (nebo třeba jenom jeden znak) na ten virtuální
>>> sériový port. Když budu toto vědět už nebude problém ani printf.
>>>
>>> Dne 29. června 2016 7:03 Jaroslav Buchta <jaroslav.buchta na hascomp.cz>
>>> napsal(a):
>>>> Krome modulu Print.cpp (a .h) budete jeste potrebovat WString.cpp, h a
>>>> to by
>>>> IMHO melo stacit. Funkci write musite udelat sam a ta by mela jednoduse
>>>> poslat znak kam je potreba. Vzal jsem to z verze pro Atmel.
>>>> Ty arduino knihovny se pro inspiraci pouzivaji docela snadno.
>>>> Mohu vam poslat cely projekt pro ARM, kde to je pouzito, ale neni pro
>>>> eclipse, tusim je pro EM Block a je docela rozsahly - rozpracovany port
>>>> SW
>>>> pro 3D tisk.
>>>> Taky pozor na startup kod a spolupraci s prekladacem pro obsluhu
>>>> statickych
>>>> konstruktoru, kdyz uz cpp.
>>>>
>>>> Dne 28.06.2016 v 23:49 Michal Grunt napsal(a):
>>>>
>>>>> Tak jsem nainstaloval Arduino IDE, nastavil ho pro STM32, nahrál maple
>>>>> mini bootloader, zkompiloval projekt atd. Celý tento řetězec funguje.
>>>>> Program se nahraje pomocí dfu-util. Virtuální sériový port funguje
>>>>> (funkce serial.print v Arduinu). Takže nyní stačí jenom připojit STM
>>>>> přes USB bez STlink nebo serial/USB převodníku a může se nalít program
>>>>> a rovnou provádět jednoduchý debug (přes sériový port) což byl cíl.
>>>>> Ostatně takto asi funguje originální Arduino (nedělám s ním). Teď už
>>>>> jenom vypreparovat serial.print, abych toto mohl nastavit např. v
>>>>> Eclipse bez Arduino knihoven a Arduino prostředí...
>>>>>
>>>>> Našel jsem soubor
>>>>> Documents\Arduino\hardware\Arduino_STM32\STM32F1\cores\maple\Print.cpp
>>>>> Ale z toho není vůbec zřejmé co to dále dělá. Akorát se to odkazuje na
>>>>> funkci write...
>>>>>
>>>>> Nemám raději googlit stm32f1 vcp printf? Je to to samé co dělá
>>>>> serial.print?
>>>>>
>>>>> Dne 20. června 2016 19:15 Jaromir Sukuba <jarin.hw na gmail.com>
>>>>> napsal(a):
>>>>>> presne toto robi (bootloader + seriovy port) maple mini, co je
>>>>>> inkarnacia Arduina do STM32, dnes udrziavana v projekte STM32duino.
>>>>>> Je mozne, ze bude netrivialne to najst/ocistit/vykostit/upravit, ja
>>>>>> som to velmi neskumal.
>>>>>>
>>>>>> http://www.stm32duino.com/
>>>>>> https://github.com/rogerclarkmelbourne/STM32duino-bootloader
>>>>>> https://github.com/rogerclarkmelbourne/Arduino_STM32
>>>>>>
>>>>>> Vela zdaru.
>>>>>>
>>>>>>
>>>>>> 2016-06-20 19:09 GMT+02:00 Michal Grunt <michal.grunt na gmail.com>:
>>>>>>> Zdravím, nezkoušel někdo nahrát do SMT32 (konkrétně F103) nějaký
>>>>>>> bootloader, který by na USB portu emuloval sériový port (pro
>>>>>>> jednoduchý debug) a zároveň by přes něj šlo programovat abych nemusel
>>>>>>> používat STlink a USB RS232 převodník? Jeden čas jsem zkoušel
>>>>>>> bootloader z Arduina. Fungovalo to (Arduinu prostředí), ale nevím jak
>>>>>>> po té nastavit printf, aby šel výstup přes ten USB emulovaný sériový
>>>>>>> port a pak nevím jestli není nutné nastavit nějaký startup atd., aby
>>>>>>> to při programování nepřepsalo bootloader... Chci to používat v
>>>>>>> Eclipse+SPL.
>>>>>>>
>>>>>>> Děkuji, MG
>>>>>>> _______________________________________________
>>>>>>> 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
>>> _______________________________________________
>>> 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