⚠️
你好。。谢谢你来到论坛。令人兴奋的消息!我们现在正在迁移到新的论坛平台,该平台将提供更好的功能,并包含在主对话网站中。所有员额和帐户都已迁移。我们现在只接受新论坛的流量-请在//www.wsdof.com/support. 我们将在未来几天内修复bug/优化搜索和标记。
11个员额/0个新员额
最后一篇文章
戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
信道P03的错误测量ADC

你好支持,

我与ADC通道P03的一个问题。
ADC通道的测量P00,P01,P02做工精细,但随着海峡P03我总是得到一个错误的值。
我使用的板是带有Da14580的DK基本套件。

这是我的密码:
//模数转换器配置
#定义GPIO_ADC1_PORT GPIO_PORT_0
#定义GPIO_ADC1_引脚GPIO_引脚1
#定义GPIO_ADC0_端口GPIO_端口0
#定义GPIO_ADC0_引脚GPIO_引脚0
#定义GPIO_ADC2_PORT GPIO_PORT_0
#定义GPIO_ADC2_PIN GPIO_PIN_2
#定义GPIO_ADC3_端口GPIO_端口0
#定义GPIO_ADC3_PIN GPIO_PIN_3

预留GPIO(ADC_引脚1、GPIO_ADC1_端口、GPIO_ADC1_引脚、PID_ADC);
RESERVE_GPIO(ADC_PIN0,GPIO_ADC0_PORT,GPIO_ADC0_PIN,PID_ADC);
RESERVE_GPIO(ADC_PIN2,GPIO_ADC2_PORT,GPIO_ADC2_PIN,PID_ADC);
预留GPIO(ADC_引脚3、GPIO_ADC3_端口、GPIO_ADC3_引脚、PID_ADC);

GPIO_ConfigurePin(GPIO_ADC1_PORT,GPIO_ADC1_PIN,INPUT,PID_ADC,FALSE);
GPIO_ConfigurePin(GPIO_ADC0_PORT,GPIO_ADC0_PIN,INPUT,PID_ADC,FALSE);
GPIO_ConfigurePin(GPIO_ADC2_PORT,GPIO_ADC2_PIN,INPUT,PID_ADC,FALSE);
GPIO_配置引脚(GPIO_ADC3_端口,GPIO_ADC3_引脚,输入,PID_ADC,错误);

// ADC采样的功能
uint16 adc读取P03信道(无效)
{

uint16_t adc_sample,adc_sample2;

adc_init(GP_ADC_SE,0,GP_ADC_ATTN3X);

adc_启用_通道(adc_通道_P03);

adc_sample = adc_get_sample();

adc_init(GP_ADC_SE,0,GP_ADC_ATTN3X);

adc_启用_通道(adc_通道_P03);

adc_sample2 = adc_get_sample();
adc_sample =(adc_sample2 + adc_sample);
adc_disable();

返回adc_样本
}

当做
大卫

关键词:
ADC
设备:
立法会ydF4y2Ba
离线
最后一次见到:3个月1周前
工作人员
加入:2016-09-19 23:20
嗨大卫,

嗨大卫,

我试图在我身边一样执行,我就基本DK得到适当的值。我所做的不同是打印值读取,也我打电话时此功能app_validate_sleep回调以重复测试函数。

也许您可以尝试在启动配置步骤中校准ADC,或者在启动后添加一些延迟adc_init就像是在美国做的一样adc_获取_vbat_样本. 看看你是否能得到更好的结果。

注:另外,我注意到在你的代码,您返回添加的样品而不是由2分只是想提高这一点,如果这是不是你打算做。

请让我知道,如果你仍然有这个问题,可能是一些更深入的问题。

最好的,
立法会ydF4y2Ba

戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
谢谢你的快速回复

感谢您及时的回复。

我什么都试过了,并没有奏效。
无论我在P03上测量1V还是3V,adc都会显示一个随机值,但它总是在相同的范围内。我在没有信号的情况下检查引脚电压,得到0V,因此没有偏移。
其他渠道我的执行工作,,所以我觉得谈话或通道P03的配置是错误的。

我改变了BLE pheripheral例子的代码。
是否有此引脚任何配置,我不知道吗?

谢谢你的建议。
你是我不加分后,但我没有影响的错误通道的权利。

当做
大卫

立法会ydF4y2Ba
离线
最后一次见到:3个月1周前
工作人员
加入:2016-09-19 23:20
嗨大卫,

嗨大卫,

我会寻找更多的可能出现的问题在这里。但是,你可以尝试使用空\u外围\u模板项目并测试此实现。该项目没有任何不必要的操作,这些操作有时可能会产生干扰并占据优先权。

另外,您如何调用此函数。在启动过程中或启动后的某个时间点重复调用或仅调用一次函数。

最好的,
立法会

戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
嗨LC,

嗨LC,

我修改了BLE pheripheral例如采取ADC测量,并通过BLE发送到计算机。我使用的功能app_adcvall_timer_cb_handler比如上例中,以每秒发送的值。

我在空的Pheriferal模板上测试了adc的所有通道,另外还测试了一个带有Uart输出的改进电池示例。
结果总是一样的。
信道P00,P01,P02所示的正确值(1V,2V,3V),但信道P03所示送花儿给人的同一个值(二进制:1110001100)。该值对最后两位变化。等等P03测量发生。
我还检查从引脚P03芯片,一切都还好吧接触。

该通道是否可能在芯片内部有任何损坏?

此致,
大卫

立法会ydF4y2Ba
离线
最后一次见到:3个月1周前
工作人员
加入:2016-09-19 23:20
嗨大卫,

嗨大卫,

这是非常奇怪的,只有通道P03显示wierd行为。我们没有在580上的ADC上看到任何这样的问题。过去曾注意到一些百分比精度问题,但没有类似的问题。话虽如此,我想确认与实施有关的几件事。,
1.被用于任何其他目的,该引脚P03。主要是CS引脚为闪存。因为它加载这可能使引脚上的一些干扰。
2.你能在不同的开发工具包上测试一下吗。这是为了排除任何与硬件相关的问题。
3.您能用3倍衰减模式的ADC进行测试吗残废并检查是否有结果得到改善。

目前尚不清楚到底是什么原因导致了这一问题,但我会在探讨这一问题的过程中向您通报。

最好的,
立法会ydF4y2Ba

戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
喜LC-对话框,

喜LC-对话框,

1.我做了同样的事情,但我检查了所有GPIO保留和配置以用于其他目的。我什么也找不到。
2.如果没有解我将另一个14580芯片和测试该第一。

3.在通道P03上没有3倍衰减时,我得到最高值(1111111111),有3倍衰减时,我得到大约3,2V(1110001100、1110001101、1110001011)。不管我发出什么信号。
我还用示波器检查了引脚以及与芯片的连接。没有偏移。不是作为输出获取的值。

有没有一种可能,你可以得到这个3,2V软件或任何GPIO配置?
否则我认为芯片有内部损坏。

谢谢
大卫

立法会ydF4y2Ba
离线
最后一次见到:3个月1周前
工作人员
加入:2016-09-19 23:20
嗨大卫,

嗨大卫,

我很好奇,如果你有机会尝试在不同的套件中的ADC实现?

此外,有时,如果在其他通道上进行任何活动,即使这些通道未用于ADC目的,ADC也可能会受到干扰。假设通道3用于ADC时,通道0/1/2上是否存在任何UART活动等,ADC读数可能存在一些不一致。请确保正确处理时间,以避免出现这种情况。

现在回到原来的问题,仍然没有解释为什么你在通道3单独只得到某些固定的不正确的值。

Regariding你的问题:有没有一种可能,你可以得到这个3,2V软件或任何GPIO配置?
如果您要求将ADC通道3映射到任何其他GPIO,恐怕这是不可能的,因为ADC的4个通道在硬件中连接到端口0的下4个引脚。

最好的,
立法会ydF4y2Ba

戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
嗨,LC_对话,

嗨,LC_对话,

我将在几天之内改变我的主板芯片。
我检查的软件设置的一切,我也测试了几个硬件设置。
我发现通道的值是VDD3V3。我需要更长的时间,因为我总是使用usb调试器。
使用蓄电池或电压发生器后,该值与电源电压类似。
我让你知道问题是否改变芯片后解决。

问候,

大卫

戴维德
离线
最后一次见到:2年9个月前
加入:2017-11-17 08:35
嗨,LC_对话,

嗨,LC_对话,

之后改变Da14580芯片的通道P03作品。所以这是一个硬件问题。
现在,所有四个通道的工作完美。我不知道这种损害的原因,但它需要这么长时间这很烦人。

你知道ADC的参考电压和准确性?
我做了一些测试,如果我想的ADC我估计值与3.6V转换。但是,如果我与3.7V计算作为参考电压,转换后的值是更准确的对ADC管脚上的电压。我想实现的软件是正确的。

问候,
大卫

立法会ydF4y2Ba
离线
最后一次见到:3个月1周前
工作人员
加入:2016-09-19 23:20
嗨大卫,

嗨大卫,

这是一个好知道问题解决了。虽然硬件损坏是相当少见的,可以像打开包装后保存较长外多种原因发生因,在生产等的ESD

关于精度,DA14580已知问题文档中有一个关于ADC测量和预防措施的非常好的参考。请查看该文件,并就任何澄清与我们联系。

最好的,
立法会ydF4y2Ba