嵌入式系统硬件设计与实践(学习方法)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
刚读书的时候,对什么是嵌入式,其实并不太清楚。等到自己知道的时候,已经毕业很多年了。另外对于计算机毕业的学生来说,大部分时候其实是不需要自己画原理图的。所以,从这方面说,有的同学可能嵌入式做了很久,其实并不知道电路应该怎么画、怎么设计。其实,现在网上有很多的工具、很多的资源都可以拿来学习,不需要自己从头开始学习,完全可以借助于大家的力量实现硬件的设计,自己专注于整个系统的搭建就可以了。
此外,我们搭建的是嵌入式电路设计,不是射频电路,不是取暖器,也不是什么高压电路。嵌入式电路其实是有它的规律的,大家掌握了这个规律,其实就可以做很多事情。
1、基本的嵌入式电路
最简单的嵌入式电路其实就是这样的。一个mcu,启动条件就是需要一个时钟、一个复位电路。这个电路有一个输入,有一个输出。输入、输出有哪些功能取决于有什么需求。比如说,远程开关是一个需求,玩具电子琴是一个需求,平衡车也是一个需求。
2、复杂的soc电路
从硬件的角度看,soc电路相比较mcu电路而言,多了pmu、ddr、emmc/sd这三个部分。其他都是一样的。因为soc要求的电压有很多种,并且不同电压的上电顺序不同,所以一般dc/dc或者ldo无法满足soc的要求,因此这里用pmu代替了power传统芯片。此外,和mcu电路相比,这里出现了ddr和emmc/sd,这主要是因为soc需要的内存更大,保存的数据更多,原来的mcu空间已经远远满足不了需求了,所以这里必须用ddr和emmc/sd代替。
3、fpga电路
和mcu电路相比较,fpga多了一个norflash。这主要是因为,fpga内部的文件都是从norflash加载进来的,一断电之后,这些文件就都消失了。所以需要一个norflash芯片来专门保存这些文件,这就是fpga电路。fpga电路在特定的场合,比如说运动控制、图像处理,非常有用。
4、复杂的嵌入式电路
实际开发的时候,一个电路板上面很有可能三个电路都有,比如说mcu+soc,或者soc+fpga,又或者是mcu+soc+fpga,这都是有可能的。主要是因为soc擅长算法,mcu擅长控制,fpga擅长图像,每一个擅长的领域都不一样,所以大家组合起来组成一个电路,可能性很大。
5、擅长用既有的eda工具和开源硬件
eda工具,建议大家还是用开源,或者免费的eda工具,没有商业敲诈的烦恼。eda有kicad,立创eda,这些都可以。选择自己喜欢的工具就好了。另外,对于开源硬件,主要有两种方式,一种是去电商购买开发板,一般会提供对应的原理图;另外一种就是去一些开源硬件网站,比如https://oshwhub.com/
,这都是学习硬件设计的好方法。
事实上,目前网上已经有很多的硬件了,大家如果自己想做一些应用,完全可以在这些硬件上面修改、调整,重新布线,没必要自己从0-1开始绘图。这样一方面会节省时间,另外一方面也会让自己很快有成就感,而不是不停遇到挫折,直到最后没有兴趣,放弃了学习。
6、学习硬件的好处
表面上看上去,学习硬件设计只是多了一门技能,但是事实上学习了硬件之后,你会更在意自己做的东西怎么变成商品、成本是多少、竞争力是什么 ,而不仅仅是功能。原理图怎么画、pcb怎么布局、板子怎么少一点、成本怎么降低一点,这些都是你学习硬件后需要考虑的事情。
嵌入式系统硬件设计与实践(学习方法)相关推荐
- 嵌入式系统硬件设计与实践(开发过程)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 如果把电路设计看成是画板子的,这本身其实是狭隘了.嵌入式硬件设计其实是嵌入式系统中很重要的一个部 ...
- 嵌入式系统硬件设计与实践(第一步下载eda软件)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 现实生活中,我们经常发现有的人定了很多的目标,但是到最后一个都没有实现.这听上去有点奇怪,但确实 ...
- 在linux下进行嵌入式系统设计,一种应用于测控系统的基于Linux的嵌入式系统的设计...
描述 1.前言 随着网络控制技术的快速发展,工业以太网得到逐步完善,在工业控制领域获得越来越广泛的应用.工业以太网使用了TCP/IP协议,便于联网,并具有高速控制网络的优点.随着32位嵌入式CPU价格 ...
- 嵌入式系统硬件体系设计(一)
目录 嵌入式系统硬件体系设计概论 1.1嵌入式系统及硬件体系概述 1.1.1嵌入式系统概论 1.1.2嵌入式系统的构成 1.2 嵌入式硬件体系的基本构成 1.3硬件体系设计的相关内容简介 嵌入式系统硬 ...
- 基于STM32的光敏传感器数据采集系统-嵌入式系统与设计课程设计
目录 1 项目概述 1.1 项目介绍 1.2 项目开发环境 1.3 小组人员及分工 2 需求分析 2.1 系统需求分析 2.2 可行性分析 2.3 项目实施安排 3 系统硬件设计 3.1 系统整体硬件 ...
- 嵌入式系统开发设计---嵌入式系统开发设计
嵌入式系统设计的主要任务是定义系统的功能.决定系统的架构,并将功能映射到系统实现架构上.这里,系统架构既包括软件系统架构也包括硬件系统架构.一种架构可以映射到各种不同的物理实现,每种实现表示不同的取舍 ...
- 嵌入式系统软件架构设计
嵌入式系统软件架构设计 目录 1. 前言 4 2. 决定架构的因素和架构的影响 4 2.1. 常见的误解 5 2.1.1. 小型的系统不需要架构 5 2.1.2. 敏捷开发不需要架构 7 3. 嵌入式 ...
- 硬件设计与实践:16位CPU设计
课程设计报告 名 称: 硬件设计与实践 题 目: 16位CPU设计 硬件设计与实践 任 务 书 一. 目的与要求 1.目的 1.1 培养学生在计算机硬件方面的动手实践能力: 1.2 熟悉VHDL硬件描 ...
- 嵌入式课程设计linux,嵌入式系统课程设计--基于U盘的linux操作系统的构建
嵌入式系统课程设计--基于U盘的linux操作系统的构建 1 课程设计报告课程设计报告 课程名称课程名称 嵌入式系统课程设计嵌入式系统课程设计 设计题目设计题目基于基于 U盘的盘的 linux 操作系 ...
最新文章
- java自动生成数据库代码
- 面向对象的JavaScript编程
- idea ctrl+alt+t快捷键
- Day71 分页,cookie and Session
- jieba分词(python使用篇)(一)
- SpringMVC的优点
- 每天一道LeetCode-----在字符方格中查找某个单词
- 【Boost】boost库中function和bind一起使用的技巧(一)
- 7-9 输出大写英文字母 (15 分)
- linux操作系统巡检报告,linux服务器巡检报告
- c语言函数名称大全,C语言函数大全
- TCP/IP、Http的区别--(转自任智康)
- 基于CWMP(TR069)协议ACS服务器的搭建
- c语言学生成绩及格率,c语言百分制输入学生的考试分数统计学生及格率
- 代理服务器使用全攻略(转)
- vs2015中提示未能找到类型或命名空间名Word
- 诚信可靠的深圳python_ai人工智能哪家正规诚信经营
- Hive数据库创建表
- windows下gromacs中文教程(simulate chain A of insulin (PDB ID: 1ZNI).
- 【电子通识】薄膜电阻与厚膜电阻的差异
热门文章
- goahead解析(一)---------route.txt
- 练习-编写求阶乘函数
- MIPI DSI协议
- linux打开80端口及80端口占用解决办法
- 深度学习-使用tensorflow实现猫狗识别
- CTP常见问题系列之一 “CTP : 不合法的登录“
- 硬阈值(Hard Thresholding)函数解读
- 电脑组成部件介绍图解之电脑由哪些部件组成?各个部件作用又是什么 ?主要功能是什么?
- Flink学习笔记【巨详细!】(二)
- 国网电费充值api,油卡充值api(中石化中石油)