Advertisement
SergioSaito

Pot+Arduino

Jan 13th, 2017
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.14 KB | None | 0 0
  1.  #include <SPI.h>
  2.          int myBits[256] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,
  3.                             31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,
  4.                             59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,
  5.                             87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,
  6.                             112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,
  7.                             134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,
  8.                             156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,
  9.                             178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,
  10.                             200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,
  11.                             222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,
  12.                             244,245,246,247,248,249,250,251,252,253,254,255,};
  13.      
  14.       int myBitspot[256] = {105,108,111,114,117,120,123,126,129,132,135,138,141,144,147,150,153,156,159,162,165,168,171,174,177,
  15.                             180,183,186,189,192,195,198,201,204,207,210,213,216,219,222,225,228,231,234,237,240,243,246,249,252,255,
  16.                             258,261,264,267,270,273,276,279,282,285,288,291,295,299,302,306,309,313,316,320,323,327,330,334,337,341,
  17.                             344,348,351,355,358,362,365,369,372,376,379,383,386,390,393,397,400,404,407,411,414,418,421,425,428,432,
  18.                             435,439,442,446,449,453,456,460,463,467,470,474,477,481,484,488,491,495,498,502,505,509,512,516,519,523,
  19.                             526,530,533,537,540,544,547,551,554,558,561,565,568,572,575,579,582,586,589,593,596,600,603,607,610,614,
  20.                             617,621,624,628,631,635,638,642,645,649,652,656,659,663,666,670,673,677,680,684,687,691,694,698,701,705,
  21.                             708,712,715,719,722,726,729,733,736,740,743,747,750,754,757,761,764,768,771,775,778,782,785,789,792,796,
  22.                             799,803,806,810,813,817,820,824,827,831,834,838,841,845,848,852,855,813,817,820,824,827,831,834,838,841,
  23.                             845,848,852,855,859,862,866,869,873,876,880,883,887,890,894,897,901,904,908,911,915,918,922,};
  24.  
  25. const int slaveSelectPin = 10;
  26. long int val;
  27. int analog_sensor = A0;
  28. int i;
  29.  
  30. void setup()
  31. {
  32.   pinMode (slaveSelectPin, OUTPUT); // Slave Select como Output  
  33.   SPI.begin();
  34. }
  35.  
  36. void loop()
  37. {
  38.  
  39.   for (i = 0; i < 256; i++)
  40.   {
  41.     analog_sensor = analogRead(A0);
  42.        
  43.     if ( (analog_sensor >= myBitspot[i]) && (analog_sensor <= myBitspot[i+1]) )
  44.     {
  45.       val = myBits[i];
  46.     }
  47.  
  48.      digitalPotWrite(val);  
  49.   }
  50.  
  51. }
  52.  
  53. void digitalPotWrite(int value) {
  54.   digitalWrite(slaveSelectPin,LOW);
  55.   SPI.transfer(0x11);
  56.   SPI.transfer(value);
  57.   digitalWrite(slaveSelectPin,HIGH);
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement