Forum
Share, Discuss, Make a Connection...

Guess what IC I am!

More
06 Mar 2014 21:21 - 06 Mar 2014 21:22 #1453 by hawse
Replied by hawse on topic Guess what IC I am!
No, the specific character "p" and the specific character "8". (Typing out the strings of 1's an d0's would have made it way too easy. :) )
Last edit: 06 Mar 2014 21:22 by hawse. Reason: added detail

Please Log in to join the conversation.

More
06 Mar 2014 22:28 #1454 by Luke Wolf
Replied by Luke Wolf on topic Guess what IC I am!
I'm going to assume ASCII encoding here and if so that's a bit shift right

One thing people always forget about science: science never demands a rational explanation for anything. To science anything is possible... including magic... especially magic.

Please Log in to join the conversation.

More
07 Mar 2014 08:10 #1457 by hawse
Replied by hawse on topic Guess what IC I am!
Sweet! That was the operation I had in mind, but then realized it could have also been something like a subtract 0x40.

:woohoo:

Please Log in to join the conversation.

More
14 Apr 2014 11:06 - 14 Apr 2014 11:07 #1601 by Dante
Replied by Dante on topic Guess what IC I am!
I have bought it to the next level, mwah ha ha!

I have my first countdown via my beaglebone black - but I can't show it to you because Youtube eats gym socks for kissing Google's seabass.

So instead, you'll just have to settle for some javascript parading as Node.js
var b = require('bonescript');
var pin = "P8_7";
var pin_num;
var SSD;

//Prep pin outs
for(var i = 0; i < 7; i++){
    pin_num = 7 + i * 2;
    pin = "P8_" + pin_num;
    b.pinMode(pin, 'out');
}

var count = 10;
function countDown(){
    //Iterate the countdown
    count = count - 1;
    if(count < 0){
        count = 9;
    }

    //Determine display configuration
    if(count === 0){
        SSD = [1,1,1,1,1,1,0];
    }
    if(count == 1){
        SSD = [0,1,1,0,0,0,0];
    }
    if(count == 2){
        SSD = [1,1,0,1,1,0,1];
    }
    if(count == 3){
        SSD = [1,1,1,1,0,0,1];
    }
    if(count == 4){
        SSD = [0,1,1,0,0,1,1];
    }
    if(count == 5){
        SSD = [1,0,1,1,0,1,1];
    }
    if(count == 6){
        SSD = [1,0,1,1,1,1,1];
    }
    if(count == 7){
        SSD = [1,1,1,0,0,0,0];
    }
    if(count == 8){
        SSD = [1,1,1,1,1,1,1];
    }
    if(count == 9){
        SSD = [1,1,1,1,0,1,1];
    }
    
    //Turn pins on and off
    for(var i = 0; i < 7; i++){
        pin = 7 + i * 2;
        b.digitalWrite("P8_" + pin, SSD[i]);
    }
}

var timer = setInterval(countDown, 1000);

var stopTimer = function() {
 clearInterval(timer);
};

setTimeout(stopTimer, 60000);
Last edit: 14 Apr 2014 11:07 by Dante.

Please Log in to join the conversation.

More
25 Apr 2014 01:17 - 25 Apr 2014 01:29 #1616 by Dante
Replied by Dante on topic Guess what IC I am!
And yet another achievement! I've successfully hooked my beagle bone black up to a multiplexor to run through a series of 8 leds. This project has managed to run me out of wires... so that. Don't worry, I've ordered new ones so that I will soon be able to run through seven seven segment displays. That's not a typo! That's 7 seven-segment displays, all counting down! Ha ha ha! I also got my lot of NAND gates in, so that means that my next goal won't even involve my beagle bone - it will be building a simple calcultor - using only nand gates and dip switches.
var b = require('bonescript');
var pin = "P8_7";
var pin_num;
var multiplexorBinCode;
var multiplexorBinLength;

//Prep pin outs
for(var i = 0; i < 5; i++){
    pin_num = 7 + i * 2;
    pin = "P8_" + pin_num;
    b.pinMode(pin, 'out');
}

//Power supply for Multiplexor
b.digitalWrite("P8_7", 1);
function binaryOn(led){
    multiplexorBinCode = led.toString(2);
    
    multiplexorBinLength = multiplexorBinCode.length - 1;
    b.digitalWrite("P8_15",1);
    for(var i = 0; i < 3; i++){
        pin_num = 9 + 2 * i;
        
        if(multiplexorBinCode[multiplexorBinLength - i] === "1"){
            b.digitalWrite("P8_" + pin_num, 1);
        }
        else{
            b.digitalWrite("P8_" + pin_num, 0);
        }    
    }
    b.digitalWrite("P8_15",0);
}

var ledNumber = 0;
var reverse = false;
function ledOscillator(){
    if(ledNumber > 7){
        reverse = true;
        ledNumber--;
    }
    else if(ledNumber < 1){
        reverse = false;
        ledNumber++;
    }
    
    if(reverse){
        ledNumber--;
        binaryOn(ledNumber);      
    }
    else{
        binaryOn(ledNumber);
        ledNumber++;
    }
}

var timer = setInterval(ledOscillator, 1);

var stopTimer = function() {
 clearInterval(timer);
};

setTimeout(stopTimer, 60000);

I even have a picture this time!

And if anyone is wondering why I would want to make a calculator using only NAND gates and dip switches... This is why:
www.tigerknight.com/cc/2009-08-09

It's a furry thing.
Last edit: 25 Apr 2014 01:29 by Dante.

Please Log in to join the conversation.

Time to create page: 0.411 seconds

Meet With Us

Come hang out with us at our regular meets and events! We love meeting new furs and people who are interested in the fandom. Check out the Events section for more information.