用的tcs230 (淘宝上买的gy-31模块) ,移植论坛里大神们的M3的程序,还没有成功
s0,s1,s2,s3配置成输出,out配置成输入,对out配置了外部中断,但是没有读入频率,,求大神们指点
[mw_shl_code=c,true]//中断函数
void EXTI7_IRQHandler(void)
{
if(EXTI_GetITStatus(GPIO_Pin_8) != RESET)
{
EXTI_ClearITPendingBit(GPIO_Pin_8);
Colour_num++;
}
}
//颜 {MOD}传感器初始化
//s0-PD12,S1-PD13,S2-PC8,S3-PC9
//OUT-PA8
//timer9,exti7
void ColorSensorInit(void)
{
EXTI_Config(GPIOA,GPIO_Pin_8);
TIM_Init(TIM9,9999,167,2,2); //10ms
GPIO_Init_Pins(GPIOD, GPIO_Pin_12,GPIO_Mode_OUT); //s0
GPIO_Init_Pins(GPIOD, GPIO_Pin_13,GPIO_Mode_OUT); //s1
GPIO_Init_Pins(GPIOC, GPIO_Pin_8,GPIO_Mode_OUT); //s2
GPIO_Init_Pins(GPIOC, GPIO_Pin_9,GPIO_Mode_OUT); //s3
GPIO_Init_Pins(GPIOA, GPIO_Pin_8,GPIO_Mode_IN); //out
}
/*******************************************
*
* 白平衡
*
*******************************************/
void whitebalance(void)
{
S0_On();S1_On();
S2_Off();S3_Off();//打开红 {MOD}通道
Colour_num=0; //开始计数
TIM_Delayms(TIM4,10);
Rgena = Colour_send; //求出红 {MOD}因子
//----------------------------------
S2_On();S3_On();//打开绿 {MOD}通道
Colour_num=0;
TIM_Delayms(TIM4,10);
Ggena = Colour_send; //绿 {MOD}因子
//----------------------------------
S2_Off();S3_On();//蓝 {MOD}通道
Colour_num=0;
TIM_Delayms(TIM4,10);
Bgena = Colour_send; //蓝 {MOD}因子
S2_On();S3_Off();//关闭通道
}
[/mw_shl_code]
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>