Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <SPI.h>
- const int slaveSelectPin = 10;
- void setup() {
- pinMode (slaveSelectPin, OUTPUT);
- SPI.begin();
- }
- void loop(){
- for (unsigned int level = 0; level < 1024; level++) {
- digitalPotWrite(0, level);
- }
- delay(100);
- }
- int digitalPotWrite(unsigned int wiper, unsigned int value){
- //00ww 00 vv vvvv vvvv
- //AAAA CC DD DDDD DDDD
- value &= 0x03FF; // AND off the non-data bits
- wiper &= 0x0003; // AND off high wiper bits
- value |= (wiper << 12); // shift the wiper bits
- digitalWrite(slaveSelectPin,LOW);
- SPI.transfer( (byte)(value >> 0) );
- SPI.transfer( (byte)(value >> 8) );
- digitalWrite(slaveSelectPin,HIGH);
- }
Advertisement
Add Comment
Please, Sign In to add comment