采用CCD传感器作为系统的传感器输入,采用增量式PID作为程序算法部分。
单片机源程序如下:
- /*
- ******************************************************************************
- * @file main.c
- * @author WangQuan
- * @date 2016--10--11
- * @brief 用3.5.0版本库建的工程模板
- * @本实验是用mini stm32 开发板实现
- ******************************************************************************
- 目的是:智能车(使用线阵CCD)循迹
-
- ******************************************************************************
- */
- #include "stm32f10x.h"
- #include "usart1.h"
- #include "adc.h"
- #include "led.h"
- #include "oled.h"
- #include "pwm_output.h"
- #include "display.h"
- #include "dianji.h"
- u16 PWM_DIAN=1000; //8000 SHI 11% // 1000 shi 88%
- u16 PWM_DUO=58650;// 60000 shi 4% zuo // 55500 shi 11% you
-
- u8 AtemP,value1_max,value1_min,PixelAverageValue_old;
- unsigned char PixelAverageValue;
- void erzhihua(void)
- {
- extern unsigned char PixelAverageValue;
- unsigned char i;
-
- for(i=0;i<128;i++)
- {
- if(ao_d[i]>125) //PixelAverageValue即为阈值
- {
- ao_d[i]=255;
- }
- else
- {
- ao_d[i]=0;
- }
-
- }
-
- }
- /************************延时函数***************************/
- void Delay(__IO uint32_t nCount)
- {
- for(; nCount != 0; nCount--);
- }
- /************************延时函数***************************/
- /*************************主函数****************************/
- int main(void)
- {
-
- /***************配置,系统时钟为72M***********/
- SystemInit();
- LED_GPIO_Config(); //LED 端口初始化
- Dianji_GPIO_Config();
- USART1_Config();
- ADC1_Init();
- SPI2_Init(); //初始化SPI硬件口
- CCD_Prepare();
- LED1( ON ); // 亮
- TIM4_PWM_Init(9000,0); //TIM1 PWM波输出初始化,并使能TIM1 PWM输出 8KHZ
- TIM3_PWM_Init(62535,22); //TIM1 PWM波输出初始化,并使能TIM1 PWM输出 50HZ
- TIM_SetCompare2(TIM3,PWM_DIAN);
- TIM_SetCompare3(TIM4,PWM_DUO);
- OLED_Init(); //初始化OLED
- OLED_ShowString(1,0, "Hello");
- A1(ON); //ON 0 OFF 1
- A2(OFF); // 正
-
- while (1)
- {
- CCD_Find(1200);//曝光时间2uS单位可根据实际情况修改 时间定在10ms~20ms效果会比较好
- erzhihua(); //二值化
- suanzhongzhi();
- servo_PD(45,150,650); // 35 150 650
- display();
- }
- }
- /*************************主函数****************************/
- /*****************************0*********END OF FILE**********************/
复制代码
所有资料51hei提供下载:
权的车20161026 15:58 11.5V电压 -调试程序.rar
(282.88 KB, 下载次数: 94)
|