Handreichung TI3

Committer:
jack1930
Date:
Tue Apr 28 15:49:58 2020 +0000
Revision:
0:7bd60de6afc1
V1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jack1930 0:7bd60de6afc1 1 /* mbed Microcontroller Library
jack1930 0:7bd60de6afc1 2 * Copyright (c) 2019 ARM Limited
jack1930 0:7bd60de6afc1 3 * SPDX-License-Identifier: Apache-2.0
jack1930 0:7bd60de6afc1 4 */
jack1930 0:7bd60de6afc1 5
jack1930 0:7bd60de6afc1 6 #include "mbed.h"
jack1930 0:7bd60de6afc1 7 #include "platform/mbed_thread.h"
jack1930 0:7bd60de6afc1 8
jack1930 0:7bd60de6afc1 9
jack1930 0:7bd60de6afc1 10 // Blinking rate in milliseconds
jack1930 0:7bd60de6afc1 11 #define BLINKING_RATE_MS 500
jack1930 0:7bd60de6afc1 12
jack1930 0:7bd60de6afc1 13 bool angefordert=false;
jack1930 0:7bd60de6afc1 14
jack1930 0:7bd60de6afc1 15 char phasen[10]= {
jack1930 0:7bd60de6afc1 16 0b01001001, //0 rot - rot - rot
jack1930 0:7bd60de6afc1 17 0b01001101, //1 rot - rot - rotgelb
jack1930 0:7bd60de6afc1 18 0b01001010, //2 rot - rot - grün
jack1930 0:7bd60de6afc1 19 0b01001100, //3 rot - rot - gelb
jack1930 0:7bd60de6afc1 20 0b01001001, //4 rot - rot - rot
jack1930 0:7bd60de6afc1 21 0b01101001, //5 rot - rotgelb - rot
jack1930 0:7bd60de6afc1 22 0b01010001, //6 rot - grün - rot
jack1930 0:7bd60de6afc1 23 0b01100001, //7 rot - gleb - rot
jack1930 0:7bd60de6afc1 24 0b01001001, //8 rot - rot - rot
jack1930 0:7bd60de6afc1 25 0b10001001}; //9 grün - rot - rot
jack1930 0:7bd60de6afc1 26
jack1930 0:7bd60de6afc1 27 void anfordern(void)
jack1930 0:7bd60de6afc1 28 {
jack1930 0:7bd60de6afc1 29 angefordert=true;
jack1930 0:7bd60de6afc1 30 }
jack1930 0:7bd60de6afc1 31
jack1930 0:7bd60de6afc1 32 int main()
jack1930 0:7bd60de6afc1 33 {
jack1930 0:7bd60de6afc1 34 // Initialise the digital pin LED1 as an output
jack1930 0:7bd60de6afc1 35 int z=0;
jack1930 0:7bd60de6afc1 36 InterruptIn anforderung(PA_1);
jack1930 0:7bd60de6afc1 37 anforderung.mode(PullDown);
jack1930 0:7bd60de6afc1 38 PortOut ampel(PortC,0xFF);
jack1930 0:7bd60de6afc1 39 anforderung.rise(&anfordern);
jack1930 0:7bd60de6afc1 40
jack1930 0:7bd60de6afc1 41 while (true) {
jack1930 0:7bd60de6afc1 42 ampel=phasen[z];
jack1930 0:7bd60de6afc1 43 thread_sleep_for(BLINKING_RATE_MS);
jack1930 0:7bd60de6afc1 44 if ((z==0||z==4||z==8)&&angefordert)
jack1930 0:7bd60de6afc1 45 {
jack1930 0:7bd60de6afc1 46 ampel=phasen[9];
jack1930 0:7bd60de6afc1 47 thread_sleep_for(BLINKING_RATE_MS);
jack1930 0:7bd60de6afc1 48 angefordert=false;
jack1930 0:7bd60de6afc1 49 }
jack1930 0:7bd60de6afc1 50 z++;
jack1930 0:7bd60de6afc1 51 if (z>8) z=0;
jack1930 0:7bd60de6afc1 52
jack1930 0:7bd60de6afc1 53 }
jack1930 0:7bd60de6afc1 54 }