From 54c117b6e8d65e9955a93de95a62e0f9ede7935c Mon Sep 17 00:00:00 2001 From: Blaise Thompson Date: Sun, 24 Jan 2021 22:27:03 -0600 Subject: digital driver prototype --- digital-controller/firmware/firmware.ino | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 digital-controller/firmware/firmware.ino (limited to 'digital-controller/firmware/firmware.ino') diff --git a/digital-controller/firmware/firmware.ino b/digital-controller/firmware/firmware.ino new file mode 100644 index 0000000..7693835 --- /dev/null +++ b/digital-controller/firmware/firmware.ino @@ -0,0 +1,35 @@ +#include + +#define I2C_SLAVE_ADDR 0x26 // I2C slave address (38, 0x26) + +void setup() +{ + // init the Wire object + Wire.begin(); + + // wait for slave to finish any init sequence + delay(2000); +} + +void loop() +{ + + //generate buffer containing data to send via I2C + uint8_t buf[1]; + buf[0] = 255; // adjusting this byte changes fan speed. Can be adjusted from 0 to 256. + buf[1] = 0; // adjusting this byte changes LED intensity. Can be adjusted from 0 to 256. + + // send buffer + Wire.beginTransmission(I2C_SLAVE_ADDR); + Wire.write(buf, 2); + Wire.endTransmission(); + + // delay 20 milliseconds to accomodate slave onReceive() + delay(20); + + /////////////////////// WHY DO I NEED THIS PART?////////////////////////// + Wire.requestFrom(I2C_SLAVE_ADDR, 1); + + // delay 1 second so user can watch results + delay(100); +} -- cgit v1.2.3 From 9d678fbace2e4931e39ab5b95b2ec7493a18f549 Mon Sep 17 00:00:00 2001 From: Blaise Thompson Date: Mon, 25 Jan 2021 12:15:05 -0600 Subject: digital-driver readme --- digital-controller/firmware/firmware.ino | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'digital-controller/firmware/firmware.ino') diff --git a/digital-controller/firmware/firmware.ino b/digital-controller/firmware/firmware.ino index 7693835..86e4bb0 100644 --- a/digital-controller/firmware/firmware.ino +++ b/digital-controller/firmware/firmware.ino @@ -13,11 +13,11 @@ void setup() void loop() { - + for( int a=10; a<=255; a++ ){ //generate buffer containing data to send via I2C uint8_t buf[1]; - buf[0] = 255; // adjusting this byte changes fan speed. Can be adjusted from 0 to 256. - buf[1] = 0; // adjusting this byte changes LED intensity. Can be adjusted from 0 to 256. + buf[0] = 255-a; // adjusting this byte changes fan speed. Can be adjusted from 0 to 256. + buf[1] = a; // adjusting this byte changes LED intensity. Can be adjusted from 0 to 256. // send buffer Wire.beginTransmission(I2C_SLAVE_ADDR); @@ -31,5 +31,6 @@ void loop() Wire.requestFrom(I2C_SLAVE_ADDR, 1); // delay 1 second so user can watch results - delay(100); + delay(50); + } } -- cgit v1.2.3