软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)

开篇引言:

开这个的原因是因为,对于一个从小搞软件,除了电容,电阻,还有用过蓝福电池、奥迪双钻电池的我,真一直都搞求不懂这些硬件原理图,所以对于FPGA工程师来说,至少你得会看原理图吧,原理图都不会看,那写个锤子的程序哟,还怎么分配管教,就像学单片机的童鞋一样,单片机只知道写流水灯,电路不会,那也顶个肺。有很多人就说,去看模电,数电,跟着做做就会了,然而书本上面讲的都是什么基尔霍夫定理,这顶个毛用,我们就只要看懂原理图,你叫我们绕这么一大圈子,岂不是浪费我们时间,得力不讨好。
我一直不是希望自己会画多少层的板,这些有专门的硬件工程师做,但是,至少原理图会得看,而且每次我想搜一搜什么Alti design,这些PCB的视频教学,都将这个软件怎么用,不讲解为毛这里要这么画。所以,经过重重摸索,我决定对此开设一个专题讲解,针对软件工程师如何学习原理图,最终实现能够看懂原理图就是我们的目的了。

欢迎专业的硬件工程师点评补充指导!

1. 最简单的3.3V点亮小灯

软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第1张图片
如上图
如果我们输出电平为1,就3.3V,就可以点亮LED。
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第2张图片
如上图
如果我们不关闭按键,此时没有电流,MCU连接的点就是3.3V。
一旦开关按下,电流导通,此点的电压就是0.
所以,我们就可以通过输入的此点的电压是0还是3.3v(1)来判断开关是否按下。

下面我们可以看看实际的电路原理图
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第3张图片
想让LED点亮,我们就让nLED1输出低电平,这样就有电流流过了。
通过搜索nLED1,我们就可以搜索到,接到了GPF4这个引脚
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第4张图片

如何设置为输出引脚呢?我们需要找到对应的芯片手册,查看该引脚GPF4,怎么配置。
在这里插入图片描述
可以看到,我们配置为01,就是output.

- 三极管

软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第5张图片
口诀:箭头朝内 PNP,导通电压顺箭头过

三极管有截止、放大、饱和三种工作状态,我们通常用截止区、饱和区。
记住:总之是箭头的始端比末端高 0.7V 就可以导通三极管的 e 极和 c 极。否则视作断路。
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第6张图片
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第7张图片
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第8张图片
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第9张图片
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第10张图片
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第11张图片

软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第12张图片
三极管的用法特点,关键点在于 b 极(基极)和 e 级(发射极)之间的电压情况,对于PNP 而言,e 极电压只要高于 b 级 0.7V 以上,这个三极管 e 级和 c 级之间就可以顺利导通。也就是说,控制端在 b 和 e 之间,被控制端是 e 和 c 之间。同理,NPN 型三极管的导通电压是 b 极比 e 极高 0.7V,总之是箭头的始端比末端高 0.7V 就可以导通三极管的 e 极和 c 极。
三极管基极通过一个 10K 的电阻接到了单片机的一个 IO口上,假定是 P1.0,发射极直接接到 5V 的电源上,集电极接了一个 LED 小灯,并且串联了一个 1K 的限流电阻最终接到了电源负极 GND 上。

如果 P1.0 由我们的程序给一个高电平 1,那么基极 b 和发射极 e 都是 5V,也就是说 e到 b 不会产生一个 0.7V 的压降,这个时候,发射极和集电极也就不会导通,那么竖着看这个电路在三极管处是断开的,没有电流通过,LED2 小灯也就不会亮。如果程序给 P1.0 一个低电平 0,这时 e 极还是 5V,于是 e 和 b 之间产生了压差,三极管 e 和 b 之间也就导通了,三极管 e 和 b 之间大概有 0.7V 的压降,那还有(5-0.7)V 的电压会在电阻 R47 上。这个时候,e 和 c 之间也会导通了,那么 LED 小灯本身有 2V 的压降,三极管本身 e 和 c 之间大概有 0.2V的压降,我们忽略不计。那么在 R41 上就会有大概 3V 的压降,可以计算出来,这条支路的电流大概是 3mA,可以成功点亮 LED。
参考了:
https://blog.csdn.net/kk_01110001b/article/details/80543536

上拉电阻就是给悬空状态一个高电压状态
下拉电阻就是给悬空状态一个低电压状态

所以我们就知道下图,我们就知道这是一个上拉电阻了

软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第13张图片
下图是一个下拉电阻
软件工程师学习硬件原理图--第一讲看懂GPIO和门电路(弱智学前班儿童系列)_第14张图片

你可能感兴趣的:(软件工程师学硬件系列)