Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const byte font[] = { 0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0 };
- #define CK1 11
- #define CK2 12
- #define CK3 13
- int count = 0;
- void out7seg(byte data) {
- digitalWrite(4, 0b00000001&data); // a
- digitalWrite(5, 0b00000010&data); // b
- digitalWrite(6, 0b00000100&data); // c
- digitalWrite(7, 0b00001000&data); // d
- digitalWrite(8, 0b00010000&data); // e
- digitalWrite(9, 0b00100000&data); // f
- digitalWrite(10, 0b01000000&data); // g
- }
- void scan7Segment(int x) {
- while(x-=4) {
- for (int i=0;i<3;i++) {
- int n = count/(int)pow(10, i)%10;
- out7seg(font[n]);
- digitalWrite(CK1+i, 0);
- delay(1);
- digitalWrite(CK1+i, 1);
- }
- }
- }
- void setup() {
- pinMode(4, OUTPUT);
- pinMode(5, OUTPUT);
- pinMode(6, OUTPUT);
- pinMode(7, OUTPUT);
- pinMode(8, OUTPUT);
- pinMode(9, OUTPUT);
- pinMode(10, OUTPUT);
- pinMode(11, OUTPUT);
- pinMode(12, OUTPUT);
- pinMode(13, OUTPUT);
- digitalWrite(CK1, 1);
- digitalWrite(CK2, 1);
- digitalWrite(CK3, 1);
- }
- void loop() {
- scan7Segment(1000);
- count++;
- }
Add Comment
Please, Sign In to add comment