CSC231 Lab 6

From dftwiki3
Revision as of 15:57, 29 October 2008 by Thiebaut (talk | contribs) (Getting the Messenger Library for the Arduino)
Jump to: navigation, search

Back to CSC231 Weekly Schedule


CSC 231 Lab # 6

ArduinoStamp.jpg

© D. Thiebaut, 2008

In this lab we are going to make the Arduino keep on listening to commands it gets from the assembly language on the PC, and execute each command as it receives them.

Getting the Messenger Library for the Arduino

You need a new library for the Arduino called Messenger

  • Boot the Ubuntu CD-Rom
  • Open a Terminal window and type
  sudo su
  cd 
  cd arduino-0010/hardware/libraries
  • download the library file from the Arduino Playground:
  wget http://www.arduino.cc/playground/uploads/Code/Messenger.zip
  • unzip the file
  unzip Messenger.zip
  • Remove the archive file
  rm Messenger.zip
  • Set the ownership of the new library the same ownership as that of the arduino software
  chown -R 1000:1000 Messenger
  • Open the arduino GUI and create this new sketch
// This example sets all the values of the digital pins with a list through a callback function 

#include <Messenger.h>
// Instantiate Messenger object with the default separator (the space character)
Messenger message = Messenger(); 

// Create the callback function
void messageReady() {
    int pin = 0;
       // Loop through all the available elements of the message
       while ( message.available() ) {
	// Set the pin as determined by the message
         digitalWrite( pin, message.readInt() );
         pin=pin+1;
      }
}


void setup() {
  // Initiate Serial Communication
  Serial.begin(115200); 
  // Attach the callback function to the Messenger
  message.attach(messageReady);
}


void loop() {
  // The following line is the most effective way of using Serial and Messenger's callback
  while ( Serial.available() )  message.process(Serial.read () );
}

  • Compile and download it to your Arduino
Note: When you boot your PC in Ubuntu mode from the live CD, you are working with a Linux computer that exists only on the CD and in the RAM. Whatever you create or copy to your ubuntu or root account exists only in RAM. As soon as you close the system, all your changes disappear. All the files you created disappear. For this reason, you will need a USB key to save all the files you create, including sketches and libraries, such as the Messenger library you created above.

Assembly Part

  • Open a Terminal window under Ubuntu and type
  sudo su
  cd
  • Highlight the contents of the file driver.c and type Control-C to copy it to the clipboard
  • In the terminal window type
  cat > driver.c
and then click the middle button of your mouse to paste the code you had highlighted