Avatar for hutu

hutu

Member since Sep 2017 • Last active Nov 2017
  • 2 conversations
  • 15 comments

a new programmer ...

Most recent activity

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    thanks and very clear. double check again, indeed STM32L4 porting is based on LL library instead of HAL. and Espruino is more memory efficient than MicroPython.

    hope it's not offensive, many people will check both Espruino and MicroPython, at least for me MicroPython seems easier for new comer the way different vendor/board/chip/process organized. I know it's carping and unfair to you as Espruino is almost your one-man story. hope no hard feeling to you, I really enjoy and thanks for your creation :)

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    sure, it's not trivial and I will go deeper and check further by myself.

    just an open question, why not use the HAL/CMSIS files generated by ST tools directly ? I saw for STM32L4 family you are using this approach, MicroPython use this approach too, should be easier and more consistent than from scratch ? or the official library is too buggy ?

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    I guess it's due to you derived the scripts for support of such boards from STM32F4DISCOVERY, which is using STM32F407xx. if the new chip has different peripheral configurations, need tune the scripts manually and seems not straight forward process.

    and also in the beginning, I'm referring to Nucleo board BOARD.py file(NUCLEOF411RE.py) and CSV file(stm32f411.csv, stm32f411_af.csv), but seems you have different scripts for Nucleo and Discovery boards(for example in BOARD.py file, Discovery board do not call the function to scan the alternate function file).

  • in Other Boards
    Avatar for hutu

    screen shoot of startup_stm32f411xe linker error

  • in Other Boards
    Avatar for hutu

    data sheet of stm32f401vet6(for stm32f411discovery)

  • in Other Boards
    Avatar for hutu

    screen shoot of adc-number error.

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    I have pulled your latest commit and compiled it without errors without any modification. thanks for your great support :)

    but still questions and doubts:

    1.I have double checked the data sheet of STM32F411VET6, the ADC number is only 1, but if I revise the adc number to 1, the compilation error as attached screen shoot of adc-numbers.

    2.I have downloaded from ST website and put the startup_stm32f411xe.s file into targets/lib/stm32f4 folder. if use it, the build will be failed at the final link stage. switch to startup_stm32f401xx.s without issue. see attached screen shoot startup_stm32f411xe-linker-error.

    3.I find an error in stm32f411.csv(one line with eventout/adc1_9 instead of eventout,adc1_9, cause the index out of range error), after this error be corrected, I met another error, seems link to ADC, no matter put adc number as 2 or 1, switch the startup files, it's the same error message, see attached screen shoot of error-with-stm32f411-csv. switch back to stm32f40x.csv or stm32f401.csv, they are working.

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    I attach a short screen shoot of the diff between two csv files fyi.

    without format error, the python script should work properly...

    but now just switch to f411.csv file, the compilation is broken: list index out of range

    -->

    Traceback (most recent call last):
    File "scripts/build_pininfo.py", line 50, in

    pins = board.get_pins()
    

    File "/Users/dp/Desktop/espmac/scripts/../boards/STM32F411DISCOVERY.py", line 139, in get_pins

    pins = pinutils.scan_pin_file([], 'stm32f411.csv', 5, 8, 9)
    

    File "/Users/dp/Desktop/espmac/scripts/pinutils.py", line 197, in scan_pin_file

    pin["csv"][head] = pindata[i].strip()
    

    IndexError: list index out of range
    make: *** [/Users/dp/Desktop/espmac/gen/jspininfo.h] Error 1
    make: *** Waiting for unfinished jobs....
    make: *** [/Users/dp/Desktop/espmac/gen/platform_config.h] Error 1

  • in Other Boards
    Avatar for hutu

    Hi Gordon,

    follow your suggestion, I have changed the csv file from 'stm32f411.csv'(which created by me following the data sheet)to 'stm32f401.csv'(original) in pinutils.scan_pin_file().

    the same applied to pinutils.scan_pin_af_file() - from 'stm32f411_af.csv' to 'stm32f401_af.csv'.

    and changed the startup file from 'startup_stm32f411xe.o' to 'startup_stm32f40_41xxx.o'

    then the build work successfully.

    but I'm more confused as I do not understand the root cause.

    why the standard startup file(startup_stm32f411xe.o)is not working ?

    the pin definitions is slightly different between stm32f401 and stm32f411, why follow strictly with data sheet, without format error, the parser is not working ?

    sorry for the curious as I'm keen on understanding the principals & processes how you do it(how to build or port to new device).

    thanks for your kindness.

Actions