void DCS3200_Test(uint8_t k)
{
OS_CPU_SR cpu_sr=0;
uint16_t i,j;
uint32_t data[9][4];
uint32_t max,min,count,Average;
int pos[][4]={
{100,140,24,8}, {132,140,24,8}, {164,140,24,8}, {196,140,24,8}, {228,140,24,8}, {260,140,24,8}, {292,140,24,8}, {324,140,24,8}, };
// TIM2->SMCR&= 0XBFFF;//14位清零,禁止使用外部时钟模式2
TIM2->SMCR|= 0X4000;//使能外部时钟模式2
GPIO_ResetBits(GPIOC, GPIO_Pin_0 ); //使能端口
TIM2_Configuration();
// printf("2 \n");
//Average = 0; //注意全局变量在这里的初始化问题
for(i=0;i<8;i++)
{
// printf("3 \n");
for(j=0;j<4;j++)
{
// printf("4 \n");
switch (j)
{
case 0:
GPIO_ResetBits(GPIOC, GPIO_Pin_2 | GPIO_Pin_3); //选择红色滤光器
pString = "红色频率";
break;
case 1:
GPIO_SetBits(GPIOC, GPIO_Pin_2 | GPIO_Pin_3); //选择绿色滤光器
pString = "绿色频率";
break;
case 2:
GPIO_ResetBits(GPIOC, GPIO_Pin_3); //选择蓝色滤光器
GPIO_SetBits(GPIOC, GPIO_Pin_2);
pString = "蓝色频率";
break;
case 3:
GPIO_ResetBits(GPIOC, GPIO_Pin_2); //选择白色滤光器
GPIO_SetBits(GPIOC, GPIO_Pin_3);
pString = "白光频率";
break;
}
TIM_SetCounter(TIM2,0);
// delay_us(10000);// 10000 * 10us = 100ms
delay_ms(100);
Frequency=10*TIM_GetCounter(TIM2);//0.1s内计数波形个数
|