202. 电子编程入门到工程师--绘制原理图(烧录模块)
一、本课目标
完成烧录模块(仿真烧录调试模块)绘图。
基本功能框架图,其中STLINK可替换为DAPlink、jlinkob
二、后续计划
完成其他部分电路图
本课程有鱼、有鱼饵、有鱼钩,还有渔猎秘籍、降龙十八掌:)
郑重声明:此系列课程中出现的开源组织名称、生产加工厂家,大部分是业界已公认的较好的公司、组织,他们对开源软硬件有较大的贡献,也踏实的做了一些前期的积累工作。 本教程系列是完全开源和非盈利目的,所有组织名称提供给初学者仅用于其快速入门,不对组织产品质量负责,也并非广告投放。
三、认知解惑
不要执着于名词,关键看实现了什么!
完全开源
跟随教程如果感觉困难,欢迎留言或私信作者。另外本教程为开源硬件。 到下面链接下可获得完整硬件电路图及pcb、BOM。
https://lceda.cn/pharos/easy2ee
easy2ee 的意思是 轻松入门电子工程师
三大ARM仿真调试烧录工具
仿真调试工具说的简单点,其实就是给单片机(机器人)洗脑重新灌程序的工具。(可怕:)
- STLINK
- JLINK(JLINKOB)
- DAPLINK
STLink: 为烧写ST芯片的一组软硬件的集合;简单理解 ST公司烧写程序的驱动模块(驱动模块电路)和软件的组合。
JLink:
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG仿真器。配合IAR EWAR,ADS,KEIL,WINARM,RealView等集成开发环境支持所有ARM7/ARM9/ARM11,Cortex M0/M1/M3/M4, Cortex A5/A8/A9等内核芯片的仿真
Jlink ARM-OB STM32(简称jlinkob) 是 SEGGER 公司为开发板定制的板载Jlink调试方案。除了不能测试目标板电压外,此Jlink 与正式版功能几乎一致(速度限制到 4MHz)。目前很多DIY这个产品
DAPLink:(原名CMSIS-DAT) Arm公司的开源仿真器,可以替代STLINK(功能类似),但是软硬件开源的。后续考虑使用DAPLink替换STLink。
有意思的是三种仿真器两网络上都可以用stm32F103C8T6这个芯片,我们完全可以做出一个三合一的产品出来。
模块化与集成
在查询元件时发现一个问题,usb插座是我们选择的SMT不贴装的,但是USB插座这个最通用的几种焊接非常困难,这里引申出一个问题,就是比较难于焊接的元件如何处理。
这里通过下面方式处理,先画出一个集成板,并且放置冗余接口,可以用集成的芯片,也可以不焊接集成的芯片而采用增加模块的方式组合使用,或者是我们直接设计独立模块的组合方式(后续我们根据完成后的反馈情况改进)。 例如主核心直接画成一个模块,usb插座也画成一个模块。假设初学者无法自行完成焊接,我们采用冗余可以接插独立模块的方式完成一个PCB板。
学习绘制原理图 & pcb需要解决的疑问(关键名词索引--电路板设计星图)
上图实际上就是我们接下来的课程要解决的一些问题。 我们这个系列课程是电路板设计(采用在线工具) 我们需要做两大块的工作:原理图绘制和PCB绘制。
做原理图绘制时,不是像我们绘画一样,它其实是 先做好模型 然后拼装连接的,犹如插花。那么首先要制作一个原理图库(元件库)。 这个元件库,就是将我们使用的元件用方框+引脚的方式组合在一起。但是元件太多了,我们无法一一都做出来,一般我们就只是把常用的元件画到元件库(原理图库)中,目前立创这家公司做了比较好的工作,就是把很多他们卖的元件都做到库里面了,我们可以直接调用。如果元件库中没有,那么就需要我们自己来绘制。
下图是元件库中的电阻画法和说明:
我们把一个个元件从原理图库(元件库)中拖出来,放到原理图中(原理图就是电脑上设计软件的一个空白区域,可以用来放置元件和连线)原理图的大小默认A4 A3之类的纸张大小(为了打印方便)。
所以两个元件之间的连线就是 网络连线 这个连线的名称就是 网络名 原理图中的 端口 是当几个原理图组合再一起时,相同的端口意味着跨原理图的这个相同名称的端口连在一起的。注意这个端口与其他地方的端口含义不一样。
PCB绘制
实际PCB可以不经过原理图直接绘制的,早期有些工程师就是这样做的,后来发现这样做存在很多问题,修改麻烦,容易出错,随着绘图工具的发展,先把原理图画出来,然后通过绘图工具导出一张表:网络表 这张表最基本的元素就是包括网络名、元件名,元件引脚,网络与那个元件连接。有了这个网络表,我们把表导入到pcb中,就可以把原理图和pcb图建立连接,这样更改原理图,可以更新pcb图(经常用),更新pcb图也可以更新原理图(很少用)。
最新的电路板设计软件,基本上网络表是隐藏的(后台运行)我们只是点几个按钮就可以完成。
PCB绘制有几个重要的概念,就是pcb库、层、布线规则、铺铜等。
pcb库和原理图库不一样的地方是,原理图库重点关祝引脚编号和参数,pcb库关注引脚编号、引脚真实外形和元件的真实外形(长宽高)
从上面我们可以看出,先建库,然后调用库元件来绘制原理图和pcb,而不是直接像绘画一样绘图,主要原因是,大部分元件都是反复使用的,特别是pcb库元件,电阻、电容可能就只有几个样式
pcb库元件外形引脚等绘制完成后,就是元件封装,pcb库又叫做pcb封装库。
层
我们看到眼花缭乱的pcb其实是有很多层组成的,这个层不仅仅是信号层(有铜皮,能过电流的层),还有很多非信号层,例如丝印层、机械层、keepout层、阻焊层、助焊层、过孔层、多层(multi-layer),因为这些在一节课中体量太大,所以后续逐步说明。
PCB各层的含义
布线规则
这个是很多初学者容易忽略的地方,实际上绘制pcb,最重要的怕是设定布线规则,例如线宽大小设定、过孔的大小设定,pcb上的铜皮离板边的距离、走线与走线之间的间距,元件与元件之间的间距。 这些地方如果不设置好规则,就容易出现短路、元件干涉、加工困难等等问题。
当我们学到绘制pcb时会着重说明布线规则如何设定。
继续重复我们的焦点问题,先整体看上面的电路板设计星图,再关注细节! 把里面每个名词大体了解,后续绘制电路原理图、pcb时能够快速理解掌握。
为什么要分层? 为什么要建立布线规则? 为什么、为什么、为什么?
千头万绪何处猎,朝如青丝暮成雪!
四、参考资料
NANO STM32F103开发板资料
STM32F103RB-官网介绍
STM32F103RB-数据手册
STLINK 参考电路图
ST-Link资料05_自制ST-Link(提供原理图及hex和bin固件)
JLINKOB 参考电路图
手把手教你制作Jlink-OB调试器(含原理图、PCB、外壳、固件)
DAPLINK 参考原理图
《DAPLink仿真器》资料下载
六、敏捷开发
小目标,我们先依照参考将DPLINK绘制完成,然后与STLINK核对修改,最后与JLINKOB核对改进,最终完成三合一板载仿真器设计
- DAPLINK 拷贝技小新的,原因是完成度好,开源资料齐全。
- 修改替换其各个元件,保证大部分元件可以嘉立创SMT直接贴片。
- 修改部分电路使其网络名、连接与STLINK复用
- 修改部分电路使其与jlinkob复用。
七、一步步实现
- 点击链接打开立创EDA网站 立创EDA
2. 点击搜索按钮,输入CMSIS-DAP 搜索
3. 点击在【编辑器中打开】按钮
到这里我们没有绘制一个元件,完成了一个原理图的绘制,感恩开源的先行者!(此处应有掌声:)
- 找出与参考STLINK电路图不一致的地方,并对元器件参数进行修改,最关键因素是元器件编号和规格型号。
很多同学看到这里开始懵懂了,不用担心,因为我绘制的这个也是开源硬件,大家直接添加到自己的工程即可,我们先学会步骤和流程。
==
====
- 其他使用的元器件修改与第4步一致,直到所有修改完成,关键点保证供应商编号(如果有)、名称、封装正确。(这里的名称就是规格型号,这个因为写软件的和实际使用并不一定是一个专业,各个公司叫法也不同,翻译也不同,还是最上面那句话,不要纠结于名词,而要看实际这是什么)
本课体量过大,下一节课继续
202. 电子编程入门到工程师--绘制原理图(烧录模块)相关推荐
- 203. 电子编程入门到工程师--逆推原理图(电源部分)
一.聚焦目标 1. 本课目标: 逆推法完成电源部分. 因为第一次使用逆推法学习开源硬件电路,这节课目标还是集中在最前面的绘制电路图.主要学习逆推学习法的基本步骤.框架,理解其内涵,并逆推学习电路图的一 ...
- 清翔电子单片机原理图stc89c52_1000. 电子编程入门到工程师--从看得到开始
时间有限,无法一一修改底部目录,请以此目录为准: 向导:总目录:最好的电子.计算机从入门到工程师教程zhuanlan.zhihu.com 2020年了,我们的课程章节取个整数,从1000开始. 可视 ...
- 1002. 电子编程入门到工程师--重拾信心-单片机一篇入门
这一节写单片机一篇入门,拭目以待,必有惊喜!. 不入门的根本原因? 简单问题复杂化, 复杂问题简单化, 头脑迷糊没框架, 无头无尾似散沙. 劝退的单片机框架: 我们的单片机框架: 现在个人.工业化领域 ...
- 从0到1入门STM32最小系统板(2-1)——绘制原理图之器件选型
从0到1入门STM32最小系统板--绘制原理图之器件选型 本次我们选择的芯片是STM32F446RET6,使用立创EDA进行原理图绘制. 文章目录 从0到1入门STM32最小系统板--绘制原理图之器件 ...
- stm32编程入门_电子设计与单片机编程书籍资料推荐
有些同学让我推荐些入门书籍,尝试写写: 注:请多看下目录与介绍,网络上也有一些读书笔记和推荐,自行判断是否符合现有层次和水平,再决定是否购买. 针对零基础.非专业的电子爱好者,我的推荐学习步骤是: 自 ...
- 游戏编程入门(4):绘制图形图像
接上文 游戏编程入门(3):绘制基本 GDI 图形 除了经典的矢量图形游戏之外,游戏开发人员都使用图形图像来在视觉上展示游戏的图形部分.本文将介绍如何加载和显示图形图像. 本章内容包括: 位图图像的基 ...
- Scratch编程入门-画图模块6【绘制三角形】
上一节课带领大家绘制了长方形. 记不清的朋友可以点击下方链接回顾一下上一节课的内容. Scratch编程入门-画图模块[绘制长方形] 这一节课我将带领大家绘制三角形, 那么就让我们开始吧! 我们如下图 ...
- 游戏编程入门(3):绘制基本 GDI 图形
接上文 游戏编程入门(2):创建游戏引擎和使用该引擎制作小游戏 本篇内容包括: 使用Windows图形设备接口绘制图形的基础知识 设备环境是什么以及它为什么对GDI图形如此重要 如何在Windows中 ...
- Scratch编程入门-画图模块5【绘制长方形】
Scratch编程入门-画图模块[绘制正方形] 上一节课带领大家绘制了正方形. 记不清的朋友可以点击下方链接回顾一下上一节课的内容. Scratch编程入门-画图模块[绘制正方形] 这一节课我将带领大 ...
最新文章
- 【HDOJ】1754 I Hate It
- 那些不被关注但很重要的html标签
- FastDFS安装笔记和使用
- python做后端开发的优点_【后端开发】python语言的特点是什么
- iOS之UI--使用SWRevealViewController实现侧边菜单功能详解实例
- Excel中根据单元格背景色求和
- 【编译原理笔记17】代码优化:数据流分析,到达定值分析,到达定值方程的计算
- linux shell中实现字符串反转的几种简单方法
- HFSS印刷偶极子天线(1)
- Opencv求轮廓的中心点坐标
- Kubernetes 1.12.0 Kube-controller-manager之node-ipam-controller源码阅读分析
- b树与b 树的区别 mysql,B树和B+树
- 随机读写 vs 顺序读写
- “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛——H.直线【JAVA大数 | Python】
- Android应用界面开发(一)
- ElasticSearch之Head插件集群健康问题
- 电阻、电容贴片封装的定义
- 华为怎么改输入法皮肤_怎么设置华为手机输入法皮肤
- vscode之全局搜索与局部搜索
- USMART 调试组件实验
热门文章
- 前端JQ遍历JSON
- android 通过当前日期获取这个礼拜的开始时间和结束时间
- 原子级操作快速自制modbus协议
- 防火墙ACL控制与NAT转换
- numpy.digitize(data,bins)函数用法
- 北京理工大学在职计算机博士,北京理工大学在职博士是双证吗
- 实战|记一次攻防演练打点
- sql server 2000 torn_page_detection error (error 823)
- 滴普科技FastData产品正式上线亚马逊云科技Marketplace(中国区)
- Java基础面试题一