Show Posts
Pages: 1 2 [3] 4 5 ... 23
31  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 10:23:31 am
Currently, I received the byte from my phone, then it will perform what it received and display the current status to LCD.

For example, when I pressed '1',  then the car will move forward. It will continue to move forward until it received another character byte maybe like '2' , then it will reverse.

What I want it to be now is :
I need to send a continuous '1' to make the car move forward continuously. When I don't press anything on the phone, then it will STOP.

How is it possible for me to do that ? I am curious because once I send '1 ' to the arduino, then the serial.read() will always read it as '1' and perform what it is in the loop isn't ?

Please help.

Thanks !
32  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 10:11:30 am
If never received any data, then the car won't be moving smiley-grin

Current code :

Code:
int motorPin1 = 7;
int motorPin2 = 8;
int enablePin_1 = 6;
int motorPin4 = 2;
int motorPin3 = 4;
int enablePin_2 =3 ;
int buzzer = 11;
int f_b_light = 12 ;
int state;
int flag=0; //makes sure that the serial only prints once the state
boolean buzzerstatus = 0;
boolean LEDstatus = 0;

#include <LiquidCrystal.h>

LiquidCrystal lcd(13, 10, 9, A0, A1, A2);

void setup() {
  // sets the pins as outputs:
  lcd.begin(16, 2);
  pinMode(buzzer,OUTPUT);
  pinMode(f_b_light,OUTPUT);
  pinMode(motorPin1, OUTPUT);
  pinMode(motorPin2, OUTPUT);
  pinMode(enablePin_1, OUTPUT);
  pinMode(motorPin3, OUTPUT);
  pinMode(motorPin4, OUTPUT);
  pinMode(enablePin_2, OUTPUT);
  // sets enablePin high so that motor can turn on:
  digitalWrite(enablePin_1, HIGH);
  digitalWrite(enablePin_2, HIGH);
  pinMode(13,OUTPUT);
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}

void loop() {
  //if some date is sent, reads it and saves in state
  if(Serial.available() > 0){
    state = Serial.read();
    flag=0;
  }
  // if the state is '0' the DC motor will turn off
  if (state == '0') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("STOP");
      flag=1;
    }
  }
  // if the state is '1' the motor will forward
  else if (state == '1') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin2, HIGH); // set pin 7 on L293D high
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin4, HIGH); // set pin 7 on L293D high
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("FORWARD");
      flag=1;
    }
  }
  // if the state is '2' the motor will backward
  else if (state == '2') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, HIGH); // set pin 2 on L293D high
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, HIGH); // set pin 2 on L293D high
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("REVERSE");
      flag=1;
    }
  }

  else if (state == '3') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin2, HIGH); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("RIGHT");
      flag=1; //Left wheel forward, Right wheel static
      flag=1;
    }
  }
  else if (state == '4') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin4, HIGH); // set pin 7 on L293D low
    if(flag == 0){
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("LEFT");
      flag=1;
    }
  }
33  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 09:55:31 am
Is that ok ?

Thanks ! smiley-grin
34  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 09:49:29 am
OK, you've found the quote tags, well, the code tags are to the left (#)
I tried and at arduino IDE, I copied to forum then paste. It does not work.

Thanks !
35  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 09:16:18 am
Quote
Current coding :
Is not accessible to everyone. There is a mechanism for you to attach your code to your post. Use the Additional Options link below the text entry box. Do that only after using Tools + Auto Format.

If you can't figure out that Tools + Auto Format means to go to the Tools menu in the IDE, and then select Auto Format, I don't think that there is much chance of your robot ever working.
Current coding
Quote
int motorPin1 = 7;
int motorPin2 = 8;
int enablePin_1 = 6;
int motorPin4 = 2;
int motorPin3 = 4;
int enablePin_2 =3 ;
int buzzer = 11;
int f_b_light = 12 ;
int state;
int flag=0; //makes sure that the serial only prints once the state
boolean buzzerstatus = 0;
boolean LEDstatus = 0;

#include <LiquidCrystal.h>

LiquidCrystal lcd(13, 10, 9, A0, A1, A2);

void setup() {
  // sets the pins as outputs:
  lcd.begin(16, 2);
  pinMode(buzzer,OUTPUT);
  pinMode(f_b_light,OUTPUT);
  pinMode(motorPin1, OUTPUT);
  pinMode(motorPin2, OUTPUT);
  pinMode(enablePin_1, OUTPUT);
  pinMode(motorPin3, OUTPUT);
  pinMode(motorPin4, OUTPUT);
  pinMode(enablePin_2, OUTPUT);
  // sets enablePin high so that motor can turn on:
  digitalWrite(enablePin_1, HIGH);
  digitalWrite(enablePin_2, HIGH);
  pinMode(13,OUTPUT);
  // initialize serial communication at 9600 bits per second:
  Serial.begin(9600);
}

void loop() {
  //if some date is sent, reads it and saves in state
  if(Serial.available() > 0){
    state = Serial.read();
    flag=0;
  }
  // if the state is '0' the DC motor will turn off
  if (state == '0') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("STOP");
      flag=1;
    }
  }
  // if the state is '1' the motor will forward
  else if (state == '1') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin2, HIGH); // set pin 7 on L293D high
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D low
    digitalWrite(motorPin4, HIGH); // set pin 7 on L293D high
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("FORWARD");
      flag=1;
    }
  }
  // if the state is '2' the motor will backward
  else if (state == '2') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, HIGH); // set pin 2 on L293D high
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, HIGH); // set pin 2 on L293D high
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("REVERSE");
      flag=1;
    }
  }

  else if (state == '3') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin2, HIGH); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin4, LOW); // set pin 7 on L293D low
    if(flag == 0){
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("RIGHT");
      flag=1; //Left wheel forward, Right wheel static
      flag=1;
    }
  }
  else if (state == '4') {
    digitalWrite(f_b_light,LOW);
    digitalWrite(buzzer,LOW);
    digitalWrite(motorPin1, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin2, LOW); // set pin 7 on L293D low
    digitalWrite(motorPin3, LOW); // set pin 2 on L293D high
    digitalWrite(motorPin4, HIGH); // set pin 7 on L293D low
    if(flag == 0){
      lcd.clear();
      lcd.setCursor(0, 0);
      lcd.print("Current State:");
      lcd.setCursor(0, 1);
      lcd.print("LEFT");
      flag=1;
    }
  }

36  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 06:00:25 am
At the moment, when I press forward and release, the car will move forward. while moving forward, when I click left button and release, then it will change to always turn left(which can be a 360 degree rotate).

I want it to be like when I press the left button it will go left slightly until I release the left button.

Thanks !
37  Using Arduino / Programming Questions / Re: 2WD Electric Car on: November 30, 2013, 04:01:15 am
I mean I want the car to move like this :

Once I press the button moving forward, then it will move forward. While moving forward, I pressing the 'turn left' button then the car will turn left until I released from the 'turn left'button. It seems to be like I program the virtual button to act like a tact switch.

Thanks !
38  Using Arduino / Programming Questions / 2WD Electric Car on: November 30, 2013, 03:52:03 am
Dear all,

I would like to build a simple 2WD electric car.  I am using a serial bluetooth module and I am controlling them through android smart phone.

I am suck in the programming now.
This is what I want my car to do :
When moving forward, then once I click the left button, it will turn left for a period of time and then continue to move straight. We consider the move to left as interrupt.

Current coding :

https://www.dropbox.com/s/ooplrpxizdp0z3v/Electric%20Car.html

I do not know how to use the auto format tools. >.<

Thanks for help
39  Using Arduino / Networking, Protocols, and Devices / Bluetooth Module Serial Port in windows8 on: November 04, 2013, 09:41:40 am
http://dx.com/p/jy-mcu-arduino-bluetooth-wireless-serial-port-module-104299

Dear friend, I puchased this bluetooth module and wanna try to control a LED through bluetooth. The problem is that when I use teraterm, I can't connect to the bluetooth serial port.

I am using window 8. I don't have such problem in window 7.

Anyone experience in this ?

Thank you smiley
40  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 04, 2013, 05:46:59 am
Ahh, I used USBasp to upload the code to my attiny85. Then I use an android apps 'BlueTerm'' to send serial data to my attiny 85. Bad thing is that it does not display anything on the android apps.

My code :
Quote
#include <SoftwareSerial.h>

#define RxD 0
#define TxD 1
SoftwareSerial mySerial(0, 1); 
// Pin 13 - LED
int led = 3;
int state;

void setup() {               
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
pinMode(RxD, INPUT);
pinMode(TxD,OUTPUT);

  // initialize serial communication at 9600 bits per second:
  mySerial.begin(9600);
}

void loop() {
  if(mySerial.available() > 0){     
      state = mySerial.read();}

  if (state == '1') {
    mySerial.println(state);
      
    }   // turn the LED on (HIGH is the voltage level)
 
  else if (state == '2') {
    mySerial.println(state);
     
    }    // turn the LED off by making the voltage LOW
      
  delay(100);               // wait for 100ms
  
  //For debugging purpose
  //Serial.println(state);
}


Any idea ?

Thanks !
41  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 03, 2013, 12:12:09 pm
Quote
My sketch directory is in Document.
Then, the only other thing I can think of is that you are using a pre-1.0 core for the ATTiny85. You need to find a post-1.0 core to use with the post-1.0 IDE.
Code:
#include <SoftwareSerial.h>

SoftwareSerial mySerial(1, 2);
//
int led = 4;
int state;

void setup() {                
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);    
  // initialize serial communication at 9600 bits per second:
  mySerial.begin(9600);
}

void loop() {
  if(mySerial.available() > 0){    
      state = mySerial.read();}

  if (state == '1') {
    mySerial.println(state);
      digitalWrite(led, HIGH);
    }   // turn the LED on (HIGH is the voltage level)
 
  else if (state == '2') {
    mySerial.println(state);
      digitalWrite(led, LOW);
    }    // turn the LED off by making the voltage LOW
      
  delay(100);               // wait for 100ms
  
  //For debugging purpose
  //Serial.println(state);
}

This is my current code. I want to light up and LED wirelessly through bluetooth.

I do not know why I can't get the LED to light up smiley-sad

Sigh. Any ideas ?

Thanks !
42  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 03, 2013, 10:52:13 am
Quote
My sketch directory is in Document.
Then, the only other thing I can think of is that you are using a pre-1.0 core for the ATTiny85. You need to find a post-1.0 core to use with the post-1.0 IDE.
I searchedfor newer version : https://github.com/TCWORLD/ATTinyCore

However, when I try to change the board to attiny 85(8MHz internal). it give me error Serial was not declared.

So how to solve that ?

Thanks !

Wait, it seems to be working !

Will update soon ! smiley

Thanks so much !
43  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 03, 2013, 08:58:45 am
Okay, I think that's the problem. Have to find a newer core.

Thank you!
44  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 03, 2013, 08:50:31 am
Quote
So what should I do now ? Redownload the IDE ?
Instead of telling us whether or not that directory really is your sketch directory? I can't see how downloading the IDE again will be a satisfactory alternative.

If that IS your sketch directory, downloading the IDE again will leave it exactly the same, so your problem won't have gone away. Again, I don't see downloading the IDE again as a useful thing to do.

If that IS your sketch directory, deleting the SoftwareSerial folder WILL solve your problem.

But, it's your decision as to what to do.

My sketch directory is in Document.

Thank you.
45  Using Arduino / Programming Questions / Re: Attiny 85 with SoftwareSerial library on: November 03, 2013, 08:31:14 am
Quote
But it come along when I download the arduino 1.0.5 file. Why you would say that it is user-downloaded library file ?
Because the install path for the Arduino IDE and related code usually has the version number in the path. The sketch directory usually does not. Therefore, when I see a path without a version number, I assume that it is a sketch directory, and that is where user-downloaded libraries go. There are good reasons for following conventions.
So what should I do now ? Redownload the IDE ?

Thank you
Pages: 1 2 [3] 4 5 ... 23