STM32F103C8T6最小系统

STM32F103C8T6最小系统单片机最小系统一般有晶振电路、电源电路、复位电路以及调试电路组成。本文以STM32F103C8T6为例,介绍最小电路的设计和要注意的问题。

大家好,又见面了,我是你们的朋友全栈君。

单片机最小系统一般有晶振电路、电源电路、复位电路以及调试电路组成

1.电源电路

主要有两部分组成:

  • 供电电路

可以使用普通的USB接口电路,5V电源输出
供电电路

  • 降压电路
    USB的5V输入,然后输出为3.3V
    在这里插入图片描述
    这里使用两种不同的电容。
  • 输入滤波电容的作用:
    输入电压,当接入电源,其幅值是从零起始的,波动非常大,加入足够容量的电容进行滤波后,因电容的充放电效应,该脉动直流变成纹波不大的直流电,这是输入滤波的作用。
  • 输出滤波电容的作用:
    稳压电路的工作过程需要从输出采样,然后根据其反馈值调节输出以达稳压的目的。如果此时没有输出滤波电容,只要因负载变化带来的电压波动频率恰好与稳压电路的调节速率差不多就会产生振荡效应,导致输出失控,所以稳压输出也必须加滤波电容,而且增加滤波电容也可以进一步增加稳压输出的稳定性
  • 大电容和小电容并联的作用:
    至于与大容量电解电容并联的小电容,其作用在于旁路频率较高的波动电压,因为铝电解电容的制造工艺导致其具有较大的ESL(等效电感),无法滤除高频成份,故需加个小电容。

2.晶振电路

晶振电路用来给芯片提供时钟信号,原理图如下:
在这里插入图片描述
需要注意的是:

  • 画板时晶振尽量离芯片近一点
  • 晶振底部尽量不要穿过其他支路,防止信号串扰
  • 不同型号的晶振可能需要不同的电路设计,根据自己使用的晶振型号设计,例如使用村田的CSTCE系列晶振,可以设计成如下电路:
    CSTCE8M系列晶振电路
  • 晶振的选择要根据数据手册来选,本芯片4-16M可选
    数据手册中对晶振的选择
    注意:上图使用了F102芯片手册,在外接晶振方面F103上是一样的

3.复位电路

复位电路如下:
在这里插入图片描述
stm32有三种复位方式:电源复位、系统复位和后备域复位

电源复位时,当NRST引脚被拉低,产生外部复位,并产生复位脉冲,从而使系统复位。

4.去耦电容

主要用来滤除杂波,保持引脚电压的稳定。这些电容也尽量离芯片相关引脚近一点。分布在芯片四周即可。
在这里插入图片描述

5.调试下载电路

  • BOOT选择
启动方式 BOOT0 BOOT1
从主闪存存储器启动 0 x
从系统存储器启动 1 0
从内置SRAM启动 1 1

BOOT选择

  • 调试电路(SW接线方式)
    PA13对应SWD,PA14对应SWC
    下载调试电路
    对应仿真器连接如下图:

SW接线

6.其他外围电路

  • 电源指示灯
    电源指示
  • 测试LED灯
    测试电路
    注意:如果要使用PC13,PC14和PC15则VBAT需要接3.3V
  • 这是因为VBAT引脚和芯片的其他VSS和VDD引脚功能是一致的,都是用来给相邻片区引脚供电

在这里插入图片描述

  • 外围接口
    在这里插入图片描述
    注意:排序时,围绕stm32芯片一个方向顺序排列网络标号,依次排列外接IO,方便PCB排版.

7.芯片STM32F103C8T6

STM32F103C8T6

  • 封装是LQFP48,注意BOOT引脚接10K电阻

STM32F103C8T6

8.PCB布板

  • 正面
    布板
  • 反面
    在这里插入图片描述
    注意布板时提到的几个问题即可

9.成品

成品

  • 由于画的是HC-49U的晶振封装,但是不够了,用了个TC-38来凑数,也是8M,效果还不错。

10.调试结果

调试成功

11.LED灯测试结果

测试成功

12.原理图说明

  • 楼主提供F103C8T6的原理图,各位可以参考图片版本

  • 照着图片画一版,增强记忆

  • 不提供PCB的原因是:大家使用的元器件库是不一样的,最好根据自己实验室现有器件规格来配置相应的元器件,并设计好PCB。

  • 另外需要说明一点:下载时的积分我设置不了,这是系统自动设置的。虽然,我也想把积分调低一点。

  • 好像能改。。。改成5积分了。
    滑稽

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/151284.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 库存系统难破题?且看京东到家如何破「建议收藏」

    库存系统难破题?且看京东到家如何破「建议收藏」京东到家库存系统架构设计目前,京东到家库存系统经历两年多的线上考验与技术迭代,现服务着万级商家十万级店铺的规模,需求的变更与技术演进,我们是如何做到系统的稳定性与高可用呢,下图会给你揭晓答案(通过强大的基础服务平台让应用、JVM、Docker、物理机所有健康指标一目了然,7*24小时智能监控告警让开发无须一直盯着监控,另外数据与业务相辅相成,用数据验证业务需求,迭代业务需求,让业务需求都尽可能

  • VB实现关机程序

    VB实现关机程序下面是本人愿来写的关机程序可以适用于98/xp/2000,在程序中调用即可。现在操作系统多为2000或xp,所以需要特别注意的是应该先得到关机的特权:(要想弄懂下面的程序,先要具备vb调用api函数的知识……)其中:前面一些Public Declare都是api函数的声明.     Public Sub AdjustToken()子程序用来取得关机特权.     Public Sub Sh

  • python产生随机数的方法_产生随机数的代码

    python产生随机数的方法_产生随机数的代码Python产生随机数:一.Python自带的random库1.参生n–m范围内的一个随机数:random.randint(n,m)2.产生0到1之间的浮点数:random.random()3.产生n—m之间的浮点数:random.uniform(1.1,5.4)4.产生从n—m间隔为k的整数:random.randrange(n,m,k)5.从序列中随机选取一个元素:random.choice([1,2,3,4,5,6,7

    2022年10月28日
  • python的image读取的图片是什么类型的_python读取图片数据

    python的image读取的图片是什么类型的_python读取图片数据Python读取图片尺寸、图片格式需要用到PIL模块,使用pip安装Pillow.Pillow是从PILfork过来的Python图片库。fromPILimportImageim=Image.open(filename)#返回一个Image对象print(‘宽:%d,高:%d’%(im.size[0],im.size[1]))Image类的属性##PIL.Image.format图片…

  • 遍历ArrayList的过程中移除元素的方式

    遍历ArrayList的过程中移除元素的方式错误方法一使用for循环正序遍历ArrayList,使用remove移除元素结果如下,只删除了一个“3”原因:在匹配到第一个要删除的元素并移除时,后面元素会往前移位,导致索引位置改变,从而漏掉后面一个元素。publicstaticvoidmain(String[]args){ ArrayList<String>list=newArrayList<>(); list.add(“1”); list.add(“2”); list.add(“3”

  • 建立数据库链接_html连接数据库

    建立数据库链接_html连接数据库建立数据库链接CREATE[public]DATABASELINK数据库链接名CONNECTTO用户名IDENTIFIEDBY密码USING数据库连接字符串;说明:   1.一般情况PUBLIC由数据库管理员来创建;个人用户可以不加public,是私有的数据库链接;   2.数据库连接字符串可以用NET8EASYCONFIG或者直接修改TNSNAMES.OR

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号