Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Wire.h>
- void setup() {
- Wire.begin(8); // join i2c bus with address #8
- Wire.onReceive(receiveEvent); // register event
- Wire.onRequest(requestEvent);
- Serial.begin(9600); // start serial for output
- Serial1.begin(250000);
- delay(3000);
- Serial.println("hello");
- }
- void loop() {
- delay(500);
- while(Serial1.available()){
- Serial.print("THERE IS INCOMING");
- Serial.write(Serial1.read());
- }
- //Serial1.write(8);
- Serial1.write(114);
- Serial.println("Still running");
- }
- void receiveEvent(int howMany) {
- Serial.print("size of data: ");
- Serial.print(howMany);
- uint8_t prefix = Wire.read(); //first byte
- switch(prefix) {
- case 0xAA : {
- Serial.print(". string : ");
- while (0 < Wire.available()) { // loop through all but the last
- Serial.write(Wire.read()); // print the character
- }
- Serial.println();
- break;
- }
- case 0x55: {
- Serial.print(". binary : ");
- Serial.print(prefix);
- Serial.print(" ");
- while (0 < Wire.available()) { // loop through all but the last
- int x = Wire.read(); // receive byte as an integer
- Serial.print(x, BIN); // print the integer
- Serial.print(" ");
- }
- Serial.println();
- break;
- }
- default:{
- Serial.print(". other : ");
- Serial.print(prefix);
- Serial.print(" ");
- while (0 < Wire.available()) { // loop through all but the last
- int x = Wire.read(); // receive byte as an integer
- Serial.print(x, BIN); // print the integer
- Serial.print(" ");
- }
- Serial.println();
- }
- }
- }
- void requestEvent() {
- Serial.println("requested");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement