【开源硬件篇】STM32F103C8T6主控板

这篇具有很好参考价值的文章主要介绍了【开源硬件篇】STM32F103C8T6主控板。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

STM32F103C8T6主控板

设计目标

  • 能够控制9路5V舵机
  • 具有3路串口通信接口,其中有一路串口设计为串口转USB,通过一根USB数据线直接进行通信
  • 拓展口,除了所用到的功能模块的IO口,其余的IO口都拓展出去
  • 一路LED灯5V电源指示灯
  • 设计了两组3V3-GND引脚

一、STM32F103C8T6核心板外围引脚电路

1.1 原理图设计

【开源硬件篇】STM32F103C8T6主控板

​ 这里我们需要将对应的引脚和我们之前的【开源硬件篇】STM32F103C8T6核心板的外围IO电路对应起来。

​ 具体的引脚的功能我们需要可以建立一个Excel表格查找,便于我们将对应引脚的功能分配到指定电路中:
【开源硬件篇】STM32F103C8T6主控板

​ 注:第一列为引脚名称,第二列为引脚复用的功能列表,第三列为复用的功能。

1.2 PCB设计用例

【开源硬件篇】STM32F103C8T6主控板

​ 一般来说,核心板的插座都会放置到主控板的中心,便于我们后期的走线以及元器件的摆放。

二、ISP一键下载电路设计

2.1 原理图设计

【开源硬件篇】STM32F103C8T6主控板

2.2 原理分析
2.2.1 CH340电路选择

​ 一开始我的原理图设计时,串口转TTL芯片的采用的是CH340G,但是由于其需要额外提供晶振电路,导致物料增多,而CH340C芯片恰好把晶振电路集成到芯片的内部当中,而且价格也便宜,设计方便,所以采用CH340C芯片进行电路设计。

​ 关于CH340电路我们需要考虑以下几点:

1)电压匹配问题

  • 芯片供电问题

CH340芯片通过USB转换出来的TTL串口输入和输出电压是根据芯片的供电电压自适应的。

​ 如果CH340芯片是5V 供电,那么串口输出和采样都是5V;如果是 3.3V 供电,那么标准就成了 3.3V。若CH340芯片是5V供电,可以兼容3.3V系统;若CH340芯片是3.3V供电,则不能兼容5V系统,若使用5V系统,则可能会损坏芯片。
【开源硬件篇】STM32F103C8T6主控板

  • 芯片V3引脚接线问题

    5V 供电时芯片 V3 引脚需要接一个 0.01uf电容到地;3.3V 供电时直接将 V3 脚与 3.3V 电源引脚短接
    【开源硬件篇】STM32F103C8T6主控板

2)晶体以及电容的选用(CH340G需要,而CH340C不需要

​ 在选用晶振时如果选择 12MHz 的石英晶体,那么旁路电容选择 22pF 的独石或高频瓷片电容。如果选用的低成本陶瓷晶体,那么旁路电路的容量必须用该晶体厂家的推荐值,一般情况下是47pF。

​ 对起振困难的晶体,建议电容数值减半。如果仍然无法起振,最好参考一下选用晶振的官方推荐电容值。

3)芯片CH340的V3引脚作用

​ V3 引脚的电容用于内部电源节点退耦,来改善 USB 传输过程中的 EMI,通常容量在 4700pF 到 0.1uF 范围,建议容量为 0.01uF,即 103 电容.

2.2.2 ISP一键下载原理

【开源硬件篇】STM32F103C8T6主控板

​ DTR#和RTS#都是 输出类型,MCUISP(一键下载工具)会控制DTR#和RTS#的高低电平状态,从而控制BOOT0和NRST

​ 芯片上电后,DTR#、RST#初始状态的时都是高电平;当开始下载时,DTR#维持高,RST#拉低,此时Q1、Q2都导通,NRST为RTS#电平,即低电平,会发生复位,而BOOT0为RTS#,即高电平

​ 下载完成后,DTR#变低,Q2不导通,复位结束,此时BOOT0为高电平

注:先是DTR#变为高,RST#变为低,等到代码下载结束时 RST#先变为高电平,然后DTR#在变成高电平

所以,在使用FlyMcu的时候一定要选择如下图所示的模式:

【开源硬件篇】STM32F103C8T6主控板

2.3 PCB设计示例

【开源硬件篇】STM32F103C8T6主控板

​ 注:D+和D-最好为差分走线,这样我们的信号会更加稳定。

三、串口通信电路

3.1 原理图设计

【开源硬件篇】STM32F103C8T6主控板

3.2 原理分析

​ 串口是一种串行通信,设备之间通过数据信号线、地线、电源线连接,按数据位形式一位一位地传输数据的通讯方式,同一时刻只能传输一位(bit)数据。

​ 串口也是一种全双工通信,如图所示:

【开源硬件篇】STM32F103C8T6主控板

​ 串口分为发送方TX和接受方RX,TX用于向外面发送数据,而RX用于接收外面的数据,两者互不干扰,可以同时进行。

​ 串口是一种异步通讯方式,不需要时钟信号进行数据同步,但是要约定好数据的传输速率(波特率)。

​ 原理图中,两个物体之间的GND和VCC要同时连接,为数据提供高低电平的参考。VCC的选择可以选择3.3V或者5V,5V可以兼容3.3V,但是3.3V不能兼容5V。

3.3 PCB设计示例

【开源硬件篇】STM32F103C8T6主控板

四、5V转3.3V电路

4.1 原理图设计

【开源硬件篇】STM32F103C8T6主控板

4.2 原理分析
4.2.1 AMS1117芯片数据手册分析

1)简介:

​ 通过查阅数据手册,选择了AMS1117-3.3这款芯片,可以提供1A的电流。AMS系列有多种电压输出,包括了1.5V, 1.8V, 2.5V, 2.85V, 3.3V 和 5.0V

2)封装:

​ 选择的封装为:SOT-223

【开源硬件篇】STM32F103C8T6主控板

​ 1- Ground/Adjust

​ 2- VOUT

​ 3- VIN

3)最大额定值

​ 最大输入电压为15V,焊接温度最好控制在265℃以下

4)电气特性

【开源硬件篇】STM32F103C8T6主控板

4.2.2 AMS1117电路分析

​ 电容起到一个对电源的输入和输出进行一个滤波的操作

4.3 PCB设计示例

【开源硬件篇】STM32F103C8T6主控板

​ 电容一定要靠近芯片的对应引脚,这样滤波的效果才明显,否则会导致滤波效果很差,电源纹波比较大。

五、舵机控制电路

5.1 原理图设计

【开源硬件篇】STM32F103C8T6主控板

5.2 原理分析

​ 舵机是一种位置(角度)伺服的驱动器
【开源硬件篇】STM32F103C8T6主控板

​ 一个舵机由变速齿轮箱,电位器,电路板与直流电机组成.伺服电机由信号线输入的PWM信号控制。信号的频率应为50Hz,周期为20ms,PWM的占空比决定了舵机旋转到的角度。

​ 舵机的控制由一个脉冲宽度调制信号(PWM波)来实现

【开源硬件篇】STM32F103C8T6主控板

​ 因此舵机主要有电源线、PWM控制线、GND线。一般的舵机输入电压,从4.8V到7.2V左右,电压越大,舵机达到指定位置的速度越快。舵机的工作电流为100mA~2A,若发生舵机堵转可能会达到3A左右的电流,很容易把舵机烧坏,所以在使用时候要注意舵机的堵转问题。

5.3 PCB设计示例

【开源硬件篇】STM32F103C8T6主控板

​ 由于一个舵机的电流大概在1A左右,所以多个舵机驱动的话需要进行电源铺铜的方式,防止有导线不够粗而烧毁。

上述的原理图以及PCB设计已经开源至立创开源平台上,大家可以下载进行参考设计专属自己的STM32F103C8T6主控板,链接为:https://oshwhub.com/panzhongsheng/kai-yuan-ying-jian-STM32F103C8T6

如果觉得写的还不错的话,麻烦大家点赞收藏加关注哦!

PS:有单片机软硬件设计、嵌入式课程作业设计、课设等相关需求欢迎加入QQ群联系我哦!QQ群号: 593708918文章来源地址https://www.toymoban.com/news/detail-464391.html

到了这里,关于【开源硬件篇】STM32F103C8T6主控板的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【硬件基础】STM32F103C8T6芯片引脚定义及功能介绍

    3.1引脚定义图解释 上表中,S表示电源,IO表示输入输出,FT表示容忍电压可达5V,没有FT的只能达3.3V。 VBAT,备用电源引脚,当系统断电时,备用电源可给内部的RTC时钟和备份寄存器供电。 2号引脚,PC13-TAMPER-RTC,可以进行保护数据放在被读取 3-6号引脚,晶振输入 7号引脚,

    2024年03月17日
    浏览(23)
  • 舵机控制(STM32F103C8T6)

            本文是以 STM32F103C8T6 作为主控芯片,通过PB6端口输出PWM,实现控制180°舵机。 (一)概述         舵机是一种位置伺服驱动器器,是一种带有输出轴的小装置。当我们向伺服器发送一个控制信号时,输出轴就可以转到特定的位置。只在控制信号持续不变,伺服机构就

    2023年04月09日
    浏览(19)
  • STM32F103C8T6板子介绍

    STM32简介 STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器 STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等 STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器。  STM32F103C8T6 F1XX片上资源

    2024年02月11日
    浏览(21)
  • 功耗测评 | STM32F103C8T6

    STM32F103C8T6 MCU越来越广泛的应用在生产生活的各个领域,外接丰富的传感器、功能模块、通信模块、显示存储等可以形成各种可样的产品项目应用。对于功耗要求比较高的产品,一般会选择STM32L系列的MCU,但是从功耗的评测角度,逻辑上是基本相似的。 在很多应用场合中都对

    2024年02月07日
    浏览(17)
  • STM32F103C8T6系统板

    1.电源部分 2.复位 3.晶振 4. 电源电路——防反接 有关二极管 漫谈二极管防电源反接电路 本次采用上图右下角的NMOS防反接电路。 电源电路——电源芯片 AMS1117是AMS公司的 ,LM1117是NS(美国国家半导体)的,LM1117要贵很多,所以一般的用AMS1117就可以了。 (以下分析参考STM32F10

    2024年02月02日
    浏览(27)
  • STM32F103C8T6串口通信

      首先来看一下需要操作的函数,以及配置的步骤: 图1                                                  图2   Code: usart.c #include \\\"usart.h\\\" void ustart_Init(void ) { GPIO_InitTypeDef GPIO_Init_Ustar ; // 定义输出端口TX的结构体对象 USART_InitTypeDef USTART_Init; // 定义串口初始化结构体对象

    2024年02月16日
    浏览(20)
  • STM32F103C8T6串口调试篇

    项目开发中,当出现bug时,由于不知道某个变量的值,所以很难定位问题,针对此问题,串口调试脱颖而出。通过串口printf()实时将需要显示的信息打印出来,这样就很方便的定位问题。 串口设置方法 1.购买调试器pwlink2。参考STM32F103C8T6程序烧录方法_stm32f103c8t6如何烧录_流

    2024年02月12日
    浏览(19)
  • [STM32F103C8T6]ADC转换

    什么是ADC转换? ADC转换的全称是: Analog-to-Digital Converter ,指模拟 / 数字转换器 ADC的性能指标: ADC分辨率: SSA与VREF-一起接到地,DDA与VREF+接到3.3v,所以ADC转换的范围是0---3.3v 所以最后的ADC转换值应该是我们的测量值*分辨率    分辨率 = 3.3v/2^12 = (3.3/4096)   12位的转换器所

    2024年02月06日
    浏览(25)
  • STM32F103C8T6 按键扫描输入

    第一章 STM32F103C8T6 点亮LED灯 系列文章目录 前言 一、原理  1.按键类型  2.按键消抖 3.IO口输入配置 1)模拟输出 2)浮空输入模式 3)下拉输入模式(PULL DOWN) 4)上拉输入模式(PULL UP) 二、代码部分 main.c key.c key.h 总结         上一章我们成功入门了STM32F103C8T6,今天我们来

    2023年04月23日
    浏览(31)
  • STM32F103C8T6移植FreeRTOS

    根据自己开发板型号下载地址:STM32相关内容下载地址 SDK直接下载地址:STM32直接下载地址 下载参考博客 FreeROTS下载地址 选用V9.0.0 版本 个人创建目录如下,可做参考 keil目录 链接头文件 • 修改堆栈大小 • 修改中断函数名 去掉stm32f10x_it.c终端函数 增加FreeRTOS中断 特别解释

    2024年02月12日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包