Brought over the files from the Freescale site and modified for mbed.
Embed:
(wiki syntax)
Show/hide line numbers
LCDHDW.h
00001 /*^^^^^^^^^^^^^^^^ LCD HARDWARE CONECTION 00002 FB-GD6363AP.h 00003 Marconi Daugther Card to GD-5366AP configuration 00004 8x35 Dot Matrix LCD + 8 special characters 00005 3 Volts 00006 00007 ^^^^^^^^^^^^^^^^^^^^^^^^*/ 00008 00009 00010 00011 #define _CHARNUM (35) //number of chars that can be written 00012 #define _CHAR_SIZE (6) // Used only when Dot Matrix is used 00013 #define _LCDTYPE (1) //indicate how many LCD_WF are required to write a single Character / or Colum in case of DOT matrix LCD 00014 00015 00016 #define EnableLCDpin(RegNum,LCDn) LCDPEN##RegNum##_PEN##LCDn = 1 00017 #define EnableBackplane(RegNum, LCDn) LCDBPEN##RegNum##_BPEN##LCDn = 1 00018 00019 00020 // with mask 00021 #define SetBackplane(ComNum, LCDn) LCDWF##LCDn = (1 << (ComNum)) 00022 00023 #define CharacterPlace(LCDn) LCDWF##LCDn // _LCDWF0 00024 00025 #define BP_FLAG 0x80 // used to indicate if the WF is used as backplane 00026 00027 00028 // Enable all LCD pins to be used as LCD function inlcuding Backplanes and Front planes 00029 #define EnablePin4 EnableLCDpin (5,40) 00030 #define EnablePin3 EnableLCDpin (5,41) 00031 #define EnablePin2 EnableLCDpin (5,42) 00032 #define EnablePin1 EnableLCDpin (5,43) 00033 #define EnablePin23 EnableLCDpin (0,0) 00034 #define EnablePin24 EnableLCDpin (0,1) 00035 #define EnablePin25 EnableLCDpin (0,2) 00036 #define EnablePin26 EnableLCDpin (0,3) 00037 #define EnablePin27 EnableLCDpin (0,4) 00038 #define EnablePin28 EnableLCDpin (0,5) 00039 #define EnablePin29 EnableLCDpin (0,6) 00040 #define EnablePin30 EnableLCDpin (0,7) 00041 #define EnablePin31 EnableLCDpin (1,8) 00042 #define EnablePin32 EnableLCDpin (1,9) 00043 #define EnablePin33 EnableLCDpin (1,10) 00044 #define EnablePin34 EnableLCDpin (1,11) 00045 #define EnablePin35 EnableLCDpin (1,12) 00046 #define EnablePin5 EnableLCDpin (4,39) 00047 #define EnablePin6 EnableLCDpin (4,38) 00048 #define EnablePin7 EnableLCDpin (4,37) 00049 #define EnablePin8 EnableLCDpin (4,36) 00050 #define EnablePin9 EnableLCDpin (4,35) 00051 #define EnablePin10 EnableLCDpin (4,34) 00052 #define EnablePin11 EnableLCDpin (4,33) 00053 #define EnablePin12 EnableLCDpin (4,32) 00054 #define EnablePin13 EnableLCDpin (3,31) 00055 #define EnablePin14 EnableLCDpin (3,30) 00056 #define EnablePin15 EnableLCDpin (3,29) 00057 #define EnablePin16 EnableLCDpin (3,28) 00058 #define EnablePin17 EnableLCDpin (3,27) 00059 #define EnablePin18 EnableLCDpin (3,26) 00060 #define EnablePin19 EnableLCDpin (3,25) 00061 #define EnablePin20 EnableLCDpin (3,24) 00062 #define EnablePin21 EnableLCDpin (2,23) 00063 #define EnablePin36 EnableLCDpin (1,13) 00064 #define EnablePin37 EnableLCDpin (1,14) 00065 #define EnablePin38 EnableLCDpin (1,15) 00066 #define EnablePin39 EnableLCDpin (2,16) 00067 #define EnablePin40 EnableLCDpin (2,17) 00068 #define EnablePin41 EnableLCDpin (2,18) 00069 #define EnablePin42 EnableLCDpin (2,19) 00070 #define EnablePin43 EnableLCDpin (2,20) 00071 #define EnablePin44 EnableLCDpin (2,21) 00072 #define EnablePin22 EnableLCDpin (2,22) 00073 00074 00075 00076 /*Related with register names */ 00077 00078 00079 00080 // Enable the LCD pin like a Backplane functionality 00081 // (registernumber,LCD pin number) 00082 #define EnablePin4 EnableLCDpin (5,40) 00083 #define EnablePin3 EnableLCDpin (5,41) 00084 #define EnablePin2 EnableLCDpin (5,42) 00085 #define EnablePin1 EnableLCDpin (5,43) 00086 #define EnablePin23 EnableLCDpin (0,0) 00087 #define EnablePin24 EnableLCDpin (0,1) 00088 #define EnablePin25 EnableLCDpin (0,2) 00089 #define EnablePin26 EnableLCDpin (0,3) 00090 00091 00092 00093 // Give the mask to the Backplane 00094 // (ComNumber/BitNumber/priority segun el LCD manual , LCDn) 00095 #define SetCom1 SetBackplane(0,0) 00096 #define SetCom2 SetBackplane(1,1) 00097 #define SetCom3 SetBackplane(2,2) 00098 #define SetCom4 SetBackplane(3,3) 00099 #define SetCom5 SetBackplane(0,0) 00100 #define SetCom6 SetBackplane(1,1) 00101 #define SetCom7 SetBackplane(2,2) 00102 #define SetCom8 SetBackplane(3,3) 00103 00104 00105 00106 00107 // Indicate how Character is connected to LCDn 00108 00109 #ifdef GD5602P 00110 #define Char1 41 // LCD Pin 40 00111 #define Char2 40 // LCD Pin 39 00112 #define Char3 39 // LCD Pin 38 00113 #define Char4 38 // LCD Pin 37 00114 #define Char5 37 // LCD Pin 36 00115 #define Char6 36 // LCD Pin 35 00116 #define Char7 35 // LCD Pin 34 00117 #define Char8 34 // LCD Pin 33 00118 #define Char9 33 // LCD Pin 32 00119 #define Char10 17 // LCD Pin 5 00120 #define Char11 16 // LCD Pin 6 00121 #define Char12 15 // LCD Pin 7 00122 #define Char13 14 // LCD Pin 8 00123 #define Char14 13 // LCD Pin 9 00124 #define Char15 12 // LCD Pin 10 00125 #define Char16 11 // LCD Pin 11 00126 #define Char17 10 // LCD Pin 12 00127 #define Char18 9 // LCD Pin 13 00128 #define Char19 8 // LCD Pin 14 00129 #define Char20 7 // LCD Pin 15 00130 #define Char21 6 // LCD Pin 16 00131 #define Char22 5 // LCD Pin 17 00132 #define Char23 4 // LCD Pin 18 00133 #define Char24 3 // LCD Pin 19 00134 #define Char25 2 // LCD Pin 20 00135 #define Char26 1 // LCD Pin 21 00136 #define Char27 32 // LCD Pin 31 00137 #define Char28 31 // LCD Pin 30 00138 #define Char29 30 // LCD Pin 29 00139 #define Char30 29 // LCD Pin 28 00140 #define Char31 28 // LCD Pin 27 00141 #define Char32 27 // LCD Pin 26 00142 #define Char33 26 // LCD Pin 25 00143 #define Char34 25 // LCD Pin 24 00144 #define Char35 24 // LCD Pin 23 00145 #define Char36 0 // LCD Pin 22 00146 #endif 00147 00148 #ifdef GD5663AP 00149 #define CHAR1 0 // LCD Pin 1 00150 #define CHAR2 1 // LCD Pin 2 00151 #define CHAR3 2 // LCD Pin 3 00152 #define CHAR4 3 // LCD Pin 4 00153 #define CHAR5 4 // LCD Pin 5 00154 #define CHAR6 5 // LCD Pin 6 00155 #define CHAR7 6 // LCD Pin 7 00156 #define CHAR8 7 // LCD Pin 8 00157 #define CHAR9 8 // LCD Pin 9 00158 #define CHAR10 9 // LCD Pin 10 00159 #define CHAR11 10 // LCD Pin 11 00160 #define CHAR12 11 // LCD Pin 12 00161 #define CHAR13 12 // LCD Pin 13 00162 #define CHAR14 13 // LCD Pin 14 00163 #define CHAR15 14 // LCD Pin 15 00164 #define CHAR16 15 // LCD Pin 16 00165 #define CHAR17 16 // LCD Pin 17 00166 #define CHAR18 17 // LCD Pin 18 00167 #define CHAR19 18 // LCD Pin 19 00168 #define CHAR20 19 // LCD Pin 20 00169 #define CHAR21 20 // LCD Pin 21 00170 #define CHAR22 21 // LCD Pin 22 00171 #define CHAR23 32 // LCD Pin 36 00172 #define CHAR24 33 // LCD Pin 35 00173 #define CHAR25 34 // LCD Pin 34 00174 #define CHAR26 35 // LCD Pin 33 00175 #define CHAR27 36 // LCD Pin 32 00176 #define CHAR28 37 // LCD Pin 31 00177 #define CHAR29 38 // LCD Pin 30 00178 #define CHAR30 39 // LCD Pin 29 00179 #define CHAR31 40 // LCD Pin 28 00180 #define CHAR32 41 // LCD Pin 27 00181 #define CHAR33 42 // LCD Pin 26 00182 #define CHAR34 43 // LCD Pin 25 00183 #define CHAR35 44 // LCD Pin 24 00184 #define CHAR_S1 45 // LCD Pin 23 00185 00186 #define CHARCOM0 31 // LCD Pin 37 00187 #define CHARCOM1 30 // LCD Pin 38 00188 #define CHARCOM2 29 // LCD Pin 39 00189 #define CHARCOM3 28 // LCD Pin 40 00190 #define CHARCOM4 27 // LCD Pin 41 00191 #define CHARCOM5 26 // LCD Pin 42 00192 #define CHARCOM6 25 // LCD Pin 43 00193 #define CHARCOM7 24 // LCD Pin 44 00194 00195 /* Define which LCDWF are used as backplane (COM0 to COM7 are set as reference but is not configured here */ 00196 #define BP_COM0 31 00197 #define BP_COM1 30 00198 #define BP_COM2 29 00199 #define BP_COM3 28 00200 #define BP_COM4 27 00201 #define BP_COM5 26 00202 #define BP_COM6 25 00203 #define BP_COM7 24 00204 00205 #endif 00206 00207 00208 00209 00210 00211 00212 00213 // *((uint8_t *)&LCD_WF3TO0 + CHAR_S1) |= 0xFF; 00214 // *((uint8_t *)&LCD_WF3TO0 + CHAR_S1) |= 0x00; 00215 00216 00217 #define SymbolON(LCDn,bit) *((uint8 *)&LCD_WF3TO0 + LCDn) |= (1<<(bit)) 00218 #define SymbolOFF(LCDn,bit) *((uint8 *)&LCD_WF3TO0 + LCDn) &= ~(1<<(bit)) 00219 #define LCD_WF(x) *((uint8 *)&LCD_WF3TO0 + x) 00220 00221 00222 #define _LCD_FREESCALE_ON() SymbolON(CHAR_S1,0) 00223 #define _LCD_BATTERY_ON() SymbolON(CHAR_S1,1) 00224 #define _LCD_LEVEL4_ON() SymbolON(CHAR_S1,2) 00225 #define _LCD_LEVEL3_ON() SymbolON(CHAR_S1,3) 00226 #define _LCD_LEVEL2_ON() SymbolON(CHAR_S1,4) 00227 #define _LCD_LEVEL1_ON() SymbolON(CHAR_S1,5) 00228 #define _LCD_SNOW_ON() SymbolON(CHAR_S1,6) 00229 #define _LCD_FIRE_ON() SymbolON(CHAR_S1,7) 00230 00231 #define _LCD_FREESCALE_OFF() SymbolOFF(CHAR_S1,0) 00232 #define _LCD_BATTERY_OFF() SymbolOFF(CHAR_S1,1) 00233 #define _LCD_LEVEL4_OFF() SymbolOFF(CHAR_S1,2) 00234 #define _LCD_LEVEL3_OFF() SymbolOFF(CHAR_S1,3) 00235 #define _LCD_LEVEL2_OFF() SymbolOFF(CHAR_S1,4) 00236 #define _LCD_LEVEL1_OFF() SymbolOFF(CHAR_S1,5) 00237 #define _LCD_SNOW_OFF() SymbolOFF(CHAR_S1,6) 00238 #define _LCD_FIRE_OFF() SymbolOFF(CHAR_S1,7) 00239 00240 00241 // (LCDn, BitNumber) 00242 00243 00244 00245 #define MapSegment(SegmentName,Mask) (1<<(##Mask##)) 00246 00247 #define SEG1 MapSegment (0,0) 00248 #define SEG2 MapSegment (1,1) 00249 #define SEG3 MapSegment (2,2) 00250 #define SEG4 MapSegment (3,3) 00251 #define SEG5 MapSegment (4,4) 00252 #define SEG6 MapSegment (5,5) 00253 #define SEG7 MapSegment (6,6) 00254 #define SEG8 MapSegment (7,7) 00255 00256 00257 00258 00259 /*Map segment to COM mask*/ 00260 #define SEGB 0x01 00261 #define SEGC 0x02 00262 00263 #define SEGH 0x01 00264 #define SEGF 0x02 00265 #define SEGE 0x04 00266 #define SEGN 0x08 00267 00268 #define SEGA 0x01 00269 #define SEGJ 0x02 00270 #define SEGG 0x04 00271 #define SEGM 0x08 00272 00273 #define SEGK 0x01 00274 #define SEGL 0x02 00275 #define SEGD 0x04 00276 00277 00278 //Ascii table American Standar 00279 #define _ALLON (SEG1 | SEG2 | SEG3 | SEG4 | SEG5 | SEG6 | SEG7 | SEG8) 00280
Generated on Tue Jul 26 2022 03:58:29 by 1.7.2