前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >饭仔DIY --《平衡车之硬件制作》

饭仔DIY --《平衡车之硬件制作》

作者头像
Rice加饭
发布2022-05-09 20:56:16
5280
发布2022-05-09 20:56:16
举报
文章被收录于专栏:Rice嵌入式Rice嵌入式

无聊的周末,开始了我的平衡车DIY设计。接下会不断更新我在DIY过程的遇到的问题,以及如何去处理。

首先确定好自己需要实现的功能,将其罗列起来,方便后续硬件的选型。作者第一版平衡车实现的是基本功能,没有附加其他的功能,所以硬件比较简单。

以下是作者用到的基本元器件:

元件

型号

MCU

stm32f103c8t6

BluetoothLE

HC-08

驱动

TB6612FNG

串口

CH340G

陀螺仪

MPU6050

5V稳压

LM2596-5

3.3V稳压

AMS1117

显示器

0.96OLED

显示器3.3V稳压

662K

蜂鸣器

5V有源蜂鸣器

元器件型号选好了,便是电路的设计:

1.MCU的设计(stm32f103c8t6):因为MCU是整个系统中最重要的电路,所以滤波电路是必不可少的部分,这是作者设计的电路,不过LC滤波电路的效果会更加好。作者的电路提供不同的烧写方式。

BOOT0

BOOT1

烧写方式

0

X

JTAG or SWD

1

0

ISP

2.驱动的设计(TB6612FNG):驱动的的电源直接接电池的,不过电池输入,作者还增加了一层滤波电路的设计。这是作者修改过的第二版驱动的电路图。第一版是使用了PA12和PA13引脚,然后后面发现,PA13的用成通用I/O时一直出问题,后面发现PA13是JTAG接口,在某度上查了一下,要作为通用I/O,其配置跟其他I/O不一样,需要在初始化时增加两句代码,而且初始化顺序不能颠倒。代码如下:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable , ENABLE);

作者通过网上的配置过程,确实能输出高低电平。但是测量它的电压,发现和普通I/O的电压值不一样,不同I/O的电压是3.3V左右,而它的输出只有1.5V左右。后面反复推敲,增加了个上啦电阻后,就可以正常一样使用了。如果嫌弃这样的配置,那么可以选择作者的第二版电路图。将PA12和PA13改为PB12和PB13。如下:

3.滤波电路的设计:作者在电路中的输入端增加了分压电阻,可以通过ADC实时采集电源的电压。采用二极管来防止电流反向处理。这个电路是作者自己随意设计的,可能不太正确,不对的大神可以指点指点。

4.CH340G串口电路的设计:作者在电路中增加ch340g的目的就是提供多种烧写方式。采用串口烧写代码的电路接法在上面第一点有说明。

5.JTAG烧写电路的设计:你会发现作者在的设计中,在每个引脚会增加个上拉电阻,原因是stm32的I/O识别的高电平需要2.0V以上,所以增加上拉电阻,以防I/O电压不足,导致出问题。

6.OLED电路的设计:作者的显示器设计,采用662K进行独立供电,也提供了几种方式实现,如下表:

R28

R29

R30

R31

4线SPI

0

1

0

1

3线SPI

1

0

0

1

I2C

0

1

1

0

7.稳压电路的设计:

5V稳压电路如下:

3.3V稳压电路,电路的输出端还增加了自恢复保险丝。如下:

8.BluetoothLE电路的设计:

9.按键模块电路的设计:

10.陀螺仪电路的设计

11.蜂鸣器电路的设计:

一、整体原理图:

二、PCB:

三、3D效果图:

四、实物图:

以上就是作者再设计过程中的经验分享。有不对的地方欢迎评价。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Rice 嵌入式开发技术分享 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档