Signal Generator

Dependencies:   IniManager RA8875 Watchdog mbed-rtos mbed

Fork of speaker_demo_Analog by jim hamblen

Committer:
WiredHome
Date:
Mon Jan 16 04:33:06 2017 +0000
Revision:
3:d22f3e52d06a
Parent:
2:8f71b71fce1b
Child:
4:10281ddb673d
Added button for Start/Stop/Pulse

Who changed what in which revision?

UserRevisionLine numberNew contents of line
WiredHome 1:dd07e1deec6c 1
4180_1 0:1c8118ee4106 2 #include "mbed.h"
WiredHome 1:dd07e1deec6c 3 #include "RA8875.h"
WiredHome 1:dd07e1deec6c 4 #include "Watchdog.h" // ver 2
WiredHome 3:d22f3e52d06a 5 //#include "IniManager.h" // v19
WiredHome 1:dd07e1deec6c 6
WiredHome 2:8f71b71fce1b 7 #include "SignalGenDisplay.h"
WiredHome 2:8f71b71fce1b 8 #include "SignalGenDAC.h"
WiredHome 2:8f71b71fce1b 9
WiredHome 1:dd07e1deec6c 10 RA8875 lcd(p5,p6,p7,p12, NC, "tft"); // SPI:{MOSI,MISO,SCK,/ChipSelect,/reset}, name
WiredHome 3:d22f3e52d06a 11 //INI ini;
WiredHome 1:dd07e1deec6c 12
WiredHome 1:dd07e1deec6c 13 RawSerial pc(USBTX, USBRX);
WiredHome 1:dd07e1deec6c 14 LocalFileSystem local("local");
WiredHome 3:d22f3e52d06a 15 SignalGenDAC g_signal(p18);
WiredHome 3:d22f3e52d06a 16 SignalGenDisplay ui(&lcd, &g_signal);
WiredHome 3:d22f3e52d06a 17
WiredHome 1:dd07e1deec6c 18 Watchdog wd;
WiredHome 1:dd07e1deec6c 19
WiredHome 1:dd07e1deec6c 20 /* CPU Available indicator
WiredHome 1:dd07e1deec6c 21 */
WiredHome 1:dd07e1deec6c 22 DigitalOut g_availableLed(LED1); //<! Led used to indicate the program is alive
WiredHome 1:dd07e1deec6c 23 void AvailableLedIndicator(); //<! Ticker callback
WiredHome 1:dd07e1deec6c 24 Ticker g_available;
4180_1 0:1c8118ee4106 25
WiredHome 1:dd07e1deec6c 26
WiredHome 1:dd07e1deec6c 27
WiredHome 1:dd07e1deec6c 28
WiredHome 1:dd07e1deec6c 29
WiredHome 1:dd07e1deec6c 30 /* Program Entry Point
WiredHome 1:dd07e1deec6c 31 */
WiredHome 1:dd07e1deec6c 32 int main() {
WiredHome 1:dd07e1deec6c 33 pc.baud(460800);
WiredHome 1:dd07e1deec6c 34
WiredHome 1:dd07e1deec6c 35 if (wd.WatchdogCausedReset()) {
WiredHome 1:dd07e1deec6c 36 pc.printf("**** Watchdog Event caused reset ****\r\n");
WiredHome 1:dd07e1deec6c 37 }
WiredHome 3:d22f3e52d06a 38 wd.Configure(30.0);
WiredHome 3:d22f3e52d06a 39 //ini.SetFile("/local/SigGen.ini", 2);
WiredHome 1:dd07e1deec6c 40
WiredHome 1:dd07e1deec6c 41 lcd.init(480,272,16, true, true, true);
WiredHome 3:d22f3e52d06a 42 while (true)
WiredHome 1:dd07e1deec6c 43 {
WiredHome 3:d22f3e52d06a 44 wd.Service();
WiredHome 1:dd07e1deec6c 45 if (pc.readable()) {
WiredHome 1:dd07e1deec6c 46 int c = pc.getc();
WiredHome 1:dd07e1deec6c 47 ui.Poll(c);
WiredHome 1:dd07e1deec6c 48 } else {
WiredHome 1:dd07e1deec6c 49 ui.Poll();
WiredHome 1:dd07e1deec6c 50 }
WiredHome 1:dd07e1deec6c 51 } // End of 'while' statement
WiredHome 1:dd07e1deec6c 52 } // End of main program
WiredHome 1:dd07e1deec6c 53
WiredHome 2:8f71b71fce1b 54