求救!STM8S003F3用TIM2可以输出PWM,用TIM1就没用
本帖最后由 脱缰的蜗牛 于 2016-5-9 15:39 编辑求救!STM8S003F3用TIM2可以输出PWM,用TIM1就没用,本来打算输出互补式的PWM,结果连PWM 都输出不了,用的软件是STVD的,在网上看到说要配置字,如果要的话又怎么配置呢??程序如下:
TIM1_PSCRH =0x00;//使用内部16MHZ
TIM1_PSCRL =0x00;//设定预分频16MHZ
TIM1_ARRH = 0x00; //设定输出频率=160kHZ
TIM1_ARRL = 0x64;//0x064=10016MHZ/100=160kHZ
TIM1_CCMR1 = 0x60; //CC1配置为输出 通道1为有效电平
TIM1_CCER1 = 0x01; //CC2ER1开启1,2,高电平有效
TIM1_CR1 |= 0x01; //使能TIM1计数器
TIM1_BKR |= 0x80;
TIM1_CCR1H = 0;
TIM1_CCR1L = 0x80;// 占空比值
先看外设时钟门控寄存器配置没有,我有stm8s103的选项字节配置你参考下:
void FLASH_Init(void)
{
//解锁数据 EEPROM
FLASH_DUKR = 0xae;
delay_us(1);
FLASH_DUKR = 0x56;
delay_us(1);
//判断解锁是否成功,即判断 FLASH_IAPSR 寄存器的 DUL 位是否为 1
while(!(FLASH_IAPSR & 0x08));
delay_us(1);
//使能选项字节写操作
FLASH_CR2 = 0x80;
delay_us(1);
FLASH_NCR2 = 0x7f;
delay_us(1);
*((unsigned char *)0x4803) = 0x01;
delay_us(1);
*((unsigned char *)0x4804) = 0xfe;
} 你好,需要配置选项字节
有两种方法,一种是在你的程序中写代码配置,如2楼所示,另一种是在STVP里根据需要对选项字节编程,如下图所示。
:loveliness::loveliness::loveliness::loveliness::loveliness::loveliness::):):):)好大收获 这种细活比较难发现,如果是中文还可以咬牙把说明文档看几遍, 这个例子可以参考下http://download.csdn.net/download/qq_20222919/10179594 求楼主TIM2的PWM程序,我和您的情况相反,我是TIM1能输出,TIM2死活不输出,1213888580@qq.com,跪求楼主帮助
页:
[1]