初级会员

- 积分
- 119
- 金钱
- 119
- 注册时间
- 2015-12-23
- 在线时间
- 37 小时
|

楼主 |
发表于 2016-8-11 10:35:35
|
显示全部楼层
舵机连线没有问题,我用别人写的库函数的程序可以运行,程序中我倒是看到了个错误,
TIM1->CCMR1=6<<12; //PWM 模式1
TIM1->CCMR1=1<<11; //预装载使能
其中应该是|=,我写成 = 了,现在程序是
#include"stm32f10x.h"
#include"delay.h"
#include"mokuai.h"
#include"usart.h"
void TIM1_PWM_Init(u16 arr,u16 psc) // 周期 分频
{ //定时器2 的CH1 PWM输出初始化
RCC->APB1ENR|=1<<0; //定时器2使能
RCC->APB2ENR|=1<<2; //IO口A时钟使能
GPIOA->CRL&=0XFFFFFFF0; //设置A9为推挽复用输出
GPIOA->CRL|=0X0000000B;
GPIOA->ODR=1<<0;
TIM2->ARR|=arr;
TIM2->PSC|=psc;
TIM2->CCMR1|=6<<4; //PWM 模式1
TIM2->CCMR1|=1<<3; //预装载使能
TIM2->CCER|=1<<0; //CO1输出使能 低电平有效
TIM2->CR1|=0x0080; //设置第7位 使能缓冲器
TIM2->CR1|=0x01;
}
int main(void)
{
int a=5;
Stm32_Clock_Init(9);
delay_init(72);
TIM1_PWM_Init(199,7199); //周期20ms
while(1)
{
for(a=5;a<25;a++)
{
TIM2->CCR1=a;
}
if(a==25)
{
a=5;
}
}
}
用软件模拟端口是有输出的,但连上舵机,舵机不动~~~~~,帮我看一下吧 |
|