Lichtkrant Surtronic FDS-132
Re: Lichtkrant Surtronic FDS-132
Ik heb sinds het begin dat ik een FDS132 heb al een lijn die minder oplicht dan alle andere.
Nu heb ik vandaag die het matrix blokje geruild met een andere maar het probleem blijft aanwezig.Adapter levert ook genoeg stroom. Want als ik alle leds laat branden werken ze allemaal behalve die ene lijn. Zou het dan aan een van de chips achterop liggen?
Foto : http://img812.imageshack.us/img812/2284/f5ha.jpg
De 2 van de 42.
Nu heb ik vandaag die het matrix blokje geruild met een andere maar het probleem blijft aanwezig.Adapter levert ook genoeg stroom. Want als ik alle leds laat branden werken ze allemaal behalve die ene lijn. Zou het dan aan een van de chips achterop liggen?
Foto : http://img812.imageshack.us/img812/2284/f5ha.jpg
De 2 van de 42.
Advertisement
Re: Lichtkrant Surtronic FDS-132
Inderdaad. Ofwel heeft één van de 74HC4094 shiftregisters een probleem ofwel een ULN2003.
Meten is weten.
Mocht het een ULN2003 zijn, die kan je als gratis sample bestellen bij Texas Instruments (heb ik ook gedaan voor reparatie van een FDS185, groter broertje van de FDS132, zie http://arduinows.blogspot.com/2013/08/o ... oppen.html) en is op enkele dagen in je brievenbus terug te vinden
Meten is weten.
Mocht het een ULN2003 zijn, die kan je als gratis sample bestellen bij Texas Instruments (heb ik ook gedaan voor reparatie van een FDS185, groter broertje van de FDS132, zie http://arduinows.blogspot.com/2013/08/o ... oppen.html) en is op enkele dagen in je brievenbus terug te vinden
Arduinows!
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Re: Lichtkrant Surtronic FDS-132
Bedankt voor je reactie.
Kan je mij ook vertellen op welke pinnen spanning moet komen te staan als je de complete scherm aanstuurt? heb verschillende data-sheets gezien maar elke is heeft weer een andere pinout
http://img9.imageshack.us/img9/3710/xkwq.jpg
Kan je mij ook vertellen op welke pinnen spanning moet komen te staan als je de complete scherm aanstuurt? heb verschillende data-sheets gezien maar elke is heeft weer een andere pinout
http://img9.imageshack.us/img9/3710/xkwq.jpg
Re: Lichtkrant Surtronic FDS-132
Ik weet dat er verschillende revisies van de FDS132 verkocht worden.
Het schema zou hetzelfde moeten zijn, maar de plaatsing van de componenten is anders en bijgevolg ook enkele aansluitpinnen van de componenten.
De laatste foto kan ik zodoende niet thuisvinden op mijn bord dus we hebben verschillende revisies.
Afgaande op je vorige foto betreft dit het 8e matrixblokje op de eerste rij (als je van links begint te tellen).
Jouw probleemkolom is dan de 38e (als we de meest linkse kolom tot kolom 1 benoemen).
Kijken we op het schema dan komt de 38e uitgang van de shiftregisters overeen met pin 12 van U28 (4096).
Met onderstaande sketch kan je deze kolom doen oplichten zodat je kan beginnen meten.
Op pin 12 moet je nu ongeveer 5V meten (bij mij 4,85V), alle andere uitgangen van U28 moeten laag zijn.
Indien je deze spanning hierop meet dan werkt de 4094 waarschijnlijk goed. Je kan dat testen door in de sketch
testkolom een waarde van 37 te geven. Dan licht de vorige rij op een zou je alleen op pin 13 een spanning van 5V
mogen meten.
Zijn we nog mee? Dan testen we terug kolom 38.
Volgens het schema is pin 12 van U28 verbonden met pin 1 van U16 (ULN2003). De overeenkomstige maar geïnverteerde uitgang
is dan pin 16 die via een weerstand aan het ledmatrix blokje hangt. Op pin 1 van U16 moet je ook 5V meten en op pin 16 ongeveer 0,75V (de leds worden gesourced).
Bij mij wordt een andere aansluitvolgorde van de ULN2003's gebruikt. Pin 12 van de 4094 hangt aan pin 4 van de ULN2003 en de
uitgang van de ULN2003 is dan pin 13. Maar de meetresultaten moeten hetzelfde zijn.
Ik hoop dat een en ander duidelijk voor je is.
De sketch werd voor een vroeger experiment gebruikt, er staan wat overbodige dingen in maar ik heb hem voor je aangepast zodat je gewoon kan meegeven welke
kolom je wil doen oplichten. Er staat geen commentaar bij, zoals ik al zei heb ik hem snel voor deze test aangepast.
Het schema zou hetzelfde moeten zijn, maar de plaatsing van de componenten is anders en bijgevolg ook enkele aansluitpinnen van de componenten.
De laatste foto kan ik zodoende niet thuisvinden op mijn bord dus we hebben verschillende revisies.
Afgaande op je vorige foto betreft dit het 8e matrixblokje op de eerste rij (als je van links begint te tellen).
Jouw probleemkolom is dan de 38e (als we de meest linkse kolom tot kolom 1 benoemen).
Kijken we op het schema dan komt de 38e uitgang van de shiftregisters overeen met pin 12 van U28 (4096).
Met onderstaande sketch kan je deze kolom doen oplichten zodat je kan beginnen meten.
Op pin 12 moet je nu ongeveer 5V meten (bij mij 4,85V), alle andere uitgangen van U28 moeten laag zijn.
Indien je deze spanning hierop meet dan werkt de 4094 waarschijnlijk goed. Je kan dat testen door in de sketch
testkolom een waarde van 37 te geven. Dan licht de vorige rij op een zou je alleen op pin 13 een spanning van 5V
mogen meten.
Zijn we nog mee? Dan testen we terug kolom 38.
Volgens het schema is pin 12 van U28 verbonden met pin 1 van U16 (ULN2003). De overeenkomstige maar geïnverteerde uitgang
is dan pin 16 die via een weerstand aan het ledmatrix blokje hangt. Op pin 1 van U16 moet je ook 5V meten en op pin 16 ongeveer 0,75V (de leds worden gesourced).
Bij mij wordt een andere aansluitvolgorde van de ULN2003's gebruikt. Pin 12 van de 4094 hangt aan pin 4 van de ULN2003 en de
uitgang van de ULN2003 is dan pin 13. Maar de meetresultaten moeten hetzelfde zijn.
Ik hoop dat een en ander duidelijk voor je is.
De sketch werd voor een vroeger experiment gebruikt, er staan wat overbodige dingen in maar ik heb hem voor je aangepast zodat je gewoon kan meegeven welke
kolom je wil doen oplichten. Er staat geen commentaar bij, zoals ik al zei heb ik hem snel voor deze test aangepast.
- Code: Alles selecteren
// stuur een individuele kolom voor test doeleinde
// geef de te testen kolom mee in de eerste regel.
int testkolom = 38;
int dataPin = 11;
int strobePin = 10;
int clockPin = 13;
const int resredPin = 9;
#define number_of_74hc595s 34
#define numOfRegisterPins number_of_74hc595s * 8
boolean registers[numOfRegisterPins];
const int row_a = 5;
const int row_b = 6;
const int row_c = 7;
int speed=0;
void setup(){
pinMode(dataPin, OUTPUT);
pinMode(strobePin, OUTPUT);
pinMode(clockPin, OUTPUT);
pinMode (resredPin, OUTPUT);
digitalWrite (resredPin, HIGH);
pinMode (row_c, OUTPUT);
pinMode (row_b, OUTPUT);
pinMode (row_a, OUTPUT);
clearRegisters();
writeRegisters();
}
void clearRegisters(){
for(int i = numOfRegisterPins - 1; i >= 0; i--){
registers[i] = LOW;
}
}
void writeRegisters(){
digitalWrite(strobePin, LOW);
for(int i = numOfRegisterPins - 1; i >= 0; i--){
digitalWrite(clockPin, LOW);
int val = registers[i];
digitalWrite(dataPin, val);
digitalWrite(clockPin, HIGH);
}
digitalWrite(strobePin, HIGH);
}
void setRegisterPin(int index, int value){
registers[index] = value;
}
void loop(){
for (int row=0; row<7; row++) {
setRow(row);
setRegisterPin(testkolom, HIGH);
writeRegisters();
delay(speed);
}
}
void setRow (int row)
{
digitalWrite (row_a, row & 1);
digitalWrite (row_b, row & 2);
digitalWrite (row_c, row & 4);
}
Arduinows!
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Re: Lichtkrant Surtronic FDS-132
Sorry foutje in mijn vorig bericht. De leds worden gesinkt natuurlijk, niet gesourced.
Op de uitgangen van de ULN2003 die geen leds doen branden zou je bij benadering de bronspanning moeten meten.
Op de uitgangen van de ULN2003 die geen leds doen branden zou je bij benadering de bronspanning moeten meten.
Arduinows!
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Re: Lichtkrant Surtronic FDS-132
Hallo Forumleden, dit is mijn eerste post. Ik heb ook twee van die matrixborden gekocht, leek me leuk om mee te experimenteren. Ik heb al veel info hier gevonden en mischien kan ik later ook iets bijdragen waar anderen weer wat aan hebben. Ik heb twee rode boards gekregen, de modificatie van de aansluitingen heb ik gedaan, ik heb met beleid de grote chip verwijderd en een header erop gezet :
Deze aangesloten op een Arduino UNO. Ik wilde begrijpen hoe het display werkt dus ben begonnen met zelf de aanstuurcode te schrijven, niet omdat ik het beter kan dat wat hier al gepost is maar ik vind het leuker om zelf uit te vinden hoe het werkt. Ik werk nog niet zo lang met Arduino en dit is een leuk leer project. Inmiddels heb ik een werkende basis code, deze kan teksten op de display zetten in het bekende 5x7 font. Ik werk met een timer overflow interrupt om de display aan te sturen, deze leest een buffer uit het geheugen en zet de data op de display. Op deze manier hoef je in de hoofd code geen rekening te houden met schuiven en multiplexen van de display, je kunt hem als het ware als een statisch display beschouwen. De interrupt regelt dit op de achtergrond. Ook geeft deze manier van aansturen een stabiele weergave, de display timing wordt nu niet beinvloed door de hoofd routine. Wel moet je bij tijd kritische code rekening houden dat de interrupt ertussen door komt.
Het eerste resultaat :
Volgende stap is het maken van effecten, dus een lichtkrant en het inrollen van cijfers bijvoorbeeld, en het kunnen dimmen van de display met PWM, genoeg inspiratie om verder te hobbyen dus.
Deze aangesloten op een Arduino UNO. Ik wilde begrijpen hoe het display werkt dus ben begonnen met zelf de aanstuurcode te schrijven, niet omdat ik het beter kan dat wat hier al gepost is maar ik vind het leuker om zelf uit te vinden hoe het werkt. Ik werk nog niet zo lang met Arduino en dit is een leuk leer project. Inmiddels heb ik een werkende basis code, deze kan teksten op de display zetten in het bekende 5x7 font. Ik werk met een timer overflow interrupt om de display aan te sturen, deze leest een buffer uit het geheugen en zet de data op de display. Op deze manier hoef je in de hoofd code geen rekening te houden met schuiven en multiplexen van de display, je kunt hem als het ware als een statisch display beschouwen. De interrupt regelt dit op de achtergrond. Ook geeft deze manier van aansturen een stabiele weergave, de display timing wordt nu niet beinvloed door de hoofd routine. Wel moet je bij tijd kritische code rekening houden dat de interrupt ertussen door komt.
Het eerste resultaat :
Volgende stap is het maken van effecten, dus een lichtkrant en het inrollen van cijfers bijvoorbeeld, en het kunnen dimmen van de display met PWM, genoeg inspiratie om verder te hobbyen dus.
Re: Lichtkrant Surtronic FDS-132
Hier een poging om de code te posten, het bestaat uit de hoofd code, de INO file en een header file met de ascii tabel.
Die header file moet font75.h heten en in de zelfde directory staan als de INO file.
De code :
De Header file :
Die header file moet font75.h heten en in de zelfde directory staan als de INO file.
De code :
- Code: Alles selecteren
// Timer 1 Info : http://playground.arduino.cc/code/timer1
// Using PROGMEM : http://arduino.cc/en/Reference/PROGMEM
// The matrix board is controlled by timer0 overflow interrupt. This gives a steady image and the display can be handled like a static type.
// The main code does not have to control the board, just set or clear bits in the data array to put some led's on or off.
// Logically it's organized in colums, 270 in total. This sofware defines column 0 as the upper left column and 271 is the right bottom column.
// This makes it more easy to arrange the text on the board. There is no checking if the text fits on the display.
//
// Column layout : Line 0 : 0 to 89
// Line 1 : 90 to 179
// Line 1 : 180 to 271
//
//
//
#include <avr/pgmspace.h> // Include pgmspace so data tables can be stored in program memory, see PROGMEM info
#include <SPI.h> // Include SPI comunications, used for high speed clocking to display shiftregisters
#include "TimerOne.h" // Include Timer1 library, used for timer overflow interrupt
const int strobePin = 10; // Define I/O pins connected to the display board
const int clockPin = 13;
const int dataPin = 11;
const int resredPin = 9;
const int row_a = 5;
const int row_b = 6;
const int row_c = 7;
int RowCount = 0; // Counter for the current row, do not change this value in the main code, it's handeld in the interrupt routine
#include "font75.h"; // Standard 5x7 font ASCII Table
byte ColumnBytes[8][34]; // This is the data array that is used as buffer. The display data is in this buffer and the timeroverflow routine scans this
// buffer and shows it on the display. So read and write to this buffer to change display data.
// No strings are stored here, its the raw bit data that has to be shifted into the display.
// =========================================================================================
// Setup routine, mandatory.
// =========================================================================================
void setup() {
pinMode (strobePin, OUTPUT); // Define IO
pinMode (clockPin, OUTPUT);
pinMode (dataPin, OUTPUT);
pinMode (row_c, OUTPUT);
pinMode (row_b, OUTPUT);
pinMode (row_a, OUTPUT);
pinMode (resredPin, OUTPUT);
digitalWrite (resredPin, LOW);
digitalWrite (strobePin, LOW);
Serial.begin(9600); // Include serial routine, used for debugging and testing
SPI.begin(); // Start SPI comunications
SPI.setBitOrder(LSBFIRST); // Initialize SPI comunications
Timer1.initialize(2000); // initialize timer1, overflow timer1 handles the display driver, period (in microseconds)
Timer1.attachInterrupt(DisplayControl); // attaches timer1 overflow interrupt routine
// Start code here
ClearDisplay();
PlaceText("FDS132",27);
PlaceText("Matrixboard on", 90);
PlaceText("Arduino UNO", 192);
}
// =========================================================================================
// loop routine, mandatory
// Take notice when using time crititical code the interrupt is running to control
// the display.
// =========================================================================================
void loop()
{
}
// =========================================================================================
// Timer1 overflow intterupt routine,
// Does the Display shifting and muliplexing
// =========================================================================================
void DisplayControl()
{
digitalWrite(strobePin, LOW); // StrobePin LOW, so led's do not change during clocking
digitalWrite (resredPin, LOW); // Display off to prevent ghosting
for (int q = 0; q<34; q++) { // Shift the bytes in for the current Row
SPI.transfer(ColumnBytes[RowCount][q]);}
digitalWrite (row_a, RowCount & 1); // Switch the current column on, will be on until next interrupt
digitalWrite (row_b, RowCount & 2);
digitalWrite (row_c, RowCount & 4);
digitalWrite(strobePin, HIGH); // Strobe the shiftregisters so data is presented to the LED's
digitalWrite (resredPin, HIGH); // Display back on
RowCount++; // Increment Row
if (RowCount == 7) RowCount = 0 ; // Row is 0 to 6
}
// =========================================================================================
// Place text on display, uses the standard 5x7 font
// Call this routine with the text to display and the starting column to place the text
// Example : PlaceText("FDS132",27); Places the text "FDS132" starting on column 27
// =========================================================================================
void PlaceText(String text, int ColPos) {
byte displayByte;
char CurChar;
int bitpos;
int bytepos;
int pixelpos;
int charCount = text.length();
int store = ColPos;
for (int i = 0; i < charCount; i++) { // Loop for all the characters in the string
CurChar = text.charAt(i); // Read ascii value of current character
CurChar = CurChar - 32; // Minus 32 to get the right pointer to the ascii table, the first 32 ascii code are not in the table
for (int y = 0; y<7; y++) { // y loop is used to handle the 7 rows
for (int x = 0; x<5; x++) { // x loop is the pointer to the indiviual bits in the byte from the table
displayByte = (pgm_read_word_near(Font75 + (CurChar*7)+y)); // Read byte from table
pixelpos = abs(ColPos - 271); // Calculate start position to place the data on display
bytepos = ((pixelpos)/8);
bitpos = (pixelpos) - (bytepos*8);
boolean bitStatus = bitRead(displayByte, x); // Probe the bits
if(bitStatus == 0) bitClear(ColumnBytes[y][bytepos], bitpos); // And set or clear the corrosponding bits in de display buffer
if(bitStatus == 1) bitSet(ColumnBytes[y][bytepos], bitpos);
ColPos++;
}
ColPos = store; // Reset the column pointer so the next byte is shown on the same position
}
ColPos = ColPos + 6; // 6 is used here to give one column spacing between characters (one character is 5 bits wide)
store = ColPos; // For more space between the characters increase this number
}
}
// =========================================================================================
// Clear display
// All bytes in buffer are set to zero
// =========================================================================================
void ClearDisplay() {
for (int y = 0; y<8; y++) {
for (int x = 0; x<34; x++) {
ColumnBytes[y][x] = 0;
}
}
}
De Header file :
- Code: Alles selecteren
// ASCII Table
PROGMEM prog_uchar Font75[] = {
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 , //
0x04 ,0x04 ,0x04 ,0x04 ,0x00 ,0x00 ,0x04 , // !
0x0A ,0x0A ,0x0A ,0x00 ,0x00 ,0x00 ,0x00 , // "
0x0A ,0x0A ,0x1F ,0x0A ,0x1F ,0x0A ,0x0A , // #
0x04 ,0x1E ,0x05 ,0x0E ,0x14 ,0x0F ,0x04 , // $
0x03 ,0x13 ,0x08 ,0x04 ,0x02 ,0x19 ,0x18 , // %
0x06 ,0x09 ,0x05 ,0x02 ,0x15 ,0x09 ,0x16 , // &
0x06 ,0x04 ,0x02 ,0x00 ,0x00 ,0x00 ,0x00 , // '
0x08 ,0x04 ,0x02 ,0x02 ,0x02 ,0x04 ,0x08 , // (
0x02 ,0x04 ,0x08 ,0x08 ,0x08 ,0x04 ,0x02 , // )
0x00 ,0x04 ,0x15 ,0x0E ,0x15 ,0x04 ,0x00 , // *
0x00 ,0x04 ,0x04 ,0x1F ,0x04 ,0x04 ,0x00 , // +
0x00 ,0x00 ,0x00 ,0x00 ,0x06 ,0x04 ,0x02 , // Comma
0x00 ,0x00 ,0x00 ,0x1F ,0x00 ,0x00 ,0x00 , // -
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x06 ,0x06 , // .
0x00 ,0x10 ,0x08 ,0x04 ,0x02 ,0x01 ,0x00 , // Slash
0x0E ,0x11 ,0x19 ,0x15 ,0x13 ,0x11 ,0x0E , // 0
0x04 ,0x06 ,0x04 ,0x04 ,0x04 ,0x04 ,0x0E , // 1
0x0E ,0x11 ,0x10 ,0x08 ,0x04 ,0x02 ,0x1F , // 2
0x1F ,0x08 ,0x04 ,0x08 ,0x10 ,0x11 ,0x0E , // 3
0x08 ,0x0C ,0x0A ,0x09 ,0x1F ,0x08 ,0x08 , // 4
0x1F ,0x01 ,0x0F ,0x10 ,0x10 ,0x11 ,0x0E , // 5
0x0C ,0x02 ,0x01 ,0x0F ,0x11 ,0x11 ,0x0E , // 6
0x1F ,0x10 ,0x08 ,0x04 ,0x02 ,0x02 ,0x02 , // 7
0x0E ,0x11 ,0x11 ,0x0E ,0x11 ,0x11 ,0x0E , // 8
0x0E ,0x11 ,0x11 ,0x1E ,0x10 ,0x08 ,0x06 , // 9
0x00 ,0x06 ,0x06 ,0x00 ,0x06 ,0x06 ,0x00 , // :
0x00 ,0x06 ,0x06 ,0x00 ,0x06 ,0x04 ,0x02 , // ;
0x08 ,0x04 ,0x02 ,0x01 ,0x02 ,0x04 ,0x08 , // <
0x00 ,0x00 ,0x1F ,0x00 ,0x1F ,0x00 ,0x00 , // =
0x02 ,0x04 ,0x08 ,0x10 ,0x08 ,0x04 ,0x02 , // >
0x0E ,0x11 ,0x10 ,0x08 ,0x04 ,0x00 ,0x04 , // ?
0x0E ,0x11 ,0x10 ,0x16 ,0x15 ,0x15 ,0x0E , // @
0x0E ,0x11 ,0x11 ,0x11 ,0x1F ,0x11 ,0x11 , // A
0x0F ,0x11 ,0x11 ,0x0F ,0x11 ,0x11 ,0x0F , // B
0x0E ,0x11 ,0x01 ,0x01 ,0x01 ,0x11 ,0x0E , // C
0x07 ,0x09 ,0x11 ,0x11 ,0x11 ,0x09 ,0x07 , // D
0x1F ,0x01 ,0x01 ,0x0F ,0x01 ,0x01 ,0x1F , // E
0x1F ,0x01 ,0x01 ,0x0F ,0x01 ,0x01 ,0x01 , // F
0x0E ,0x11 ,0x01 ,0x1D ,0x11 ,0x11 ,0x1E , // G
0x11 ,0x11 ,0x11 ,0x1F ,0x11 ,0x11 ,0x11 , // H
0x0E ,0x04 ,0x04 ,0x04 ,0x04 ,0x04 ,0x0E , // I
0x1C ,0x08 ,0x08 ,0x08 ,0x08 ,0x09 ,0x06 , // J
0x11 ,0x09 ,0x05 ,0x03 ,0x05 ,0x09 ,0x11 , // K
0x01 ,0x01 ,0x01 ,0x01 ,0x01 ,0x01 ,0x1F , // L
0x11 ,0x1B ,0x15 ,0x15 ,0x11 ,0x11 ,0x11 , // M
0x11 ,0x11 ,0x13 ,0x15 ,0x19 ,0x11 ,0x11 , // N
0x0E ,0x11 ,0x11 ,0x11 ,0x11 ,0x11 ,0x0E , // O
0x0F ,0x11 ,0x11 ,0x0F ,0x01 ,0x01 ,0x01 , // P
0x0E ,0x11 ,0x11 ,0x11 ,0x15 ,0x09 ,0x16 , // Q
0x0F ,0x11 ,0x11 ,0x0F ,0x05 ,0x09 ,0x11 , // R
0x1E ,0x01 ,0x01 ,0x0E ,0x10 ,0x10 ,0x0F , // S
0x1F ,0x04 ,0x04 ,0x04 ,0x04 ,0x04 ,0x04 , // T
0x11 ,0x11 ,0x11 ,0x11 ,0x11 ,0x11 ,0x0E , // U
0x11 ,0x11 ,0x11 ,0x11 ,0x11 ,0x0A ,0x04 , // V
0x11 ,0x11 ,0x11 ,0x15 ,0x15 ,0x15 ,0x0A , // W
0x11 ,0x11 ,0x0A ,0x04 ,0x0A ,0x11 ,0x11 , // X
0x11 ,0x11 ,0x11 ,0x0A ,0x04 ,0x04 ,0x04 , // Y
0x1F ,0x10 ,0x08 ,0x04 ,0x02 ,0x01 ,0x1F , // Z
0x0E ,0x02 ,0x02 ,0x02 ,0x02 ,0x02 ,0x0E , // [
0x00 ,0x01 ,0x02 ,0x04 ,0x08 ,0x10 ,0x00 , // Backslash
0x0E ,0x08 ,0x08 ,0x08 ,0x08 ,0x08 ,0x0E , // ]
0x04 ,0x0A ,0x11 ,0x00 ,0x00 ,0x00 ,0x00 , // ^
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x1F , // _
0x02 ,0x04 ,0x08 ,0x00 ,0x00 ,0x00 ,0x00 , // High Comma
0x00 ,0x00 ,0x0E ,0x10 ,0x1E ,0x11 ,0x1E , // a
0x01 ,0x01 ,0x0D ,0x13 ,0x11 ,0x11 ,0x0F , // b
0x00 ,0x00 ,0x0E ,0x01 ,0x01 ,0x11 ,0x0E , // c
0x10 ,0x10 ,0x16 ,0x19 ,0x11 ,0x11 ,0x1E , // d
0x00 ,0x00 ,0x0E ,0x11 ,0x1F ,0x01 ,0x0E , // e
0x0C ,0x12 ,0x02 ,0x07 ,0x02 ,0x02 ,0x02 , // f
0x00 ,0x1E ,0x11 ,0x11 ,0x1E ,0x10 ,0x0E , // g
0x01 ,0x01 ,0x0D ,0x13 ,0x11 ,0x11 ,0x11 , // h
0x04 ,0x00 ,0x06 ,0x04 ,0x04 ,0x04 ,0x0E , // i
0x08 ,0x00 ,0x0C ,0x08 ,0x08 ,0x09 ,0x06 , // j
0x01 ,0x01 ,0x09 ,0x05 ,0x03 ,0x05 ,0x09 , // k
0x06 ,0x04 ,0x04 ,0x04 ,0x04 ,0x04 ,0x0E , // l
0x00 ,0x00 ,0x0B ,0x15 ,0x15 ,0x11 ,0x11 , // m
0x00 ,0x00 ,0x0D ,0x13 ,0x11 ,0x11 ,0x11 , // n
0x00 ,0x00 ,0x0E ,0x11 ,0x11 ,0x11 ,0x0E , // o
0x00 ,0x00 ,0x0F ,0x11 ,0x0F ,0x01 ,0x01 , // p
0x00 ,0x00 ,0x16 ,0x19 ,0x1E ,0x10 ,0x10 , // q
0x00 ,0x00 ,0x0D ,0x13 ,0x01 ,0x01 ,0x01 , // r
0x00 ,0x00 ,0x0E ,0x01 ,0x0E ,0x10 ,0x0F , // s
0x02 ,0x02 ,0x07 ,0x02 ,0x02 ,0x12 ,0x0C , // t
0x00 ,0x00 ,0x11 ,0x11 ,0x11 ,0x19 ,0x16 , // u
0x00 ,0x00 ,0x11 ,0x11 ,0x11 ,0x0A ,0x04 , // v
0x00 ,0x00 ,0x11 ,0x11 ,0x15 ,0x15 ,0x0A , // w
0x00 ,0x00 ,0x11 ,0x0A ,0x04 ,0x0A ,0x11 , // x
0x00 ,0x00 ,0x11 ,0x11 ,0x1E ,0x10 ,0x0E , // y
0x00 ,0x00 ,0x1F ,0x08 ,0x04 ,0x02 ,0x1F , // z
0x08 ,0x04 ,0x04 ,0x02 ,0x04 ,0x04 ,0x08 , // {
0x04 ,0x04 ,0x04 ,0x00 ,0x04 ,0x04 ,0x04 , // |
0x02 ,0x04 ,0x04 ,0x08 ,0x04 ,0x04 ,0x02 , // }
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 , // ~
0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 , // Block
};
Re: Lichtkrant Surtronic FDS-132
Hoi Rolo, welkom op het forum en meteen bedankt voor jouw bijdrage.
De modificatie ziet er netjes uit.
Mooi dat je het aansturen op je eigen manier uitprobeerd én wil delen.
In de commentaar staat dat column 271 rechts onderaan is maar dat klopt niet. Rechts onderaan is kolom 269.
Heb even mijn bord op de Uno aangesloten en je code er op los gelaten.
Wist je dat wanneer je een tekst plaatst vanaf denkbeeldige kolom 273, deze in spiegelbeeld wordt getoond? Best grappig.
Voor mijn bord moest ik de timer1 period verhogen naar 2800ms voor een flikkervrij beeld. Kan verschillen van bord tot bord.
Zo, de eerste twee weken geen Arduino voor mij, ik ga lekker van de zuiderse zon genieten
De modificatie ziet er netjes uit.
Mooi dat je het aansturen op je eigen manier uitprobeerd én wil delen.
In de commentaar staat dat column 271 rechts onderaan is maar dat klopt niet. Rechts onderaan is kolom 269.
Heb even mijn bord op de Uno aangesloten en je code er op los gelaten.
Wist je dat wanneer je een tekst plaatst vanaf denkbeeldige kolom 273, deze in spiegelbeeld wordt getoond? Best grappig.
Voor mijn bord moest ik de timer1 period verhogen naar 2800ms voor een flikkervrij beeld. Kan verschillen van bord tot bord.
Zo, de eerste twee weken geen Arduino voor mij, ik ga lekker van de zuiderse zon genieten
Arduinows!
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Why do computer programmers confuse Halloween with Christmas? Because Oct 31 = Dec 25
I got 01100011 problems but a bit ain't 00000001
Re: Lichtkrant Surtronic FDS-132
Bedankt voor het welkomstwoord !
Van die kolommen klopt helemaal, 269 is de laatste kolom die zichtbaar is. 272 is de theoretische laatste als je in blokken van 8 bits telt.
En die timer waarde is apart, je zou zeggen dat verhogen van dat getal de tijd tussen de interrupts langer maakt dus meer flikkering geeft.
Maar zou inderdaad bord afhankelijk kunnen zijn, bij mijn bord geeft 2000 een mooi rustig beeld. Als ik hoger ga wordt het onrustiger.
Prettige vakantie !
Van die kolommen klopt helemaal, 269 is de laatste kolom die zichtbaar is. 272 is de theoretische laatste als je in blokken van 8 bits telt.
En die timer waarde is apart, je zou zeggen dat verhogen van dat getal de tijd tussen de interrupts langer maakt dus meer flikkering geeft.
Maar zou inderdaad bord afhankelijk kunnen zijn, bij mijn bord geeft 2000 een mooi rustig beeld. Als ik hoger ga wordt het onrustiger.
Prettige vakantie !
Re: Lichtkrant Surtronic FDS-132
Hallo Rudi,
Heb het hier ook draaiende gekregen en mijn eigen tekst in gezet, maar had graag een lopende tekst gehad op de onderste rij leds bij het uploaden krijg ik telkens een fout
denk dat het een parameter is dat verkeerd is de lopende tekst moet telkens terug keren moet in feite een lus maken vb:als de laatste letter verdwijnd de tekst al terug rechts begint.
Groeten
Heb het hier ook draaiende gekregen en mijn eigen tekst in gezet, maar had graag een lopende tekst gehad op de onderste rij leds bij het uploaden krijg ik telkens een fout
denk dat het een parameter is dat verkeerd is de lopende tekst moet telkens terug keren moet in feite een lus maken vb:als de laatste letter verdwijnd de tekst al terug rechts begint.
Groeten
Wie is er online?
Gebruikers in dit forum: Geen geregistreerde gebruikers en 3 gasten