|
|
楼主 |
发表于 2026-1-24 22:19:46
|
显示全部楼层
我重新焊接了一块PCB,实际焊接的元件如下原理图:
实物图:
VREF电压为2.502V,USB电压约5.1V
打开USB串口功能的数据:
[22:07:34.717]接收←VIN1_ADC = 1812,MAX = 1813,MIN = 1812,Jump = 0001
VIN2_ADC = 0001,MAX = 0005,MIN = 0001,Jump = 0004
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VREF_ADC = 2046,MAX = 2052,MIN = 2046,Jump = 0006
VCC_ADC = 2103,MAX = 2104,MIN = 2103,Jump = 0001
[22:07:37.302]接收←VIN1_ADC = 1812,MAX = 1818,MIN = 1807,Jump = 0011
VIN2_ADC = 0001,MAX = 0007,MIN = 0000,Jump = 0007
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VREF_ADC = 2047,MAX = 2054,MIN = 2046,Jump = 0008
VCC_ADC = 2102,MAX = 2104,MIN = 2094,Jump = 0010
[22:07:39.882]接收←VIN1_ADC = 1812,MAX = 1817,MIN = 1811,Jump = 0006
VIN2_ADC = 0002,MAX = 0007,MIN = 0001,Jump = 0006
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0005,MIN = 0000,Jump = 0005
VREF_ADC = 2046,MAX = 2052,MIN = 2041,Jump = 0011
VCC_ADC = 2103,MAX = 2112,MIN = 2093,Jump = 0019
关闭USB转串口的数据:
[22:08:39.293]接收←VIN1_ADC = 1812,MAX = 1814,MIN = 1812,Jump = 0002
VIN2_ADC = 0001,MAX = 0002,MIN = 0000,Jump = 0002
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VREF_ADC = 2046,MAX = 2047,MIN = 2046,Jump = 0001
VCC_ADC = 2103,MAX = 2104,MIN = 2103,Jump = 0001
[22:08:41.873]接收←VIN1_ADC = 1812,MAX = 1813,MIN = 1812,Jump = 0001
VIN2_ADC = 0001,MAX = 0002,MIN = 0001,Jump = 0001
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VREF_ADC = 2046,MAX = 2047,MIN = 2046,Jump = 0001
VCC_ADC = 2103,MAX = 2105,MIN = 2103,Jump = 0002
[22:08:44.455]接收←VIN1_ADC = 1812,MAX = 1813,MIN = 1811,Jump = 0002
VIN2_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN3_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VIN4_ADC = 0000,MAX = 0001,MIN = 0000,Jump = 0001
VREF_ADC = 2046,MAX = 2047,MIN = 2046,Jump = 0001
VCC_ADC = 2103,MAX = 2104,MIN = 2103,Jump = 0001
很明显在USB功能打开和关闭时,ADC结果的跳动是不同的。
我知道电路上不是电容越多越好,实际应用中肯定是按需分配,
但这块是测试板,主要是为了保证在芯片外围电路提供最大的电压稳定度,
所以才在外围预留了比正常使用多的电容,
在开始测试时,我也是先焊接最少工作稳定的电容,然后再往上加,
但测试结果并不影响,在电容多和少的状态,
USB不打开也可以保证ADC跳动在±1,打开USB跳动的范围依旧增加5~10。
在Ucap上,只加100nF电容的话,USB工作时候的纹波会非常大,
VCC上的纹波也会跟随USB运行的产生和Ucap相关的纹波,
放置最大容量的电容后,基本上可以让示波器上看到的纹波不随USB运行而变化。
手头上的示波器刚好坏了,周一用大示波器抓波形。
我知道USB和ADC是两个独立的模块,他们独立运行的时候各自功能都良好,
但现在合在一起运行时,ADC有受到了干扰的现象。
STC8H USB系列都没有独立的AGND引脚,不然可以用带独立引脚的封装进行对比。
|
|