Sanyo LC75711 VFD controller/driver for upto 16 Dot Matrix Characters

Dependents:   mbed_LC75711

The component page is here.

Committer:
wim
Date:
Sun Sep 17 13:32:22 2017 +0000
Revision:
3:8101f714d38d
Parent:
1:bcf010fcacae
Minor Cleanup and added comments

Who changed what in which revision?

UserRevisionLine numberNew contents of line
wim 0:5eb5fee234e8 1 /* mbed LC75710 Library, for Sanyo LC7571X VFD controller
wim 0:5eb5fee234e8 2 * Note: The LC75710, LC75711 and LC75712 differ only in the built-in character ROM
wim 0:5eb5fee234e8 3 *
wim 0:5eb5fee234e8 4 * Copyright (c) 2017, v01: WH, Initial version
wim 0:5eb5fee234e8 5 * 2017, v02: WH, Added some UDC definitions
wim 0:5eb5fee234e8 6 *
wim 0:5eb5fee234e8 7 * Permission is hereby granted, free of charge, to any person obtaining a copy
wim 0:5eb5fee234e8 8 * of this software and associated documentation files (the "Software"), to deal
wim 0:5eb5fee234e8 9 * in the Software without restriction, including without limitation the rights
wim 0:5eb5fee234e8 10 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
wim 0:5eb5fee234e8 11 * copies of the Software, and to permit persons to whom the Software is
wim 0:5eb5fee234e8 12 * furnished to do so, subject to the following conditions:
wim 0:5eb5fee234e8 13 *
wim 0:5eb5fee234e8 14 * The above copyright notice and this permission notice shall be included in
wim 0:5eb5fee234e8 15 * all copies or substantial portions of the Software.
wim 0:5eb5fee234e8 16 *
wim 0:5eb5fee234e8 17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
wim 0:5eb5fee234e8 18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
wim 0:5eb5fee234e8 19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
wim 0:5eb5fee234e8 20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
wim 0:5eb5fee234e8 21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
wim 0:5eb5fee234e8 22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
wim 0:5eb5fee234e8 23 * THE SOFTWARE.
wim 0:5eb5fee234e8 24 */
wim 0:5eb5fee234e8 25 #include "LC75711_Config.h"
wim 0:5eb5fee234e8 26
wim 0:5eb5fee234e8 27 #if(LC75711_UDC == 1)
wim 3:8101f714d38d 28 // User Defined Characters (UDCs) are defined by a 7 byte bitpattern.
wim 3:8101f714d38d 29 // The P0..P4 form the UDC pattern.
wim 3:8101f714d38d 30 // P7 P6 P5 P4 P3 P2 P1 P0
wim 3:8101f714d38d 31 // 0 x x x CD4 CD3 CD2 CD1 CD1
wim 3:8101f714d38d 32 // 1 x x x CD9 CD8 CD7 CD6 CD5
wim 0:5eb5fee234e8 33 // . .............
wim 3:8101f714d38d 34 // 6 x x x C35 C34 ... C31
wim 0:5eb5fee234e8 35 //
wim 3:8101f714d38d 36 // The UDC matrix will show on the VFD as
wim 3:8101f714d38d 37 // 0 CD1 CD2 CD3 CD4 CD5
wim 3:8101f714d38d 38 // 1 CD6 CD7 ....... CD10
wim 3:8101f714d38d 39 // . .............
wim 3:8101f714d38d 40 // . .............
wim 3:8101f714d38d 41 // . .............
wim 3:8101f714d38d 42 // 6 CD31 C32 ....... CD35
wim 0:5eb5fee234e8 43 //
wim 3:8101f714d38d 44
wim 0:5eb5fee234e8 45 // Some sample User Defined Chars 5x7 dots */
wim 0:5eb5fee234e8 46 const char udc_Bat_Hi[] = {0x0E, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F, 0x1F}; // Battery Full
wim 0:5eb5fee234e8 47 const char udc_Bat_Ha[] = {0x0E, 0x11, 0x13, 0x17, 0x1F, 0x1F, 0x1F}; // Battery Half
wim 0:5eb5fee234e8 48 const char udc_Bat_Lo[] = {0x0E, 0x11, 0x11, 0x11, 0x11, 0x11, 0x1F}; // Battery Low
wim 0:5eb5fee234e8 49 const char udc_checker[] = {0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA};
wim 0:5eb5fee234e8 50
wim 0:5eb5fee234e8 51 //const char udc_PO[] = {0x04, 0x0A, 0x0A, 0x1F, 0x1B, 0x1B, 0x1F, 0x00}; //Padlock Open
wim 0:5eb5fee234e8 52 //const char udc_PC[] = {0x1C, 0x10, 0x08, 0x1F, 0x1B, 0x1B, 0x1F, 0x00}; //Padlock Closed
wim 0:5eb5fee234e8 53
wim 0:5eb5fee234e8 54 //
wim 3:8101f714d38d 55 // NOTE: the bitpatterns below still need to be flipped or they will be mirrored on the display...
wim 0:5eb5fee234e8 56 //
wim 0:5eb5fee234e8 57 //const char udc_ae[] = {0x00, 0x00, 0x1B, 0x05, 0x1F, 0x14, 0x1F, 0x00}; //æ
wim 0:5eb5fee234e8 58 //const char udc_0e[] = {0x00, 0x00, 0x0E, 0x13, 0x15, 0x19, 0x0E, 0x00}; //ø
wim 0:5eb5fee234e8 59 //const char udc_ao[] = {0x0E, 0x0A, 0x0E, 0x01, 0x0F, 0x11, 0x0F, 0x00}; //å
wim 0:5eb5fee234e8 60 //const char udc_AE[] = {0x0F, 0x14, 0x14, 0x1F, 0x14, 0x14, 0x17, 0x00}; //Æ
wim 0:5eb5fee234e8 61 //const char udc_0E[] = {0x0E, 0x13, 0x15, 0x15, 0x15, 0x19, 0x0E, 0x00}; //Ø
wim 0:5eb5fee234e8 62 //const char udc_Ao[] = {0x0E, 0x0A, 0x0E, 0x11, 0x1F, 0x11, 0x11, 0x00}; //Å
wim 0:5eb5fee234e8 63
wim 0:5eb5fee234e8 64 //const char udc_alpha[] = {0x00, 0x00, 0x0D, 0x12, 0x12, 0x12, 0x0D, 0x00}; //alpha
wim 0:5eb5fee234e8 65 //const char udc_ohm[] = {0x0E, 0x11, 0x11, 0x11, 0x0A, 0x0A, 0x1B, 0x00}; //ohm
wim 0:5eb5fee234e8 66 //const char udc_sigma[] = {0x1F, 0x08, 0x04, 0x02, 0x04, 0x08, 0x1F, 0x00}; //sigma
wim 0:5eb5fee234e8 67 //const char udc_pi[] = {0x1F, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x0A, 0x00}; //pi
wim 0:5eb5fee234e8 68 //const char udc_root[] = {0x07, 0x04, 0x04, 0x04, 0x14, 0x0C, 0x04, 0x00}; //root
wim 0:5eb5fee234e8 69
wim 0:5eb5fee234e8 70 //const char udc_TM_T[] = {0x1F, 0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00}; // Trademark T
wim 0:5eb5fee234e8 71 //const char udc_TM_M[] = {0x11, 0x1B, 0x15, 0x11, 0x00, 0x00, 0x00, 0x00}; // Trademark M
wim 0:5eb5fee234e8 72 #endif