A test program which communicates with a Gameduino shield and writes some text on a VGA display.
Dependencies: Gameduino CommonTypes mbed
Simple test program to show how to use the Gameduino library.
main.cpp@4:595adac68d12, 2012-11-18 (annotated)
- Committer:
- RichardE
- Date:
- Sun Nov 18 15:15:49 2012 +0000
- Revision:
- 4:595adac68d12
- Parent:
- 0:5f0f384378b2
New version of Gameduino library.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
RichardE | 0:5f0f384378b2 | 1 | #include "mbed.h" |
RichardE | 0:5f0f384378b2 | 2 | #include "Gameduino.h" |
RichardE | 0:5f0f384378b2 | 3 | |
RichardE | 0:5f0f384378b2 | 4 | int main() { |
RichardE | 0:5f0f384378b2 | 5 | // Make a digital output for use with Gameduino. |
RichardE | 0:5f0f384378b2 | 6 | DigitalOut cs( p8 ); |
RichardE | 0:5f0f384378b2 | 7 | // Initialise an SPI link for communications with Gameduino. |
RichardE | 0:5f0f384378b2 | 8 | // Use pin 5 for MOSI. |
RichardE | 0:5f0f384378b2 | 9 | // Use pin 6 for MISO. |
RichardE | 0:5f0f384378b2 | 10 | // Use pin 7 for SCK. |
RichardE | 0:5f0f384378b2 | 11 | SPI spi( p5, p6, p7 ); |
RichardE | 0:5f0f384378b2 | 12 | // 8MHz clock should be OK. |
RichardE | 0:5f0f384378b2 | 13 | spi.frequency( 8000000 ); |
RichardE | 0:5f0f384378b2 | 14 | // Set SPI format to use. |
RichardE | 0:5f0f384378b2 | 15 | // Use 8 bits per SPI frame. |
RichardE | 0:5f0f384378b2 | 16 | // Use SPI mode 0. |
RichardE | 0:5f0f384378b2 | 17 | spi.format( 8, 0 ); |
RichardE | 0:5f0f384378b2 | 18 | // Make a Gameduino and pass SPI link and digital output for chip select. |
RichardE | 0:5f0f384378b2 | 19 | Gameduino gd( &spi, &cs ); |
RichardE | 0:5f0f384378b2 | 20 | // Reset the Gameduino. |
RichardE | 0:5f0f384378b2 | 21 | gd.begin(); |
RichardE | 0:5f0f384378b2 | 22 | // Lets have a default ASCII character set. |
RichardE | 0:5f0f384378b2 | 23 | gd.ascii(); |
RichardE | 0:5f0f384378b2 | 24 | // Write something to character memory. |
RichardE | 0:5f0f384378b2 | 25 | gd.__wstart( Gameduino::RAM_PIC ); |
RichardE | 0:5f0f384378b2 | 26 | for( UInt8 c = 'A'; c <= 'Z'; ++c ) { |
RichardE | 0:5f0f384378b2 | 27 | gd.__tr8( c ); |
RichardE | 0:5f0f384378b2 | 28 | } |
RichardE | 0:5f0f384378b2 | 29 | gd.__end(); |
RichardE | 0:5f0f384378b2 | 30 | // Test copy method. |
RichardE | 0:5f0f384378b2 | 31 | UInt8 copyData[] = "HELLO"; |
RichardE | 0:5f0f384378b2 | 32 | gd.copy( Gameduino::RAM_PIC + 64, copyData, 5 ); |
RichardE | 0:5f0f384378b2 | 33 | // Test putstr method. |
RichardE | 0:5f0f384378b2 | 34 | gd.putstr( 3, 10, "Ambidextrous!" ); |
RichardE | 0:5f0f384378b2 | 35 | // Finished with Gameduino. |
RichardE | 0:5f0f384378b2 | 36 | gd.end(); |
RichardE | 0:5f0f384378b2 | 37 | } |