Stefan Simbürger
/
RGB_LED
Übungen zur RGB-LED
main.cpp@0:7a7d5bc16807, 2020-01-11 (annotated)
- Committer:
- Ursukar
- Date:
- Sat Jan 11 10:23:29 2020 +0000
- Revision:
- 0:7a7d5bc16807
- Child:
- 1:1f8c1c63e73a
RGB-LED
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Ursukar | 0:7a7d5bc16807 | 1 | ////////////////////////////////////////////// |
Ursukar | 0:7a7d5bc16807 | 2 | // Übungen zur PWM // |
Ursukar | 0:7a7d5bc16807 | 3 | // NUCLEO-L432KC // |
Ursukar | 0:7a7d5bc16807 | 4 | // Stefan Simbürger // |
Ursukar | 0:7a7d5bc16807 | 5 | // 10.01.2020 // |
Ursukar | 0:7a7d5bc16807 | 6 | // Übungen zu PWM an einer RGB-LED // |
Ursukar | 0:7a7d5bc16807 | 7 | ////////////////////////////////////////////// |
Ursukar | 0:7a7d5bc16807 | 8 | |
Ursukar | 0:7a7d5bc16807 | 9 | #include "mbed.h" |
Ursukar | 0:7a7d5bc16807 | 10 | |
Ursukar | 0:7a7d5bc16807 | 11 | PwmOut ledR(D1); |
Ursukar | 0:7a7d5bc16807 | 12 | BusOut ledStrip(D12, D11, D10, D6, D5, D4, D3, D2); |
Ursukar | 0:7a7d5bc16807 | 13 | Ticker t1; |
Ursukar | 0:7a7d5bc16807 | 14 | Ticker t_ledStrip; |
Ursukar | 0:7a7d5bc16807 | 15 | |
Ursukar | 0:7a7d5bc16807 | 16 | void LedR(); |
Ursukar | 0:7a7d5bc16807 | 17 | void timeCounter(); |
Ursukar | 0:7a7d5bc16807 | 18 | |
Ursukar | 0:7a7d5bc16807 | 19 | int main() { |
Ursukar | 0:7a7d5bc16807 | 20 | ledR.period(0.01f); |
Ursukar | 0:7a7d5bc16807 | 21 | t1.attach(callback(&LedR), 0.0001f * 10000); |
Ursukar | 0:7a7d5bc16807 | 22 | t_ledStrip.attach(callback(&timeCounter), 0.0001f * 10000); |
Ursukar | 0:7a7d5bc16807 | 23 | |
Ursukar | 0:7a7d5bc16807 | 24 | } |
Ursukar | 0:7a7d5bc16807 | 25 | void LedR() |
Ursukar | 0:7a7d5bc16807 | 26 | { |
Ursukar | 0:7a7d5bc16807 | 27 | ledR.write(ledR.read() + 0.001f); |
Ursukar | 0:7a7d5bc16807 | 28 | if(ledR.read() >= 0.03f) |
Ursukar | 0:7a7d5bc16807 | 29 | { |
Ursukar | 0:7a7d5bc16807 | 30 | ledR.write(0.0f); |
Ursukar | 0:7a7d5bc16807 | 31 | } |
Ursukar | 0:7a7d5bc16807 | 32 | } |
Ursukar | 0:7a7d5bc16807 | 33 | void timeCounter() |
Ursukar | 0:7a7d5bc16807 | 34 | { |
Ursukar | 0:7a7d5bc16807 | 35 | if(ledStrip == 0x00 || ledR.read() == 0.0f) |
Ursukar | 0:7a7d5bc16807 | 36 | { |
Ursukar | 0:7a7d5bc16807 | 37 | ledStrip = 0x01; |
Ursukar | 0:7a7d5bc16807 | 38 | } |
Ursukar | 0:7a7d5bc16807 | 39 | else |
Ursukar | 0:7a7d5bc16807 | 40 | { |
Ursukar | 0:7a7d5bc16807 | 41 | ledStrip = ledStrip + 1; |
Ursukar | 0:7a7d5bc16807 | 42 | } |
Ursukar | 0:7a7d5bc16807 | 43 | |
Ursukar | 0:7a7d5bc16807 | 44 | } |