news 2026/6/13 7:31:13

【微实验】Multisim 实现任意序列发生器

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【微实验】Multisim 实现任意序列发生器

本文针对序列串行发生需求,以00011000为例,基于 74 系列中规模芯片,在 Multisim 中实现两种可直接使用的序列发生器方案:移位寄存器型计数器 + 数据选择器型,均可以稳定输出目标串行序列。

一、设计原理:序列发生的核心逻辑

序列发生器的核心是按照固定顺序循环输出预设的二进制序列,本次目标序列为00011000(8 位),两种方案的核心逻辑分别是:

  1. 移位寄存器型:利用移位寄存器的移位特性,将目标序列预存在寄存器中,通过时钟控制循环移位输出
  2. 计数器 + 数据选择器型:利用计数器的地址输出,控制数据选择器按顺序输出预设序列

核心器件及真值表

1. 74HC194(4 位双向移位寄存器)

本次用它的并行载入 + 循环移位功能,实现序列的循环输出

输入控制功能
\(\overline{CLR}\)=0异步清零,所有输出置 0
\(\overline{CLR}\)=1,\(S_1S_0\)=11并行载入:将\(D_0-D_3\)的输入载入到\(Q_0-Q_3\)
\(\overline{CLR}\)=1,\(S_1S_0\)=01右移位:时钟上升沿时,\(Q_0\leftarrow D_{SR}\),\(Q_1\leftarrow Q_0\),\(Q_2\leftarrow Q_1\),\(Q_3\leftarrow Q_2\)
\(\overline{CLR}\)=1,\(S_1S_0\)=00保持状态:输出不变
2. 74HC161(4 位同步计数器)

本次用它的模 8 计数功能,生成 8 个地址信号,用于控制数据选择器

输入控制功能
\(\overline{CLR}\)=0异步清零,所有输出置 0
\(\overline{CLR}\)=1,\(\overline{LOAD}\)=0并行载入:将\(D_0-D_3\)的输入载入到\(Q_0-Q_3\)
\(\overline{CLR}\)=1,\(\overline{LOAD}\)=1,\(EN_P=EN_T=1\)同步计数:时钟上升沿时,\(Q_0-Q_3\)加 1
3. 74HC151(8 选 1 数据选择器)

和之前的序列检测中功能一致,根据地址选择输入的序列数据输出

地址输入\(A_2A_1A_0\)输出 Y
000\(D_0\)
001\(D_1\)
010\(D_2\)
011\(D_3\)
100\(D_4\)
101\(D_5\)
110\(D_6\)
111\(D_7\)

二、Multisim 电路实现

方案 1:移位寄存器型(74HC194 级联)

1. 电路接线逻辑

本次目标序列是 8 位,所以使用两片 74HC194 级联实现 8 位移位寄存器

  1. 第一片 74HC194(低位,对应序列的第 1-4 位:0001
    • \(\overline{CLR}\)(1 脚):接 5V(禁止清零)
    • \(S_1S_0\)(9、10 脚):先接 11(并行载入模式),载入完成后改接 01(右移位模式)——S0一直是1,S1先1后0
    • \(D_0-D_3\)(3-6 脚):按序列低 4 位0001连接,\(D_0=0\)(接地)、\(D_1=0\)(接地)、\(D_2=0\)(接地)、\(D_3=1\)(接 5V)
    • \(D_{SR}\)(7 脚):接第二片的\(Q_0\)(12 脚),实现循环移位
    • CLK(2 脚):接 1kHz 的时钟源(数字时钟源,TTL 电平)
    • \(Q_0-Q_3\)(12-15 脚):\(Q_3\)作为串行输出端的低位输出,同时\(Q_3\)接第二片的\(D_{SL}\)(8 脚)
  2. 第二片 74HC194(高位,对应序列的第 5-8 位:1000
    • \(\overline{CLR}\)(1 脚):接 5V(禁止清零)
    • \(S_1S_0\)(9、10 脚):和第一片保持一致,先 11 后 01
    • \(D_0-D_3\)(3-6 脚):按序列高 4 位1000连接,\(D_0=1\)(接 5V)、\(D_1=0\)(接地)、\(D_2=0\)(接地)、\(D_3=0\)(接地)
    • \(D_{SL}\)(8 脚):接第一片的\(Q_3\)(15 脚)
    • CLK(2 脚):和第一片接同一个 1kHz 时钟源(同步移位)
    • \(Q_0-Q_3\)(12-15 脚):\(Q_0\)接第一片的\(D_{SR}\)(7 脚),\(Q_3\)作为串行输出端的高位输出
2. 操作与验证
  1. 先将两片 74HC194 的\(S_1S_0\)接 11,给一个时钟上升沿,完成并行载入,此时两片的输出分别为0001(低位)和1000(高位)
  2. 将\(S_1S_0\)改接 01,之后每一个时钟上升沿,序列会循环右移:
    • 第 1 个时钟:输出0(第 1 位)
    • 第 2 个时钟:输出0(第 2 位)
    • 第 3 个时钟:输出0(第 3 位)
    • 第 4 个时钟:输出1(第 4 位)
    • 第 5 个时钟:输出1(第 5 位)
    • 第 6 个时钟:输出0(第 6 位)
    • 第 7 个时钟:输出0(第 7 位)
    • 第 8 个时钟:输出0(第 8 位)
    • 第 9 个时钟:回到第 1 位,循环输出
  3. 可以在串行输出端接示波器,观察到连续的00011000串行波形

方案 2:计数器 + 数据选择器型(74HC161+74HC151)

1. 电路接线逻辑
  1. 74HC161(模 8 计数器,生成地址)
    • \(\overline{CLR}\)(1 脚):接 5V(禁止清零)
    • \(\overline{LOAD}\)(9 脚):接 5V(禁止并行载入)
    • \(EN_P、EN_T\)(7、10 脚):接 5V(使能计数)
    • CLK(2 脚):接 1kHz 的时钟源(数字时钟源,TTL 电平)
    • \(Q_0-Q_3\)(14-11 脚):取\(Q_0-Q_2\)(14、13、12 脚)接 74HC151 的地址端\(A_0-A_2\)(1、2、3 脚),实现模 8 计数(0-7 循环)
    • RCO(15 脚):悬空,本次用不到进位输出
  2. 74HC151(8 选 1 数据选择器,输出序列)
    • \(\overline{EN}\)(7 脚):接地(使能选择器)
    • \(D_0-D_7\)(11、10、9、6、5、4、13、12 脚):按目标序列00011000依次连接:
      • \(D_0=0\)(接地)、\(D_1=0\)(接地)、\(D_2=0\)(接地)、\(D_3=1\)(接 5V)
      • \(D_4=1\)(接 5V)、\(D_5=0\)(接地)、\(D_6=0\)(接地)、\(D_7=0\)(接地)
    • Y(5 脚):作为串行序列的输出端,可接示波器观察波形
2. 操作与验证
  1. 打开时钟源,74HC161 会开始模 8 计数,\(Q_0-Q_2\)依次输出000、001、010、011、100、101、110、111循环
  2. 74HC151 会根据地址依次选择\(D_0-D_7\)输出,最终在Y端得到串行序列00011000循环输出
  3. 如果需要修改输出序列,只需要修改\(D_0-D_7\)的接线即可,扩展性强

三、总结

本次实现的两种序列发生器方案,都可以在 Multisim 中稳定输出00011000序列:

  1. 移位寄存器型:适合需要循环移位输出的场景,电路的时序连贯性更好
  2. 计数器 + 数据选择器型:修改序列更灵活,适合需要经常更换输出序列的场景
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/13 4:09:31

腾讯菁英班跨端日历应用产品报告

仓库地址 https://github.com/ceilf6/DayMatetitle: DayMate 产品报告 author: 王景宏 date: \today pdf-engine: xelatex documentclass: ctexart classoption: fontsetnone mainfont: Songti SC monofont: Hiragino Sans GB fontsize: 12pt geometry: margin2.5cm lines…

作者头像 李华
网站建设 2026/6/12 11:27:18

EmotiVoice支持语音情感历史记录回溯功能

EmotiVoice 实现语音情感记忆:让AI“记得”它的情绪 在虚拟助手轻声安慰你之前,它是否还记得上一次对话中你语气里的疲惫?当游戏角色因剧情转折而愤怒咆哮时,它的声音变化是突兀的切换,还是情绪层层累积的结果&#x…

作者头像 李华
网站建设 2026/6/12 23:45:06

EmotiVoice语音合成中的多音字准确识别率提升

EmotiVoice语音合成中的多音字准确识别率提升 在智能语音助手动辄“把‘银行’读成‘yn xng’”的年代,用户早已对TTS系统的“读错字”习以为常。然而,当AI开始朗读《红楼梦》或医学文献时,一个“重”字念错声调,就可能让听众瞬间…

作者头像 李华
网站建设 2026/6/12 21:29:51

Python 实战:手把手教你开发百度网盘全功能开发者工具

在数字化时代,自动化管理云盘文件是许多开发者的共同需求。百度网盘开放平台(XPAN)提供了强大的 API,但对于初学者来说,身份认证(OAuth 2.0)和权限校验(尤其是令人头疼的 31064 错误…

作者头像 李华
网站建设 2026/6/12 16:22:12

Kotaemon前端交互界面开源项目推荐

Kotaemon:构建生产级智能对话系统的开源利器 在大模型能力日益普及的今天,越来越多企业开始尝试将 LLM 应用于客服、知识问答、技术支持等实际场景。但很快就会遇到一个共性问题:模型“说得漂亮”,却常常“答非所问”——给出的回…

作者头像 李华