Skip to content

Does not run on Blue Pill STM32F103  #12

Description

@chrysophylax

Trying to run the latest version on the official STM32 Core v 1.9.0 Arduino board gives me a bunch of errors in the IDE.
What's the last known working version?

/home/billy/Arduino/ulisp.cpp/ulisp.cpp.ino: In function 'void FlashSetup()':
ulisp.cpp:383:3: error: 'FLASH_Unlock' was not declared in this scope; did you mean 'HAL_FLASH_Unlock'?
  383 |   FLASH_Unlock();
      |   ^~~~~~~~~~~~
      |   HAL_FLASH_Unlock
ulisp.cpp:386:14: error: 'FLASH_ErasePage' was not declared in this scope
  386 |     Status = FLASH_ErasePage(page);
      |              ^~~~~~~~~~~~~~~
ulisp.cpp:387:19: error: 'FLASH_COMPLETE' was not declared in this scope; did you mean 'FLASH_CR_PER'?
  387 |     if (Status != FLASH_COMPLETE) error2(SAVEIMAGE, PSTR("flash erase failed"));
      |                   ^~~~~~~~~~~~~~
      |                   FLASH_CR_PER
/home/billy/Arduino/ulisp.cpp/ulisp.cpp.ino: In function 'void FlashWrite16(unsigned int*, uint16_t)':
ulisp.cpp:392:21: error: 'FLASH_ProgramHalfWord' was not declared in this scope
  392 |   uint16_t Status = FLASH_ProgramHalfWord((*addr) + Eeprom, data);
      |                     ^~~~~~~~~~~~~~~~~~~~~
ulisp.cpp:393:17: error: 'FLASH_COMPLETE' was not declared in this scope; did you mean 'FLASH_CR_PER'?
  393 |   if (Status != FLASH_COMPLETE) error2(SAVEIMAGE, PSTR("flash write failed"));
      |                 ^~~~~~~~~~~~~~
      |                 FLASH_CR_PER
/home/billy/Arduino/ulisp.cpp/ulisp.cpp.ino: In function 'uint16_t FlashRead16(unsigned int*)':
ulisp.cpp:464:27: error: ISO C++ forbids declaration of 'type name' with no type [-fpermissive]
  464 |   uint16_t data = (*(__IO uint16*)((*addr) + Eeprom));
      |                           ^~~~~~
In file included from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f103xb.h:132,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/system/Drivers/CMSIS/Device/ST/STM32F1xx/Include/stm32f1xx.h:131,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/cores/arduino/stm32/stm32_def.h:28,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/cores/arduino/stm32/clock.h:43,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/cores/arduino/wiring_time.h:23,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/cores/arduino/wiring.h:38,
                 from /home/billy/.arduino15/packages/STM32/hardware/stm32/1.9.0/cores/arduino/Arduino.h:36,
                 from sketch/ulisp.cpp.ino.cpp:1:
/home/billy/.arduino15/packages/STM32/tools/CMSIS/5.5.1/CMSIS/Core/Include/core_cm3.h:170:21: error: expected primary-expression before 'volatile'
  170 | #define     __IO    volatile             /*!< Defines 'read / write' permissions */
      |                     ^~~~~~~~
/home/billy/Arduino/ulisp.cpp/ulisp.cpp.ino:464:22: note: in expansion of macro '__IO'
  464 |   uint16_t data = (*(__IO uint16*)((*addr) + Eeprom));
      |                      ^~~~
ulisp.cpp:464:22: error: expected ')' before 'volatile'
  464 |   uint16_t data = (*(__IO uint16*)((*addr) + Eeprom));
      |                     ~^
      |                      )
ulisp.cpp:464:54: error: expected ')' before ';' token
  464 |   uint16_t data = (*(__IO uint16*)((*addr) + Eeprom));
      |                   ~                                  ^
      |                                                      )
/home/billy/Arduino/ulisp.cpp/ulisp.cpp.ino: In function 'object* fn_pinmode(object*, object*)':
ulisp.cpp:2880:17: error: 'WiringPinMode' was not declared in this scope
 2880 |   pinMode(pin, (WiringPinMode)pm);
      |                 ^~~~~~~~~~~~~
exit status 1
'FLASH_Unlock' was not declared in this scope; did you mean 'HAL_FLASH_Unlock'?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions