![](/media/cache/img/default_profile.jpg.50x50_q85.jpg)
Random Number gen
main.cpp@0:a4501e0912a4, 2015-09-21 (annotated)
- Committer:
- destradafilm
- Date:
- Mon Sep 21 01:06:33 2015 +0000
- Revision:
- 0:a4501e0912a4
HW4.2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
destradafilm | 0:a4501e0912a4 | 1 | #include "mbed.h" |
destradafilm | 0:a4501e0912a4 | 2 | #include "SLCD.h" |
destradafilm | 0:a4501e0912a4 | 3 | |
destradafilm | 0:a4501e0912a4 | 4 | #define PROGNAME "DEstra-HW4_2 - Random Generator" |
destradafilm | 0:a4501e0912a4 | 5 | |
destradafilm | 0:a4501e0912a4 | 6 | #define DATATIME 250 // milliseconds |
destradafilm | 0:a4501e0912a4 | 7 | #define LASTDGDIV 10 |
destradafilm | 0:a4501e0912a4 | 8 | |
destradafilm | 0:a4501e0912a4 | 9 | SLCD slcd; |
destradafilm | 0:a4501e0912a4 | 10 | |
destradafilm | 0:a4501e0912a4 | 11 | AnalogIn analogRand(PTB0); |
destradafilm | 0:a4501e0912a4 | 12 | |
destradafilm | 0:a4501e0912a4 | 13 | DigitalOut Rled(LED_RED); |
destradafilm | 0:a4501e0912a4 | 14 | Serial pc(USBTX, USBRX); |
destradafilm | 0:a4501e0912a4 | 15 | |
destradafilm | 0:a4501e0912a4 | 16 | |
destradafilm | 0:a4501e0912a4 | 17 | int main(){ |
destradafilm | 0:a4501e0912a4 | 18 | float analogValue; |
destradafilm | 0:a4501e0912a4 | 19 | unsigned int analogBits; |
destradafilm | 0:a4501e0912a4 | 20 | unsigned int lastDigit; |
destradafilm | 0:a4501e0912a4 | 21 | |
destradafilm | 0:a4501e0912a4 | 22 | pc.printf(PROGNAME); |
destradafilm | 0:a4501e0912a4 | 23 | |
destradafilm | 0:a4501e0912a4 | 24 | while(true) { |
destradafilm | 0:a4501e0912a4 | 25 | analogValue = analogRand.read(); |
destradafilm | 0:a4501e0912a4 | 26 | analogBits = analogRand.read_u16(); |
destradafilm | 0:a4501e0912a4 | 27 | lastDigit = analogBits % LASTDGDIV; |
destradafilm | 0:a4501e0912a4 | 28 | Rled = !Rled; // toggle led |
destradafilm | 0:a4501e0912a4 | 29 | pc.printf("%0.5f, %d, %1d\n\r", analogValue, analogBits, lastDigit); |
destradafilm | 0:a4501e0912a4 | 30 | |
destradafilm | 0:a4501e0912a4 | 31 | // LCD // |
destradafilm | 0:a4501e0912a4 | 32 | slcd.Home(); |
destradafilm | 0:a4501e0912a4 | 33 | slcd.clear(); // wipe LCD number |
destradafilm | 0:a4501e0912a4 | 34 | slcd.printf("%1d", lastDigit); // print the lastDigit on LCD |
destradafilm | 0:a4501e0912a4 | 35 | |
destradafilm | 0:a4501e0912a4 | 36 | wait_ms(DATATIME); // 250 ms |
destradafilm | 0:a4501e0912a4 | 37 | } |
destradafilm | 0:a4501e0912a4 | 38 | } |