带微控制器的逻辑门

电子说

1.3w人已加入

描述

扎实的逻辑门知识是编程和电子学的基础。这在任何项目中都是必需的。真值表是可视化各种逻辑网络组合结果的好方法。在学校里,真值表被学生彻底研究过,但并不经常被准确地记住。文中设计的装置可以帮助学生以简单的方式更好地可视化真值表。整个项目基于使用微控制器。

逻辑门

逻辑“1”是“真”和“高”的同义词。逻辑“0”是“假”和“低”的同义词。在数字电子学中有三个基本操作:

NOT(否定):如果输入值为“0”,则输出为“1”,反之亦然。

AND(逻辑乘积):只有当所有输入为“1”时,输出值为“1”,其他情况为“0”;

OR(逻辑和):仅当所有输入的值都为“0”时,结果为“0”,在所有其他情况下,结果为“1”。

执行这些操作的数字电路称为“逻辑门”,如图 1所示。NOT 门总是只有一个输入,而 AND 和 OR 门可以有两个或多个输入。该项目包括以下逻辑门:

或者;

和;

与非;

也不;

异或;

不是

mcu

图 1:逻辑门的符号

逻辑门 OR

OR 逻辑门是一种逻辑分离操作。它提供两个或多个逻辑信号的输入,如果至少一个信号等于“1”,则返回值“1”。如果所有信号均为“0”,则输出等于“0”。

与逻辑门

AND 逻辑门是逻辑与运算。它提供两个或多个逻辑信号的输入,只有当所有输入信号都等于“1”时,才在输出端返回值“1”,否则返回“0”。

与非逻辑门

它的操作相当于与门,但输出是反相的。

逻辑门 NOR

它的操作相当于 OR 门,但输出是反相的。

逻辑门 XOR

异或门提供了异或逻辑运算。仅当输入之一为“1”时,它才返回逻辑值“1”。它通常用作比较器。

逻辑门非

NOT 逻辑门构成反相器并提供逻辑否定运算。它在输入端接收信号并在输出端返回其补码。

真值表

我们正在进行的项目需要在硬件上实现逻辑门的真值表。当输入变化时打开或关闭某些执行器的可能性对于理解逻辑网络的操作肯定是有效的。真值表(见图2)是逻辑门输入处的值和这些门输出处的相应值的所有可能组合的表格表示。真值表允许以表格的方式表示所有可能的情况。它有助于理解逻辑电路的数字状态。

mcu

图 2:真值表

接线图

有很多方法可以实现本文中描述的项目。它可以用分立的电子元件制成,这个解决方案将具有教学目的。相反,该项目涉及使用微控制器。使用一些输入端口和其他输出端口,可以很容易地对一个完整的逻辑系统进行编程。整个决策过程委托给固件,固件控制输入的逻辑电平并通过一些 LED 二极管显示结果。图 3所示的接线图提供了 PIC 16F876 的使用,但任何其他类型的微控制器都可以成功使用。MCU 时钟为外部时钟,为 RC 类型。时钟频率的确定由以下公式管理:

T = R * C * 2.3

F = 1 / (R * C * 2.3)

使用 4.7 kOhm 电阻和 22 pF 电容,微型的频率约为 4204861 Herz (4.2 Mhz)。按钮 A 和 B 构成逻辑门的两个输入。按下它们中的每一个都会将 micro 的 C0 或 C1 端口置于高电平。否则,由于存在 10 kOhm 下拉电阻,它们的逻辑电位较低。六个 LED 二极管前面有相同数量的 220 欧姆限流电阻,代表逻辑门 OR、AND、NAND、NOR、XOR 和 NOT 的输出。非门仅与“A”开关输入有关。整个系统采用 5 V 电压供电。

mcu

图3:逻辑门系统接线图

带有 Great Cow Basic 的固件

固件清单是使用免费软件 Grat Cow Basic 编译器制作的,您会发现它附在本文后面(参见图 4)。这很简单。让我们详细解释控件执行的不同操作。

#chip 16F876, 4:该指令用于设置正确类型的 MCU 和相关时钟频率(在此应用中不重要);

y = z:这些命令使 PIC 的端口可以作为输入或输出工作;

if portc.0 = 1 OR portc.1 = 1 then : 这是检查 OR 门和 NOR 门的条件检查;

if portc.0 = 1 AND portc.1 = 1 then : 这是检查 AND 门和 NAND 门的条件检查;

if (portc.0 = 0 and portc.1 = 0) or (portc.0 = 1 and portc.1 = 1) then : 这是检查 XOR 端口的条件检查;

if portc.0 = 0 then : 是检查 NOT 端口的条件检查。

所有检查都在无限循环中执行。建议仔细研究程序列表并在编码中寻找替代方案。

mcu

图 4:用于编程 PIC 微控制器的 Great Cow Basic 开发环境

带有梯形图语言的固件

相同的程序可以用梯形图语言实现。有必要有深入的知识,特别是关于触点和继电器的逻辑使用。图 5显示了构成整个程序的一组“梯级”。这种类型的图形编码可能看起来比程序编码更简单,但我们将看到 Basic 语言提供了更多的开发可能性和对系统的完全控制,以及用于调试、更新和修改的简单环境。

mcu

图 5:用梯形图语言编写的相同固件

制作PCB

要为逻辑门制作电路板,您必须创建印刷电路,其迹线如图6所示。这很简单,但由于存在微控制器印记,建议使用光刻技术。它的尺寸为 102 毫米 x 86 毫米。

mcu

图 6:逻辑门系统 PCB

当 PCB 准备好后,您需要在焊盘对应的位置上钻孔,钻头为 1 毫米。然后焊接组件,从低调的开始,然后再焊接更大的组件。我们建议为微控制器采用 PCB 插座。注意极化组件的方向。必须使用功率约为 30 W 且尖端较窄的小型烙铁进行焊接。

创建图 8 中的电路非常容易,而且每个人都可以做到。

mcu

图 8:完整电路的 3D 渲染

材料清单

电子元件很容易找到,并在以下 BOM 中列出:

1个电容22 pF;

6个LED;

6个电阻220欧姆;

2 电阻 10 kOhm;

1 个电阻 4.7 kOhm;

2个开关或按钮;

1 图片 16f876。

容器

唯一要做的连接是与电路电源和两个开关有关的连接。从组件布局中可以看出,LED 二极管已经定位在 PCB 上。这个解决方案确实很方便,但最好创建一个容器来显示逻辑门的实际设计。在这种情况下,需要将发光元件安装在上面板,并与板子进行相关布线。

测试

测试非常简单。逻辑门的 LED 二极管将根据“A”和“B”两个键的压力通过微弱地向电路供电来点亮。如您所见,此版本的电路提供了带有两个输入的逻辑门。

结论

视觉和图形演示总是比书面或阅读的更清晰。这条规则也适用于电子和数学。亲眼看到逻辑门的操作要容易得多,从而了解它们是如何工作的。该项目对大学和电子学院的教师和教授都非常有用。

审核编辑:郭婷

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分