Simple Window Demo - MBED + SmartGPU2 board

Dependencies:   SMARTGPU2 mbed

Files at this revision

API Documentation at this revision

Comitter:
emmanuelchio
Date:
Wed Jul 10 03:44:07 2013 +0000
Child:
1:4a3db447aab6
Commit message:
Simple Window - MBED + SmartGPU2 board

Changed in this revision

SMARTGPU2.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed.bld Show annotated file Show diff for this revision Revisions of this file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SMARTGPU2.lib	Wed Jul 10 03:44:07 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/emmanuelchio/code/SMARTGPU2/#210b5ba62803
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Wed Jul 10 03:44:07 2013 +0000
@@ -0,0 +1,69 @@
+/**************************************************************************************/
+/*SMARTGPU2 intelligent embedded graphics processor unit
+ those examples are for use the SMARTGPU2 with the mbed microcontoller, just connect tx,rx,and reset
+ Board:
+ http://vizictechnologies.com/#/smart-gpu-2/4577779046
+ 
+ www.vizictechnologies.com 
+ Vizic Technologies copyright 2013 */
+/**************************************************************************************/
+/**************************************************************************************/
+
+#include "mbed.h"
+#include "SMARTGPU2.h"
+
+SMARTGPU2 lcd(TXPIN,RXPIN,RESETPIN);  //create our object called "lcd"
+
+//FUNCTION THAT DRAWS A MANUAL WINDOW
+/***************************************************/
+void createWindow(AXIS x1, AXIS y1, AXIS x2, AXIS y2, COLOUR top, COLOUR text, char *name){
+  AXIS aux;
+  NUMBEROFBYTES charsPrinted;
+  
+  lcd.setTextSize(FONT3);
+  lcd.drawRectangle(x1,y1,x2,y2,0xDEFB,FILL); //draw grey 0xDEFB back
+  aux = ((y2-y1) * 20) / 100;
+  if(aux<10) aux=10;
+  lcd.drawGradientRect(x1,y1,x2-1,y1+aux,top,WHITE,VERTICAL); //draw top
+  lcd.drawLine(x1,y1,x2,y1,WHITE);
+  lcd.drawLine(x1,y2,x2,y2,BLACK);  
+  lcd.drawLine(x1,y1,x1,y2,WHITE);  
+  lcd.drawLine(x2,y1,x2,y2,BLACK);  
+  lcd.string(x1+5,y1+5,x2,y2,name,&charsPrinted);
+}
+
+/***************************************************/
+/***************************************************/
+void initializeSmartGPU2(void){      //Initialize SMARTGPU2 Board
+  lcd.reset();                       //physically reset SMARTGPU2
+  lcd.start();                       //initialize the SMARTGPU2 processor
+}
+
+/***************************************************/
+/***************************************************/
+/***************************************************/
+/***************************************************/
+int main() {
+  
+  initializeSmartGPU2();             //Init communication with SmartGPU2 board
+  
+  lcd.baudChange(BAUD7);             //set a fast baud! for fast drawing
+  
+  lcd.setEraseBackColour(GREEN); //set the erase background colour  
+
+  while(1){//forever
+    //erase screen
+    lcd.erase();
+    //draw the manual window 
+    createWindow(20,20,300,200,BLUE,WHITE,"window 1");
+    //wait
+    wait_ms(3000);
+    
+    //erase screen
+    lcd.erase();    
+    //draw the internal SmartGPU2 object window     
+    lcd.objWindow(20,20,300,200,FONT2,SELECTEDGRAY,"window 1");
+    //wait
+    wait_ms(3000);
+  }
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed.bld	Wed Jul 10 03:44:07 2013 +0000
@@ -0,0 +1,1 @@
+http://mbed.org/users/mbed_official/code/mbed/builds/b3110cd2dd17
\ No newline at end of file