你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
STM8S-OK.zip
2018-4-18 19:47 上传
点击文件名下载附件
1.78 MB, 下载次数: 1, 下载积分: ST金币 -1
STM8S-NG.zip
2.02 MB, 下载次数: 1, 下载积分: ST金币 -1
举报
查看全部评分
toofree 发表于 2018-4-18 19:58 你用的是STM8S103F3P6,关键的问题不是出错,而是这个片子没有TIM3
STM8S-NG - å¯æ¬.zip
2018-4-19 10:35 上传
1.9 MB, 下载次数: 1, 下载积分: ST金币 -1
toofree 发表于 2018-4-19 11:14 实际用的时候不用删除文件,只要把它排除在外,不编译就行了。
springvirus 发表于 2018-4-19 11:04 怎么不用st官方的st visual develop的环境,挺好用的
zcl201207 发表于 2018-4-18 22:06 TIM3不是由h文件决定的,而是由选择的型号决定的。。。
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
多谢你的指点,是这个原因了。但我还有个问题,在stm8s.h里,对tim1,Tim2,tim3的定义都是紧挨在一起,而且在它们(特别是tim3)前面并没有看到#if define ,按理在编译的时候,tim1,tim2能编译到,tim3也应能编译到的吧?
我知道,我是在下图选了103,但这个选择是如何作用到stm8s.h里的tim3定义上,让tim3的定义不会被编译的呢?
stm8s.h里有关TIM1,TIM2,TIM3de的定义如下(局部),完整的请看我所附的项目
TIM1_TypeDef;
/** @addtogroup TIM1_Registers_Reset_Value
* @{
*/
#define TIM1_CR1_RESET_VALUE ((uint8_t)0x00)
#define TIM1_DTR_RESET_VALUE ((uint8_t)0x00)
#define TIM1_OISR_RESET_VALUE ((uint8_t)0x00)
/**
* @}
*/
/** @addtogroup TIM1_Registers_Bits_Definition
* @{
*/
/* CR1*/
#define TIM1_CR1_ARPE ((uint8_t)0x80) /*!< Auto-Reload Preload Enable mask. */
#define TIM1_OISR_OIS1N ((uint8_t)0x02) /*!< Output Idle state 1 (OC1N output) mask. */
#define TIM1_OISR_OIS1 ((uint8_t)0x01) /*!< Output Idle state 1 (OC1 output) mask. */
/**
* @}
*/
/*----------------------------------------------------------------------------*/
/**
* @brief 16-bit timer (TIM2)
*/
typedef struct TIM2_struct
{
}
TIM2_TypeDef;
/** @addtogroup TIM2_Registers_Reset_Value
* @{
*/
#define TIM2_CCR3L_RESET_VALUE ((uint8_t)0x00)
/**
* @}
*/
/** @addtogroup TIM2_Registers_Bits_Definition
* @{
*/
#define TIM2_CCR3L_CCR3 ((uint8_t)0xFF) /*!< Capture/Compare 3 Value (LSB) mask. */
/**
* @}
*/
/*----------------------------------------------------------------------------*/
/**
* @brief 16-bit timer (TIM3)
*/
typedef struct TIM3_struct
{
__IO uint8_t CCR2L; /*!< capture/compare register 2 low */
}
TIM3_TypeDef;
/** @addtogroup TIM3_Registers_Reset_Value
* @{
*/
#define TIM3_CCR2L_RESET_VALUE ((uint8_t)0x00)
/**
* @}
*/
/** @addtogroup TIM3_Registers_Bits_Definition
* @{
*/
/*CR1*/
#define TIM3_CCR2L_CCR2 ((uint8_t)0xFF) /*!< Capture/Compare 2 Value (LSB) mask. */
/**
* @}
*/
STM8S-NG - å¯æ¬.zip
2018-4-19 10:35 上传
点击文件名下载附件
下载积分: ST金币 -11.9 MB, 下载次数: 1, 下载积分: ST金币 -1
点评
评分
查看全部评分
评分
查看全部评分
只要增加TIM3的宏定义——#define TIM3 ((TIM3_TypeDef *) TIM3_BaseAddress),就可以说编译过了。但是只是能编译过,实际肯定是不能用的。
多谢toofree,确实如此。还是第二中方法好,尽量不去改变库文件
STVD,软件仿真观察不到局部变量,也没法做到STOPWATCH,我是不得已才舍弃它的。你能在软件仿真时看到局部变量吗?
对,多谢