Ram Gandikota
/
metronome
FRDM K64F Metronome
utils.hpp@0:a2cb7295a1f7, 2017-05-14 (annotated)
- Committer:
- ram54288
- Date:
- Sun May 14 18:35:07 2017 +0000
- Revision:
- 0:a2cb7295a1f7
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
ram54288 | 0:a2cb7295a1f7 | 1 | #pragma once |
ram54288 | 0:a2cb7295a1f7 | 2 | |
ram54288 | 0:a2cb7295a1f7 | 3 | #include "mbed.h" |
ram54288 | 0:a2cb7295a1f7 | 4 | #include "mbedtls/entropy_poll.h" |
ram54288 | 0:a2cb7295a1f7 | 5 | |
ram54288 | 0:a2cb7295a1f7 | 6 | namespace utils |
ram54288 | 0:a2cb7295a1f7 | 7 | { |
ram54288 | 0:a2cb7295a1f7 | 8 | unsigned entropy_seed() |
ram54288 | 0:a2cb7295a1f7 | 9 | { |
ram54288 | 0:a2cb7295a1f7 | 10 | unsigned seed; |
ram54288 | 0:a2cb7295a1f7 | 11 | size_t length; |
ram54288 | 0:a2cb7295a1f7 | 12 | |
ram54288 | 0:a2cb7295a1f7 | 13 | unsigned char* seed_bytes = reinterpret_cast<unsigned char*>(&seed); |
ram54288 | 0:a2cb7295a1f7 | 14 | mbedtls_hardware_poll(NULL, seed_bytes, sizeof(unsigned), &length); |
ram54288 | 0:a2cb7295a1f7 | 15 | |
ram54288 | 0:a2cb7295a1f7 | 16 | return seed; |
ram54288 | 0:a2cb7295a1f7 | 17 | } |
ram54288 | 0:a2cb7295a1f7 | 18 | |
ram54288 | 0:a2cb7295a1f7 | 19 | // Default time of 0.2 seconds is fine for this lab |
ram54288 | 0:a2cb7295a1f7 | 20 | void pulse(DigitalOut& led, float t = 0.2f) |
ram54288 | 0:a2cb7295a1f7 | 21 | { |
ram54288 | 0:a2cb7295a1f7 | 22 | led = false; |
ram54288 | 0:a2cb7295a1f7 | 23 | wait(t); |
ram54288 | 0:a2cb7295a1f7 | 24 | led = true; |
ram54288 | 0:a2cb7295a1f7 | 25 | } |
ram54288 | 0:a2cb7295a1f7 | 26 | } |