Bluetooth sending/recieving data
              in 
             Integration and Hardware 
              •  
              1 years ago    
            
 
           
             Hello,
            
             
            
            
             
            
            
             
            
            
             
              
            
            
             
            
            
             
            
             
            
            
 
            
           
             I have on my arduino a 50x50 2d array that needs to be send to the computer using processing, the idea is that the bluetooth device hooked on the arduino is always on and when processing starts it should request for data.
            
            
             So I started with the following code:
            
            - public int[][] imageArray;
 - Serial myPort;
 - public void setup() {
 - myPort = new Serial(this, "COM5", 9600);
 - size(50 * _pixelSize, 50 * _pixelSize);
 - }
 - public void draw() {
 - int startcode = 101;
 - // lets first request with code 101
 - myPort.write(startcode);
 - while (myPort.available() > 0) {
 - int code = myPort.read();
 - println(code);
 - if (code == 102) {
 - // we found the answer code lets recieve
 - for (int i = 0; i < 50; i++) {
 - for (int j = 0; j < 50; j++) {
 - int pixel = myPort.read();
 - print(pixel);
 - if (pixel == 103) {
 - drawImage();
 - break;
 - } else {
 - imageArray[i][j] = pixel;
 - }
 - }
 - }
 - }
 - }
 - }
 
- byte imageArray[50][50] = ( some big data containing 0 or 1 for white or black, not include because to huge).
 - void setup()
 - {
 - Serial2.begin(9622);
 - pinMode(13, OUTPUT);
 - }
 - void loop() {
 - // lets first start a handshake
 - // we first need to recieve code 121
 - if(Serial2.available() > 2) {
 - int code = Serial2.read();
 - if(code == 121) {
 - //allright a request has been made, lets now send the sending code 122 back
 - Serial2.write(122);
 - // greate now lets start sending some image
 - for(int i = 2; i < 52; i++) {
 - for(int j = 2; j < 52; j++) {
 - Serial2.write((int)imageArray[i][j]);
 - }
 - }
 - //data send, let the other party know
 - Serial2.write(123);
 - digitalWrite(13, HIGH);
 - } else {
 - digitalWrite(13, LOW);
 - }
 - }
 - }
 
             Thanks
            
 
            
              
              1  
            
 
            