Seongbin Lim
/
sb_first_project
This is a very simple guide, reviewing the steps required to get Blinky working on an Mbed OS platform.
main.cpp@128:29911670c7fd, 2020-04-24 (annotated)
- Committer:
- sb8718
- Date:
- Fri Apr 24 14:54:41 2020 +0000
- Revision:
- 128:29911670c7fd
- Parent:
- 127:97812e869152
- Child:
- 129:53f2df333d65
Lab5_3 Handong Logo Song
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
sb8718 | 109:5274dd9bebe1 | 1 | #include "mbed.h" |
sb8718 | 126:a89a400ec689 | 2 | |
sb8718 | 127:97812e869152 | 3 | PwmOut buzzer(PB_3); |
sb8718 | 117:cc2a98cdd8fa | 4 | |
sb8718 | 128:29911670c7fd | 5 | |
sb8718 | 128:29911670c7fd | 6 | void Bell(float freq) { |
sb8718 | 128:29911670c7fd | 7 | |
sb8718 | 128:29911670c7fd | 8 | buzzer = 1.0 - 0.05; |
sb8718 | 128:29911670c7fd | 9 | |
sb8718 | 128:29911670c7fd | 10 | int period_us; |
sb8718 | 128:29911670c7fd | 11 | period_us = 1000000/freq; |
sb8718 | 128:29911670c7fd | 12 | |
sb8718 | 128:29911670c7fd | 13 | buzzer.period_us(period_us); |
sb8718 | 128:29911670c7fd | 14 | } |
sb8718 | 126:a89a400ec689 | 15 | |
sb8718 | 128:29911670c7fd | 16 | void M_D0(float bt) { |
sb8718 | 128:29911670c7fd | 17 | Bell(587.33); |
sb8718 | 128:29911670c7fd | 18 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 19 | } |
sb8718 | 128:29911670c7fd | 20 | void E0(float bt) { |
sb8718 | 128:29911670c7fd | 21 | Bell(659.26); |
sb8718 | 128:29911670c7fd | 22 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 23 | } |
sb8718 | 128:29911670c7fd | 24 | void F0(float bt) { |
sb8718 | 128:29911670c7fd | 25 | Bell(698.46); |
sb8718 | 128:29911670c7fd | 26 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 27 | } |
sb8718 | 128:29911670c7fd | 28 | void G0(float bt) { |
sb8718 | 128:29911670c7fd | 29 | Bell(783.99); |
sb8718 | 128:29911670c7fd | 30 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 31 | } |
sb8718 | 128:29911670c7fd | 32 | void M_A0(float bt) { |
sb8718 | 128:29911670c7fd | 33 | Bell(880.0); |
sb8718 | 128:29911670c7fd | 34 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 35 | } |
sb8718 | 128:29911670c7fd | 36 | void B0(float bt) { |
sb8718 | 128:29911670c7fd | 37 | Bell(987.77); |
sb8718 | 128:29911670c7fd | 38 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 39 | } |
sb8718 | 128:29911670c7fd | 40 | void C1(float bt) { |
sb8718 | 128:29911670c7fd | 41 | Bell(1046.5); |
sb8718 | 128:29911670c7fd | 42 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 43 | } |
sb8718 | 128:29911670c7fd | 44 | void M_D1(float bt) { |
sb8718 | 128:29911670c7fd | 45 | Bell(1174.66); |
sb8718 | 128:29911670c7fd | 46 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 47 | } |
sb8718 | 128:29911670c7fd | 48 | void E1(float bt) { |
sb8718 | 128:29911670c7fd | 49 | Bell(1318.51); |
sb8718 | 128:29911670c7fd | 50 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 51 | } |
sb8718 | 128:29911670c7fd | 52 | void B(float bt) { |
sb8718 | 128:29911670c7fd | 53 | ThisThread::sleep_for(bt*440.0); |
sb8718 | 128:29911670c7fd | 54 | } |
sb8718 | 120:a1dd83d9c036 | 55 | |
sb8718 | 118:88f30fadf08f | 56 | int main() { |
sb8718 | 127:97812e869152 | 57 | while(true) { |
sb8718 | 128:29911670c7fd | 58 | B(0.5); |
sb8718 | 128:29911670c7fd | 59 | E0(0.5); |
sb8718 | 128:29911670c7fd | 60 | E0(0.5); |
sb8718 | 128:29911670c7fd | 61 | F0(0.5); |
sb8718 | 128:29911670c7fd | 62 | G0(1.0); |
sb8718 | 128:29911670c7fd | 63 | M_A0(0.5); |
sb8718 | 128:29911670c7fd | 64 | B0(0.5); |
sb8718 | 128:29911670c7fd | 65 | //--- |
sb8718 | 128:29911670c7fd | 66 | M_D1(0.5); |
sb8718 | 128:29911670c7fd | 67 | C1(0.5); |
sb8718 | 128:29911670c7fd | 68 | C1(0.75); |
sb8718 | 128:29911670c7fd | 69 | B0(0.25); |
sb8718 | 128:29911670c7fd | 70 | C1(0.5); |
sb8718 | 128:29911670c7fd | 71 | G0(1.0); |
sb8718 | 128:29911670c7fd | 72 | G0(0.25); |
sb8718 | 128:29911670c7fd | 73 | G0(0.25); |
sb8718 | 128:29911670c7fd | 74 | // --- |
sb8718 | 128:29911670c7fd | 75 | G0(1.0); |
sb8718 | 128:29911670c7fd | 76 | M_A0(0.5); |
sb8718 | 128:29911670c7fd | 77 | M_A0(2.5); |
sb8718 | 128:29911670c7fd | 78 | // --- |
sb8718 | 128:29911670c7fd | 79 | G0(0.5); |
sb8718 | 128:29911670c7fd | 80 | F0(0.5); |
sb8718 | 128:29911670c7fd | 81 | E0(0.5); |
sb8718 | 128:29911670c7fd | 82 | M_D0(2.5); |
sb8718 | 128:29911670c7fd | 83 | // --- |
sb8718 | 128:29911670c7fd | 84 | B(0.5); |
sb8718 | 128:29911670c7fd | 85 | E0(0.5); |
sb8718 | 128:29911670c7fd | 86 | E0(0.5); |
sb8718 | 128:29911670c7fd | 87 | F0(0.5); |
sb8718 | 128:29911670c7fd | 88 | G0(0.5); |
sb8718 | 128:29911670c7fd | 89 | G0(0.5); |
sb8718 | 128:29911670c7fd | 90 | M_A0(0.5); |
sb8718 | 128:29911670c7fd | 91 | B0(0.5); |
sb8718 | 128:29911670c7fd | 92 | // --- |
sb8718 | 128:29911670c7fd | 93 | M_D1(0.5); |
sb8718 | 128:29911670c7fd | 94 | C1(0.5); |
sb8718 | 128:29911670c7fd | 95 | M_D1(0.5); |
sb8718 | 128:29911670c7fd | 96 | E1(2.5); |
sb8718 | 128:29911670c7fd | 97 | // --- |
sb8718 | 128:29911670c7fd | 98 | B(2.0); |
sb8718 | 128:29911670c7fd | 99 | // ---- |
sb8718 | 128:29911670c7fd | 100 | B(0.5); |
sb8718 | 128:29911670c7fd | 101 | M_D1(1.0); |
sb8718 | 128:29911670c7fd | 102 | M_A0(0.5); |
sb8718 | 128:29911670c7fd | 103 | C1(1.0); |
sb8718 | 128:29911670c7fd | 104 | B0(1.0); |
sb8718 | 128:29911670c7fd | 105 | // --- |
sb8718 | 128:29911670c7fd | 106 | C1(3.0); |
sb8718 | 128:29911670c7fd | 107 | B(4.0); |
sb8718 | 118:88f30fadf08f | 108 | } |
sb8718 | 128:29911670c7fd | 109 | } |
sb8718 | 128:29911670c7fd | 110 | |
sb8718 | 128:29911670c7fd | 111 |