Maria Sokolowska MBED SOS Project

Dependencies:   mbed C12832

Committer:
malka123
Date:
Mon Jul 27 15:25:09 2020 +0000
Revision:
0:f890c080117d
Maria Sokolowska SOS MBED Project

Who changed what in which revision?

UserRevisionLine numberNew contents of line
malka123 0:f890c080117d 1 //In this program the user LED flashes as an SOS Morse code.
malka123 0:f890c080117d 2 //The SOS Morse code is "...---...". Here, a dot is represented
malka123 0:f890c080117d 3 //with the LED being ON for 0.25 second (Dash time. The delay
malka123 0:f890c080117d 4 //between the dots and dashes is set to 0.2 second (GAP time).
malka123 0:f890c080117d 5 //The process is repeated continously after 2 seconds of delay.
malka123 0:f890c080117d 6
malka123 0:f890c080117d 7 //Author: Maria Sokolowska
malka123 0:f890c080117d 8 //Date: July 2020
malka123 0:f890c080117d 9 //File: SOS
malka123 0:f890c080117d 10
malka123 0:f890c080117d 11 #include "mbed.h"
malka123 0:f890c080117d 12 #include "C12832.h"
malka123 0:f890c080117d 13
malka123 0:f890c080117d 14 PwmOut spkr(p26);
malka123 0:f890c080117d 15 DigitalOut LED(LED1);
malka123 0:f890c080117d 16 C12832 lcd(p5, p7, p6, p8, p11);
malka123 0:f890c080117d 17
malka123 0:f890c080117d 18 #define Dot 0.25 // Dot time
malka123 0:f890c080117d 19 #define Dash 1.0 // Dash time
malka123 0:f890c080117d 20 #define Gap 0.2 // Gap time
malka123 0:f890c080117d 21 #define ON 1 // ON=1
malka123 0:f890c080117d 22 #define OFF 0 // OFF=0
malka123 0:f890c080117d 23
malka123 0:f890c080117d 24 int main()
malka123 0:f890c080117d 25 {
malka123 0:f890c080117d 26 int i;
malka123 0:f890c080117d 27 while(1) { // Do Forever
malka123 0:f890c080117d 28 for(i = 0; i < 3; i++) { //Send 3 dots
malka123 0:f890c080117d 29 LED = ON; //LED ON
malka123 0:f890c080117d 30 wait(Dot); //Wait Dot time
malka123 0:f890c080117d 31 LED = OFF; //LED OFF
malka123 0:f890c080117d 32 wait(Gap); // Wait Gap time
malka123 0:f890c080117d 33 }
malka123 0:f890c080117d 34 wait(0.5); //0.5 second delay
malka123 0:f890c080117d 35
malka123 0:f890c080117d 36 for(i = 0; i < 3; i++) { //Send 3 dashes
malka123 0:f890c080117d 37 LED = ON; //LED ON
malka123 0:f890c080117d 38 wait(Dash); //Wait Dash time
malka123 0:f890c080117d 39 LED = OFF; //LED OFF
malka123 0:f890c080117d 40 wait(Gap); // Wait Gap time
malka123 0:f890c080117d 41 }
malka123 0:f890c080117d 42 for(i = 0; i < 3; i++) { //Send 3 dots
malka123 0:f890c080117d 43 LED = ON; //LED ON
malka123 0:f890c080117d 44 wait(Dot); //Wait Dot time
malka123 0:f890c080117d 45 LED = OFF; //LED OFF
malka123 0:f890c080117d 46 wait(Gap); // Wait Gap time
malka123 0:f890c080117d 47 }
malka123 0:f890c080117d 48 wait(0.5); //0.5 second delay
malka123 0:f890c080117d 49 {
malka123 0:f890c080117d 50 {for (float i=0; i<26; i=i+2) { // ambulance sound
malka123 0:f890c080117d 51 spkr.period(1.0/969.0);
malka123 0:f890c080117d 52 wait(.5);
malka123 0:f890c080117d 53 spkr.period(1.0/800.0);
malka123 0:f890c080117d 54 wait(.5);}
malka123 0:f890c080117d 55 }
malka123 0:f890c080117d 56 spkr=0.5;
malka123 0:f890c080117d 57
malka123 0:f890c080117d 58 wait(2.00); //Wait 2 second before repeating
malka123 0:f890c080117d 59 {
malka123 0:f890c080117d 60 lcd.printf("SOS Please Help SOS Please Help"); // LCD display
malka123 0:f890c080117d 61 }
malka123 0:f890c080117d 62 }
malka123 0:f890c080117d 63 }
malka123 0:f890c080117d 64 }
malka123 0:f890c080117d 65