3 changed files with 172 additions and 0 deletions
@ -0,0 +1,81 @@ |
|||||
|
#include <SoftwareSerial.h> |
||||
|
#include <Wire.h> |
||||
|
#define RE 7 |
||||
|
#define DE 8 |
||||
|
|
||||
|
#define RE2 2 |
||||
|
#define DE2 3 |
||||
|
|
||||
|
const byte O1[] = {0x01 ,0x03 ,0x00 ,0x00 ,0x00 ,0x02 ,0xC4 ,0x0B}; |
||||
|
const byte O2[] = {0x01 ,0x03 ,0x00 ,0x00 ,0x00 ,0x02 ,0xC4 ,0x0B}; |
||||
|
|
||||
|
byte values[20]; |
||||
|
byte values2[20]; |
||||
|
SoftwareSerial mod(10, 11); // RO / DI
|
||||
|
SoftwareSerial mod2(5, 6); // RO / DI
|
||||
|
|
||||
|
void setup() { |
||||
|
Serial.begin(4800); |
||||
|
mod.begin(4800); |
||||
|
mod2.begin(4800); |
||||
|
pinMode(RE, OUTPUT); |
||||
|
pinMode(DE, OUTPUT); |
||||
|
pinMode(RE2, OUTPUT); |
||||
|
pinMode(DE2, OUTPUT); |
||||
|
} |
||||
|
|
||||
|
void loop() { |
||||
|
int val1 = 0 ; // SPEED
|
||||
|
int val2 = 0 ; // DIR
|
||||
|
|
||||
|
Calculate(); |
||||
|
//val1 = ((values[5]*256)+values[6]);
|
||||
|
val1 = values[4]; |
||||
|
Serial.print("speed: "); |
||||
|
Serial.println(val1); |
||||
|
|
||||
|
delay(1000); |
||||
|
|
||||
|
Calculate2(); |
||||
|
val2 = values2[4]; |
||||
|
Serial.print("dir: "); |
||||
|
Serial.println(val2); |
||||
|
|
||||
|
delay(1000); |
||||
|
} |
||||
|
|
||||
|
byte Calculate() { |
||||
|
digitalWrite(DE, HIGH); |
||||
|
digitalWrite(RE, HIGH); |
||||
|
delay(10); |
||||
|
if (mod.write(O1, sizeof(O1)) == 8) { |
||||
|
digitalWrite(DE, LOW); |
||||
|
digitalWrite(RE, LOW); |
||||
|
for (byte i = 0; i < 11; i++) { |
||||
|
//Serial.print(mod.read(),HEX);
|
||||
|
values[i] = mod.read(); |
||||
|
Serial.print(values[i]); |
||||
|
Serial.print(" "); |
||||
|
} |
||||
|
} |
||||
|
Serial.println(" "); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
byte Calculate2() { |
||||
|
digitalWrite(DE2, HIGH); |
||||
|
digitalWrite(RE2, HIGH); |
||||
|
delay(10); |
||||
|
if (mod2.write(O2, sizeof(O2)) == 8) { |
||||
|
digitalWrite(DE2, LOW); |
||||
|
digitalWrite(RE2, LOW); |
||||
|
for (byte i = 0; i < 11; i++) { |
||||
|
//Serial.print(mod2.read(),HEX);
|
||||
|
values2[i] = mod2.read(); |
||||
|
//Serial.print(values2[i]);
|
||||
|
//Serial.print(" ");
|
||||
|
} |
||||
|
} |
||||
|
Serial.println(" "); |
||||
|
} |
||||
|
|
@ -0,0 +1,45 @@ |
|||||
|
#include <SoftwareSerial.h> |
||||
|
#include <Wire.h> |
||||
|
#define RE 7 |
||||
|
#define DE 8 |
||||
|
|
||||
|
const byte O2[] = {0x01 ,0x03 ,0x00 ,0x00 ,0x00 ,0x02 ,0xC4 ,0x0B}; |
||||
|
|
||||
|
byte values[20]; |
||||
|
SoftwareSerial mod(10, 11); // RO / DI
|
||||
|
|
||||
|
void setup() { |
||||
|
Serial.begin(4800); |
||||
|
mod.begin(4800); |
||||
|
pinMode(RE, OUTPUT); |
||||
|
pinMode(DE, OUTPUT); |
||||
|
} |
||||
|
|
||||
|
void loop() { |
||||
|
int val1 = 0 ; |
||||
|
Calculate(); |
||||
|
val1 = ((values[5]*256)+values[8]); |
||||
|
Serial.print("v: "); |
||||
|
Serial.println(val1); |
||||
|
|
||||
|
delay(1000); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
byte Calculate() { |
||||
|
digitalWrite(DE, HIGH); |
||||
|
digitalWrite(RE, HIGH); |
||||
|
delay(10); |
||||
|
if (mod.write(O2, sizeof(O2)) == 8) { |
||||
|
digitalWrite(DE, LOW); |
||||
|
digitalWrite(RE, LOW); |
||||
|
for (byte i = 0; i < 11; i++) { |
||||
|
//Serial.print(mod.read(),HEX);
|
||||
|
values[i] = mod.read(); |
||||
|
//Serial.print(values[i], HEX);
|
||||
|
//Serial.print(" ");
|
||||
|
} |
||||
|
Serial.println(); |
||||
|
} |
||||
|
return values[6]; |
||||
|
} |
@ -0,0 +1,46 @@ |
|||||
|
#include <SoftwareSerial.h> |
||||
|
#include <Wire.h> |
||||
|
#define RE 7 |
||||
|
#define DE 8 |
||||
|
|
||||
|
const byte O2[] = {0x01 ,0x03 ,0x00 ,0x00 ,0x00 ,0x02 ,0xC4 ,0x0B}; |
||||
|
|
||||
|
byte values[20]; |
||||
|
SoftwareSerial mod(10, 11); // RO / DI
|
||||
|
|
||||
|
void setup() { |
||||
|
Serial.begin(4800); |
||||
|
mod.begin(4800); |
||||
|
pinMode(RE, OUTPUT); |
||||
|
pinMode(DE, OUTPUT); |
||||
|
} |
||||
|
|
||||
|
void loop() { |
||||
|
int val1 = 0 ; |
||||
|
Calculate(); |
||||
|
//val1 = ((values[5]*256)+values[8]);
|
||||
|
val1 = (values[4]); |
||||
|
Serial.print("v: "); |
||||
|
Serial.println(val1); |
||||
|
|
||||
|
|
||||
|
delay(1000); |
||||
|
} |
||||
|
|
||||
|
byte Calculate() { |
||||
|
digitalWrite(DE, HIGH); |
||||
|
digitalWrite(RE, HIGH); |
||||
|
delay(10); |
||||
|
if (mod.write(O2, sizeof(O2)) == 8) { |
||||
|
digitalWrite(DE, LOW); |
||||
|
digitalWrite(RE, LOW); |
||||
|
for (byte i = 0; i < 11; i++) { |
||||
|
//Serial.print(mod.read(),HEX);
|
||||
|
values[i] = mod.read(); |
||||
|
//Serial.print(values[i]);
|
||||
|
//Serial.print(" ");
|
||||
|
} |
||||
|
Serial.println(); |
||||
|
} |
||||
|
//return values[6];
|
||||
|
} |
Loading…
Reference in new issue