Code for 7 segment display added.

Boot sequence turned into function for test button
This commit is contained in:
2021-12-24 22:56:48 +00:00
parent eae3ad4310
commit 00c3119d05

View File

@@ -8,19 +8,45 @@
https://github.com/AlexanderEDavis/BitBox https://github.com/AlexanderEDavis/BitBox
*/ */
#include <Wire.h> // TM1637 - Version: Latest
#include <SoftwareSerial.h> //#include <TM1637.h>
#include "src/mechatronics_lib.h"
#include <Arduino.h> // Include the library
#include <TM1637Display.h>
float denary = 0; // Define the connections pins
float value = 0; #define CLK 11
#define DIO 10
void _delay(float seconds) { // Create a display object of type TM1637Display
long endTime = millis() + seconds * 1000; TM1637Display display = TM1637Display(CLK, DIO);
while(millis() < endTime) _loop();
} // Create an array that turns all segments ON
const uint8_t allON[] = {0xff, 0xff, 0xff, 0xff};
// Create an array that turns all segments OFF
const uint8_t allOFF[] = {0x00, 0x00, 0x00, 0x00};
// Create an array that sets individual segments per digit to display the word "rdy"
const uint8_t rdy[] = {
false,
SEG_E | SEG_G, // r
SEG_B | SEG_C | SEG_D | SEG_E | SEG_G, // d
SEG_B | SEG_C | SEG_D | SEG_F | SEG_G, // y
};
// Defines the flags and variables used
int denary = 0;
int oldDenary = 0;
bool bit0 = false;
bool bit1 = false;
bool bit2 = false;
bool bit3 = false;
bool bit4 = false;
bool bit5 = false;
bool bit6 = false;
bool bit7 = false;
bool bit8 = false;
void setup() { void setup() {
pinMode(1, INPUT); pinMode(1, INPUT);
@@ -33,130 +59,186 @@ void setup() {
pinMode(8, INPUT); pinMode(8, INPUT);
pinMode(9, INPUT); pinMode(9, INPUT);
denary = 0; denary = 0;
value = 1;
while(!(value == 256.000000)){
// To be defined
value += value * 2;
} }
void boot() {
// Set the brightness to 5 (0=dimmest 7=brightest)
display.setBrightness(7);
// Set all segments ON
display.setSegments(allON);
delay(2000);
display.clear();
// Set bitFlags 0-8
int i;
for (i = 0; i < 9; i++) {
if (i == 0) {
bit0 = false;
}
if (i == 1) {
bit1 = false;
}
if (i == 2) {
bit2 = false;
}
if (i == 3) {
bit3 = false;
}
if (i == 4) {
bit4 = false;
}
if (i == 5) {
bit5 = false;
}
if (i == 6) {
bit6 = false;
}
if (i == 7) {
bit7 = false;
}
if (i == 8) {
bit8 = false;
}
display.showNumberDec(i);
delay(5);
}
delay(2000);
display.clear();
// Prints rdy
display.setSegments(rdy);
delay(2000);
display.showNumberDec(0);
}
/*
void updateDisplay() {
display.showNumberDec(denary);
}*/
void loop() {
// calls startup script
boot();
while (1) { while (1) {
if((digitalRead(1)) && (/)){ if ((digitalRead(1)) && (bit0 == false)) {
denary += -1;
// To be defined
}else{
if(digitalRead(1)){
denary += 1; denary += 1;
// To be defined bit0 = true;
} }
/*if ((digitalRead(1) == LOW) && (bit0 == true)) {
} denary += -1;
if((digitalRead(2)) && (/)){ bit0 == false;
denary += -2;
// To be defined
} else { } else {
if(digitalRead(2)){ if ((digitalRead(1) == HIGH) && (bit0 == false)) {
denary += 1;
bit0 == true;
}
}
if((digitalRead(2) == HIGH) && (bit1 == true)){
denary += -2;
bit1 == false;
}else{
if(digitalRead(2) == HIGH){
denary += 2; denary += 2;
// To be defined bit1 == true;
} }
} }
if((digitalRead(3)) && (/)){ if((digitalRead(3)) && (bit2 == true)){
denary += -4; denary += -4;
// To be defined bit2 == false;
}else{ }else{
if(digitalRead(3)){ if(digitalRead(3)){
denary += 4; denary += 4;
// To be defined bit2 == true;
} }
} }
if((digitalRead(4)) && (/)){ if((digitalRead(4)) && (bit3 == true)){
denary += -8; denary += -8;
// To be defined bit3 == false;
}else{ }else{
if(digitalRead(4)){ if(digitalRead(4)){
denary += 8; denary += 8;
// To be defined bit3 == true;
} }
} }
if((digitalRead(5)) && (/)){ if((digitalRead(5)) && (bit4 == true)){
denary += -16; denary += -16;
// To be defined bit4 == false;
}else{ }else{
if(digitalRead(5)){ if(digitalRead(5)){
denary += 16; denary += 16;
// To be defined bit4 == true;
} }
} }
if((digitalRead(6)) && (/)){ if((digitalRead(6)) && (bit5 == true)){
denary += -32; denary += -32;
// To be defined bit5 == false;
}else{ }else{
if(digitalRead(6)){ if(digitalRead(6)){
denary += 32; denary += 32;
// To be defined bit5 == true;
} }
} }
if((digitalRead(7)) && (/)){ if((digitalRead(7)) && (bit6 == true)){
denary += -64; denary += -64;
// To be defined bit6 == false;
}else{ }else{
if(digitalRead(7)){ if(digitalRead(7)){
denary += 64; denary += 64;
// To be defined bit6 == true;
} }
} }
if((digitalRead(8)) && (/)){ if((digitalRead(8)) && (bit7 == true)){
denary += -128; denary += -128;
// To be defined bit7 == false;
}else{ }else{
if(digitalRead(8)){ if(digitalRead(8)){
denary += 128; denary += 128;
// To be defined bit7 == true;
} }
} }
if((digitalRead(9)) && (/)){ if((digitalRead(9)) && (bit8 == true)){
denary += -256; denary += -256;
// To be defined bit8 == false;
}else{ }else{
if(digitalRead(9)){ if(digitalRead(9)){
denary += 256; denary += 256;
// To be defined bit8 == true;
} }
} }*/
// Updates display if number chnaged
_loop(); if (oldDenary == denary) {
oldDenary = denary;
display.showNumberDec(denary);
} }
} }
void _loop() {
}
void loop() {
_loop();
} }