Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp@0:083d13fe8ca2, 2010-12-03 (annotated)
- Committer:
- richardvahrman
- Date:
- Fri Dec 03 12:37:10 2010 +0000
- Revision:
- 0:083d13fe8ca2
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| richardvahrman | 0:083d13fe8ca2 | 1 | // My first program: intial stage in creating a smart doorbell system. |
| richardvahrman | 0:083d13fe8ca2 | 2 | |
| richardvahrman | 0:083d13fe8ca2 | 3 | #include "mbed.h" |
| richardvahrman | 0:083d13fe8ca2 | 4 | |
| richardvahrman | 0:083d13fe8ca2 | 5 | // LED1 = P1.18 LED2 = P1.20 LED3 = P1.21 LED4 = P1.23 |
| richardvahrman | 0:083d13fe8ca2 | 6 | #define LED_MASK 0x00B40000 |
| richardvahrman | 0:083d13fe8ca2 | 7 | int mymask[] = { 0x00040000, 0x00100000, 0x00200000 }; |
| richardvahrman | 0:083d13fe8ca2 | 8 | int hook = 0x00800000; |
| richardvahrman | 0:083d13fe8ca2 | 9 | PortOut ledport(Port1, LED_MASK); |
| richardvahrman | 0:083d13fe8ca2 | 10 | |
| richardvahrman | 0:083d13fe8ca2 | 11 | Serial pc(USBTX, USBRX); // tx, rx |
| richardvahrman | 0:083d13fe8ca2 | 12 | |
| richardvahrman | 0:083d13fe8ca2 | 13 | PortIn p(Port2, 0x00000007); // p24-p26 or 21 to 23 |
| richardvahrman | 0:083d13fe8ca2 | 14 | int bellmask[] = { 3, 5, 6 }; |
| richardvahrman | 0:083d13fe8ca2 | 15 | |
| richardvahrman | 0:083d13fe8ca2 | 16 | int main() { |
| richardvahrman | 0:083d13fe8ca2 | 17 | while(1) { |
| richardvahrman | 0:083d13fe8ca2 | 18 | int pins = p.read(); |
| richardvahrman | 0:083d13fe8ca2 | 19 | if (pins != 7) { |
| richardvahrman | 0:083d13fe8ca2 | 20 | ledport = hook; |
| richardvahrman | 0:083d13fe8ca2 | 21 | wait(1.0); |
| richardvahrman | 0:083d13fe8ca2 | 22 | for (int i = 0; i < 3; i++) { |
| richardvahrman | 0:083d13fe8ca2 | 23 | if (pins == bellmask[i]) { |
| richardvahrman | 0:083d13fe8ca2 | 24 | pc.printf("pins = %d\n",pins); |
| richardvahrman | 0:083d13fe8ca2 | 25 | ledport = mymask[i] + hook; |
| richardvahrman | 0:083d13fe8ca2 | 26 | wait(0.5); |
| richardvahrman | 0:083d13fe8ca2 | 27 | ledport = hook; |
| richardvahrman | 0:083d13fe8ca2 | 28 | wait(10.0); |
| richardvahrman | 0:083d13fe8ca2 | 29 | ledport = 0; |
| richardvahrman | 0:083d13fe8ca2 | 30 | } |
| richardvahrman | 0:083d13fe8ca2 | 31 | } |
| richardvahrman | 0:083d13fe8ca2 | 32 | } |
| richardvahrman | 0:083d13fe8ca2 | 33 | } |
| richardvahrman | 0:083d13fe8ca2 | 34 | } |