当前位置: 首页 > news >正文

嵌入式工程师如何快速的阅读datasheet的方法

   

目录

▎从项目角度来看datasheet

▎各取所需

▎最后


    Datasheet(数据手册)的快速阅读能力,是每个工程师都应该具备的基本素养。

    无论是项目开始阶段的选型还是后续的软硬件设计,到后期的项目调试,经常有工程师对着英文的datasheet发愁,这么厚的资料,一页页的读,那得加班到几点啊?

虽然有些半导体公司会把自己的datasheet翻译为中文,但大部分估计都是谷歌给翻的,里面错误很多,有些就只把大标题翻译了一下,后面的详细说明还是英文,所以还是直接看英文原版靠谱

那么如何用最短的时间找到最需要的内容?简单来说,datasheet里的包括性能介绍(芯片做什么用的)、管脚定义(要画原理图)、内部寄存器定义(要写程序)、封装形式(制造采购都要问的),这些基础信息都会写的很明白。

另外,作为工程师,必须注意的还有器件的典型性能、最小和最大需求以及特性、在不损坏它的条件下你能做什么、以及使用建议和提示。

▎从项目角度来看datasheet

知乎网友艾搜在一次回答中提到了如何从项目角度来看Datasheet,以下摘取了部分内容:

首先是器件选型。在项目前期的准备阶段,器件选型是一个重要的工作内容。相应的每款芯片的datasheet开始最醒目的位置都会有一个简介和feature list,包括器件的供电电压,电流,功耗,资源,封装信息等等基本内容,通过这些内容我们就可以快速的明确芯片功能和使用领域,确定芯片是否能满足项目需求。以此来进行快速地筛选,完成选型工作。

确定了器件型号以后,我们就要开始后面的设计工作。对硬件工程师来说,器件的封装,管脚分配,参考设计这几部分就是最先要关注的点。有了这几部分,硬件工程师就可以马上开展工作了。

然后有些datasheet会体贴的把参考板的PCB layout也放进来,有些会把这部分内容单独形成一个demo文档。在通用的部分,如供电,复位,调试电路等等,我们可以尽量的参考这些有用的文档,详细阅读layout设计指南,在PCB布局布线上降低风险,提高一次成功的概率。

由于每个项目的需求不一样,在器件的使用上也会有所区别,那么这些和参考设计不一样的地方就是我们要重点关注的点。我们可以一边设计一边查找。比如在具体管脚上拉下拉或者悬空的时候都要格外小心,经常会有一些小陷阱在这些管脚的处理上。一般datasheet里都会有明确的说明,需要我们仔细阅读。

Datasheet里面经常会包含很多图表,我们在前期硬件设计的时候可以有重点的关注。如器件的推荐使用参数,高低电平判别电压等等,这些在设计前期一定要明确。

一些器件的非线性参数会通过图形的方式来说明。比如二极管的导通电阻,在不同的使用电压条件下,是不一样的。这个就需要我们根据不同的项目使用要求去确定。

有些资料里面会用图表的形式说明器件性能,这些也需要在设计阶段关注一下。还有些图表表示了器件的测试方法等等,这些在设计前期可以暂时忽略,等用到的时候再详细了解就可以了。

除了硬件内容外,datasheet里面还会包含软件部分。不同的器件软件部分工作差别很大,很难一概而论。掌握一个基本原则就是先主后次

就是关注器件的boot,reset,地址空间,调试信息,等等。也就是和器件正常工作相关的主要部分,先要保证器件能工作起来。

就是器件的外设接口等等。器件能正常工作了,我们再去根据datasheet的介绍分别调试各个不同的模块。

基本上通过以上内容我们就可以完成设计了。

但是很多大厂的datasheet其实并不仅仅包含这些内容,比如ADI公司的一些ADC/DAC器件资料里面,还会包含AD/DA转换的原理性讲解内容,这些和芯片相关的第一手资料有时候讲得比教科书里还清楚,如果能在有时间的时候仔细研读,对我们的设计无疑是会有很大帮助的。

Datasheet既可以是我们设计上的好帮手,也是学习的好资料。

▎各取所需

读datasheet最高深的境界,不仅要看datasheet上的内容,凡是涉及到的算法,协议,配合器件,都要懂,要善于做延展辅助阅读,甚至看清楚芯片背后的设计哲学。

听说要写个datasheet简单的三四个月,难的甚至需要四五年,融入的其实都是精华。

当然,不同职业从datasheet里获得的信息重点是不一样的。知乎网友Arthur Wang在一次回答中指出:

如果你是IC design, 可能更注意application note,diagram , reg file 这种给你设计以参考的部分。

如果是你硬件工程师,你会注意电器特性,pin list ,封装尺寸等几个章节。

如果你是Marketing, 你会关注feature list , reference design , 电器特性等章节。

如果你是software engineer , 你需要看寄存器和软件章节。

如果你是project manager,你需要关注所有章节。

如果你是学生,就把它当科技英语,练练阅读吧。

知乎网友威灵顿·日天认为,能用到芯片的无非下面几种:

第一种,制作芯片的,微电子、 半导体行业的,画芯片版图,了解芯片内部构造功能的;

第二种,应用芯片的,也就是满足项目或者产品需求,需要芯片来作为某一环节功能实现的;

第三种,对芯片提供外围电路支持,布局布线,画电路板。

另外,一个比较主要的工作是为芯片提供电源解决方案,可能是第二种工程师也可能是第三种工程师。在形形色色的电子世界里面,第二种类型的工程师从业人数最多,有纯硬件的工程师,也有嵌入式软件工程师,有模拟电路工程师,也有数字电路工程师,他们的共同点就是面向应用。

▎最后

每家公司的datasheet都有严格的规范,及独特的风格,有时候还会穿插一些原理性的介绍,甚至比教科书写得还好。

设计新手可以从典型芯片入手,触类旁通。但datasheet只是一个参考,要掌握芯片其实还是要靠应用、以及out of spec的验证和调试。

datasheet也是了解一家公司技术最准确的途径之一,有些工程师在面试前会在公司官网上面仔细阅读其datasheet,研究里面用到的电路,增加录用概率。

相关文章:

嵌入式工程师如何快速的阅读datasheet的方法

目录 ▎从项目角度来看datasheet ▎各取所需 ▎最后 Datasheet(数据手册)的快速阅读能力,是每个工程师都应该具备的基本素养。 无论是项目开始阶段的选型还是后续的软硬件设计,到后期的项目调试,经常有工程师对着英…...

(三)合约广告

1. 广告位(CPT)合约 系统:广告排期系统 网站把某一个广告位卖给广告商,这段时间归广告商所有,到点了下线 (1)流量选择的维度:时间段、地域等 (2)典型场景…...

【Android -- 软技能】分享一个学习方法

前言 很多人都想通过学习来提升自己,但是,可能因为两个问题,阻碍了自己的高效提升: 学什么? 怎么学? 本文将从自己的学习实践出发,针对这两个问题,给出自己的一套学习流程。 1…...

Python-DQN代码阅读(10)

目录 1.代码 1.1 代码阅读 1.2 代码分解 1.2.1 f open("experiments/" str(env.spec.id) "/performance.txt", "a") 1.2.2 f.write(str(ep) " " str(time_steps) " " str(episode_rewards) " " str(…...

MongoDB入坑

MongoDB入坑一、体系架构1、简介2、MongoDB VS RDBMS3、文件4、体系结构二、权限管理1、开启2、角色三、存储引擎四、备份 & 恢复五、高可用0、主从复制1、副本集2、分片一、体系架构 1、简介 DBMS No.5;NoSQL Document No.1 1)BSON BSON(Binary …...

【论文总结】针对操作系统级虚拟化的抽象资源攻击

介绍 这是一篇来自2021CCS的论文,作者有Nanzi Yang, Wenbo Shen, Jinku Li, Yutian Yang, Kangjie Lu, Jietao Xiao, Tianyu Zhou, Chenggang Qin, Wang Yu, Jianfeng Ma, Kui Ren。 概述 本文的贡献如下: 新的攻击面:作者揭示了一个影响操…...

C# 提取 PDF 文档中的文本

C# .Net 使用 IText7 从PDF文件中提取出所有文本内容 【文 / 张赐荣】 首先在 Nuget 包管理器中,安装"itext7" 和 "itext7.font-asian"。 如果不安装 "itext7.font-asian" PDF 文件中有非Unicode编码的字符,将会抛出运行时异常:iText.IO.Excep…...

mac如何升级node版本、切换node版本

一、mac如何升级node版本 当前官网稳定版本是18.15.0 所以我从v14.17.4升级到v18.15.0 二、mac如何切换node版本 切换到16.20.0版本 三、这里是用node.js的多版本管理器n来升级和切换的,命令如下: 1、sudo npm cache clean -f //清除node.js的cache …...

一位大专学历的女程序员要求月薪25K,学历重要吗?来看看面试过程

“请提供一份完整的简历,以便我审查。从您的简历中,我感觉您写得还不错。方便的话,您可以自我简单介绍一下吗?“ ”好的,我叫李娟,拥有大专学位,目前正在寻找一份Java开发架构师的工作岗位。“…...

ESP32驱动1.28寸GC9A01播放视频(一、视频分辨率的调整和视频格式的转换)

ESP32驱动1.28寸GC9A01播放视频(一、视频分辨率的调整和视频格式的转换)播放前准备转换视频分辨率用FFmpeg将.MP4转换为.mjpeg格式FFmpeg的win10环境搭建FFmpeg的下载环境变量的搭建MP4转换成mjpeg格式总结播放前准备 1.28寸GC9A01屏幕的分辨率是240x24…...

epoll的LT模式(水平触发)和ET模式(边沿触发)

前言 epoll的触发模式是个引发讨论非常多的话题,网络上这方面总结的文章也很多,首先从名字上就不是很统一,LT模式常被称为水平触发、电平触发、条件触发,而ET模式常被称为边缘触发、边沿触发等,这些都是从英文翻译过来…...

Java基础面试20题

Java的八大基本数据类型 答:可以分4种类型:布尔类型(boolean),字符类型(char),浮点类型(double,float),整型(byte,short,int, long)。 String,StringBuffer与StringBuilder的区别? …...

Java面向对象封装

目录 封装的概念 封装具体实现步骤 示例代码如下 封装具体语法 封装的概念 Java封装是一种面向对象的编程方法,它的主要思想是将类的内部细节(包括数据和方法)隐藏起来,对外只提供公共的访问接口,从而保证了程序的安全性和稳定性。 封装具体实现步骤 1、声明类的成…...

队列实现图书信息管理(C语言)

文章目录Queue.hmain.cQueue.c用队列实现一个图书信息管理,这里放一下有哪些文件。(ps:我之前写的是学生信息管理,但是有人说我们的作业是写图书,就该了下内容,没有改文件名)队列是用链表实现的…...

Java开发 - 读写分离初体验

前言 上一篇中,我们介绍了主从复制,相信学过的小伙伴已经能够很好的掌握主从复制的技术,实际上也并没有那么难,虽然没有讲一主多从,多主多从的配置,但是从一主一从的配置中也很容易联想到该怎么配置&#…...

图文详解CAN Log文件 - ASC文件格式

目录 1 CAN Log文件 -- ASC文件格式 1.1 Header 1.2 版本编号 1.3 经典CAN网络中的描述 1.3.1 经典CAN Standard标准帧的描述 1.3.2 经典CAN Extended扩展帧的描述 1.3.3 CAN Remote远程帧的描述 1.3.4 CAN Error错误帧的描述 1.4 CANFD网络中的描述 1.4.1 经典CAN S…...

网络编程套接字(一)

学习任务: 我们先来认识端口号,区分好主机IP和端口号的区别,以及涉及到进程PID和端口号的区别。 然后简单认识一下TCP协议和UDP协议,这两个协议都是传输层的。接着了解什么是网络字节序,它有什么作用。然后是网络编程的…...

Mysql数据库存储过程

1、参数分类 存储过程的参数类型可以是IN、OUT和INOUT。根据这点分类如下: 1、没有参数(无参数无返回) 2、仅仅带 IN 类型(有参数无返回) 3、仅仅带 OUT 类型(无参数有返回) 4、既带 IN 又带 O…...

当我开始学习人工智能:人工智能的学派及研究目标

上课真是不认真啊,现在都写不来了作业了,真的会谢 一、人工智能的学派及其争论 1.1 对人工智能方法的争论 三个学派 符号主义 认为人的认知基元是符号,认知过程即符号操作过程。 认为人是一个物理符号系统,计算机也是一个物理符…...

Html5钢琴块游戏制作与分享(音游可玩)

当年一款手机节奏音游,相信不少人都玩过或见过。最近也是将其做了出来分享给大家。 游戏的基本玩法:点击下落的黑色方块,弹奏音乐。(下落的速度会越来越快) 可以进行试玩,手机玩起来效果会更好些。 点击…...

华为云AI开发平台ModelArts

华为云ModelArts:重塑AI开发流程的“智能引擎”与“创新加速器”! 在人工智能浪潮席卷全球的2025年,企业拥抱AI的意愿空前高涨,但技术门槛高、流程复杂、资源投入巨大的现实,却让许多创新构想止步于实验室。数据科学家…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)

目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...

vue3+vite项目中使用.env文件环境变量方法

vue3vite项目中使用.env文件环境变量方法 .env文件作用命名规则常用的配置项示例使用方法注意事项在vite.config.js文件中读取环境变量方法 .env文件作用 .env 文件用于定义环境变量,这些变量可以在项目中通过 import.meta.env 进行访问。Vite 会自动加载这些环境变…...

Element Plus 表单(el-form)中关于正整数输入的校验规则

目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入&#xff08;联动&#xff09;2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码&#xff0c;而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库&#xff0c;可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画&#xff0c;可以包含在你的网页或应用项目中。 3.An…...

STM32HAL库USART源代码解析及应用

STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...