Outils pour utilisateurs

Outils du site


wiki:projets:protexp:partie_numerisation:arduino_m5stack_04_06_-_xx_06

Ceci est une ancienne révision du document !


Partie Codage : Utilisation Arduino et M5Stack

_04/06_ : Seconde piste d'étude : Initiation à l'arduino

Réaliser un potentiomètre numèrique ( MCP 41010 )

Documentation:

* YouTube Experimentboy2 * Blog Eskimon * WikiFablab

_05/06_ On souhaite utiliser 2 potentiomètres de 10k et 100k ohm de résistance respectivement MCP41010 et MCP 41100 avec chacun 256 pas. Ce qui nous donnerait 256*256 solutions soit 65 536 pas pour une résistance de 110k. Chaque pas ferait varier la résistance de 110k/65 636 soit 1.67 Ohm par pas.

Attention à prendre des résistances adaptés ( 100 à 1k ohm ) pour éviter que ça crame.

( photo des 2 potentiomètre en série )

On arrive avec l'arduino à obtenir une courbe sinusoidale avec enormement de bruit. En effet le fait de mettre 2 potentiomètres en série ne permet pas d'avoir des valeurs de résistances continues il y'aura des sauts de valeurs choe qui se répercute en 1 bruit constant et régulier.

_06/06_ Familiarisation avec le M5Stack : Sur le logiciel arduino

* Installation des drivers sur arduino : YouTube “ M5Stack Arduino IDE Setup in 5 minute ” * Réutilisation du code “ Blink ” dans exemple * Attetion bien remplacer tous les “ LED PIN ” into “ ledpin ” * Si ledpin = x . Brancher les 2 fils , 1 à la masse ( GND ) et l'autre en prise “ x ”

_11/06_ Contrôle du potentiomètre MCP41100 avec arduino

Tutorial :

* Contrôle MCP 41100 programme : /* this program taken from arduino Example .

modified by By Mohannad Rawashdeh
http://www.genotronex.com

https://www.instructables.com/

This code used to control the digital potentiometer
MCP41100 connected to  arduino Board
CS >>> D10
SCLK >> D13
DI  >>> D11
PA0 TO VCC
PBO TO GND
PW0 TO led with resistor 100ohm .

*/ #include <SPI.h> byte address = 0x11; int CS= 10; int i=0;

void setup() {

pinMode (CS, OUTPUT);
SPI.begin();
// adjust high and low resistance of potentiometer
// adjust Highest Resistance .
 digitalPotWrite(0x00);
 delay(1000);

adjust wiper in the Mid point . digitalPotWrite(0x80); delay(1000); adjust Lowest Resistance .

 digitalPotWrite(0xFF);
 delay(1000);

}

void loop() {

  for (i = 0; i <= 255; i++)
  {
    digitalPotWrite(i);
    delay(10);
  }
  delay(500);
  for (i = 255; i >= 0; i--)
  {
    digitalPotWrite(i);
    delay(1);
  }

}

int digitalPotWrite(int value) {

digitalWrite(CS, LOW);
SPI.transfer(address);

* Contrôle MCP 41100 2e ( FR )

wiki/projets/protexp/partie_numerisation/arduino_m5stack_04_06_-_xx_06.1560267636.txt.gz · Dernière modification: 2019/06/11 15:40 de kethsovann