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,155 +8,237 @@
https://github.com/AlexanderEDavis/BitBox
*/
#include <Wire.h>
#include <SoftwareSerial.h>
#include "src/mechatronics_lib.h"
// TM1637 - Version: Latest
//#include <TM1637.h>
#include <Arduino.h>
// Include the library
#include <TM1637Display.h>
float denary = 0;
float value = 0;
// Define the connections pins
#define CLK 11
#define DIO 10
void _delay(float seconds) {
long endTime = millis() + seconds * 1000;
while(millis() < endTime) _loop();
}
// Create a display object of type TM1637Display
TM1637Display display = TM1637Display(CLK, DIO);
// 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() {
pinMode(1,INPUT);
pinMode(2,INPUT);
pinMode(3,INPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
pinMode(6,INPUT);
pinMode(7,INPUT);
pinMode(8,INPUT);
pinMode(9,INPUT);
pinMode(1, INPUT);
pinMode(2, INPUT);
pinMode(3, INPUT);
pinMode(4, INPUT);
pinMode(5, INPUT);
pinMode(6, INPUT);
pinMode(7, INPUT);
pinMode(8, INPUT);
pinMode(9, INPUT);
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);
}
while(1) {
if((digitalRead(1)) && (/)){
denary += -1;
// To be defined
}else{
if(digitalRead(1)){
denary += 1;
// To be defined
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) {
if ((digitalRead(1)) && (bit0 == false)) {
denary += 1;
bit0 = true;
}
/*if ((digitalRead(1) == LOW) && (bit0 == true)) {
denary += -1;
bit0 == false;
} else {
if ((digitalRead(1) == HIGH) && (bit0 == false)) {
denary += 1;
bit0 == true;
}
if((digitalRead(2)) && (/)){
}
if((digitalRead(2) == HIGH) && (bit1 == true)){
denary += -2;
// To be defined
bit1 == false;
}else{
if(digitalRead(2)){
if(digitalRead(2) == HIGH){
denary += 2;
// To be defined
bit1 == true;
}
}
if((digitalRead(3)) && (/)){
if((digitalRead(3)) && (bit2 == true)){
denary += -4;
// To be defined
bit2 == false;
}else{
if(digitalRead(3)){
denary += 4;
// To be defined
bit2 == true;
}
}
if((digitalRead(4)) && (/)){
if((digitalRead(4)) && (bit3 == true)){
denary += -8;
// To be defined
bit3 == false;
}else{
if(digitalRead(4)){
denary += 8;
// To be defined
bit3 == true;
}
}
if((digitalRead(5)) && (/)){
if((digitalRead(5)) && (bit4 == true)){
denary += -16;
// To be defined
bit4 == false;
}else{
if(digitalRead(5)){
denary += 16;
// To be defined
bit4 == true;
}
}
if((digitalRead(6)) && (/)){
if((digitalRead(6)) && (bit5 == true)){
denary += -32;
// To be defined
bit5 == false;
}else{
if(digitalRead(6)){
denary += 32;
// To be defined
bit5 == true;
}
}
if((digitalRead(7)) && (/)){
if((digitalRead(7)) && (bit6 == true)){
denary += -64;
// To be defined
bit6 == false;
}else{
if(digitalRead(7)){
denary += 64;
// To be defined
bit6 == true;
}
}
if((digitalRead(8)) && (/)){
if((digitalRead(8)) && (bit7 == true)){
denary += -128;
// To be defined
bit7 == false;
}else{
if(digitalRead(8)){
denary += 128;
// To be defined
bit7 == true;
}
}
if((digitalRead(9)) && (/)){
if((digitalRead(9)) && (bit8 == true)){
denary += -256;
// To be defined
bit8 == false;
}else{
if(digitalRead(9)){
denary += 256;
// To be defined
bit8 == true;
}
}
}*/
// Updates display if number chnaged
if (oldDenary == denary) {
oldDenary = denary;
display.showNumberDec(denary);
}
_loop();
}
}
void _loop() {
}
void loop() {
_loop();
}