电子之路:从模拟电路到C语言编程

开发 前端
加了栅极之后,栅极电压的微小变化,就可以影响正负极之间的电子通量,从而影响整个回路的电流,所以它也有信号的放大作用。

​1897年,英国物理学家汤姆生发现了电子,拉开了现代科技的开端和信息时代的序幕。

随后出现的电子三极管,让人们构造复杂的电子电路成为了可能。

1、电子三极管

电子三极管是一种真空的玻璃管,它的一端在高温下可以放出电子(负极),另一端是可以接收电子的金属板(正极)。

在管子的中间有一个栅极(基极),可以调节正负极之间的电子通量,从而影响电流的大小。

电子三极管的原理

上图是简单的原理图:

  • 电子三极管的灯丝一般是由在高温下很容易放出电子的金属制成。
  • 电子在电压作用下飞向真空玻璃管的正极,所以它是可以单向导电的。

电子带负电,所以它只能飞向正极,而不能反着。

如果没有栅极,那么它就是个电子二极管。

  • 加了栅极之后,栅极电压的微小变化,就可以影响正负极之间的电子通量,从而影响整个回路的电流,所以它也有信号的放大作用。

在晶体三极管发明之前,人们就是用这种三极管来制作电子电路的。

俄罗斯在电子管领域应该是很强的。

电子管设备的特点就是大,而且工作电压高,笨重。

据说,米格25的雷达功率大到可以烤熟兔子​

2、晶体三极管

1947年,美国的肖克利发明了晶体管,让电子电路的体积重量都迅速变小。

从这之后,电子设备携带更方便,使用更广泛。

例如,过去老人们爱拿来听小说的收音机,也就一巴掌大小,它的核心元器件就是晶体三极管。

不过,这些电路都是模拟电路。

3、模拟电路

模拟电路的特点就是,功能很强大,但精度不一定多高。

如下图,一个电容卡在那里,就可以高通滤波!

电容的特点是通交流、阻直流,通高频、阻低频。

直流信号会被阻断,而低频信号和高频信号的容抗不一样,被削弱的程度也不一样。

所以,一个电容就可以把不同频率的信号分开。

要是写代码去滤波,至少也得写个快速傅立叶变换(FFT):

1)傅立叶变换之后,数字信号就从时域变到频域了,

2)然后,把需要的频率选出来,不用的频率对应的系数清零,

3)再变回时域,

4)反正要写几百行的代码,比一个电容一个电阻麻烦多了。

如果要低通滤波,就把电容和电阻的位置互换就行:

高频信号的容抗很小,都通过旁路电容流走了,剩下的低频信号通过电阻传递到下一级。

如果写代码去滤波,也要先FFT,然后把不用的频率清零,再反FFT变回时域,一样的麻烦。

所以,模拟电路的功能是很强大的,但是精度不够,因为单个元器件的精度受制于当前的工艺。

并且,精度越高的模拟电路,越容易受到导线长度的影响。

三极管的工作状态一旦漂移了,那调试起来肯定非常的酸爽​

然后,人们就发明了数字电路。

4、数字电路

数字电路,只使用三极管的2个状态:导通和截止,不使用三极管的放大。

这样,三极管的状态就很难漂移了。

毕竟,三体问题很难搞,但二体问题还是很好搞的。

所以,数字电路的远比模拟电路更稳定,整个电路系统的正常工作范围更大,抗干扰能力更强。

数字电路,非门

如图:

1)三极管只要导通的时候,输出就是低电压,被认为是0,

2)三极管截止的时候,输出就是高电压,被认为是1,

3)三极管的基极与发射极之间的电压 Vbe > 0.7v 就导通,低于0.7v就截止。

在电子电路中,0.7v 是个很大的电压范围,它实际上就是电路状态的一个容错区间。

只要输入误差别大到跟 0.7v 是一个数量级,那么电路的状态就是正常的。

可以要求输入信号的电压波动范围只能是0.1v,也就是4.9-5为高电位,0-0.1为低电位,那么就算有点误差,三极管的状态也不至于就漂移了。

至于更复杂的功能,当然用更多组这样的电路累积出来。

这样,人们在设计电路时就突破了工艺的限制。

既然是数字电路,可以进行逻辑运算,那它当然是可编程的!

然后,软件就诞生了!

5、软件编程

数字电路可以编程,是它相较于模拟电路的一个巨大的优点。

想改功能的时候可以不用改硬件,只改代码就行了​

这在灵活度上,远不是模拟电路可比的!

这时可以认为计算机和编程语言就出现了!

最早的编程语言,是在纸带上打孔的机器语言:有孔或没孔就表示0或1。

这种编程方式还是非常让人头疼的。

然后就有了汇编器,可以把简单的英文单词或数字转化成机器码:这就是汇编语言。

汇编语言比机器语言倒是有了很大的进步了,但一样让人头疼。

汇编语言只能用寄存器名字表示数据,没法给每个数据起个有明显含义的变量名字。

调过汇编代码的都知道,函数大了之后跟踪哪个寄存器里存的是哪个变量,非常的困难。

总之一句话,汇编代码的可读性很差。

然后,人们发明了很多高级语言,可以统称为C前语言!

pascal, basic, 都是C语言出现之前就有的编程语言,但是说实话,真不如C语言好用。

1970年,丹尼斯-里奇和肯-汤普森估计是受够了这些老语言了,他们发明了C语言!

“物理学的大厦建成了,后人所能做的只是修修补补。”​

责任编辑:武晓燕 来源: 今日头条
相关推荐

2023-01-04 11:04:32

2017-03-13 09:19:38

CAP编程语言

2015-07-01 09:49:24

编程管理程序员晋升

2019-06-18 09:09:31

C端B端产品设计

2009-08-27 16:03:31

从c#到c++

2019-12-03 09:31:14

编程语言程序员Python

2020-05-08 11:42:24

JavaScript编程语言技术

2015-06-15 09:29:56

联想互联网

2016-03-30 09:56:07

c语言变量声明objectivec

2010-03-19 09:39:17

Python编程语言

2020-10-19 14:23:48

C语言编程语言

2011-04-01 09:29:52

MySQLMongoDB

2009-09-02 18:11:24

C#鼠标

2020-08-18 10:20:50

Java 编程开发

2022-06-16 13:08:30

Combine响应式编程订阅

2021-12-12 18:15:06

Python并发编程

2011-07-13 17:42:32

CC++

2011-07-13 17:08:02

CC++

2011-07-13 16:48:55

CC++

2015-12-07 09:46:26

swift编程开源
点赞
收藏

51CTO技术栈公众号