how to use example
gicking opened this issue · 1 comments
Hello,
I came across your patch file for STM8L SPL, which is very neat, i successfully patched the SPL and i can see the generated template and project for SDCC, how do i use the provided makefile to build a project? i am usually using IDE (for example SW4STM32) so i am not used to makefiles at all.
Should i drop the makefile in the STM8L10x_StdPeriph_test folder and issue « make » in the terminal after cd to the directory?
The platform is STM8L101x3 and the environment is OS X, i have SDCC installed and working, i can compile single file firmwares, i also have stm8flash installed and working.
Ideally i would like to use this in Eclipse (which has the ddcc plugin installed) however the attempt (make new project from existing makefile) fails to compile, so if i could already compile from terminal it is fine for now.
Thank you in advance.
Hoel
hi Hoel,
nice to hear that you like the patches :-)
Unfortunately I cannot comment on how to use an IDE. Also I have no STM8L101x3 board available, so I can only check the build step using 'make' or shell scripts, not the upload. Sorry!
Anyway, building programs is quite easy and should works the same way under MacOSX - or so I expect... You can either use make
- or the provided shell script. But before you start please assert that:
SDCC
, stm8flash (tool for upload via debug-I/F) andmake
are installed in the$PATH
stm8flash
is working (I believe there are issues under MacOSX)- STM8L10x_StdPeriph_Lib_V1.2.1 downloaded and patched
To build e.g. example Project/STM8L10x_StdPeriph_Examples/GPIO/GPIO_IOToggle
perform the following steps:
- copy folder
Project/STM8L10x_StdPeriph_test
e.g. toProject/test
- copy all files from
Project/STM8L10x_StdPeriph_Examples/GPIO/GPIO_IOToggle
toProject/test
- in
test/SDCC/Makefile
- set the device type (this is n/a for STM8L10x, but required e.g. for STM8S)
- add required SPL modules to
SPL_SOURCE
(is dummy forGPIO_IOToggle
)
- build and upload either:
- manual:
- open a console in
test/SDCC
- type
make
-> creates foldertest/SDCC/STM8L10x
which contains hexfileSTM8L10x.hex
- type
stm8flash -c stlink -w ./STM8L10x/STM8L10x.hex -p stm8l101?3
-> uploads hexfile
- open a console in
- double-click:
- under MacOSX change
_UX_compile_run.sh
to_UX_compile_run.command
(see here) - in
_UX_compile_run.sh
set location ofstm8flash
forSWIM_LOADER
(or omit if in$PATH
) - double-click
_UX_compile_run.*
or type in console (for debug) -> builds code and uploads
- under MacOSX change
- manual:
PS: just for completeness: for STM8 devices with serial bootloader you can also upload the code via UART, see e.g. here