发作品签到
标准版

ATtiny85 无线测试仪

工程标签

3.7k
0
0
0

简介

带OLED显示屏的简单USB电源测试仪

简介:带OLED显示屏的简单USB电源测试仪

开源协议

CC-BY-SA 3.0

创建时间:2022-02-28 02:58:43更新时间:2022-06-17 07:29:08

描述

作者:Stefan Wagner


原工程:https://oshwlab.com/wagiminator/attiny85-phone-charge-guard

概述

基于 ATtiny25/45/85 和 INA219 的简单 USB 电源测试仪。该器件测量电压、电流、功率、能量、容量,并在OLED屏幕上显示值。您可以通过按SET按钮在不同屏幕之间切换。

pic6.jpg

硬件

USB 连接器

该设备配有用于输入的USB-A插头和用于输出的USB-A插座,因此可以在电源和消费者之间插入。D+和D-通过,以便消费者可以协商充电协议。

电压和电流测量

INA219 用于测量电压和电流。INA219是一款分流和功率监控器,具有I²C兼容接口。该器件可监控并联压降和总线电源电压,并具有可编程的转换时间和滤波功能。可编程校准值与内部乘法器相结合,可实现电流的直接读出(以安培为单位)。所选的 8mΩ 分流电阻既能对电路产生非常小的影响,又能实现分辨率为 1mA 的测量。为了获得准确的测量,应选择具有低容差(1%或更高)的分流电阻。

用户界面

用户界面采用两个按钮和一个 128x64 像素的 OLED 显示屏ATtiny24/45/85微控制器处理用户界面以及值的计算和显示。

pic2.jpg
pic3.jpg

软件

基本原理

INA219连续测量电流和电压,并通过I²C将值传输到ATtiny。由此,ATtiny计算其他值并将其显示在OLED屏幕上。

I²C OLED实现

I²C协议的实现基于粗略的位移方法。它是专门为ATtiny10和ATtiny13的有限资源而设计的,但它也可以与其他一些AVR(包括ATtiny25/ 45 / 85)一起使用。OLED的功能适用于SSD1306 OLED模块,但可以轻松修改以用于其他模块。为了节省资源,仅实现此应用程序所需的基本功能。有关I²C OLED实现的工作原理的详细信息,请访问TinyOLEDdemo

时间和容量测定的准确性

ATtiny的内部振荡器用于确定能量和容量。内部振荡器的精度在出厂校准时为+/-10%。这可以通过手动校准提高到+/-2%或更好。以这种方式确定的校准值可以在源代码中设置。

编译和上传

由于电路板上没有 ICSP 接头,因此在使用 SOP 适配器进行焊接之前,或使用 EEPROM 夹进行焊接后,必须对 ATtiny 进行编程。AVR 编程器适配器可以对此有所帮助。

如果使用 Arduino IDE

  • 确保您已安装 ATtinyCore
  • 转到 Tools -> Board -> ATtinyCore,然后选择 ATtiny25/45/85(无引导加载程序)。
  • 转到**“工具”**,然后选择以下主板选项:
    • **芯片:**ATtiny25 或 45 或 85(取决于您的芯片)
    • **时钟:**1兆赫(内部)
    • **B.O.D.级别:**B.O.D. 使能 (2.7V)
    • 将其余部分保留为默认设置
  • 将您的编程器连接到您的PC和ATtiny。
  • 转到**“工具”->程序员**“,然后选择您的 ISP 程序员(例如 USBasp)。
  • 转到工具 ->刻录引导加载程序以刻录保险丝。
  • 打开草图USB_Tester,然后单击上传

如果使用预编译的十六进制文件

  • 确保您已安装 avrdude
  • 将您的编程器连接到您的PC和ATtiny。
  • 打开终端。
  • 导航到包含十六进制文件的文件夹。
  • 执行以下命令(如有必要,请将“usbasp”替换为您使用的程序员):
avrdude -c usbasp -p t85 -U lfuse:w:0x62:m -U hfuse:w:0xd5:m -U efuse:w:0xff:m -U flash:w:usb_tester.hex

如果使用生成文件(Linux/Mac)

  • 确保您已经安装了 avr-gcc 工具链和 avrdude
  • 将您的编程器连接到您的PC和ATtiny。
  • 如果您没有使用ATtiny85,请打开makefile并更改芯片,如果您没有使用usbasp,请更改编程器。
  • 打开终端。
  • 导航到包含 makefile 和 Arduino 草图的文件夹。
  • 运行“进行安装”以编译,烧毁保险丝并上传固件。

操作说明

  1. 在电源和消费者之间连接设备。
  2. 使用“设置”按钮在不同屏幕之间切换。
  3. 使用“重置”按钮重置所有值。

pic5.jpg

特性

参数价值
电压3V - 12V
当前最大 5A
电压测量分辨率4毫伏
电流测量分辨率1毫安

参考文献、链接和注释

  1. 瑞银-C版
  2. ATtiny25/45/85 数据表
  3. INA219 数据表
  4. SSD1306 数据手册

pic4.jpg

许可证

许可证.png

本作品采用知识共享署名-相同方式共享 3.0 未移植许可协议授权。(http://creativecommons.org/licenses/by-sa/3.0/)

设计图

原理图

BOM

暂无BOM

附件

序号文件名称下载次数
暂无数据
克隆工程
添加到专辑
0
0
分享
侵权投诉

评论

全部评论(1)
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航