stm8s输出比较已——反复思考

guangxv   2010-7-20 17:46 楼主
以下是输出比较的一段程序,麻烦各位高手看看哪里出错了!
#include <STM8S105C_S.h>
//unsigned int a;
void GPIO_Init(void)
{
PB_DDR=0XFF;
PB_CR1=0XFF;
PB_CR2=0XFF;
}
void clock_init(void)
{
// CLK_ECKR&=0XFE;//关闭外部时钟
// CLK_ICKR|=0X01;//打开内部时钟
CLK_CKDIVR=0X18;//主时钟频率为2M   
}
void bijiao(void)
{
TIM1_PSCRH=0X00;//4分频
TIM1_PSCRL=0X03;
TIM1_ARRH=0X00;//先写高位,后写低位
TIM1_ARRL=0X50;//自动重装寄存器值为255
TIM1_CCR1H=0X00;//先写高位,后写低位
TIM1_CCR1L=0X40;//捕获比较寄存器的值为127
TIM1_CCMR1=0X10//匹配时强制OC1REF为高,禁用CCR1预装载功能
TIM1_CCER1&=0XFD;// OC1高电平为有效电平
TIM1_CCER1|=0X01;//使能输出
TIM1_CR1|=0X01;//启动计时器
}
main()
{
GPIO_Init();
clock_init();
bijiao();
while (1);
}

回复评论 (5)

                                 端口搞错了。。。。
点赞  2010-7-20 19:03
                                 最好加上更新事件,否则第一次计数不准确
点赞  2010-7-20 19:04
                                 楼主运行这段程序出现了什么问题
点赞  2010-7-20 20:21
                                 楼主把TIM1通道端口初始化为PB的端口,实际应该是PC1口,所以肯定看不到效果啦
点赞  2010-7-20 20:28
                                 多谢提醒,问题已解决!
点赞  2010-7-22 13:24
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复