Code for a robotic pet to interact with.

Dependencies:   mbed wave_player Servo Motordriver mbed-rtos 4DGL-uLCD-SE SDFileSystem_OldbutworkswithRTOS HC_SR04_Ultrasonic_Library

Committer:
jprocter3
Date:
Tue Apr 16 21:48:06 2019 +0000
Revision:
0:7b070cdce8bd
Child:
1:a2a5171ac99f
Child:
2:672f7335a017
Initial Commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jprocter3 0:7b070cdce8bd 1 #include "mbed.h"
jprocter3 0:7b070cdce8bd 2 #include "rtos.h"
jprocter3 0:7b070cdce8bd 3 #include "uLCD_4DGL.h"
jprocter3 0:7b070cdce8bd 4 uLCD_4DGL uLCD(p28,p27,p29); // serial tx, serial rx, reset pin;
jprocter3 0:7b070cdce8bd 5 DigitalOut speaker(p18);
jprocter3 0:7b070cdce8bd 6
jprocter3 0:7b070cdce8bd 7 DigitalOut led1(LED1);
jprocter3 0:7b070cdce8bd 8 DigitalOut led2(LED2);
jprocter3 0:7b070cdce8bd 9 DigitalOut led3(LED3);
jprocter3 0:7b070cdce8bd 10 DigitalOut led4(LED4);
jprocter3 0:7b070cdce8bd 11
jprocter3 0:7b070cdce8bd 12 volatile unsigned int state;
jprocter3 0:7b070cdce8bd 13 volatile unsigned int energy;
jprocter3 0:7b070cdce8bd 14 volatile unsigned int touched;
jprocter3 0:7b070cdce8bd 15 volatile unsigned int fed;
jprocter3 0:7b070cdce8bd 16
jprocter3 0:7b070cdce8bd 17 void sonar(void const *argument) {
jprocter3 0:7b070cdce8bd 18
jprocter3 0:7b070cdce8bd 19 }
jprocter3 0:7b070cdce8bd 20
jprocter3 0:7b070cdce8bd 21 void touchpad(void const *argument) {
jprocter3 0:7b070cdce8bd 22
jprocter3 0:7b070cdce8bd 23 }
jprocter3 0:7b070cdce8bd 24
jprocter3 0:7b070cdce8bd 25 void screen(void const *argument) {
jprocter3 0:7b070cdce8bd 26
jprocter3 0:7b070cdce8bd 27 }
jprocter3 0:7b070cdce8bd 28
jprocter3 0:7b070cdce8bd 29 void sound(void const *argument) {
jprocter3 0:7b070cdce8bd 30
jprocter3 0:7b070cdce8bd 31 }
jprocter3 0:7b070cdce8bd 32
jprocter3 0:7b070cdce8bd 33 void wheels(void const *argument) {
jprocter3 0:7b070cdce8bd 34
jprocter3 0:7b070cdce8bd 35 }
jprocter3 0:7b070cdce8bd 36
jprocter3 0:7b070cdce8bd 37 int main() {
jprocter3 0:7b070cdce8bd 38 uLCD.cls();
jprocter3 0:7b070cdce8bd 39 uLCD.printf("Change baudrate.....");
jprocter3 0:7b070cdce8bd 40 uLCD.baudrate(3000000); //jack up baud rate to max
jprocter3 0:7b070cdce8bd 41 uLCD.background_color(BLACK);
jprocter3 0:7b070cdce8bd 42 uLCD.cls();
jprocter3 0:7b070cdce8bd 43
jprocter3 0:7b070cdce8bd 44 Thread thread1(sonar);
jprocter3 0:7b070cdce8bd 45 Thread thread2(touchpad);
jprocter3 0:7b070cdce8bd 46 Thread thread3(screen);
jprocter3 0:7b070cdce8bd 47 Thread thread4(sound);
jprocter3 0:7b070cdce8bd 48 Thread thread5(wheels);
jprocter3 0:7b070cdce8bd 49
jprocter3 0:7b070cdce8bd 50 while(1) {
jprocter3 0:7b070cdce8bd 51
jprocter3 0:7b070cdce8bd 52 }
jprocter3 0:7b070cdce8bd 53 }