• 大小: 29KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: 其他
  • 标签: 循迹小车  

资源简介

循迹小车,龙人宝贝,寻迹程序能够走圆三角形、五角星。所用传感器为QTI

资源截图

代码片段和文件信息

#include
#include
 
 
#define  Threshold   100           //黑色与白色之间的阈值
 
 
#define LeftQti    P1_2                   //接在P1_2 
#define LeftCenterQti      P1_3        //接在P1_3 
#define RightCenterQti     P1_4        //接在P1_4 
#define RightQti    P1_5                  //接在P1_5 
typedef unsigned char uint8_t;
 
// 判断黑线与白线之间的标志
 
// 值赋予1-表示黑线
 
// 值赋予0-表示白线
 
uint8_t sDigi0 = 0; 
uint8_t sDigi1 = 0; 
uint8_t sDigi2 = 0; 
uint8_t sDigi3 = 0; 
 
/******************************************************************* 
函数名:
 long RCtime(uint8_t sensPin) 
功能:检测出灰度值
 
输入参数:sensPin-接QTI的管脚号
 
输出参数:result -灰度值
 
********************************************************************/ 
long RCtime(uint8_t sensPin) 

long result = 0; 
    DDRB |= _BV(sensPin); 
    PORTB|= _BV(sensPin); 
delay_nms(1);                   //充电1ms 
  DDRB &=~_BV(sensPin); 
    PORTB&=~_BV(sensPin); 
    while((PINB&_BV(sensPin))) result++; 
    return result; 
 } 
 
/******************************************************************* 
函数名:
int main() 
功能:主函数
输入参数:无
 
输出参数:
NULL 
********************************************************************/ 
int main() 

uart_Init();                           //串口头文件
SET_DDRC3;                          //设置PC3为输出口
SET_DDRC2;                          //设置PC2为输出口
 
while(1) 

// 打印出QTI传感器的灰度值
printf(“LeftQti:%d “RCtime(LeftQti)); 
printf(“LeftCenterQti:%d “RCtime(LeftCenterQti)); 
printf(“RightCenterQti:%d “RCtime(RightCenterQti) ); 
printf(“RightQti:%d\n“RCtime(RightQti)); 
//--------------------- 判读黑线与白线的阈值----------------------------- 
if(RCtime(LeftQti) > Threshold)         
sDigi0 = 1;                     //黑线
 
else                                   
sDigi0 = 0;                     //白线
 
if(RCtime(LeftCenterQti) > Threshold)   
sDigi1 = 1;                     //黑线
 
    else                                  
   sDigi1 = 0;                     //紫?
 
    if(RCtime(RightCenterQti) > Threshold)  
sDigi2 = 1;                     //黑线
 
else                                    
sDigi2 = 0;                     //白线
 
    if(RCtime(RightQti) > Threshold)        
sDigi3 = 1;                     //黑线
 
    else                                   
sDigi3 = 0;                     //白线
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        547  2010-12-07 11:14  寻迹测试\Boebot.h

     文件       1196  2010-12-07 11:14  寻迹测试\IR.h

     文件       3543  2010-12-07 11:14  寻迹测试\LCD.h

     文件       1057  2010-12-07 11:14  寻迹测试\Move.h

     文件       4582  2018-05-25 11:22  寻迹测试\test.plg

     文件          0  2018-05-25 10:11  寻迹测试\test.uv2

     文件       2526  2018-05-25 15:39  寻迹测试\Text1.c

     文件       5108  2018-05-25 11:22  寻迹测试\Text1.LST

     文件       3019  2010-12-07 11:14  寻迹测试\uart.h

     文件        913  2010-12-07 11:14  寻迹测试\Whisker.h

     文件      14489  2018-05-26 16:12  寻迹测试\xunji

     文件       2284  2018-05-26 16:12  寻迹测试\xunji.c

     文件       6076  2018-05-26 16:12  寻迹测试\xunji.hex

     文件         42  2018-05-26 16:12  寻迹测试\xunji.lnp

     文件       6009  2018-05-26 16:12  寻迹测试\xunji.LST

     文件      19194  2018-05-26 16:12  寻迹测试\xunji.M51

     文件      15857  2018-05-26 16:12  寻迹测试\xunji.OBJ

     文件       1108  2018-05-30 17:02  寻迹测试\xunji.Opt

     文件        163  2018-05-30 17:02  寻迹测试\xunji.plg

     文件       2069  2018-05-26 18:56  寻迹测试\xunji.Uv2

     目录          0  2018-06-18 16:15  寻迹测试

----------- ---------  ---------- -----  ----

                89782                    21


评论

共有 条评论