Isso funciona, você receberá os números de volta e interromperá. Eu fiz check-out, faça o download em .
A precisão e glitchiness são indeterminadas, ainda. Mas está bem descrito nas Appnotes, conforme indicado por @Bence Kaulics neste tópico (consulte results.txt para AppNotes adicionais)
Eu acredito que será estável pelas seguintes razões.
a) The circuit diagram in RM0091 shows a direct connection from comparator to pin. i.e. it is indicated that the comparator cannot be disconnected with a switch or MUX, and will thus work as soon as the pin is assigned 'analog in'.
b) The comparator is NOT dependent on a 'Clock' to enable it (it is alow power device).
c) ST would not be able to make this level of change without assigning a new part number.
The good news is that one can continue to use the comparator for high-speed events such as over current and emergency stop etc whilst still using the ADC analog window events for other software control.
Isso também funciona com o DAC, ou seja, você pode configurar tudo internamente com o DAC ou externamente com o DAC e alguns resistores.
Apenas olhando para o circuito, você usará o ADC em paralelo ao comparador, essencialmente um amplificador. Como sabemos, estes são dispositivos de grande ganho e impedância muito alta. Falhas não são nosso amigo.
Agora, vamos bater uma tampa descarregada naquele pino de vez em quando para alimentar o ADC.
Como todos sabemos, precisamos exagerar a amostra do ADC e, de preferência, rejeitar a primeira leitura após um evento de troca de mux para eliminar a distorção dos canais adjacentes e para os próximos.
O ADC no STM tem impedância de entrada um pouco <50K // 5pF, dependendo de como eles são usados. (DM00039193.pdf pág. 76ff)
A Tabela 53 fornece 400-> 50KOhm, que foi o que descobri há algum tempo atrás quando calibrei meu F373 ADC.
A página 79 mostra o circuito ADC.
A página 82 fornece uma breve descrição do pino comparador, lido em conjunto com a descrição geral dos pinos analógicos acima (pg73ff)
Coloque isso em paralelo com a entrada do seu comparador e com o ADC MUX e modele-o em especiarias. Lembre-se de carregar a tampa do ADC regularmente a uma tensão aleatória.
O que quer que aconteça no circuito e no software, você terá falhas razoáveis na entrada do comparador. IDADE RUIM, mesmo se você conectar o pino a um seguidor de baixa impedância e uma tampa de desacoplamento (na linha móvel de uma entrada do comparador ????).
A tampa usada pelo ADC é o assassino. Esperançosamente, os dispositivos futuros serão amostrados usando seguidores / isoladores internos no ADC e no comparador. Eles podem já estar presentes como recursos não documentados (improvável devido à interferência do mux).
Como eu, acho que nos envolvemos tanto com o lado digital das coisas que, quando passamos para o analógico e o híbrido, esquecemos o básico.
Como medir pequenas correntes usando o conversor de corrente para tensão? é uma discussão que tive com outra pessoa ontem. Eu sabia a resposta, porque eu mesma me importei. Mesmo nos melhores 3V a 50K, obtemos um AVO de 16K / volt. Quando foi a última vez que usei um AVO / multímetro?
Tudo isso dito, uma olhada nos circuitos do F373 mostra que ST e ARM parecem ter a intenção de obter resultados viáveis com o comparador e o ADC sendo usados simultaneamente em um dispositivo misto. A adição de opamps nas séries 150 e 300 fornece uma pista sobre os requisitos de isolamento de impedância.
Tenho certeza de que alguém mais inteligente do que eu será capaz de reprojetar o ambiente para o qual essas interconexões internas foram projetadas. Eu pensaria automotivo ou HVAC .... inversores e FOC. A biblioteca FOC pode fornecer informações valiosas.
A menos que você esteja construindo um instrumento de alta velocidade e alta precisão, esse uso poderá ser suficientemente estável para ser utilizado na prática (dentro das advertências acima). Certamente economizará muitos circuitos externos. Provavelmente, é melhor deixar um teste rigoroso em alta velocidade como um exercício para o aluno (tente-me a estudar).
Solução aqui .
Parece que a biblioteca HAL ADC está um pouco danificada para o DMA multicanal. Publiquei no site do STM para obter uma resposta. Soluções alternativas: -
a) IRQ ambos ADCs
b) Poll ambos ADC
c) DMA um canal e pesquisa no outro
d) Inicialize os registros de baixo nível manualmente
Esta é mais uma advertência para a solução em que os dois comparadores são usados, até que uma solução melhor seja encontrada.