【从零开始自制CPU之学习篇02】555定时器
555定时器是一种集成电路芯片,常被用于定时器、脉冲产生器和震荡电路。在CPU制作中作为pc(程序计数器)的主要组成部分。以下是我购买的NE555实拍图:

NE555的针脚示意图:

555定时器各针脚功能定义:
| 引脚 | 名称 | 功能 |
|---|---|---|
| 1 | GND(地) | 接地,作为低电平(0V) |
| 2 | TRIG(触发) | 当此引脚电压降至1/3VCC(或由控制端决定的阈值电压)时输出端给出高电平。 |
| 3 | OUT(输出) | 输出高电平(+VCC)或低电平。 |
| 4 | RST(复位) | 当此引脚接高电平时定时器工作,当此引脚接地时芯片复位,输出低电平。 |
| 5 | CTRL(控制) | 控制芯片的阈值电压。(当此管脚接空时默认两阈值电压为1/3VCC与2/3VCC). |
| 6 | THR(阈值) | 当此引脚电压升至2/3VCC(或由控制端决定的阈值电压)时输出端给出低电平。 |
| 7 | DIS(放电) | 内接OC门,用于给电容放电。 |
| 8 | V+,VCC(供电) | 提供高电平并给芯片供电。 |
内部原理示意图(截取自视频):

简单说明原理:
这块我也不是很懂,大概的原理是,555定时器内部通过两个比较器,一个触发器(SR锁存器),和充放电装置组成。
针脚2和6分别接了比较器,针脚2是电压降至1/3VCC时输出端给出高电平,针脚6是电压升至2/3VCC时输出端给出低电平。输出的高低电平通过针脚7的充放电装置,使得电容不断充电和放电。
左下方就是一块电容,配合针脚7不断充电和放电,使得针脚2和6的电压不断变化,不断触碰阈值,使输出端不断改变高低电平。
就这样比较器和电容相互影响,来回变化,使得锁存器的输出信号,即针脚3不断变化。
下面这个电路针脚3接的是LED灯,所以效果就使得LED灯不断闪烁,大致原理就是这样。

控制频率:
看上面的内部原理示意图,不难理解频率取决于电容充放电的速度,而电容充放电速度取决于那个100k电阻的阻值。把100k电阻那里换成一个可变电阻,通过手动调节就可以控制速度了。电阻越小,充放电速度越快,灯泡闪得也就越快了。
【从零开始自制CPU之学习篇02】555定时器的更多相关文章
- 【从零开始自制CPU之学习篇04】电容
电解电容: 多数在1μF以上,直接用数字表示.如:4.7μF.100μF.220μF等等.这种电容的两极有正负之分,长脚是正极. 独石电容: 独石电容器是多层陶瓷电容器的别称, 简称MLCC 读数方法 ...
- 【从零开始自制CPU之学习篇06】寄存器
上一篇文章学习了总线的相关知识,途中ABC当时假设为一个个的8位寄存器.这一篇要学习怎么构建这个寄存器. 这分为两个三个部分,数据输入,寄存器,数据输出.首先不管输出,来看数据输入和寄存器这两个部分. ...
- 【从零开始自制CPU之学习篇00】开篇
从今天开始决定用面包板制作一个8位的CPU,实现几个简单的指令.我给自己分两大部分计划,第一部分是学习制作CPU的理论知识,第二部分是实践.并打算实施计划的同时用博客的方式记录下来.理论知识的部分重点 ...
- 【从零开始自制CPU之学习篇07】最简单的ALU—全加器
ALU是算术逻辑单元,是CPU中重要的一部分,因为CPU本质上就是不断重复最简单的计算.而我们这一版CPU的ALU部分更为简单,是一个只能做加法的ALU. 理论部分 我们需要一个能帮我们进行数学计算的 ...
- 【从零开始自制CPU之学习篇03】锁存器与触发器
本篇学习了两种锁存器:SR Latch和D Latch,一种触发器:D flip flop SR Latch:SR—锁存器 初始状态下,S和R都为0,Q和Q‘随机有一个为1另一个 为0(取决于电流速度 ...
- 【从零开始自制CPU之学习篇05】总线
总线定义:总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束, 按照计算机所传输的信息种类,计算机的总线可以划分为数据总线.地址总线和控制总线,分别用来传输数据.数 ...
- 【从零开始自制CPU之学习篇01】识别四色环电阻
制作CPU的好多部分都用到了各种阻值的电阻,由于我选购的是色环电阻,即电阻表面涂上一定颜色的色环,来代表这个电阻的阻值.因此通过色环来快速识别电阻阻值需要作为储备知识,不然一堆电阻插在面包板上很快就乱 ...
- iOS-H5学习篇-02
H5-自学笔记-2016年09月06日 一:各种标签的练习 Html和CSS的关系 学习web前端开发基础技术需要掌握:HTML.CSS.JavaScript语言. 1.1.1. HTML是网页内容的 ...
- pythonchallenge之C++学习篇-02
第二关任然是一个字符处理的关卡 查看网页源码发现有一大串字符需要处理,这么多的字符如果放在源代码里就很不好了 所以要用到C++对文件的操作,用到的头文件是fstream 这里参照了这个博文 对文件处理 ...
随机推荐
- this指向及改变this指向的方法
一.函数的调用方式决定了 this 的指向不同,但总的原则,this指的是调用函数的那个对象: 1.普通函数调用,此时 this 指向 全局对象window function fn() { conso ...
- JS实现排序算法
代码如下: 1.冒泡排序 <script> var arr = [9, 8, 7, 5, 7, 1, 45, 12, 7, 74, 4]; for (var i = 0; i < a ...
- Django----使用模板系统渲染博客页面、实现列表和详情页的跳转、前后跳转功能
.模板写法同Flask,可以参考之前的FLask-模板 .将之前的BootStrap静态页面中的数据使用模板写 <!DOCTYPE html> <html lang="en ...
- Linux从入门到进阶全集——【第八集:软件包管理:rpm、tar、yum】
1,对Linux下软件的了解 源码包:未编译,要编译安装. 二进制包:已编译,可直接安装. 2,centos和ubuntu下的软件包对比: [centos]rpm文件手动安装,使用rpm指令 ...
- 闲谈REST API
REST 表述性状态传递(英文:Representational State Transfer,简称REST). 资源: 资源由URI(统一资源定位符)的来指定. 通过资源的表现形式来操作资源 对资源 ...
- 业务线B/C端业务组件总结
/** * 业务线组件总结 * */ /* B端组件的总结 1.组件cssBase的总结 1像素底部边框 */ @mixin border - 1px - b($background: $gray - ...
- CF715B. Complete The Graph
CF715B. Complete The Graph 题意: 给一张 n 个点,m 条边的无向图,要求设定一些边的边权 使得所有边权都是正整数,最终 S 到 T 的最短路为 L 1 ≤ n ≤ 100 ...
- Linux进阶命令用法
1.tr命令 可以对来自标准输入的字符进行替换.压缩和删除.它可以将一组字符变成另一组字符 选项 -c或——complerment:取代所有不属于第一字符集的字符: -d或——delete:删除所有属 ...
- jquery获取一组文本框的值
$("#btn5").click(function() { var str="";$("[name='checkbox'][checked]& ...
- centos为docker配置加速器
国内拉去docker镜像慢得可怜,为了解决这个问题,可为docker配置加速器. 1.修改daemon配置文件 sudo mkdir -p /etc/dockervim /etc/docker/dae ...