×

带电池充电器的微型逻辑探头TTL/CMOS

消耗积分:0 | 格式:zip | 大小:2.58 MB | 2022-11-02

李麒铭

分享资料个

描述

介绍:

我会向你介绍这个Logic Probe,一个完整的仪器使用 TTL 和 CMOS技术测量数字逻辑电平 0(零)和 1(一)既简单又有效;可接受的最大电压为 10 伏,但 CMOS 可以达到您可以避免的高达 18 伏。要使用它,只需将带有黑色“鳄鱼”夹的 Mini USB 线连接到电路的 GND,然后触摸您想知道逻辑电平的探头(在同一电路中),然后查看会亮起的相应 LED。

通常使用 Arduino 和本项目中使用的 ATtiny 类似的微控制器,我们发现 TTL 为 3.3v 和 5.0v,其中“零”和“一”逻辑电平相同:从 0.0 到 0.8v 被视为 0(低)和从 2.0 到 3.3 到 5.0v 被认为是 1(高);在 0.8 和 2.0 之间被认为是未定义的。

三个 LED中的一个将每个相应级别亮起

  • TTL 电平,3.35.0

低=蓝色 <= 0.8v

高=红色 > 2.0v

未定义=黄色 >0.8v <= 2.0v

  • CMOS 电平,最高18(此处限制10

低=蓝色 <= 1.5v

高=红色> 3.5v

未定义=黄色 >1.5v <= 3.5v

元器件清单(MCU小板):

  • 单片机阁楼 1614 SMD
  • Mini USB 母头 PCB SMD 连接器
  • 2 x SMD 电容 100nF
  • 贴片电阻 270 欧姆
  • 贴片红色LED
  • 贴片 662k 稳压器至 3.3v
  • 16 x 带状线细针 0.6mm 直径
  • 双面贴片PCB

组件清单(主板):

  • 滑动开关开/关
  • 6 x 10k Ohm 1/4W 电阻器 1%
  • 5k6 欧姆 1/4W 电阻器
  • 22 欧姆 1/4W 电阻器
  • 5k Ohm 1/4W 电阻 1%
  • 3 x 150 欧姆电阻
  • 15欧姆1W电阻
  • BC337 NPN晶体管
  • Axicom SMD 3.0v 继电器
  • 1N4148 二极管
  • 陶瓷电容 100nF
  • 按钮常开
  • 红色 LED 5mm
  • 蓝色 LED 5mm
  • 黄色 LED 5mm
  • 300mA/h 3.7v 1s 锂电池
  • 小塑料盒(见下面的 3D 项目)
  • 金属探针
  • 大约20个铜0.6个小铆钉(用于通孔)
  • 双面PCB
  • 3 个用于开关的带状线引脚
  • 2 个用于电池的带状线 90° 引脚
  • 2 个 3 毫米螺丝和支架
  • “鳄鱼”黑色夹子、40 厘米黑线和一个迷你 USB 公头连接器
pYYBAGNh-LuAF8lxAAHPTXYlUuE627.png
主示意图
 

 

poYBAGNh-L6AW2FaAAFFJJ8ndDU713.png
微控制器原理图
 

关于电路:

受到John Bradnam 的 ATtiny 1614 项目的启发,我买了几个这样的微控制器来采取新的方式并享受新的冒险,我制作了 MyTiny 第一个测试电路。一切都在按照我选择的 3.3v 供电。直到今天我测试并验证了:digitalRead、digitalWrite、analogRead、analogWrite PWM 和 DAC;我通过引脚 RX/TX <-> FTDI 串行接口和 SoftwareSerial 库提供了一个串行监视器;最后我通过 SDA/SCL 和 Wire 库连接了一个 OLED 128x32 显示器。凉爽的!

要通过 Arduino NANO 和 IDE 对 ATtiny 进行编程,请阅读上述链接中 Bradnam 的说明。

此外,在这个电路中,我决定包含一个完整的电路 + 代码来为 LiPo 电池充电为此,5.0v 的 USB 电源输入由一个 15 欧姆 1W 电阻和一个继电器控制,以限制充电电流并在达到 4.2v 电池充电限制时将其切断。当电池放电时,在3.2v,考虑单独电路使用50mA,电池将接收剩余的70mA充电电流[(5.0-3.2)/15=120mA];接近充电结束时,在 4.2v 时,电池只接收几毫安的充电电流 [(5.0-4.2)/15=53mA];之后,继电器将断开 USB 电源,电池将不会收到任何东西,并会按照正常操作开始缓慢放电。到 Mini USB 连接器,您可以选择连接黑色“鳄鱼”夹线测量电平(连接到GND),或连接 USB 电缆为电池充电(即连接到计算机)

5.6k/1和22/1电阻,D1和T1,都是用来控制REL-1开/关的;10k/5和10k/4是分压器“二分”,测量USB电源电压;10k/1 和 5k/1 是“三分压”分压器,用于测量探头电压;10k/2 和 10k/3 是“二分压”分压器,用于测量电池电压;10k/6是上拉T/C按钮;三个 150 欧姆电阻器和三个彩色 LED 构成了主电路。尝试选择电阻对作为分压器,使其值尽可能接近 1% 的精度,以获得正确的模拟读取()读数。如果存在差异,您可以在代码计算电压的情况下进行任意校正 +- 百分比的读数:'VRaw=(n1 + ((n1 * 0.0) /100));' '(由于没有更正,现在值为 0.0)。

MCU小板是带有SMD组件的双面PCB:ATtiny微控制器,一个迷你USB,两个电容器,一个用于LED的电阻器,最后是3.3v的稳压器。

编码:

如果您想在串行监视器上查看数据以进行调试或其他目的,您必须取消注释库“ #include ”并设置“ const boolean IsDEBUG = true; ”;此外,您必须将串行到 USB 转换器作为 FTDI (rx) 连接到微控制器 (tx) 端口,以及设置为 9600 波特的 CoolTerm 等软件串行通信。

充电值:

如果您更换不同功率(A/h)的电池,您必须相应地修改软件参数(CBatt)。还要更改 1W 电阻以获得更快或更慢的充电,即从 15 到 12 或 18 欧姆,请记住还要更改参数 (VResis)。我喜欢在充电或正常探测操作期间进行一些计算,这里有:

  • CBatt = 0.3(电池电量,A/h)
  • VResis = 15.5(电源和电池之间串联的电阻值,请测量准确的电阻值并将其放在那里;
  • ICirc = 0.05(电池充电时电路的估计最大电流消耗);
  • VPower = 5.0(从 USB 充电 PowerSource 电压)不是一个常数,它会改变读数;
  • VMinPower = 4.6(从 USB 为电池充电的最低电压);
  • VBmin = 3.2(绝对最小电压);
  • VBWmin = 3.4(工作最低电压);
  • VMax = 4.2(绝对最大电压);
  • VBchgd = 4.0(电池电压,或更高,认为它在上电时已经充电);
  • ETFact = 1.5(充电因子的估计时间);
  • OvTiFact = 1.2(收费因子的超时,除了 ETFact);
  • VInitBatt = 初始电池电压,上电后或刚充电后或开始充电时;
  • VBatt = 实际电池电压;
  • IBatt = (( VPower - VBatt ) / VResis) - ICirc(充电电流;0% 时为 0.066A,50% 时为 0.034A,100% 时为 0.002A);
  • IBattAvg = (( VPower - ((VMax+VBmin)/2) ) / VResis) - ICirc = 0.034A(平均充电电流);
  • SoC = 100 - (( VMax - VBatt ) * 100)(充电状态,%);
  • TFull = ( CBatt / IBattAvg ) * 60 = 529 分钟(平均电流充电时间和电池 VBmin 充电时间);
  • TMaxChg = TFull * ( VMax - VInitBatt ) * ETFact * OvTiFact(考虑初始电压状态的估计最大充电时间,以分钟为单位);
  • TChg = ( TFull * (VMax - VBatt)) * ETFact(估计剩余充电时间,以分钟为单位);
  • ChTimeStart = 上电后经过的时间(以分钟计);
  • ChTimeEnd = 上电后的充电结束时间;
  • ChTimeNow = 上电后的分钟数;

PCB(印刷电路板):

出于这个原因,我在主板上使用了两块双面 PCB 。20个贯穿铆钉或销钉用于解决整个电路的路线。首先还有5 个对齐点孔我在每个 PCB 上设计了这 5 个对齐点。在下载部分,您有所有的 PCB 文件、元件和焊接面,镜像,用于通过激光打印机在“黄色”或“蓝色”纸张上下载和打印 ; 我用的是蓝色的,但黄色的也很好,价格也更低。我不得不说蓝色的纸张更好......打印时记得禁用碳粉节省设置,改为使用 1200 dpi 分辨率以获得深黑色效果。从魔术片到PCB的碳粉转移过程是使用热铁完成的......在网上有一些教程展示了如何生产一个好的PCB但请记住这些要点:彻底清洁并用厨房海绵轻轻刷一下铜,熨烫5分钟(不要按太多),冷水热冲击,通过5个孔对齐两个面(我用了5个针一个大的白色 LED 表面可以看到孔),在腐蚀过程中用透明胶带保护另一面。打印还组件设计使项目“专业”并且更简单地正确放置它们:-)

pYYBAGNh-NKAaQDyAAIDXWOiJZI785.jpg
PCB,5个对齐点
 

微控制器的小型 PCB 安装 SMD 组件。只有几个组件,我用一个小烙铁和一些焊膏焊接它们:“焊膏是由金属焊料颗粒和具有腻子稠度的粘性助焊剂组成的粉末的组合。助焊剂不仅可以它通常的工作是清洁焊接表面的杂质和氧化,但它也提供了一种临时粘合剂,可以将表面贴装元件固定在适当的位置” 将极少量的焊膏涂在铜点上,一次放置一个元件,将其固定在那里并用烙铁完成工作,然后传递到下一个元件,依此类推直到结束。

要将这个小板与主板连接起来,我建议使用直径为 0.6 毫米的细带状线销。

三个 LED 状态:

正常操作(无USB电源):

  • 蓝色 = 逻辑 0
  • 黄色 = 逻辑“未定义”
  • 黄色快速闪烁 = 低电量警告(请充电)
  • 红色 = 逻辑 1

充电操作(带USB电源)

  • 闪烁红色 = 充电状态 0 - 20%
  • 黄色和红色闪烁 = 充电状态 20 - 40%
  • 黄色闪烁 = 充电状态 40 - 60%
  • 闪烁蓝色和黄色 = 充电状态 60 - 80%
  • 蓝色闪烁 = 充电状态 80 - 90%
  • 蓝色缓慢闪烁 = 充电状态 90 - 100%
  • 蓝色快速闪烁 = 已充电
  • 黄色快速闪烁 = 充电超时警告(请断开 USB)

注意事项和改进:

  • 25.03.2021:为了完成该项目,我在此链接上准备了两个 3D .STL 模型:https ://grabcad.com/library/logic-probe-1 ,您可以在其中下载有关形状盒及其 Logic 盖板的文件探针通过 3D 打印机进行打印。

快乐探索!


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

评论(0)
发评论

下载排行榜

全部0条评论

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