View on GitHub

软件工程导论课程支持网站

Supporting Site for the course of Introduction to Software Engineering

硬件编程–电路与二进制运算

  电路是计算机实现的基础。目前,不管什么语言编写的程序都是通过计算机自己翻译成机器语言,由电路执行。

实验目的

实验/学习工具

在线电路设计和仿真工具 Circuit。

AutoDesk Circuits https://circuits.io/

!该工具是中学生电路入门工具,功能有限!但直观,易用

与门案例:

与门案例

实验步骤

操作入门

  1. https://circuits.io/ 登陆并注册账号
  2. 点 “+New” 选择 “Circuitscribe” 电路图就创建了。
  3. 创出上图与门案例:
    • “+ Modeles” 添加元器件
    • Rotate 符号旋转器件
    • “Conductive Pen” 用于画导线
  4. 仿真
    • 按 “Start Simulation” ,电池会自动接上
    • 点击开关
  5. 画真值表验证与门功能
In A IN B Out
0 0 0
0 1 0
1 0 0
1 1 1

电路连接(导线交叉问题)

  1. 电源线(现实中是红色),用它连接电源的“+” 和 器件的 “VCC”。 有 “VCC” 引脚的器件必须接电源
  2. 地线(现实中是蓝色),用它连接电源的“-” 和 器件的 “END”。 有 “END” 引脚的器件必须接地线
  3. 由于模拟软件中,导线相交意味着联通,因此可能导致器件不正常。
  4. 一种方法是利用电阻引脚之间的空间(如下图),实现导线交叉,但要注意:
    • 电阻有属性,电阻值取100偶(最小值)
    • 电阻不能串联在电源线、地线上
    • 近可能少用电阻,实现导线交叉

导线交叉

任务 1:建立一个简单电路

(1)建立非门功能(O = A’)验证电路:

由于软件没有提供 “NOT GATE”, 你可以通过三极管和电阻自己搭建,如下图:

非门

注:用截图工具截图,务必存 png 格式

(2)填写表格:

INPUT(toggle switch) OUTPUT(led)
ON(1) ?(?)
OFF(0) Red(1)

(3)选做题:

任务 2:验证电路等价

(1)分别建立电路 A(B+C)和 AB+AC 在一个界面上。

用 A,B,C 用三个开关控制输入,用两个 LED 表示输出。

注:用截图工具截图,务必存 png 格式

(2)并枚举所有可能输入,用真值表记录结果。

A B C O1 O2
0 0 0
0 0 1

任务 3:理解存储电路

(1)按课件 S-R latch 搭建电路:

S-R latch

注: 与非门 = 一个与门的输出连接非门的输入

(2)顺序按Set,Reset,并填写以下表格

~Set ~Reset Q(X) ~Q(Y)
1 1 0 1
0 1
1 1
1 0
1 1

任务 4:设计全加电路

(1) 画出一位的全加电路 (2) 画出二位的全加电路

注:用截图工具截图,务必存 png 格式

任务要求

请以个人实践为背景,编写实验报告

评价标准(实验报告)