CSC231 Lab 6
Back to CSC231 Weekly Schedule
CSC 231 Lab # 6
© 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
- I M P O R T A N T
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
- Type Control-D to close the file.
- Repeat the same operations for the files