#include #include #define rxPin 9 #define txPin 10 #define onDelay() _delay_us(60) //PWM on time #define offDelay() _delay_us(40) //PWM off time #define pwmCount 50 // number of PWM cycles SoftwareSerial mySerial (rxPin, txPin); // define Rx and Tx pins //set constraints - attiny t44 pinout const int blue = 0; const int red = 1; const int green = 3; const int black = 4; //set variables int stepsPerRead = 50; //n steps per ToF reading char node = 'a'; //name for this node void setup() { // put your setup code here, to run once: pinMode(blue, OUTPUT); pinMode(red, OUTPUT); pinMode(green, OUTPUT); pinMode(black, OUTPUT); mySerial.begin (9600); pinMode(rxPin, INPUT); pinMode(txPin, OUTPUT); } void ApBp() { digitalWrite(red, LOW); digitalWrite(black,LOW); for (int count = 0; count < pwmCount; ++count){ digitalWrite(blue, HIGH); digitalWrite(green, HIGH); onDelay(); digitalWrite(blue, LOW); digitalWrite(green, LOW); offDelay(); } } void AmBp() { digitalWrite(blue, LOW); digitalWrite(black, LOW); for (int count = 0; count < pwmCount; ++count){ digitalWrite(red, HIGH); digitalWrite(green, HIGH); onDelay(); digitalWrite(red, LOW); digitalWrite(green, LOW); offDelay(); } } void AmBm() { digitalWrite(blue, LOW); digitalWrite(green, LOW); for (int count = 0; count < pwmCount; ++count){ digitalWrite(red, HIGH); digitalWrite(black, HIGH); onDelay(); digitalWrite(red, LOW); digitalWrite(black, LOW); offDelay(); } } void ApBm() { digitalWrite(red, LOW); digitalWrite(green, LOW); for (int count = 0; count < pwmCount; ++count){ digitalWrite(blue, HIGH); digitalWrite(black, HIGH); onDelay(); digitalWrite(blue, LOW); digitalWrite(black, LOW); offDelay(); } } void stepperOff(){ digitalWrite(blue, LOW); digitalWrite(red, LOW); digitalWrite(green, LOW); digitalWrite(black, LOW); } void loop() { // put your main code here, to run repeatedly: if (mySerial.available() > 0 && mySerial.read() == node) { // if in serial it reads its letter for (int a = 0; a