joi, 7 iulie 2016

Potentiometrul digital MCP41xxx

   Deoarece am gasit un modul radio cu TEA5767 pe care l-am conectat cu o placa Arduino, am constat ca ar fi util si un sistem de reglaj digital al volumului, asa ca am zis sa testez intai un potentiometru digital MCP41010 care are 10 kohmi, care se controleaza prin interfata SPI si are 256 trepte ca valoare (0...255).
   Am gasit cateva informatii utile pe net, dar m-am oprit la 2 dintre ele:
Single/Dual digital Potentiometer (MCP41xxx, MCP42xxx) de pe site-ul www.arduino-projekte.de/
MCP41010 Digital Potentiometer Arduino User Manual de pe site-ul Henry’s Bench
   Eu am avut libera o placa Arduino Mega, asa ca am adaptat sketch-ul gasit in cel de-al doilea articol, punand si un afisaj alfanumeric 1602 cu interfata i2c, sketch-ul folosit de mine fiind MCP41xxx_lcd1602_i2c_test.ino.
   Schema de test este:

  La primele teste, din cauza unui breadboard de calitate slaba, la trimiterea comenzii de 0, aveam o valoare foarte mare a ternsiunii pe divizorul rezistiv, in loc de cativa mV, aveam cca 580mV.
  Am facut repede 2 filmulete:
test potentiometru digital MCP41010 si Arduino Mega
test with MCP41010 digital potentiometer and Arduino Mega
   Initial, nu am realizat ca e ceva in neregula, stiind ca exista o rezistenta interna, dar dupa citirea  fisei tehnice am intels ca rezistenta minima are valoarea tipica de cca 52 ohmi sau in caz extrem 100 ohmi.
   Am refacut legaturile si am obtinut urmatoarele valori, cand potentiometrul este alimentat la 5V:
- treapta 0:
- treapta 255:
   Am conectat pinul potentiometrului la tensiunea de 3,3V, obtinand in acest caz:
- treapta 0:
- treapta 255:
   Se pot comanda mai multe potentiometre de genul asta, prin conectarea pinilor SI, respectiv SCK la pinii SPI corepsunzatori, iar pinii CS la pini diferiti, deoarece potentiometrul schimba valoarea doar daca pinul CS este la masa...
   Am refacut testele si am 2 noi filmulete...
test potentiometru digital MCP41010 si Arduino Mega (2)
- test with MCP41010 digital potentiometer and Arduino Mega (2) 

Niciun comentariu:

Trimiteți un comentariu