You've already forked BitBox
Display
Code for 7 segment display added. Boot sequence turned into function for test button
This commit is contained in:
@@ -8,155 +8,237 @@
|
|||||||
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);
|
||||||
pinMode(2,INPUT);
|
pinMode(2, INPUT);
|
||||||
pinMode(3,INPUT);
|
pinMode(3, INPUT);
|
||||||
pinMode(4,INPUT);
|
pinMode(4, INPUT);
|
||||||
pinMode(5,INPUT);
|
pinMode(5, INPUT);
|
||||||
pinMode(6,INPUT);
|
pinMode(6, INPUT);
|
||||||
pinMode(7,INPUT);
|
pinMode(7, INPUT);
|
||||||
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);
|
||||||
}
|
}
|
||||||
while(1) {
|
|
||||||
if((digitalRead(1)) && (/)){
|
|
||||||
denary += -1;
|
|
||||||
// To be defined
|
|
||||||
|
|
||||||
}else{
|
delay(2000);
|
||||||
if(digitalRead(1)){
|
display.clear();
|
||||||
denary += 1;
|
|
||||||
// To be defined
|
|
||||||
|
|
||||||
}
|
// 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;
|
denary += -2;
|
||||||
// To be defined
|
bit1 == false;
|
||||||
|
|
||||||
}else{
|
}else{
|
||||||
if(digitalRead(2)){
|
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
|
||||||
|
if (oldDenary == denary) {
|
||||||
|
oldDenary = denary;
|
||||||
|
display.showNumberDec(denary);
|
||||||
|
}
|
||||||
|
|
||||||
_loop();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
void _loop() {
|
|
||||||
}
|
|
||||||
|
|
||||||
void loop() {
|
|
||||||
_loop();
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user