Maxim Integrated
/
MAXREFDES99_demo
Demo for MAXREFDES99
Diff: maxrefdes99.cpp
- Revision:
- 9:3c6d6c856e3d
- Parent:
- 8:a6a0c9e280ae
--- a/maxrefdes99.cpp Tue May 24 08:40:07 2016 +0000 +++ b/maxrefdes99.cpp Wed May 25 21:32:57 2016 +0000 @@ -37,103 +37,104 @@ //5x7 character bit map static const uint8_t font_5x7[95][6] = { - {0x00,0x00,0x00,0x00,0x00,0x00}, // SPACE - {0x00,0x00,0x00,0x4F,0x00,0x00}, // ! - {0x00,0x00,0x07,0x00,0x07,0x00}, // " - {0x00,0x14,0x7F,0x14,0x7F,0x14}, // # - {0x00,0x24,0x2A,0x7F,0x2A,0x12}, // $ - {0x00,0x23,0x13,0x08,0x64,0x62}, // % - {0x00,0x36,0x49,0x55,0x22,0x50}, // & - {0x00,0x00,0x05,0x03,0x00,0x00}, // ' - {0x00,0x00,0x1C,0x22,0x41,0x00}, // ( - {0x00,0x00,0x41,0x22,0x1C,0x00}, // ) - {0x00,0x14,0x08,0x3E,0x08,0x14}, // * - {0x00,0x08,0x08,0x3E,0x08,0x08}, // + - {0x00,0x00,0x50,0x30,0x00,0x00}, // , - {0x00,0x08,0x08,0x08,0x08,0x08}, // - - {0x00,0x00,0x60,0x60,0x00,0x00}, // . - {0x00,0x20,0x10,0x08,0x04,0x02}, // / - {0x00,0x3E,0x51,0x49,0x45,0x3E}, // 0 - {0x00,0x00,0x42,0x7F,0x40,0x00}, // 1 - {0x00,0x42,0x61,0x51,0x49,0x46}, // 2 - {0x00,0x21,0x41,0x45,0x4B,0x31}, // 3 - {0x00,0x18,0x14,0x12,0x7F,0x10}, // 4 - {0x00,0x27,0x45,0x45,0x45,0x39}, // 5 - {0x00,0x3C,0x4A,0x49,0x49,0x30}, // 6 - {0x00,0x01,0x71,0x09,0x05,0x03}, // 7 - {0x00,0x36,0x49,0x49,0x49,0x36}, // 8 - {0x00,0x06,0x49,0x49,0x29,0x1E}, // 9 - {0x00,0x36,0x36,0x00,0x00,0x00}, // : - {0x00,0x56,0x36,0x00,0x00,0x00}, // ; - {0x00,0x08,0x14,0x22,0x41,0x00}, // < - {0x00,0x14,0x14,0x14,0x14,0x14}, // = - {0x00,0x00,0x41,0x22,0x14,0x08}, // > - {0x00,0x02,0x01,0x51,0x09,0x06}, // ? - {0x00,0x30,0x49,0x79,0x41,0x3E}, // @ - {0x00,0x7E,0x11,0x11,0x11,0x7E}, // A - {0x00,0x7F,0x49,0x49,0x49,0x36}, // B - {0x00,0x3E,0x41,0x41,0x41,0x22}, // C - {0x00,0x7F,0x41,0x41,0x22,0x1C}, // D - {0x00,0x7F,0x49,0x49,0x49,0x41}, // E - {0x00,0x7F,0x09,0x09,0x09,0x01}, // F - {0x00,0x3E,0x41,0x49,0x49,0x7A}, // G - {0x00,0x7F,0x08,0x08,0x08,0x7F}, // H - {0x00,0x00,0x41,0x7F,0x41,0x00}, // I - {0x00,0x20,0x40,0x41,0x3F,0x01}, // J - {0x00,0x7F,0x08,0x14,0x22,0x41}, // K - {0x00,0x7F,0x40,0x40,0x40,0x40}, // L - {0x00,0x7F,0x02,0x0C,0x02,0x7F}, // M - {0x00,0x7F,0x04,0x08,0x10,0x7F}, // N - {0x00,0x3E,0x41,0x41,0x41,0x3E}, // O - {0x00,0x7F,0x09,0x09,0x09,0x06}, // P - {0x00,0x3E,0x41,0x51,0x21,0x5E}, // Q - {0x00,0x7F,0x09,0x19,0x29,0x46}, // R - {0x00,0x46,0x49,0x49,0x49,0x31}, // S - {0x00,0x01,0x01,0x7F,0x01,0x01}, // T - {0x00,0x3F,0x40,0x40,0x40,0x3F}, // U - {0x00,0x1F,0x20,0x40,0x20,0x1F}, // V - {0x00,0x3F,0x40,0x30,0x40,0x3F}, // W - {0x00,0x63,0x14,0x08,0x14,0x63}, // X - {0x00,0x07,0x08,0x70,0x08,0x07}, // Y - {0x00,0x61,0x51,0x49,0x45,0x43}, // Z - {0x00,0x00,0x7F,0x41,0x41,0x00}, // [ - {0x00,0x02,0x04,0x08,0x10,0x20}, // backslash - {0x00,0x00,0x41,0x41,0x7F,0x00}, // ] - {0x00,0x04,0x02,0x01,0x02,0x04}, // ^ - {0x00,0x40,0x40,0x40,0x40,0x40}, // _ - {0x00,0x00,0x01,0x02,0x04,0x00}, // ` - {0x00,0x20,0x54,0x54,0x54,0x78}, // a - {0x00,0x7F,0x50,0x48,0x48,0x30}, // b - {0x00,0x38,0x44,0x44,0x44,0x20}, // c - {0x00,0x38,0x44,0x44,0x48,0x7F}, // d - {0x00,0x38,0x54,0x54,0x54,0x18}, // e - {0x00,0x08,0x7E,0x09,0x01,0x02}, // f - {0x00,0x0C,0x52,0x52,0x52,0x3E}, // g - {0x00,0x7F,0x08,0x04,0x04,0x78}, // h - {0x00,0x00,0x44,0x7D,0x40,0x00}, // i - {0x00,0x20,0x40,0x44,0x3D,0x00}, // j - {0x00,0x7F,0x10,0x28,0x44,0x00}, // k - {0x00,0x00,0x41,0x7F,0x40,0x00}, // l - {0x00,0x78,0x04,0x58,0x44,0x78}, // m - {0x00,0x7C,0x08,0x04,0x04,0x78}, // n - {0x00,0x38,0x44,0x44,0x44,0x38}, // o - {0x00,0x7C,0x14,0x14,0x14,0x08}, // p - {0x00,0x08,0x14,0x14,0x18,0x7C}, // q - {0x00,0x7C,0x08,0x04,0x04,0x08}, // r - {0x00,0x48,0x54,0x54,0x54,0x20}, // s - {0x00,0x04,0x3F,0x44,0x40,0x20}, // t - {0x00,0x3C,0x40,0x40,0x20,0x7C}, // u - {0x00,0x1C,0x20,0x40,0x20,0x1C}, // v - {0x00,0x3C,0x40,0x30,0x40,0x3C}, // w - {0x00,0x44,0x28,0x10,0x28,0x44}, // x - {0x00,0x0C,0x50,0x50,0x50,0x3C}, // y - {0x00,0x44,0x64,0x54,0x4C,0x44}, // z - {0x00,0x00,0x08,0x36,0x41,0x00}, // { - {0x00,0x00,0x00,0x7F,0x00,0x00}, // | - {0x00,0x00,0x41,0x36,0x08,0x00}, // } - {0x00,0x0C,0x02,0x0C,0x10,0x0C} // ~ + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, //SPACE + {0x00, 0x00, 0x00, 0xf2, 0x00, 0x00}, //! + {0x00, 0x00, 0xe0, 0x00, 0xe0, 0x00}, //" + {0x00, 0x28, 0xfe, 0x28, 0xfe, 0x28}, //# + {0x00, 0x24, 0x54, 0xfe, 0x54, 0x48}, //$ + {0x00, 0xc4, 0xc8, 0x10, 0x26, 0x46}, //% + {0x00, 0x6c, 0x92, 0xaa, 0x44, 0x0a}, //& + {0x00, 0x00, 0xa0, 0xc0, 0x00, 0x00}, //' + {0x00, 0x00, 0x38, 0x44, 0x82, 0x00}, //( + {0x00, 0x00, 0x82, 0x44, 0x38, 0x00}, //) + {0x00, 0x28, 0x10, 0x7c, 0x10, 0x28}, //* + {0x00, 0x10, 0x10, 0x7c, 0x10, 0x10}, //+ + {0x00, 0x00, 0x0a, 0x0c, 0x00, 0x00}, //, + {0x00, 0x10, 0x10, 0x10, 0x10, 0x10}, //- + {0x00, 0x00, 0x06, 0x06, 0x00, 0x00}, //. + {0x00, 0x04, 0x08, 0x10, 0x20, 0x40}, /// + {0x00, 0x7c, 0x8a, 0x92, 0xa2, 0x7c}, //0 + {0x00, 0x00, 0x42, 0xfe, 0x02, 0x00}, //1 + {0x00, 0x42, 0x86, 0x8a, 0x92, 0x62}, //2 + {0x00, 0x84, 0x82, 0xa2, 0xd2, 0x8c}, //3 + {0x00, 0x18, 0x28, 0x48, 0xfe, 0x08}, //4 + {0x00, 0xe4, 0xa2, 0xa2, 0xa2, 0x9c}, //5 + {0x00, 0x3c, 0x52, 0x92, 0x92, 0x0c}, //6 + {0x00, 0x80, 0x8e, 0x90, 0xa0, 0xc0}, //7 + {0x00, 0x6c, 0x92, 0x92, 0x92, 0x6c}, //8 + {0x00, 0x60, 0x92, 0x92, 0x94, 0x78}, //9 + {0x00, 0x6c, 0x6c, 0x00, 0x00, 0x00}, //: + {0x00, 0x6a, 0x6c, 0x00, 0x00, 0x00}, //; + {0x00, 0x10, 0x28, 0x44, 0x82, 0x00}, //< + {0x00, 0x28, 0x28, 0x28, 0x28, 0x28}, //= + {0x00, 0x00, 0x82, 0x44, 0x28, 0x10}, //> + {0x00, 0x40, 0x80, 0x8a, 0x90, 0x60}, //? + {0x00, 0x0c, 0x92, 0x9e, 0x82, 0x7c}, //@ + {0x00, 0x7e, 0x88, 0x88, 0x88, 0x7e}, //A + {0x00, 0xfe, 0x92, 0x92, 0x92, 0x6c}, //B + {0x00, 0x7c, 0x82, 0x82, 0x82, 0x44}, //C + {0x00, 0xfe, 0x82, 0x82, 0x44, 0x38}, //D + {0x00, 0xfe, 0x92, 0x92, 0x92, 0x82}, //E + {0x00, 0xfe, 0x90, 0x90, 0x90, 0x80}, //F + {0x00, 0x7c, 0x82, 0x92, 0x92, 0x5e}, //G + {0x00, 0xfe, 0x10, 0x10, 0x10, 0xfe}, //H + {0x00, 0x00, 0x82, 0xfe, 0x82, 0x00}, //I + {0x00, 0x04, 0x02, 0x82, 0xfc, 0x80}, //J + {0x00, 0xfe, 0x10, 0x28, 0x44, 0x82}, //K + {0x00, 0xfe, 0x02, 0x02, 0x02, 0x02}, //L + {0x00, 0xfe, 0x40, 0x30, 0x40, 0xfe}, //M + {0x00, 0xfe, 0x20, 0x10, 0x08, 0xfe}, //N + {0x00, 0x7c, 0x82, 0x82, 0x82, 0x7c}, //O + {0x00, 0xfe, 0x90, 0x90, 0x90, 0x60}, //P + {0x00, 0x7c, 0x82, 0x8a, 0x84, 0x7a}, //Q + {0x00, 0xfe, 0x90, 0x98, 0x94, 0x62}, //R + {0x00, 0x62, 0x92, 0x92, 0x92, 0x8c}, //S + {0x00, 0x80, 0x80, 0xfe, 0x80, 0x80}, //T + {0x00, 0xfc, 0x02, 0x02, 0x02, 0xfc}, //U + {0x00, 0xf8, 0x04, 0x02, 0x04, 0xf8}, //V + {0x00, 0xfc, 0x02, 0x0c, 0x02, 0xfc}, //W + {0x00, 0xc6, 0x28, 0x10, 0x28, 0xc6}, //X + {0x00, 0xe0, 0x10, 0x0e, 0x10, 0xe0}, //Y + {0x00, 0x86, 0x8a, 0x92, 0xa2, 0xc2}, //Z + {0x00, 0x00, 0xfe, 0x82, 0x82, 0x00}, //[ + {0x00, 0x40, 0x20, 0x10, 0x08, 0x04}, //backslash + {0x00, 0x00, 0x82, 0x82, 0xfe, 0x00}, //] + {0x00, 0x20, 0x40, 0x80, 0x40, 0x20}, //^ + {0x00, 0x02, 0x02, 0x02, 0x02, 0x02}, //_ + {0x00, 0x00, 0x80, 0x40, 0x20, 0x00}, //` + {0x00, 0x04, 0x2a, 0x2a, 0x2a, 0x1e}, //a + {0x00, 0xfe, 0x0a, 0x12, 0x12, 0x0c}, //b + {0x00, 0x1c, 0x22, 0x22, 0x22, 0x04}, //c + {0x00, 0x1c, 0x22, 0x22, 0x12, 0xfe}, //d + {0x00, 0x1c, 0x2a, 0x2a, 0x2a, 0x18}, //e + {0x00, 0x10, 0x7e, 0x90, 0x80, 0x40}, //f + {0x00, 0x30, 0x4a, 0x4a, 0x4a, 0x7c}, //g + {0x00, 0xfe, 0x10, 0x20, 0x20, 0x1e}, //h + {0x00, 0x00, 0x22, 0xbe, 0x02, 0x00}, //i + {0x00, 0x04, 0x02, 0x22, 0xbc, 0x00}, //j + {0x00, 0xfe, 0x08, 0x14, 0x22, 0x00}, //k + {0x00, 0x00, 0x82, 0xfe, 0x02, 0x00}, //l + {0x00, 0x1e, 0x20, 0x1a, 0x22, 0x1e}, //m + {0x00, 0x3e, 0x10, 0x20, 0x20, 0x1e}, //n + {0x00, 0x1c, 0x22, 0x22, 0x22, 0x1c}, //o + {0x00, 0x3e, 0x28, 0x28, 0x28, 0x10}, //p + {0x00, 0x10, 0x28, 0x28, 0x18, 0x3e}, //q + {0x00, 0x3e, 0x10, 0x20, 0x20, 0x10}, //r + {0x00, 0x12, 0x2a, 0x2a, 0x2a, 0x04}, //s + {0x00, 0x20, 0xfc, 0x22, 0x02, 0x04}, //t + {0x00, 0x3c, 0x02, 0x02, 0x04, 0x3e}, //u + {0x00, 0x38, 0x04, 0x02, 0x04, 0x38}, //v + {0x00, 0x3c, 0x02, 0x0c, 0x02, 0x3c}, //w + {0x00, 0x22, 0x14, 0x08, 0x14, 0x22}, //x + {0x00, 0x30, 0x0a, 0x0a, 0x0a, 0x3c}, //y + {0x00, 0x22, 0x26, 0x2a, 0x32, 0x22}, //z + {0x00, 0x00, 0x10, 0x6c, 0x82, 0x00}, //{ + {0x00, 0x00, 0x00, 0xfe, 0x00, 0x00}, //| + {0x00, 0x00, 0x82, 0x6c, 0x10, 0x00}, //} + {0x00, 0x30, 0x40, 0x30, 0x08, 0x30} //~ }; + /******************************************************************************* * 16*16 character bit map for Aerial bold fonts * These font data taken from the rinkydinkelectronic.com @@ -1122,26 +1123,6 @@ //********************************************************************* -void get_5x7_character(char c, uint8_t *char_buff) -{ - uint16_t temp_data; - uint8_t idx, idy; - - for(idx = 0; idx < 6; idx++) - { - //get byte of char from map and flip it, bit 0 becomes bit 7 and so on - temp_data = (0x00FF & (font_5x7[c - 0x20][idx])); - for(idy = 0; idy < 8; idy++) - { - temp_data = (temp_data | (((temp_data & (1 << idy)) << (15 - (idy*2))))); - } - temp_data = ((temp_data >> 8) & 0x00FF); - - char_buff[idx] = ((uint8_t) temp_data); - } -} - -//********************************************************************* void print_char(Max7219 *p_display, uint8_t position99, char c) { uint8_t idx; @@ -1151,7 +1132,7 @@ uint8_t wrap_idx; uint8_t buff_start = position99; - get_5x7_character(c, char_buff); + memcpy(char_buff, &(font_5x7[c - 0x20][0]), 6); if(position99 < 33) {