一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 54028|回复: 502

[avr] M8V7数控电源升级为M328V7,除LCD12864外,还有新功能和新赠品

 火.. [复制链接]
发表于 2021-10-17 19:58 | 显示全部楼层 |阅读模式
本帖最后由 cdhigh 于 2026-1-17 10:04 编辑

这是 grandf老师的m8v7数控电源的升级版。

M328V7特性(详细请参考发布文件压缩包内的 "M328V7使用手册.pdf"):  
  • 支持Atmega328P/Atmega644P/Atmega128/Atmega64
  • 支持12864 (LCD/OLED)
  • 支持智能充电器/示波器/信号发生器/红外解码器模式
  • 支持电压电流曲线显示
  • 支持上电默认输出电压/默认关闭输出/使用上次关机时状态
  • 新增运行时间显示(此处应该实现为实时时钟的,但M328管脚不够,只能实现为上电运行时间显示)
  • 更多的配置项
  • 其他一些改进


12864主屏显示信息更丰富  
                              
main.png
主屏.JPG

但我认为最重要新增特性为12864的第二屏(锁定状态下旋转电压编码器进入,和1602的操作一致,类似手机滑动进入第二屏)
第二屏我增加了一个显示电流/电压曲线的功能,可以弥补数字电流表的不足,因为主屏1s仅刷新4次,无法反应瞬间变化的电流,此屏可以最短显示30ms的电流变化。
这也是现在还有不少维修电源继续保留指针表头的原因,在添加了电流曲线功能后,指针表头就可以不用了。
这个电压电流曲线的灵敏度应该不输指针表头,而且更直观,还可以拍照保留分析。
12864_second_page.png


第二屏实拍,一格最小1s(屏幕水平分四格,一格32个点,每点30ms,所以可以分辨最小30ms的电流变化)
第二屏idle.JPG


第二屏操作方法:
  • 默认为电流曲线显示,可以在显示第二屏时,长按电流编码器按键切换显示电压曲线还是电流曲线
  • 水平刻度:使用电流编码器旋钮选择,最小为1s/div(每个点30ms,每格32个点)
  •           1s/div ~ 45.1s/div (步进0.96s),单位为秒,用于显示短期变化较快的电压电流
  •   1.6m/div, 3.2m/div, 6.4m/div, 12.8m/div, 25.6m/div, 51.2m/div 单位为分钟,用于充电或监控设备的工作状态
  •   1.7h/div, 3.4h/div, 6.8h/div 单位为小时,用于监控长时间缓慢变化的电压电流
  • 垂直刻度,自动适配,电流曲线状态下,输出电流=设置电流则为满刻度,否则输出电压=设置电压为满刻度(可以在菜单里设置一个偏移量)
  • 支持HOLD功能,短按电流按键则暂停波形显示,用于观察或拍照




实际测试图片
下图显示的是一个报废的老手机的启动电流曲线的一部分。
new_lcd_wave.jpg

这个曲线功能有什么用呢?  
  • 通过启动时的电流曲线形状诊断各种电器的可能故障部位。
  • 水平时基足够长(最长6.8h/div,一屏显示超过24小时),可以监控电池充电曲线或放电曲线。
  • 好看,装逼,接一些电器时屏幕像心电图似的,好玩。

下面开始为升级方法:  
如果你已经有正常运行的M8V7,换M328P后建议烧写和原来屏幕一致的固件,确认M328P正常运行,然后再换LCD12864屏。
MCU核心修改:
(已删除,请参考固件发布压缩包内的使用说明PDF)

M328P烧录熔丝位:  
如果熔丝位不正确,也能正常运行,不过可能容易丢配置,需要时不时重新校准,所以一定要打开BOD 4.2V选项,打开BOD 4.2V选项,BOD 4.2V选项

fuse.png
低位:0xff
高位:0xd7
扩展位:0xfc


LCD12864硬件接线:
(已删除,请参考固件发布压缩包内的使用手册)

为避免帖子太长, 删除版本历史描述,具体细节可以参考压缩包内changelog
M328V7_V780.rar (667.69 KB, 下载次数: 127)
M328V7_V781.rar (1.32 MB, 下载次数: 85)
M328V7_V782.rar (6.26 MB, 下载次数: 35)
M328V7_783.rar (6.35 MB, 下载次数: 22)
M328V7_783.1.rar (6.38 MB, 下载次数: 41)
M328V7_V783.2.rar (6.39 MB, 下载次数: 35)
M328V7_784.rar (6.98 MB, 下载次数: 45)
M328V7_V785.rar (3.85 MB, 下载次数: 62)
M328V7_V786.rar (4.61 MB, 下载次数: 49)
M328V7_V787.rar (5.8 MB, 下载次数: 22)
M328V7_V787.1.rar (5.81 MB, 下载次数: 40)
M328V7_V787.2.rar (5.1 MB, 下载次数: 36)
M328V7_V788.rar (5.72 MB, 下载次数: 186)
M328V7_V788.1.rar (5.71 MB, 下载次数: 269)
M328V7_V789.zip (6.09 MB, 下载次数: 98)
M328V7_V789.1.rar (3.5 MB, 下载次数: 81)
M328V7_V789.2.rar (3.38 MB, 下载次数: 247)

2026-01-01 升级V7.90 (编译环境变化, 不兼容以前的EEPROM,需要重新校准)
2026-01-16 更新, 之前V7.90的电压和V之间间隔2像素, 电流和A之间间隔1像素, 这个简单更新移动一个像素.
1. 主界面改版
2. 去掉"无输入电压则关闭输出PWM"的功能
3. bugfix: 之前有一个在中断中保存eeprom的操作, 现在移到主循环
4. 其他一些小修改
main_v790.png
m328v7_V790.rar (4.17 MB, 下载次数: 14)


几个配套的工具软件
1. 修改开机图像的软件
m328v6v7splash_v1.1.zip (10.23 MB, 下载次数: 55)

2. 分析校准数据的软件(将EEPROM读出为二进制文件,然后执行 parseEeprom.exe eep.bin,生成m328v7_eep.html)
parseeeprom.zip (1.98 KB, 下载次数: 37)

3. 计算DCDC16段电压跟随电阻组合的软件(仅适用于M644P/M128版本)
calSwResistors_v1.2.rar (5.5 MB, 下载次数: 55)


31楼有关于782新增功能的详细描述   
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=926551


32楼有关于 红外解码器 的说明   
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=926552


38楼有关于 783新增功能的描述   
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=926643


58楼有关于 通用智能充电器 的说明   
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=926933


92楼有关于 信号发生器 的说明   
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=927550

266楼有关于 V7.88版本新增功能的使用
https://www.yleee.com.cn/forum.php?mod=redirect&goto=findpost&ptid=89963&pid=929061


原GandF电源链接
M8数控电源V7
https://www.yleee.com.cn/thread-7787-1-1.html

M8数字电源
https://www.yleee.com.cn/thread-309-1-1.html

M128数控电源G01-DCDC方案
https://www.yleee.com.cn/thread-91306-1-1.html

M128数控电源
https://www.yleee.com.cn/thread-91107-1-1.html

M644数控电源
https://www.yleee.com.cn/thread-91045-1-1.html







评分

参与人数 3一乐金币 +300 收起 理由
fujiachun + 100 很给力!
Joe_Black + 100 赞一个!
3AG1 + 100 很给力!

查看全部评分

1人打赏

 楼主| 发表于 2021-10-17 20:11 | 显示全部楼层
本帖最后由 cdhigh 于 2021-10-31 17:48 编辑

M328V7赠品介绍:
如果你使用的M328V7的LCD12864编译版本,已经内置了一个玩具级的示波器,或者连玩具都算不上,算是一个示波器的演示吧。
它能干嘛?其实什么都干不了!
不过至少可以在音频范围内看看有没有波形,或者可以体会一下怎么使用示波器,比如时基/触发之类的概念~
反正是免费赠送的,就不要嫌弃了~
我做这个也不是缺示波器,我已经买了一个真正的玩具示波器,做这个是因为好玩,可以加深对AVR和对示波器的理解。
注:从7.82开始,再赠送一个 “红外解码器”

技术规格 :  
* 采样率:最高250ksps  
* 模拟带宽:2Hz ~ 20kHz
* 存储深度:128pt (说人话就是波形不能缩放平移)  
* 水平时基:128us, 480us, 896us, 1.7ms, 3.5ms, 7.1ms, 14ms, 50ms, 100ms, 1s  
* 垂直刻度:0.13v, 0.63v, 1.25v  
* 触发模式:自动,正常(手动选择触发电平),滚动(不触发),单次
* 触发条件:上升沿,下降沿  
* 显示参数:峰峰值(VPP/mVp),频率,最大值(Vmax),最小值(Vmin),平均值(Vavg)  
* 波形冻结:长按电压按键冻结波形(HOLD)  
注1:因为没有使用浮点运算,并且屏幕分辨率有限,所以软件计算出来的频率误差较大,仅供参考,同样的原因,小于1Hz的频率则显示为0Hz。  
注2:采样率250ksps已经是ATMEGA328P能达到的最大采样率,网上流传的基于M328P的所谓1Msps采样率"高速"示波器是虚假宣传,1M是ADC时钟频率,而不是采样率,每次采样需要13个ADC时钟周期,我设置最大的ADC时钟频率为2M(对应到128us时基),并且提取读取采样数据,不需要等待13个ADC周期,实际采样率大约250k。  
注3:垂直刻度为软件计算,而不是实际衰减或放大,只是将ADC值乘以一定倍数,方便看小信号。  

硬件准备:  
当前默认使用ADC4(PC4/27脚)接入待测信号,可以在配置菜单中修改为其他未使用的端口。
比如如果没有使用温度功能,可以设置为ADC0,特别是如果使用ST7920的并口模式,ADC4被占用,则需要调整为ADC0,否则进入示波器模式后,屏幕可能不能正常显示。
因使用TL431A为参考电压源,所以测量范围为 0-2.5V。
直接接入信号即可,因为原版M8V7的此管脚已经引到屏接口,所以可以在原屏幕插座上接线出来即可。
如果要测量负电压,可以使用一个简单的偏置电路,调整电位器让扫描线位于屏幕中间即可。
如果要测量更高或更低电压,可以使用衰减器或运放放大。
最简示波器探头.png
可测负电压探头.png

可测负电压并10x衰减探头.png

操作方法:  
1. 按住电流按键开机则弹出工作模式选择菜单,再使用电压编码器选择 Oscilloscope 进入。  
mode_select.png

2. 主界面展示  
osc_main.png

3. 按键  
  * 短按电压按键:切换触发模式  
     * A:自动,软件自动设置触发电平为峰峰值的一半  
     * N:正常,手动模式,使用电压编码器旋钮上下移动触发电平标识来选择触发电平值  
     * R:滚动,不触发,波形将在屏幕上左右滚动  
     * S:单次,默认不显示波形,选择好触发沿和触发电平,等满足条件的信号出现后抓取一帧波形并暂停采样  

   * 长按电压按键:冻结波形,暂停采样,波形冻结后在下部信息栏显示“Paused”  
    osc_paused.png

   * 电压旋钮:选择触发电平或垂直刻度  
     * 在触发模式为N(正常)/S(单次)时,电压旋钮用于选择触发电平值   
     * 在触发模式为A(自动)/R(滚动)时,电压旋钮用于选择垂直刻度   

   * 短按电流按键:切换触发沿为上升沿或下降沿,N/A模式触发点位于屏幕中间,S模式出发点位于屏幕左侧  

   * 长按电流按键:切换显示更多测量数据(显示在左上角),   
    osc_disp_all.png

   * 电流旋钮:选择水平时基   

测试图库:
测试信号源为AD9833模块,AD9833输出波形偏移0.3V,峰峰值0.64V  

示波器_1k_正弦波
示波器_1k_正弦波.JPG

示波器_5k_正弦波
示波器_5k_正弦波.JPG

示波器_10k_正弦波(已经开始有锯齿了,因为是软件放大两倍,锯齿更严重,如果使用运放放大会好一些)
示波器_10k_正弦波.JPG

示波器_20k_正弦波
示波器_20k_正弦波.JPG

示波器_30k_正弦波
示波器_30k_正弦波.JPG

示波器_40k_正弦波
示波器_40k_正弦波.JPG

示波器_50k_正弦波(尽管没法看了,但是频率还是计算出来了)
示波器_50k_正弦波.JPG

示波器_60k_正弦波
示波器_60k_正弦波.JPG

示波器_2Hz_正弦波
示波器_2Hz_正弦波.JPG

示波器_1k_方波
示波器_1k_方波.JPG

示波器_10k_方波
示波器_10k_方波.JPG

示波器_20K_方波
示波器_20K_方波.JPG

示波器_50k_方波
示波器_50k_方波.JPG

示波器_1k_三角波
示波器_1k_三角波.JPG

示波器_10k_三角波
示波器_10k_三角波.JPG

示波器_20k_三角波
示波器_20k_三角波.JPG

示波器_单次触发
遥控器维修实录.png

点评

请问一下。这个地方没有明白,信号发生器和示波器输入共用一个io口吗?  详情 回复 发表于 2022-12-14 12:15

1人打赏

回复 1 0

使用道具 举报

发表于 2021-10-17 20:35 | 显示全部楼层
啊这。。支持。就是有点搞不动。静态电流底数的问题最好解决下

点评

狗狗画个电源的PCB吧,负载的PCB已打样,你用上成品电源了,我们还没有  详情 回复 发表于 2022-5-7 15:17
还好,静态电流底数大多数情况下为0.000/0.001直接跳,偶尔跳到0.002,还好吧。  详情 回复 发表于 2021-10-17 20:38
回复

使用道具 举报

 楼主| 发表于 2021-10-17 20:38 | 显示全部楼层
本帖最后由 cdhigh 于 2021-10-17 20:53 编辑
zhqsoft 发表于 2021-10-17 20:35
啊这。。支持。就是有点搞不动。静态电流底数的问题最好解决下

还好,静态电流底数大多数情况下为0.000/0.001之间跳,偶尔跳到0.002,还好吧。如果是强迫症,可以加一个配置项,设定一个阀值,小于此阀值的就显示为0.000,这样就好看了。
大于此阀值的电流显示可以考虑两套方式
1. 减去阀值
2. 不减阀值,直接显示

点评

请教一下大师,LCD12864带不带字库。  详情 回复 发表于 2022-12-8 17:42
回复

使用道具 举报

发表于 2021-10-17 20:47 | 显示全部楼层
很不错!支持一下

点评

谢谢3AG支持,这个论坛是因为有3AG我才继续呆在这的,即使人气不足,但是通过3AG学了很多东西,经常来看看3AG的设计,收益良多。  详情 回复 发表于 2021-10-17 20:56
回复 1 0

使用道具 举报

 楼主| 发表于 2021-10-17 20:56 | 显示全部楼层
3AG1 发表于 2021-10-17 20:47
很不错!支持一下

谢谢3AG支持,这个论坛是因为有3AG我才继续呆在这的,即使人气不足,但是通过3AG学了很多东西,经常来看看3AG的设计,收益良多。

点评

楼主把这个电源玩到极致了。谢谢分享。  详情 回复 发表于 2021-10-17 21:13
回复

使用道具 举报

发表于 2021-10-17 21:13 | 显示全部楼层
cdhigh 发表于 2021-10-17 20:56
谢谢3AG支持,这个论坛是因为有3AG我才继续呆在这的,即使人气不足,但是通过3AG学了很多东西,经常来看 ...

楼主把这个电源玩到极致了。谢谢分享。
回复

使用道具 举报

发表于 2021-10-17 22:12 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2021-10-18 08:44 | 显示全部楼层
又可以开干了 感谢分享

点评

如果不是原有的m8v7升级,要重新画板的话,我会将SPI接口和IIC接口留出来给屏幕和其他外设,现在spi和 iic接口的屏幕和其他外设很多,但当时GandF设计此电源时市场上的SPI/IIC外设还不普及,所以SPI被编码器占用,II  详情 回复 发表于 2021-10-18 17:55
回复

使用道具 举报

发表于 2021-10-18 10:24 | 显示全部楼层
楼主把我想做的给做了,提个建议,加上电压电流曲线或示波器的功能建议用彩屏输出,效果比这个强太多了

点评

谢谢建议,想过,但是担心m328吃不消,因为cpu占用率已经七八十了,所以示波器模式我都采用单独的进入点,不运行其他任务。 不知tft彩屏对cpu资源的占用相比12864会多多少?  详情 回复 发表于 2021-10-18 17:06
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2026-1-29 20:07 , Processed in 0.043948 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表