ATtiny85 充电保护器 - 嘉立创EDA开源硬件平台

编辑器版本 ×
标准版 Standard

1、简单易用,可快速上手

2、流畅支持300个器件或1000个焊盘以下的设计规模

3、支持简单的电路仿真

4、面向学生、老师、创客

专业版 professional

1、全新的交互和界面

2、流畅支持超过3w器件或10w焊盘的设计规模,支持面板和外壳设计

3、更严谨的设计约束,更规范的流程

4、面向企业、更专业的用户

标准版 ATtiny85 充电保护器

  • 4k
  • 3
  • 28

简介:国外开源平台搬运工程:ATtiny85 充电保护器,SB Phone Charge Guard 控制和监控手机和其他设备的充电,以延长电池寿命。

开源协议: CC-BY-SA 3.0

(未经作者授权,禁止转载)

创建时间: 2021-01-06 15:26:41
更新时间: 2023-12-07 12:24:42
描述
## 开源协议 本作品已根据知识共享署名-相同方式共享 3.0 未移植许可证获得许可。( [http://creativecommons.org/licenses/by-sa/3.0/](http://creativecommons.org/licenses/by-sa/3.0/) ) ## 简介 ATtiny45/85 USB Phone Charge Guard 控制和监控电话和其他设备的充电。通过 INA219 不断测量电压、电流、功率和能量,并与用户限制值进行比较。当达到用户选择的条件时,它会通过 MOSFET 切断电源。这样可以控制手机锂离子电池的充电状态,从而延长其使用寿命。用户设置保存在 EEPROM 中。 - - - **作者:** Stefan Wagner **原工程链接:**[https://oshwlab.com/wagiminator/attiny85-phone-charge-guard](https://oshwlab.com/wagiminator/attiny85-phone-charge-guard) **项目视频(YouTube):** [https://youtu.be/9DHBoqHImcM](https://youtu.be/9DHBoqHImcM) **固件(Github):** [https://github.com/wagiminator/ATtiny85-PhoneChargeGuard](https://github.com/wagiminator/ATtiny85-PhoneChargeGuard) - - - ## 电路说明 - - - ### USB 该设备配备了一个USB-A插头为输入和一个USB-A插座为输出,以便它可以插入电源和手机(或其他消费者)之间。D+ 和 D- 通过,以便手机可以协商充电协议。 - - - ### 电压和电流测量 一个[INA219](https://www.ti.com/lit/ds/symlink/ina219.pdf)用于测量电压和电流。INA219 是一款具有 I²C 兼容接口的电流分流器和功率监视器。该器件通过可编程转换时间和滤波来监控分流压降和总线电源电压。可编程校准值与内部乘法器相结合,能够以安培为单位直接读取电流。选定的 8 毫欧分流电阻既能对电路产生非常小的影响,又能以 1 毫安的分辨率进行测量。为了精确测量,应选择具有低容差(1% 或更好)的分流电阻器 - - - ### 稳压 该器件通过HT7333 LDO 稳压器提供 3.3V电压,该稳压器从 USB 总线电源中抽取高达 12V 的输入电压。 - - - ### MOSFET 电源和电话之间的连接通过AS3621 P 沟道 MOSFET开启和关闭。尽管体积小,但它可以连续切换到 30V 和 6A。其内部导通电阻仅为 20 毫欧左右。 - - - ### 操作界面 用户界面使用五个按钮和一个128x64 像素的 OLED 显示屏。一个[ATtiny45 / 8](https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2586-AVR-8-bit-Microcontroller-ATtiny25-ATtiny45-ATtiny85_Datasheet.pdf)5微控制器手柄上的用户界面,所述测量值的电源连接和的计算和显示的控制。 - - - ![image](https://raw.githubusercontent.com/wagiminator/ATtiny85-PhoneChargeGuard/master/documentation/PhoneChargeGuard_pic2.jpg) ![image](https://raw.githubusercontent.com/wagiminator/ATtiny85-PhoneChargeGuard/master/documentation/PhoneChargeGuard_pic3.jpg) - - - ## 软件说明 ### 说明 - - - INA219 连续测量电流和电压,并通过 I²C 将值传输到 ATtiny。由此,ATtiny 计算其他值并将它们显示在 OLED 屏幕上。它根据用户选择的设置通过 MOSFET 控制电源和电话之间的连接。用户设置保存在 EEPROM 中,下次使用时会自动加载。 - - - ### I²C OLED 实现 I²C 协议实现基于一种粗略的 bitbanging 方法。它是专门为 ATtiny10 和 ATtiny13 的有限资源而设计的,但它也适用于其他一些 AVR(包括 ATtiny45/85)。OLED 的功能适用于 SSD1306 OLED 模块,但可以轻松修改以用于其他模块。为了节省资源,仅实现了此应用程序所需的基本功能。有关 I²C OLED 实现工作原理的详细信息,请访问Tin[yOLEDdemo](https://github.com/wagiminator/attiny13-tinyoleddemo)。 - - - ### 时间和容量确定的准确性 ATtiny 的内部振荡器用于确定能量和容量。出厂校准时,内部振荡器的精度为 +/-10%。这可以通过手动校准提高到 +/-2% 或更好。通过这种方式确定的校准值可以在源代码中设置。 - - - ### 编译和上传 由于板上没有 ICSP 接头,您必须在使用SOP适配器,在焊接之前或使用EEPROM烧录夹子焊接之后对 ATtiny 进行编程。该[AVR编程适配器](https://github.com/wagiminator/AVR-Programmer/tree/master/AVR_Programmer_Adapter)可以在这方面帮助。 - - - ### 如果使用 Arduino IDE * 确保您已安装[ATtinyCore](https://github.com/SpenceKonde/ATTinyCore)。 * 转到**Tools -> Board -> ATtinyCore**并选择**ATtiny25/45/85 (No bootloader)。** * 转到工具并选择以下板选项: > * **芯片**: ATtiny45 或 85(取决于你的芯片) > * **时钟**: 8 MHz(内部) > * **Millis/Micros**: 禁用 > * **BODLevel**: BOD 启用 (2.7V) > * 其余保留默认设置 * 将您的编程器连接到您的 PC 和 ATtiny。 * 转到工具 -> 编程器并选择您的 ISP 编程器(例如USBasp)。 * 转到**Tools -> Burn Bootloader**来烧掉保险丝。 * 打开 PhonChargeGuard 草图并单击**Upload**。 - - - ### 如果使用预编译的十六进制文件 * 确保您已安装avrdude。 * 将您的编程器连接到您的 PC 和 ATtiny。 * 打开一个终端。 * 导航到包含 hex 文件的文件夹。 * 执行以下命令(如有必要,将“usbasp”替换为您使用的编程器): > * avrdude -c usbasp -p t85 -U lfuse:w:0xe2:m -U hfuse:w:0xd5:m -U efuse:w:0xff:m -U flash:w:phonechargeguard.hex - - - ### 如果使用 makefile (Linux/Mac) 确保您已安装avr-gcc 工具链和 avrdude。 将您的编程器连接到您的 PC 和 ATtiny。 如果你没有使用 ATtiny85,打开 makefile 并更改芯片,如果你没有使用 usbasp,则更改编程器。 打开一个终端。 导航到包含 makefile 和 Arduino 草图的文件夹。 运行“make install”进行编译,烧毁保险丝并上传固件。 - - - ## 操作说明 1. 将设备连接到电源和电话(或其他消费者)之间。 2. 使用 SELECT/INCREASE/DECREASE 按钮设置充电限制。 3. 使用 START 按钮开始充电过程。 4. 在充电期间使用 SELECT 按钮在显示值之间切换。 5. 当达到设定的限值时,充电过程自动停止。 ![image](https://raw.githubusercontent.com/wagiminator/ATtiny85-PhoneChargeGuard/master/documentation/PhoneChargeGuard_pic5.jpg) - - - ### 按键功能: | 按钮 | 功能 | | --- | --- | | RESET | 重置所有值 | | SELECT | 在暂停模式下选择限制类型/在充电模式下更改显示参数 | | INCREASE | 增加限制值 | | DECREASE | 降低限制值 | | START | 开始/暂停充电 | ### 可选择的充电限制 - - - | 限制类型 | 功能 | | ---- | --- | | mAh | 当电量达到选定值时停止充电 | | mWh | 当提供的能量达到选定值时停止充电 | | mA | 当电流低于选定值时停止充电(这通常与电池的充电状态相关) | | min | 在选定的时间(以分钟为单位)后停止充电 | ### 特性 | 范围 | 最大值 | | --- | --- | | 电压 | 3V - 12V | | 电流 | 5A MAX | | 电压测量率 | 4mV | | 电流测量率 | 1mA | ### 参考 - - - 1. [ATtiny45/85 数据表](https://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2586-AVR-8-bit-Microcontroller-ATtiny25-ATtiny45-ATtiny85_Datasheet.pdf) 2. [INA219 数据表](https://www.ti.com/lit/ds/symlink/ina219.pdf) 3. [SSD1306 数据表](https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf) 4. [HT7333 数据表](http://www.angeladvance.com/HT73xx.pdf) 5. [AS3621 数据表](https://datasheet.lcsc.com/szlcsc/1809211432_AnBon-AS3621_C232288.pdf) ![image](https://raw.githubusercontent.com/wagiminator/ATtiny85-PhoneChargeGuard/master/documentation/PhoneChargeGuard_pic4.jpg) - - -

设计图
原理图
1 /
PCB
1 /
未生成预览图,请在编辑器重新保存一次
ID Name Designator Footprint Quantity BOM_Manufacturer Part
1 100n C1,C3 0603 2 CC0603KRX7R9BB104
2 47u C2 1206 1 CL31A476MQHNNNE
3 10u C4,C5 0603 2 CL10A106MA8NRNC
4 OLED 0.91 OLED1 I2C OLED 0.91 1 SSD1306 I2C OLED
5 AS3621 Q1 SOT-23-3_L2.9-W1.3-P1.90-LS2.4-BR 1 AS3621
6 MMBT3904 Q2 SOT-23_1 1 2n3904S-RTK/PS
7 10k R1,R3,R4,R5,R7,R8,R9,R10 0603 8 0603WAF1002T5E
8 R008 R2 2512 1 LCSR2512FR008Q9L
9 1k R6 0603 1 0603WAF1001T5E
10 TS24CA RESET,SET1,SET2,SET3,SET4 SW-SMD_TS24CA 5 TS24CA
11 ATtiny85 U1 SOIC-8_208MIL 1 ATTINY85-20SU
12 INA219 U2 SOT-23-8 1 INA219AIDCNR
13 HT7333-A U3 SOT-89-3_L4.5-W2.5-P1.50-LS4.2-BR 1 HT7333-A
14 POWER IN USB1 USB-M-48 1 USB-05
15 POWER OUT USB2 USB-2.0-A-F-90-JCJ-H9.36 1 USB-A-F-90

展开

工程视频/附件
暂无
侵权投诉
相关工程
换一批
加载中...
添加到专辑 ×

加载中...

温馨提示 ×

是否需要添加此工程到专辑?

温馨提示
动态内容涉嫌违规
内容:
  • 153 6159 2675

服务时间

周一至周五 9:00~18:00
  • 技术支持

support
  • 开源平台公众号

MP