From 60699af63f92f43cc4b4b9e3050fcdd2a8468281 Mon Sep 17 00:00:00 2001 From: Andrew Opalach Date: Wed, 10 Apr 2019 15:14:00 -0400 Subject: add opengl fronend, remove sdl frontend, refactor build system --- .../CEdev/examples/second_counter/makefile | 15 +++++++ .../CEdev/examples/second_counter/readme.md | 10 +++++ .../CEdev/examples/second_counter/screenshot.gif | Bin 0 -> 5999 bytes .../CEdev/examples/second_counter/src/main.c | 43 +++++++++++++++++++++ 4 files changed, 68 insertions(+) create mode 100644 frontends/calculator/CEdev/examples/second_counter/makefile create mode 100644 frontends/calculator/CEdev/examples/second_counter/readme.md create mode 100644 frontends/calculator/CEdev/examples/second_counter/screenshot.gif create mode 100644 frontends/calculator/CEdev/examples/second_counter/src/main.c (limited to 'frontends/calculator/CEdev/examples/second_counter') diff --git a/frontends/calculator/CEdev/examples/second_counter/makefile b/frontends/calculator/CEdev/examples/second_counter/makefile new file mode 100644 index 0000000..1f1b36b --- /dev/null +++ b/frontends/calculator/CEdev/examples/second_counter/makefile @@ -0,0 +1,15 @@ +# ---------------------------- +# Set NAME to the program name +# Set ICON to the png icon file name +# Set DESCRIPTION to display within a compatible shell +# Set COMPRESSED to "YES" to create a compressed program +# ---------------------------- + +NAME ?= DEMO +COMPRESSED ?= NO +ICON ?= iconc.png +DESCRIPTION ?= "C SDK Demo" + +# ---------------------------- + +include $(CEDEV)/include/.makefile diff --git a/frontends/calculator/CEdev/examples/second_counter/readme.md b/frontends/calculator/CEdev/examples/second_counter/readme.md new file mode 100644 index 0000000..9211916 --- /dev/null +++ b/frontends/calculator/CEdev/examples/second_counter/readme.md @@ -0,0 +1,10 @@ +### Second Counter Demo + +This demo demonstrates using the hardware timers, and makes a simple second counter + +![Screenshot](screenshot.gif) + +--- + +This demo is a part of the C SDK Toolchain for use on the CE. + diff --git a/frontends/calculator/CEdev/examples/second_counter/screenshot.gif b/frontends/calculator/CEdev/examples/second_counter/screenshot.gif new file mode 100644 index 0000000..7175ab5 Binary files /dev/null and b/frontends/calculator/CEdev/examples/second_counter/screenshot.gif differ diff --git a/frontends/calculator/CEdev/examples/second_counter/src/main.c b/frontends/calculator/CEdev/examples/second_counter/src/main.c new file mode 100644 index 0000000..8a4ebc5 --- /dev/null +++ b/frontends/calculator/CEdev/examples/second_counter/src/main.c @@ -0,0 +1,43 @@ +#include +#include +#include +#include + +#include +#include +#include + +#define ONE_SECOND 32768/1 +#define HALF_SECOND 32768/2 +#define QUARTER_SECOND 32768/4 + +/* Put all your code here */ +void main(void) { + unsigned seconds = 0; + char str[10]; + + /* Clear the homescreen */ + os_ClrHome(); + + /* Disable the timer so it doesn't run when we don't want it to be running */ + timer_Control = TIMER1_DISABLE; + + /* By using the 32768 kHz clock, we can count for exactly 1 second here, or a different interval of time */ + timer_1_ReloadValue = timer_1_Counter = ONE_SECOND; + + /* Enable the timer, set it to the 32768 kHz clock, enable an interrupt once it reaches 0, and make it count down */ + timer_Control = TIMER1_ENABLE | TIMER1_32K | TIMER1_0INT | TIMER1_DOWN; + + do { + /* If the timer is reloaded, we reached 0 */ + if (timer_IntStatus & TIMER1_RELOADED) { + /* Print a string */ + sprintf(str, "%u", seconds++); + os_SetCursorPos(0, 0); + os_PutStrFull(str); + + /* Acknowledge the reload */ + timer_IntAcknowledge = TIMER1_RELOADED; + } + } while (!os_GetCSC()); +} -- cgit v1.2.3-101-g0448