Testbespiel 1

Dependencies:   mbed

Committer:
Bulme2
Date:
Wed Jan 16 10:53:26 2019 +0000
Revision:
0:9718a8784c1b
1/2019

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Bulme2 0:9718a8784c1b 1 #include "mbed.h"
Bulme2 0:9718a8784c1b 2 #include "C12832.h"
Bulme2 0:9718a8784c1b 3
Bulme2 0:9718a8784c1b 4 #define NORD 0
Bulme2 0:9718a8784c1b 5 #define OST 1
Bulme2 0:9718a8784c1b 6 #define WEST 2
Bulme2 0:9718a8784c1b 7 #define SUED 3
Bulme2 0:9718a8784c1b 8 #define FIRE 4
Bulme2 0:9718a8784c1b 9
Bulme2 0:9718a8784c1b 10 C12832 lcd1(p5, p7, p6, p8, p11);
Bulme2 0:9718a8784c1b 11 Ticker lcdram;
Bulme2 0:9718a8784c1b 12
Bulme2 0:9718a8784c1b 13 InterruptIn nord(p15);
Bulme2 0:9718a8784c1b 14 InterruptIn ost(p16);
Bulme2 0:9718a8784c1b 15 InterruptIn west(p13);
Bulme2 0:9718a8784c1b 16 InterruptIn sued(p12);
Bulme2 0:9718a8784c1b 17 InterruptIn fire(p14);
Bulme2 0:9718a8784c1b 18
Bulme2 0:9718a8784c1b 19 int display = NORD;
Bulme2 0:9718a8784c1b 20 char buffer[6];
Bulme2 0:9718a8784c1b 21
Bulme2 0:9718a8784c1b 22 void show()
Bulme2 0:9718a8784c1b 23 {
Bulme2 0:9718a8784c1b 24 lcd1.cls();
Bulme2 0:9718a8784c1b 25 switch(display)
Bulme2 0:9718a8784c1b 26 {
Bulme2 0:9718a8784c1b 27 case NORD:
Bulme2 0:9718a8784c1b 28 sprintf(buffer, "NORD 0");
Bulme2 0:9718a8784c1b 29 break;
Bulme2 0:9718a8784c1b 30 case OST:
Bulme2 0:9718a8784c1b 31 sprintf(buffer, "OST 1");
Bulme2 0:9718a8784c1b 32 break;
Bulme2 0:9718a8784c1b 33 case WEST:
Bulme2 0:9718a8784c1b 34 sprintf(buffer, "WEST 2");
Bulme2 0:9718a8784c1b 35 break;
Bulme2 0:9718a8784c1b 36 case SUED:
Bulme2 0:9718a8784c1b 37 sprintf(buffer, "SUED 3");
Bulme2 0:9718a8784c1b 38 break;
Bulme2 0:9718a8784c1b 39 default:
Bulme2 0:9718a8784c1b 40 sprintf(buffer, "FIRE 4");
Bulme2 0:9718a8784c1b 41 break;
Bulme2 0:9718a8784c1b 42 }
Bulme2 0:9718a8784c1b 43 lcd1.text(8,5,buffer,6,3);
Bulme2 0:9718a8784c1b 44 lcd1.rectangle(0,127,0,31);
Bulme2 0:9718a8784c1b 45 }
Bulme2 0:9718a8784c1b 46
Bulme2 0:9718a8784c1b 47
Bulme2 0:9718a8784c1b 48 void isrnord()
Bulme2 0:9718a8784c1b 49 {
Bulme2 0:9718a8784c1b 50 display = NORD;
Bulme2 0:9718a8784c1b 51 show();
Bulme2 0:9718a8784c1b 52 }
Bulme2 0:9718a8784c1b 53
Bulme2 0:9718a8784c1b 54 void isrost()
Bulme2 0:9718a8784c1b 55 {
Bulme2 0:9718a8784c1b 56 display = OST;
Bulme2 0:9718a8784c1b 57 show();
Bulme2 0:9718a8784c1b 58 }
Bulme2 0:9718a8784c1b 59
Bulme2 0:9718a8784c1b 60 void isrwest()
Bulme2 0:9718a8784c1b 61 {
Bulme2 0:9718a8784c1b 62 display = WEST;
Bulme2 0:9718a8784c1b 63 show();
Bulme2 0:9718a8784c1b 64 }
Bulme2 0:9718a8784c1b 65
Bulme2 0:9718a8784c1b 66 void isrsued()
Bulme2 0:9718a8784c1b 67 {
Bulme2 0:9718a8784c1b 68 display = SUED;
Bulme2 0:9718a8784c1b 69 show();
Bulme2 0:9718a8784c1b 70 }
Bulme2 0:9718a8784c1b 71
Bulme2 0:9718a8784c1b 72 void isrfire()
Bulme2 0:9718a8784c1b 73 {
Bulme2 0:9718a8784c1b 74 display = FIRE;
Bulme2 0:9718a8784c1b 75 show();
Bulme2 0:9718a8784c1b 76 }
Bulme2 0:9718a8784c1b 77
Bulme2 0:9718a8784c1b 78 void update()
Bulme2 0:9718a8784c1b 79 {
Bulme2 0:9718a8784c1b 80 lcd1.copy_to_lcd();
Bulme2 0:9718a8784c1b 81 }
Bulme2 0:9718a8784c1b 82
Bulme2 0:9718a8784c1b 83
Bulme2 0:9718a8784c1b 84
Bulme2 0:9718a8784c1b 85 int main()
Bulme2 0:9718a8784c1b 86 {
Bulme2 0:9718a8784c1b 87 lcdram.attach(&update,0.1);
Bulme2 0:9718a8784c1b 88
Bulme2 0:9718a8784c1b 89 nord.rise(&isrnord);
Bulme2 0:9718a8784c1b 90 ost.rise(&isrost);
Bulme2 0:9718a8784c1b 91 west.rise(&isrwest);
Bulme2 0:9718a8784c1b 92 sued.rise(&isrsued);
Bulme2 0:9718a8784c1b 93 fire.rise(&isrfire);
Bulme2 0:9718a8784c1b 94
Bulme2 0:9718a8784c1b 95 lcd1.cls();
Bulme2 0:9718a8784c1b 96
Bulme2 0:9718a8784c1b 97
Bulme2 0:9718a8784c1b 98 while(1)
Bulme2 0:9718a8784c1b 99 {
Bulme2 0:9718a8784c1b 100
Bulme2 0:9718a8784c1b 101 }
Bulme2 0:9718a8784c1b 102 }