历史上的今天
今天是:2025年02月02日(星期日)
2020年02月02日 | STM8S103编译出错 bad struct/union operand
2020-02-02 来源:eefocus
STM8s103P 编译出现以下结果
bad struct/union operand
是由于未宏定义芯片类型
解决方法一 在project setting里面 C Compiler 更改 Preprocessor Definitions

方法二 更改stm8s.h
将下面的
/* #define STM8S208 */ /*!< STM8S High density devices with CAN */
/* #define STM8S207 */ /*!< STM8S High density devices without CAN */
/* #define STM8AF52Ax */ /*!< STM8A High density devices with CAN */
/* #define STM8AF62Ax */ /*!< STM8A High density devices without CAN */
/* #define STM8S105 */ /*!< STM8S Medium density devices */
/* #define STM8AF626x */ /*!< STM8A Medium density devices */
/*#define STM8S103 */ /* !< STM8S Low density devices */
/* #define STM8S903 */ /*!< STM8S Low density devices */
更改为
/* #define STM8S208 */ /*!< STM8S High density devices with CAN */
/* #define STM8S207 */ /*!< STM8S High density devices without CAN */
/* #define STM8AF52Ax */ /*!< STM8A High density devices with CAN */
/* #define STM8AF62Ax */ /*!< STM8A High density devices without CAN */
/* #define STM8S105 */ /*!< STM8S Medium density devices */
/* #define STM8AF626x */ /*!< STM8A Medium density devices */
#define STM8S103 /* !< STM8S Low density devices */
/* #define STM8S903 */ /*!< STM8S Low density devices */
同时更改
注销stmflash.h 里面的
芯片falsh的大小
#if defined (STM8S103) || defined(STM8S903)
// #define FLASH_PROG_END_PHYSICAL_ADDRESS ((uint32_t)0x9FFF) /*!< Program memory: end address */
//#define FLASH_PROG_BLOCKS_NUMBER ((uint16_t)128) /*!< Program memory: total number of blocks */
// #define FLASH_DATA_START_PHYSICAL_ADDRESS ((uint32_t)0x004000) /*!< Data EEPROM memory: start address */
// #define FLASH_DATA_END_PHYSICAL_ADDRESS ((uint32_t)0x00427F) /*!< Data EEPROM memory: end address */
//#define FLASH_DATA_BLOCKS_NUMBER ((uint16_t)10) /*!< Data EEPROM memory: total number of blocks */
// #define FLASH_BLOCK_SIZE ((uint8_t)64) /*!< Number of bytes in a block (common for Program and Data memories) */
#endif /* STM8S103, STM8S903 */
两个方法不能同时使用 建议使用方法一
史海拾趣
|
戏法人人会变,各有巧妙不同--用有限状态机对键盘模块的另类实现 最近阿姨家里的几个表哥都在热烈的讨论着状态机,表弟我心痒,也想来凑凑热闹。要想加入他们的讨论,首先得明白什么是状态机,这是今天的主题之一,不过我会首先给出定义,然后谈谈我的浅薄的理解。另外,前些日子正在学习GOF的《设计模式》,其中 ...… 查看全部问答> |
|
节能灯寿命为2500~5000小时,而半导体LED照明灯正常情况下的寿命是5万-8万小时,但LED灯的耗电量只有普通白炽灯、霓虹灯的1/10。因此,如果我国的照明全部采用LED灯,则一年节约的电费相当于建造了6座三峡电站。有关部门应该采取强制措施推广节能产 ...… 查看全部问答> |
|
常用标志寄存器含义的理解,这是微型计算机的题目,可我不知道如何回答,我是学软件的,初次接触这些硬件的知识,老是很模糊,弄不清楚实际是怎么回事,请各位给点意见,回答一下~谢谢~… 查看全部问答> |
|
谁有MSC51单片机视频教程及课件,最好是北航的!谢谢! 我的QQ号:250193148 它发到我邮箱里或者在线传给我 谢谢了!… 查看全部问答> |
|
秀下我做的调试工具:UsbHub+xlink+USB转串口/485/Nrf24L01/红外 秀下我的调试工具UsbHub+xlink+USB转串口/485/Nrf24L01/红外 看了小马哥的多功能调试工具真是羡慕啊,于是也做了个高速USBhub托了个xlink, 用stm32实现 USB转串口TTL/串口232/串口485(通过跳线来实现)/NRF24L01/红外,同时支持输出一路PWM输出。 ...… 查看全部问答> |
|
我下了光盘,按照HELPER2416_V2 开发板LINUX 用户手册 的说明按装上了。fedora开发环境。 没有什么可注意的地方,有一个地方就是安装fedora那个选项,直接选中解压后的F12目录就行。我不知怎么搞出两个fedora文件,反正也好用: 我现在的 ...… 查看全部问答> |




