#第七届立创电赛#N32G430电流表及快充采样 - 嘉立创EDA开源硬件平台

编辑器版本 ×
标准版 Standard

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

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

3、支持简单的电路仿真

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

专业版 professional

1、全新的交互和界面

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

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

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

专业版 #第七届立创电赛#N32G430电流表及快充采样

简介:采用国民技术MCU N32G430实现的电流表,支持电压、电流、功率、纹波及电流波动图形显示

开源协议: GPL 3.0

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

创建时间: 2022-08-12 12:34:28
更新时间: 2023-09-17 15:48:07
描述

 

* 1、项目功能介绍


采用国民技术MCU N32G430实现的电流表,支持电压、电流、功率、纹波及电流波动图形显示。

学习Keil5编写单片机不久,很多不太明白,通过几次参加立创训练营,真的觉得能学到很多东西,比独立学习能更快,这是为什么呢?我觉得可能有以下几个方面的原因:

1、有厂商的专业人员指导,能够快速的入门学习,并且能提供有效的技术支持;

2、有立创的各位有经验大佬帮助,有问题能够获取帮助,并且还有立创提供的元器件优惠卷、PCB打样卷,能减轻开发成本,少了后顾之忧;

3、有群里千号人员的相互帮助,就算大部分有不会,便总会有一些大佬或正好明白某块的学员能够帮助、能够解答,真的能提高学习的效率。

 

所以训练营的模式真的非常好,我现在制作的这个目前主要目标是实现以下功能:

1、电压、电流显示、功率显示,这个比较简单,已经实现

2、电压纹波显示,目前也实现了基本功能已实现

3、充电协议分析,暂时想通过D+D-进行协议判断,但实测好像非常不准确,不知道充电协议具体应该怎么分析,有待完善

4、电流波动图,正在完善过程中已实现

5、功耗统计,这个功能虽然简单,但目前对这个单片机不太熟悉,得到的每次时间有些误差,所以还在优化

6、快充诱骗,想法是通过D+D-实现,但后面发现N32G430没有DAC功能,所以目前是放弃了。

 

想要的功能大部分都已实现,程序代码也放在了附件,需要自取了。

 

功能简单说明下:

1、Boot/SEL按键切换不同功能页,第一页是电压电流显示,第二页是电压纹波,第三页是电流波动情况;

2、BTN1/+、BTN2/-在第二页和第三页调整显示的范围,放大或缩小波形图。

不明白的可以相互讨论,感谢大家的关注!

 

成品图也放出来看下吧,还是比较小的,同时加了TYPE-C口,这样也比较方便。

打回来的PCB,改过一版了,因为第一版发现OLED焊接屏排线留的孔放不进去^-^

焊好的样式,本来想拍一个工作的图片,发现屏幕闪动比较厉害,拍出来的显示内容不全,干脆后面录视频时再放上来了。

三个按键,可以方便实现一些切换、调参等。

 

第一屏:电压测量界面

第二屏:电压纹波界面

第三屏:电流波动界面

 

*2、项目属性


参考训练营项目,参考项目链接: https://oshwhub.com/limengmeng12345/ji-chu-ying-usb-dian-ya-biao#P1

 

 

* 3、开源协议


GPL 3.0

 

*4、硬件部分


 

(1)供电部分

这里选的是使用LDO实现供电,为了兼容快充,选的是GM7333,这款LDO支持的输入电压达到了 40V,并且支持250mA的电流输出能力,完全满足了国民这款MCU的供电需求,并且外围电路简单,比使用降压电路更方便,体积也更小巧。

(2)主控电路

主要使用了四路ADC,用于采样电压、电流和D+、D-的电压,使用BOOT0和PB0、PB1三个IO口用于按键,RST也引出,方便调试时使用。

然后就是串口和SWD烧录口,PB6 PB7做为LED,方便程序观察状态,毕竟是新手,多留个状态灯也好判断系统有没有正常运行,后面也可以做为功能灯使用。

 

(3)电流采样

    电流采样使用的是INA199A1做差分放大,其实也可以使用运算放大器,但最好是精密运放,但差分电阻精度要高,不然不同硬件误差比较大,比较麻烦,并且元件较多,成本上不存在优势,所以还是使用专门的电流放大的比较方便。

    这里要注意的是型号后面这个A1,A 是指精度 为1.5%(A B精度都是1.5%,C是1%,具体可以看手册),1 是指放大倍率为 50倍,2 为100倍,3为200倍,即A1就是指放大50倍,精度为1.5%。选型主要是与采样电阻及MCU的采样电压相关,详细不讲了,如果想要了解可以相互讨论。

 

(4)电压采样

这个其实没什么好讲的吧,就是对电压进行分压,然后采样就可以了。这里的电压是使用 1:10采样,就是最后算出来的值 乘以10就是实际电压了,D+ D-是1:3,结果乘以3就可以了,分压计算通过 Vadc=VIN*R2/(R1+R2),R2是低侧电阻,就是连GND的哪个。注意:分压后最大电压不能超过供电电压(这里是3.3V)即可,不然始终是3.3V,就不能得到真实值了。

 

(5)OLED驱动电路

我这里使用是30P焊接OLED屏,支持SSD1306和SH1106,我自己使用的是SH1106白光的0.96屏,这个屏某鱼上比较便宜,才4-5元一个,可以考虑多买一些放着,使用方便。当然也预留了OLED外接接口。

 

 

 

 

*5、软件部分


 

就拿DMA实现4路ADC采样来说下吧,这个也是官方示例有一部分,然后遇到一个问题就是不知道应该实现是ADC中断后去处理数据还是要DMA处理完数据后去处理数据,在群里问,居然说去找个电路去学习下。没办法后面跑去找国民哪边的技术问,因为是初学,什么都不明白,不过实际操作一次后就能明白具体是什么作用,应该在哪处理。

 

其他等完善开源后自己看吧,注释会比较详细,主要也是方便自己做笔记,不然时间长了也忘了。

 

*6、BOM清单


 

 

*7、大赛LOGO验证


 

* 8、演示您的项目并录制成视频上传


 

 

设计图
原理图
1 /
PCB
1 /
未生成预览图,请在编辑器重新保存一次
工程视频/附件
序号 文件名称 下载次数
1

C9F2336A-8065-4506-B286-5A7A7F5E4B3B.mp4

428
2

USBMeter.zip

247
工程成员
侵权投诉
相关工程
换一批
加载中...
添加到专辑 ×

加载中...

温馨提示 ×

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

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

服务时间

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

support
  • 开源平台公众号

MP