Apparently my TIL311 has different pin layout. Clean up bitwise operations.
This commit is contained in:
parent
9c2adc3270
commit
a3033f2727
@ -1,16 +1,18 @@
|
|||||||
/*
|
/*
|
||||||
* Loops through 0-F and displays it on TIL311. Pure C version.
|
* Loops through 0-F and displays it on TIL311. Pure C version.
|
||||||
*
|
*
|
||||||
* TIL311 pin 3 -> Arduino Digital 2 (PORTD2)
|
* TIL311 pin 12 -> Arduino Digital 2 (PORTD2)
|
||||||
* TIL311 pin 2 -> Arduino Digital 3 (PORTD3)
|
* TIL311 pin 13 -> Arduino Digital 3 (PORTD3)
|
||||||
* TIL311 pin 13 -> Arduino Digital 4 (PORTD4)
|
* TIL311 pin 2 -> Arduino Digital 4 (PORTD4)
|
||||||
* TIL311 pin 12 -> Arduino Digital 5 (PORTD5)
|
* TIL311 pin 3 -> Arduino Digital 5 (PORTD5)
|
||||||
|
*
|
||||||
|
* TIL311 pin 8 -> Arduino Digital 5 (PORTD6)
|
||||||
*
|
*
|
||||||
* Led at Arduino Digital 13 (PORTB5)
|
* Led at Arduino Digital 13 (PORTB5)
|
||||||
*
|
*
|
||||||
* To compile and upload run: make clean; make; make flash;
|
* To compile and upload run: make clean; make; make flash;
|
||||||
*
|
*
|
||||||
* Copyright 2009 Mika Tuupola
|
* Copyright 2009-2011 Mika Tuupola
|
||||||
*
|
*
|
||||||
* Licensed under the MIT license:
|
* Licensed under the MIT license:
|
||||||
* http://www.opensource.org/licenses/mit-license.php
|
* http://www.opensource.org/licenses/mit-license.php
|
||||||
@ -24,16 +26,19 @@
|
|||||||
|
|
||||||
int main(void) {
|
int main(void) {
|
||||||
|
|
||||||
/* Make PORTB5 (Arduino 13) and PORTD0-PORTD3 (Arduino 2-5) as an output. */
|
/* Make PORTB5 (Arduino 13) and PORTD0-PORTD3 (Arduino 2-6) as an output. */
|
||||||
DDRB |= _BV(PORTB5);
|
DDRB |= _BV(PORTB5);
|
||||||
DDRD |= _BV(PORTD2) | _BV(PORTD3) | _BV(PORTD4) | _BV(PORTD5);
|
DDRD |= _BV(PORTD2) | _BV(PORTD3) | _BV(PORTD4) | _BV(PORTD5) | _BV(PORTD7);
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
|
|
||||||
|
PORTD |= _BV(PORTD7);
|
||||||
|
|
||||||
|
|
||||||
/* Reset displayed value. */
|
/* Reset displayed value. */
|
||||||
int value = 0;
|
int value = 0;
|
||||||
|
|
||||||
while (value < 16) {
|
while (value < 16) {
|
||||||
|
|
||||||
/* Toggle led at PORTB5 */
|
/* Toggle led at PORTB5 */
|
||||||
PORTB ^= _BV(PORTB5);
|
PORTB ^= _BV(PORTB5);
|
||||||
|
|
||||||
@ -44,28 +49,28 @@ int main(void) {
|
|||||||
|
|
||||||
/* TIL311 pin 3, latch data input A (1). */
|
/* TIL311 pin 3, latch data input A (1). */
|
||||||
if (0 == BIT_AT(value, 0)) {
|
if (0 == BIT_AT(value, 0)) {
|
||||||
PORTD &= ~(_BV(PORTD2));
|
PORTD &= ~_BV(PORTD2);
|
||||||
} else {
|
} else {
|
||||||
PORTD |= _BV(PORTD2);
|
PORTD |= _BV(PORTD2);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TIL311 pin 2, latch data input B (2). */
|
/* TIL311 pin 2, latch data input B (2). */
|
||||||
if (0 == BIT_AT(value, 1)) {
|
if (0 == BIT_AT(value, 1)) {
|
||||||
PORTD &= ~(_BV(PORTD3));
|
PORTD &= ~_BV(PORTD3);
|
||||||
} else {
|
} else {
|
||||||
PORTD |= _BV(PORTD3);
|
PORTD |= _BV(PORTD3);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TIL311 pin 13, latch data input C (4). */
|
/* TIL311 pin 13, latch data input C (4). */
|
||||||
if (0 == BIT_AT(value, 2)) {
|
if (0 == BIT_AT(value, 2)) {
|
||||||
PORTD &= ~(_BV(PORTD4));
|
PORTD &= ~_BV(PORTD4);
|
||||||
} else {
|
} else {
|
||||||
PORTD |= _BV(PORTD4);
|
PORTD |= _BV(PORTD4);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* TIL311 pin 12, latch data input D (8). */
|
/* TIL311 pin 12, latch data input D (8). */
|
||||||
if (0 == BIT_AT(value, 3)) {
|
if (0 == BIT_AT(value, 3)) {
|
||||||
PORTD &= ~(_BV(PORTD5));
|
PORTD &= ~_BV(PORTD5);
|
||||||
} else {
|
} else {
|
||||||
PORTD |= _BV(PORTD5);
|
PORTD |= _BV(PORTD5);
|
||||||
}
|
}
|
||||||
@ -73,6 +78,7 @@ int main(void) {
|
|||||||
value++;
|
value++;
|
||||||
_delay_ms(500);
|
_delay_ms(500);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This is never reached. */
|
/* This is never reached. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user