废话少说直接上图
以下是几张侧面照



今天主要做了2件事:
1、编码器计数值实验
在中断处理函数中添加如下代码:
printf("%d,%d\r\n",Encoder_Left,Encoder_Right); //编码器值采集实验
即发送编码器的值。下载程序后,打开serialchart.exe,推一下小车,小车开始震荡,小车震荡过程中的左右编码器返回波形图如下所示:
由图知,直立情况下左右轮转速近似相等(编码器值相等),同时没有外界扰动时会趋近于0。
2、系统时间的获得
为了使得小车可以在系统运行后的固定时间内做动作,需要记录系统运行的时间,在这里做了一个获得系统开机时间的函数,最小单位是5ms。
(1)首先在main.c中定义 _5microsecond=0,second=0,minute=0,hour=0这4个无符号整形变量,然后在main.h中用extern声明。
(2)函数定义在show.c中,实现过程如下:
void systime_Get(void)
{
_5microsecond++;
if( (_5microsecond) == 200 )
{
_5microsecond = 0;
second++;
}
if( (second) == 60 )
{
second = 0;
minute++;
}
if( (minute) == 60 )
{
minute = 0;
hour++;
}
}
通过串口调试助手查看返回的数据可以比较方便地检测该函数的正确性。