7-Segment-display
Postat: 6 december 2016, 09:03:50
Kan någon förklara denna koden för mig?
//-----------------------------------------------------//
// Draw digit on 7-Segment LED Display (fast) //
//-----------------------------------------------------//
void drawDigitFast(int n)
{
const byte aPins[8] = {
segA, segB, segC, segD, segE, segF, segG, segH
};
const byte aSegments[10] ∞ = {
// A B C D E F G H
{ HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW, LOW }, // 0
{ LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW }, // 1
{ HIGH, HIGH, LOW, HIGH, HIGH, LOW, HIGH, LOW }, // 2
{ HIGH, HIGH, HIGH, HIGH, LOW, LOW, HIGH, LOW }, // 3
{ LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH, LOW }, // 4
{ HIGH, LOW, HIGH, HIGH, LOW, HIGH, HIGH, LOW }, // 5
{ HIGH, LOW, HIGH, HIGH, HIGH, HIGH, HIGH, LOW }, // 6
{ HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW }, // 7
{ HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW }, // 8
{ HIGH, HIGH, HIGH, HIGH, LOW, HIGH, HIGH, LOW }, // 9
};
for( int i = 0; i < 8; i++ )
{
digitalWrite( aPins, aSegments[n] );
}
}
Tack på förhand
//-----------------------------------------------------//
// Draw digit on 7-Segment LED Display (fast) //
//-----------------------------------------------------//
void drawDigitFast(int n)
{
const byte aPins[8] = {
segA, segB, segC, segD, segE, segF, segG, segH
};
const byte aSegments[10] ∞ = {
// A B C D E F G H
{ HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW, LOW }, // 0
{ LOW, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW }, // 1
{ HIGH, HIGH, LOW, HIGH, HIGH, LOW, HIGH, LOW }, // 2
{ HIGH, HIGH, HIGH, HIGH, LOW, LOW, HIGH, LOW }, // 3
{ LOW, HIGH, HIGH, LOW, LOW, HIGH, HIGH, LOW }, // 4
{ HIGH, LOW, HIGH, HIGH, LOW, HIGH, HIGH, LOW }, // 5
{ HIGH, LOW, HIGH, HIGH, HIGH, HIGH, HIGH, LOW }, // 6
{ HIGH, HIGH, HIGH, LOW, LOW, LOW, LOW, LOW }, // 7
{ HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, HIGH, LOW }, // 8
{ HIGH, HIGH, HIGH, HIGH, LOW, HIGH, HIGH, LOW }, // 9
};
for( int i = 0; i < 8; i++ )
{
digitalWrite( aPins, aSegments[n] );
}
}
Tack på förhand