电子工程师必备的基础知识

合格的电子工程师需要掌握的知识和技能  
愚以为,掌握了一下的硬件和软件知识,基本上就可以成为一个合格的电子工程师:  
第一部分:硬件知识  
一、 数字信号  
1
TTL和带缓冲的TTL信号  
2
RS232和定义  
3
RS485/422(平衡信号)  
4
干接点信号  
二、 模拟信号视频  
1
非平衡信号  
2
平衡信号  
三、 芯片  
1
封装  
2
7407  
3
7404  
4
7400  
5
74LS573  
6
ULN2003  
7
74LS244  
8
74LS240  
9
74LS245  
10
74LS138/238  
11
CPLD(EPM7128)  
12
1161  
13
max691  
14
max485/75176  
15
mc1489  
16
mc1488  
17
ICL232/max232  
18
89C51  
四、 分立器件  
1
封装  
2
电阻:功耗和容值  
3
电容  
1)
独石电容  
2)
瓷片电容  
3)
电解电容  
4
电感  
5
电源转换模块  
6
接线端子  
7
LED发光管  
8
8字(共阳和共阴)  
9
三极管2N5551  
10
蜂鸣器  
五、 单片机最小系统  
1
单片机  
2
看门狗和上电复位电路  
3
晶振和瓷片电容  
六、 串行接口芯片  
1
eeprom  
2
串行I/O接口芯片  
3
串行ADDA  
4
串行LED驱动、max7129  
七、 电源设计  
1
开关电源:器件的选择  
2
线性电源:  
1)
变压器  
2)
  
3)
电解电容  
3
电源的保护  
1)
桥的保护  
2)
单二极管保护  
八、 维修  
1
电源  
2
看门狗  
3
信号  
九、 设计思路  
1
电源:电压和电流  
2
接口:串口、开关量输入、开关量输出  
3
开关量信号输出调理  
1) TTL―>
继电器  
2) TTL―>
继电器(反向逻辑)  
3) TTL―>
固态继电器  
4) TTL―>LED
8字)  
5)
继电器―>继电器  
6)
继电器―>固态继电器  
4
开关量信号输入调理  
1)
干接点―>光耦  
2) TTL―>
光耦  
5
CPU处理能力的考虑  
6
成为产品的考虑:  
1)
电路板外形:大小尺寸、异形、连接器、空间体积  
2)
电路板模块化设计  
3)
成本分析  
4)
器件的冗余度  
1.
电阻的功耗  
2.
电容的耐压值等  
5)
机箱  
6)
电源的选择  
7)
模块化设计  
8)
成本核算  
1.
如何计算电路板的成本?  
2.
如何降低成本?选用功能满足价格便宜的器件  
十、 思考题  
1
如何检测和指示RS422信号  
2
如何检测和指示RS232信号  
3
设计一个48字的显示板  
1)
电源:DC12  
2)
接口:RS232  
3) 4
3”8字(连在一起)  
4)
亮度检测  
5)
二级调光  
4
设计一个331”8字的显示板  
1)
电源:DC5V  
2)
接口:RS232  
3) 3
118字,分4个、3个、43组,带行与行之间带间隔  
4)
单片机最小系统  
5)
译码逻辑  
6)
显示驱动和驱动器件  
5
设计一个PCL725MOXA C168P的接口板  
1)
电源:DC5V  
2)
接口:PCL725/MOXA 8RS232  
1. PCL725
,直立DB37,孔  
2. MOXA C168P
DB62  
3)
开关量输出信号调理:6个固态继电器和8个继电器,可以被任何一路信号控制和驱动,接口:固态继电器5.08直立,继电器3.81直立  
4)
开关量输入调理:干接点闭合为10可选,接口:3.81直立  
5) RS232
调理:  
1. LED
指示  
2.
4RS232全信号,后4路只需要TXRX0  
3.
无需光电隔离  
4.
接口形式:DB9(针)直立  
第二部分:软件知识  
一、 汇编语言  
二、 C51  
该部分可以从市场上买到的N种开发板上学到,至于第一部分,需要人来带吧。  
为什么要掌握这些知识?实际上,电子工程师就是将一堆器件搭在一起,注入思想(程序),完成原来的这  
些器件分离时无法完成的功能,做成一个成品。所需要的技能越高、功能越复杂、成本越低、市场上对相应的东东的需求越大,就越成功。这就是电子工程师的自身的价值。从成本到产品售出,之间的差价就是企业的追求。

作为企业的老板,是在市场上去寻找这样的应用;对电子工程师而言,是将老板提出的需求或者应用按照  
一定的构思原则(成本最低、可靠性最高、电路板最小、功能最强大等)在最短的时间内完成。最短的时间,跟电子工程师的熟练程度、工作效率和工作时间直接有关。这就是电子工程师的价值。  
将电子产品抽象成一个硬件的模型,大约有以下组成:  
1)
输入  
2)
处理核心  
3)
输出  
输入基本上有以下的可能:  
1)
键盘  
2)
串行接口(RS232/485/can bus/以太网/USB  
3)
开关量(TTL,电流环路,干接点)  
4)
模拟量(4~20ma 0~10ma0~5V(平衡和非平衡信号))  
输出基本上有以下组成:  
1)
串行接口(RS232/485/can bus/以太网/USB  
2)
开关量(TTL、电流环路、干接点、功率驱动)  
3)
模拟量(4~20ma 0~10ma0~5V(平衡和非平衡信号))  
4) LED
显示:发光管、八字  
5)
液晶显示器  
6)
蜂鸣器  
处理核心主要有:  
1) 8
位单片机,主要就是51系列  
2) 32
arm单片机,主要有atmel和三星系列  
51
系列单片机现在看来,只能做一些简单的应用,说白了,这个芯片也就是做单一  
的一件事情,做多了,不如使用arm来做;还可以在arm上加一个操作系统,程序既  
可靠又容易编写.最近三星的arm受到追捧,价格便宜,以太网和USB的接口也有,周立功的开发系统  
也便宜,作为学习ARM的产品来说,应该是最好的;作为工业级的控制,是不是合适,在网友中有不同的看法和争议。本公司使用atmel ARM91系列开发的1个室外使用的产品,在北京室外使用,没有任何的通风和加热的措施,从去年的5月份到现在,运行情况良好。已经有个成功应用的案例。但对于初学者来说,应该从51着手,一方面,51还是入门级的芯片,作为初学者练手还是比较好的,可以将以上的概念走一遍;很多特殊的单片机也是在51的核的基础上增加了一些I/OA/DD/A;也为今后学习更高一级的单片机和ARM打下基础。  
再说了,哪个老板会将ARM级别的开发放在连51也没有学过的新手手中?在51上面去做复杂的并行扩展是没有必要的,比如,扩展I/O口和A/DD/A等等,可以直接买带有A/DD/A的单片机;或者直接使用ARM,它的I/O口线口多。可以使用I2C接口的芯片,扩展I/O口和A/DD/A,以及SPI接口扩展LED显示,例如:  
MAX7219
等芯片。市面上一些比较古老的书籍中还有一些并行扩展的例子,如:RAMEPROMA/D  
D/A
等,我觉得已经没有必要去看了,知道历史上有这些一回事就行了;  
这些知识,是所有产品都具备的要素。所以要学,再具体应用。  
说一个小的故事:野人献曝。  
从前,有一个农民,冬天干了活后,休息晒太阳。好舒服呀。  
他想,这么舒服的享受,我要献给国王,让他也能得到享受。  
于是他兴冲冲地到了王宫,将他的宝贵经验献给了国王。  
我现在就象这个农民,把自己认为很宝贵的经验献给大家。希望大家多提宝贵意见  
;拍板砖也可以,骂我也无所谓,呵呵,随便。  
第一课:51单片机最小系统  
实际上,51单片机核心外围电路是很简单的,一个单片机+一个看门狗+一个晶振+2个磁片电容;  
1.
单片机:atmel89C51系列、winbond78E52系列,还有philips的系列,都差不多;现在有一些有ISP(在线下载的),就更好用了;  
2.
看门狗:种类很多,我常用的有max691/ca1161DS1832等,具体看个人习惯、  
芯片工作电压、封装等。Max系列和DS系列,还有IMP公司的,种类很多,一般只需  
要有最基本的功能就可以了;原来我使用max691,但是max691比较贵,因为它有电  
池切换功能,后来新设计电路板,就都采用ca1161了。很早以前的电路设计中,现在可能还有人使用,使用一个电阻和一个电容达成的上电复位电路;但是,这样的复位电路一个是不可靠,为什么不可靠,网络上能找得  
到专门论述复位电路的文章;更重要的是,51系列的单片机比较容易受到干扰;没  
有看门狗电路是不行的,当程序跑飞时,回不来了,死在那里。  

是我早年的一些产品的程序的一部分;不好意思,都是汇编的。  
写的时间只有周末会多一些,可以保证做到一周一课;尽量能够提前,但是这要看  
看工作忙不忙了。坊间有一些参考书,准备今天上午到北京中发市场转了一圈,我记得以下参考书目  
较好:  
1.
周航慈:《单片机程序设计》  
2.
徐涵芳:《MCS-51单片机结构与设计》  
3.  
何立民:《......  
有了这些就基本够用了;其它的很多都是资料的翻译;如果英文不好,可以看看;  
英文好的话,可以不必了,省电钱买开发系统和编程器、开发板什么的,需要什么  
资料直接下载PDF文件好了。  
要想成为电子工程师,需要宽带,在家里安装包月的adsl或者长宽,绝对值得。  
实际上,网络上什么都有了,就是一个网络数据库,要好好利用。  
网上自有黄金屋,网上自有颜如玉……  
第二课 基本的芯片和分立器件  
2.1
简述  
有必要对以下系列的芯片和分立器件进行介绍。  
除了单片机作为控制器的核心外,作为一个产品,由很多东西构成;所以,在讲系  
统之前,先将这些零零碎碎的东西一并交待。就好像一栋房子,有各种各样的构件  
组成,下面的这些东东就像砖瓦一样,没有不行。

高阻态  
就是输出既不是高电平,也不是低电平,而是高阻抗的状态;在这种状态下,可以  
多个芯片并联输出;但是,这些芯片中只能有一个处于非高阻态状态,否则会将芯  
片烧毁;  
高阻态的概念在RS232RS422通讯中还可以用到。  
3.
数据锁存  
当输入的数据消失时,在芯片的输出端,数据仍然保持;  
这个概念在并行数据扩展中经常使用到。  
4.
数据缓冲  
加强驱动能力。74LS244/74LS245/74LS373/74LS573都具备数据缓冲的能力。  
OE
output_enable,输出使能;  
LE
latch_enable,数据锁存使能,latch是锁存的意思;  
Dn
:第n路输入数据;  
On
:第n路输出数据;  
再看这个真值表,意思如下:  
第四行:当OE1是,无论DnLE为何,输出端为高阻态;  
  
第三行:当OE0LE0时,输出端保持不变;  
  
第二行第一行:当OE0LE1时,输出端数据等于输入端数据;  
  
结合下面的波形图,在实际应用的时候是这样做的:  
a
OE0  
b
先将数据从单片机的口线上输出到Dn  
c
再将LE0->1->0  
d
这时,你所需要输出的数据就锁存在On上了,输入的数据在变化也影响不到输 出的数据了;实际上,单片机现在在忙着干别的事情,串行通信、扫描键盘……  
片机的资源有限啊。  
在单片机按照RAM方式进行并行数据的扩展时,使用movx @dptr, A这条指令时,这  
些时序是由单片机来实现的。  

ULN2003/ULN2008  
它的内部结构也是达林顿的,专门用来驱动继电器的芯片,甚至在芯片内部做了一  
个消线圈反电动势的二极管。ULN2003的输出端允许通过IC 电流200mA,饱和压降  
VCE
1V左右,耐压BVCEO 约为36V。用户输出口的外接负载可根据以上参数估算  
。采用集电极开路输出,输出电流大,故可以直接驱动继电器或固体继电器(SSR)  
等外接控制器件,也可直接驱动低压灯泡。  
经常在工控的板卡中见到这个芯片。  
有个完全一样的型号:MC1413,不过现在好像不怎么见到这个型号了,但是管脚与  
2003
完全兼容。  

光耦  
光耦是做什么用的?光耦是用来隔离输入输出的,主要是隔离输入的信号。  
在各种应用中,往往有一些远距离的开关量信号需要传送到控制器,如果直接将这  
些信号接到单片机的I/O上,有以下的问题:  
1)
信号不匹配,输入的信号可能是交流信号、高压信号、按键等干接点信号;  
2)
比较长的连接线路容易引进干扰、雷击、感应电等,不经过隔离不可靠  
所以,需要光耦进行隔离,接入单片机系统。

 

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
作为一个Python算法工程,以下是一些必备的知识点: 1. 数据结构和算法:熟悉常见的数据结构,如数组、链表、栈、队列、树等,并能够理解它们的底层实现和操作。同时需要掌握常见的算法,如排序、查找、递归、动态规划等。 2. 编程基础:熟练掌握Python语言的基础知识,包括变量、数据类型、条件语句、循环语句、函数、类等。了解Python的内置函数和标准库,以及常用的第三方库,如NumPy、Pandas等。 3. 算法设计与分析:能够设计高效的算法解决实际问题,并理解算法的时间复杂度和空间复杂度。熟悉常用的算法设计技巧,如贪心算法、分治法、回溯法等。 4. 数据处理与分析:具备数据处理和分析的能力,能够使用Python进行数据清洗、特征提取、数据可视化等工作。熟悉常用的数据处理库,如Pandas、Numpy等。 5. 机器学习与深度学习:了解机器学习和深度学习的基本原理和常见算法,如线性回归、逻辑回归、决策树、支持向量机、神经网络等。熟悉常用的机器学习和深度学习库,如Scikit-learn、TensorFlow、PyTorch等。 6. 算法优化与并行计算:具备算法优化和并行计算的能力,能够使用并行计算框架如MPI、OpenMP等,提升算法的计算性能。 7. 数据库和SQL:熟悉常见的数据库系统,如MySQL、PostgreSQL等,并能够编写高效的SQL查询语句。 8. 编码规范和调试技巧:遵循良好的编码规范,写出可读性高、可维护性强的代码。具备良好的调试技巧,能够快速定位和解决问题。 9. 系统设计与架构:具备系统设计和架构的能力,能够设计高可用、高性能的分布式系统或服务。 10. 持续学习和自我提升:保持持续学习的态度,关注最新的技术趋势和行业动态。参与开源项目、参加技术交流活动,不断提升自己的技术水平。 这些是Python算法工程必备的知识点,希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值