Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed mbed-STM32F103C8T6
Diff: main.cpp
- Revision:
- 1:621d776b1313
- Parent:
- 0:1be8870a132e
- Child:
- 2:7e4457bc20b0
--- a/main.cpp Sat Jan 14 22:38:52 2017 +0000
+++ b/main.cpp Wed Jan 16 09:04:20 2019 +0000
@@ -3,9 +3,9 @@
*/
#include "stm32f103c8t6.h"
#include "mbed.h"
-#include "N5110.h"
+#include "nLCD.h"
-N5110 lcd(PA_9, PA_11, PA_12, PA_15, PB_5, PB_3, PA_10); // VCC, CE, RST, DC, DIN, CLK, LIGHT
+graphicsLCD lcd(PB_3,PB_4,PB_5,PB_6); // RST, CS, MOSI, CLK
int main()
{
@@ -13,86 +13,9 @@
lcd.init(); // first need to initialise display
while(1) {
-
- // these are default settings so not strictly needed
- lcd.normalMode(); // normal colour mode
- lcd.setBrightness(0.5); // put LED backlight on 50%
-
// can directly print strings at specified co-ordinates
- lcd.printString("Hello, World!",0,0);
-
- char buffer[14]; // each character is 6 pixels wide, screen is 84 pixels (84/6 = 14)
- // so can display a string of a maximum 14 characters in length
- // or create formatted strings - ensure they aren't more than 14 characters long
- int temperature = 27;
- int length = sprintf(buffer,"T = %2d C",temperature); // print formatted data to buffer
- // it is important the format specifier ensures the length will fit in the buffer
- if (length <= 14) // if string will fit on display
- lcd.printString(buffer,0,1); // display on screen
-
- float pressure = 1012.3; // same idea with floats
- length = sprintf(buffer,"P = %.2f mb",pressure);
- if (length <= 14)
- lcd.printString(buffer,0,2);
-
- // can also print individual characters at specified place
- lcd.printChar('X',5,3);
-
- // draw a line across the display at y = 40 pixels (origin top-left)
- for (int i = 0; i < WIDTH; i++) {
- lcd.setPixel(i,40);
- }
- // need to refresh display after setting pixels
- lcd.refresh();
-
- // can also check status of pixels using getPixel(x,y)
-
+ lcd.print("Hello, World!");
wait(5.0);
lcd.clear(); // clear display
- lcd.inverseMode(); // invert colours
- lcd.setBrightness(1.0); // put LED backlight on full
-
- float array[84];
-
- for (int i = 0; i < 84; i++) {
- array[i] = 0.5 + 0.5*sin(i*2*3.14/84);
- }
-
- // can also plot graphs - 84 elements only
- // values must be in range 0.0 - 1.0
- lcd.plotArray(array);
- wait(5.0);
- lcd.clear();
- lcd.normalMode(); // normal colour mode back
- lcd.setBrightness(0.5); // put LED backlight on 50%
-
- // example of drawing lines
- for (int x = 0; x < WIDTH ; x+=10) {
- // x0,y0,x1,y1,type 0-white,1-black,2-dotted
- lcd.drawLine(0,0,x,HEIGHT,2);
- }
- lcd.refresh(); // need to refresh screen after drawing lines
-
- wait(5.0);
- lcd.clear();
-
- // example of how to draw circles
- lcd.drawCircle(WIDTH/2,HEIGHT/2,20,1); // x,y,radius,black fill
- lcd.drawCircle(WIDTH/2,HEIGHT/2,10,2); // x,y,radius,white fill
- lcd.drawCircle(WIDTH/2,HEIGHT/2,30,0); // x,y,radius,transparent with outline
- lcd.refresh(); // need to refresh screen after drawing circles
-
- wait(5.0);
- lcd.clear();
-
- // example of how to draw rectangles
- // origin x,y,width,height,type
- lcd.drawRect(10,10,50,30,1); // filled black rectangle
- lcd.drawRect(15,15,20,10,2); // filled white rectange (no outline)
- lcd.drawRect(2,2,70,40,0); // transparent, just outline
- lcd.refresh(); // need to refresh screen after drawing rects
-
- wait(5.0);
- lcd.clear();
}
}