原理图
![SCH_Schematic1_1-P1_2023-07-02.png](//image.lceda.cn/pullimage/pJ9uvZnbMeWeia28Dq6XTVKnQlwjKUxiSwJpflbt.png)
**Tip:1、循迹电路中ITR9909注意序号顺序(顺时针)1243,别放反了,并且画pcb时放到底层。**
**2、蜂鸣器供电应该3.3V,视频里是5V会导致一直响。**
**3、画PCB时超声波注意别摆反了(实物需要朝向前方)**
**4、建议增加按键或者蓝牙切歌**
PCB版-顶层
![1685633875332.jpg](//image.lceda.cn/pullimage/EwEKtoZskRdJu4aNgWDYAzz8ACiD0L9CWYsvw3qm.png)
PCB版-底层
![1685633892451.jpg](//image.lceda.cn/pullimage/zRUgu60wNqIny7VHvNUQ8n7GrSHJWBG1iEt6LBel.png)
模块:
1. LED车灯:
*小车前方有两个LED光强度照明灯,左右各一个。*
![1688231943705.jpg](//image.lceda.cn/pullimage/UaJf6YjwvW2qCTn2NBMb4AJrdLCE4pVOGyQd4DWe.png)
2. 按键:
*小车扩展板有2个独立按键,KEYS与KEYM,可用于启动和运动模式切换,在代码案例中有具体实现。KEYS按键有一个LEDS指示灯,KEYM按键有一个LEDM指示灯,按键按下可以切换灯的状态。当KEYM按下时进入避障模式,当KEYM没有按下时进入循迹模式,KKEYS是开启小车。*
3. 蜂鸣器:
*小车搭载了一个蜂鸣器,可用于遇到障碍物时发出警报,同时蜂鸣器的控制引脚还有定时器功能,可以改变其输出频率让其播放音乐*。
4. ADC电压检测:
*小车搭载了ADC电压检测电路,利用ADC采集功能实现电压采集,当电池没电时,提醒我们及时充电。可以看出利用三个相同电阻分压来检测电池的压降。*
电路:
![1688232360777.jpg](//image.lceda.cn/pullimage/m12vruUxu77gw609pPck4BXGkMGHP7oFT1GTv5ge.png)
代码:
if(adcValue < 3002)//电量低于6.6V时,蜂鸣器鸣叫
{
beep_on();
}
else//电量高于6.6V时,蜂鸣器关闭
{
beep_off();
}
5. 超声波模块:
*小车的正前方有一个HCSR04超声波模块,可以用于实现超声波避障。*
![253e1da1106a72bb0134e5d13c12057.jpg](//image.lceda.cn/pullimage/OgHpmdSP2kqskBaIxVlBo7HVLUEa6pWQdrpvugFJ.jpeg)
**tip:为了布线方便,改变摆放方向,导致超声波朝后,故飞线,故画PCB时要注意。**
6. 电机:
*小车有四个电机,使用RZ7899芯片驱动。可以实现前进,后退,左转,右转,停止(刹车/熄火),结合定时器PWM功能可以改变小车运动的速度。使用的电机时每分钟8000r,6000r足够,但是因为价格一样和为了更好的区分慢中快选择了8000r。*
7. 循迹:
_小车搭载了5路红外循迹,可用于循黑线行驶。使用ITR9909,一个灯发一个灯收,检测黑线,然后用电压比较器判断左右调整。_
_引脚:_
![1688233156834.jpg](//image.lceda.cn/pullimage/PZ7SWoJTdFuo219UFRs3hlC4T9ajImnerKlhU6oz.png)
_ 实物:_
![1688233221484.jpg](//image.lceda.cn/pullimage/O04H8XXgbeELDfY0ZxFafuJ60GdmfyGMGGxMjcsl.png)
_引脚顺序:_
![1688233290163.jpg](//image.lceda.cn/pullimage/hK38dgY6kZxflt0jYENJqBhGh48LO1UXh550Ejs3.png)
_使用数字万用表测量PIN1,PIN2之间,可以测量LED单向导通特性。前向导通电压:1.01V。_
8. 避障:
_小车可以使用超声波模块完成避障功能。_
_代码:_
int32_t HCSR04_Get_Distance(void)
{
uint32_t t=0;//Echo高电平时间
int32_t d=0;
Trig=1;
delay_1us(20);
Trig=0;
t=0;
while(Echo==0)
{
delay_1us(1);
t++;
if(t >= 1000000)
return -1;//设备响应超时处理,设备出现故障
}
t=0;
while(Echo)
{
delay_1us(9);
t++;
if(t >= 10000)//超出测量范围处理
return -2;
}
d = t*3/2; //t是波来回的时间,除以2是单个路程。
return d;
}
9. 蓝牙模块:
_小车提供了蓝牙模块接口,可配合手机蓝牙APP实现无线遥控小车的功能。_
_代码:_
if(g_recv_complete_flag) // 数据接收完成
{
g_recv_complete_flag = 0; // 等待下次接收
printf("g_recv_length:%d ",g_recv_length); // 打印接收的数据长度
printf("g_recv_buff:%s\r\n",g_recv_buff); // 打印接收的数据
switch(g_recv_buff[0]){
case 0x01: //前进
car_front(speed);
break;
case 0x02://后退
car_back(speed);
break;
case 0x03://左转
car_left(80);
break;
case 0x04: //右转
car_right(80);
break;
case 0x05: // 停止
car_stop(Brake_Stop);
break;
case 0x06: //左右灯亮
led_l_on();
led_r_on();
break;
case 0x07: //左右灯灭
led_l_off();
led_r_off();
break;
case 0x08: //低速
speed=42;
break;
case 0x09: // 中速
speed=66;
break;
case 0x0a: // 高速
speed=100;
break;
default:
printf("指令错误!!!\r\n");
break;
}
memset(g_recv_buff,0,g_recv_length); // 清空数组
g_recv_length = 0; // 清空长度
}
_ 界面:_
![bda716d5ae3647d153e28a161b07c4e.jpg](//image.lceda.cn/pullimage/QVwsdCs8QZXq4dZFYLclTxAn4PK3hbzPJCd66A5r.jpeg)
10. MP3
_MP3-TF-16P2,可使用TF卡和外插U盘,这里为了方便外接出了U盘。_
_接线:_
![1688234308420.jpg](//image.lceda.cn/pullimage/miPQBbPaQs3mwqNPkYJYLirQnbkOnN0L5TKxmtwZ.png)
_管脚说明:_
![1688234426553.jpg](//image.lceda.cn/pullimage/gSRyVDvmBt1XX7W12l49Sp9xhoseId23a7Bl5VPc.png)
_测试方法1:_
_只需要用到4根接线即可,VCC,GND连接电源,SPK1(或者SPK2),GND连接喇叭,接好以后,插入装有MP3音乐文件的TF卡或U盘,然后,短接ADKEY1和GND,就可以直接播放TF卡里的音乐了_
_测试方法2:_
_使用串口助手软件,将模块上的TX,RX分别接至USB转串口的下载调试接口上,通过串口助手软件发送控制指令,如播放TF卡中的第一首歌曲,相应的指令为:7E FF 06 03 00 00 01 FE F7 EF,具体的指令含义可以参考使用说明手册。要注意一点的就是发送的内容只能以16进制的方式发送,串口的波特率一定要选择9600,和MP3模块相对应。_
![1688234660845.jpg](//image.lceda.cn/pullimage/3fuDE8SEFuM0LsB3b2qIJm2272iwtdkDUn1oAaMV.png)
_测试方法3:_
_自己写程序进行控制调试,这里的发送和接收用的PA9 PA10所以是串口0,调试程序时已经初始化,直接发送字节即可。_
![1688234737372.jpg](//image.lceda.cn/pullimage/KHhJyeLOroOvMOuRR3Oei21lAQSZhXjo5Y8M3ani.png)
_ 代码:_
delay_1ms(1000);
usart_send_data(0x7e);
usart_send_data(0xff);
usart_send_data(0x06);
usart_send_data(0x03);
usart_send_data(0x00);
usart_send_data(0x00);
usart_send_data(0x01);
usart_send_data(0xef);
1
0
收藏到专辑