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.
displayDriver.cpp@18:ef0569bea7e9, 2020-12-01 (annotated)
- Committer:
- bky
- Date:
- Tue Dec 01 12:27:22 2020 +0000
- Revision:
- 18:ef0569bea7e9
- Parent:
- 17:082d51603f20
Dobby is a free elf
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
bky | 18:ef0569bea7e9 | 1 | # include "mbed.h" |
bky | 18:ef0569bea7e9 | 2 | |
bky | 18:ef0569bea7e9 | 3 | DigitalOut a(p24); |
bky | 18:ef0569bea7e9 | 4 | DigitalOut b(p17); |
bky | 18:ef0569bea7e9 | 5 | DigitalOut c(p16); |
bky | 18:ef0569bea7e9 | 6 | DigitalOut d(p14); |
bky | 18:ef0569bea7e9 | 7 | DigitalOut e(p15); |
bky | 18:ef0569bea7e9 | 8 | DigitalOut f(p25); |
bky | 18:ef0569bea7e9 | 9 | DigitalOut g(p22); |
bky | 18:ef0569bea7e9 | 10 | DigitalOut dp(p23); |
bky | 18:ef0569bea7e9 | 11 | |
bky | 18:ef0569bea7e9 | 12 | DigitalOut cat1(p21); |
bky | 18:ef0569bea7e9 | 13 | DigitalOut cat2(p20); |
manavkoolz | 17:082d51603f20 | 14 | |
manavkoolz | 17:082d51603f20 | 15 | DigitalOut cat[] = {cat1, cat2}; |
manavkoolz | 17:082d51603f20 | 16 | DigitalOut display[] = {a, b, c, d, e, f, g}; |
manavkoolz | 17:082d51603f20 | 17 | |
manavkoolz | 17:082d51603f20 | 18 | const int digits[10][7] = { |
manavkoolz | 17:082d51603f20 | 19 | {1, 1, 1, 1, 1, 1, 0}, |
manavkoolz | 17:082d51603f20 | 20 | {0, 1, 1, 0, 0, 0, 0}, |
manavkoolz | 17:082d51603f20 | 21 | {1, 1, 0, 1, 1, 0, 1}, |
manavkoolz | 17:082d51603f20 | 22 | {1, 1, 1, 1, 0, 0, 1}, |
manavkoolz | 17:082d51603f20 | 23 | {0, 1, 1, 0, 0, 1, 1}, |
manavkoolz | 17:082d51603f20 | 24 | {1, 0, 1, 1, 0, 1, 1}, |
manavkoolz | 17:082d51603f20 | 25 | {1, 0, 1, 1, 1, 1, 1}, |
manavkoolz | 17:082d51603f20 | 26 | {1, 1, 1, 0, 0, 0, 0}, |
manavkoolz | 17:082d51603f20 | 27 | {1, 1, 1, 1, 1, 1, 1}, |
manavkoolz | 17:082d51603f20 | 28 | {1, 1, 1, 1, 0, 1, 1} |
manavkoolz | 17:082d51603f20 | 29 | }; |
manavkoolz | 17:082d51603f20 | 30 | |
manavkoolz | 17:082d51603f20 | 31 | void display_num(float num) { |
manavkoolz | 17:082d51603f20 | 32 | int dpi = 1; |
manavkoolz | 17:082d51603f20 | 33 | int numi = (int)(num); |
manavkoolz | 17:082d51603f20 | 34 | |
manavkoolz | 17:082d51603f20 | 35 | if (((int)num)/10 == 0) { |
manavkoolz | 17:082d51603f20 | 36 | dpi = 0; |
manavkoolz | 17:082d51603f20 | 37 | numi = (int)(num*10); |
manavkoolz | 17:082d51603f20 | 38 | } |
manavkoolz | 17:082d51603f20 | 39 | |
manavkoolz | 17:082d51603f20 | 40 | int disp_digits[] = {numi/10, numi%10}; |
manavkoolz | 17:082d51603f20 | 41 | |
bky | 18:ef0569bea7e9 | 42 | for (int d=0; d<2; d++) { |
bky | 18:ef0569bea7e9 | 43 | cat[d] = 1; |
bky | 18:ef0569bea7e9 | 44 | cat[(d+1)%2] = 0; |
bky | 18:ef0569bea7e9 | 45 | for (int seg=0; seg<7; seg++) { |
bky | 18:ef0569bea7e9 | 46 | display[seg] = digits[disp_digits[d]][seg]; |
manavkoolz | 17:082d51603f20 | 47 | } |
bky | 18:ef0569bea7e9 | 48 | for (int seg=0; seg<7; seg++) { |
bky | 18:ef0569bea7e9 | 49 | display[seg] = 0; |
bky | 18:ef0569bea7e9 | 50 | } |
bky | 18:ef0569bea7e9 | 51 | if (d == dpi) { |
bky | 18:ef0569bea7e9 | 52 | dp = 1; |
bky | 18:ef0569bea7e9 | 53 | dp = 0; |
bky | 18:ef0569bea7e9 | 54 | } |
bky | 18:ef0569bea7e9 | 55 | } |
manavkoolz | 17:082d51603f20 | 56 | } |