lcd_f.h
Go to the documentation of this file.
1 /* --COPYRIGHT--,BSD
2  * Copyright (c) 2017, Texas Instruments Incorporated
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions
7  * are met:
8  *
9  * * Redistributions of source code must retain the above copyright
10  * notice, this list of conditions and the following disclaimer.
11  *
12  * * Redistributions in binary form must reproduce the above copyright
13  * notice, this list of conditions and the following disclaimer in the
14  * documentation and/or other materials provided with the distribution.
15  *
16  * * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
22  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
23  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
24  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25  * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26  * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
30  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  * --/COPYRIGHT--*/
32 #ifndef LCD_F_H_
33 #define LCD_F_H_
34 
35 #include <stdbool.h>
36 #include <stdint.h>
37 #include <ti/devices/msp432p4xx/inc/msp.h>
38 
39 /* Define to ensure that our current MSP432 has the LCD_F module. This
40  definition is included in the device specific header file */
41 #ifdef __MCU_HAS_LCD_F__
42 
43 //*****************************************************************************
44 //
47 //
48 //*****************************************************************************
49 
50 //*****************************************************************************
51 //
52 // If building with a C++ compiler, make all of the definitions in this header
53 // have a C binding.
54 //
55 //*****************************************************************************
56 #ifdef __cplusplus
57 extern "C"
58 {
59 #endif
60 
61 typedef struct LCD_F_initParam
62 {
69  uint32_t clockSource;
104  uint32_t clockDivider;
113  uint32_t clockPrescaler;
124  uint32_t muxRate;
129  uint32_t waveforms;
134  uint32_t segments;
135 } LCD_F_Config;
136 
137 //*****************************************************************************
138 //
139 // The following are values that can be passed to the initParams parameter for
140 // functions: LCD_F_initModule().
141 //
142 //*****************************************************************************
143 #define LCD_F_CLOCKSOURCE_ACLK (LCD_F_CTL_SSEL_0)
144 #define LCD_F_CLOCKSOURCE_VLOCLK (LCD_F_CTL_SSEL_1)
145 #define LCD_F_CLOCKSOURCE_REFOCLK (LCD_F_CTL_SSEL_2)
146 #define LCD_F_CLOCKSOURCE_LFXT (LCD_F_CTL_SSEL_3)
147 
148 
149 //*****************************************************************************
150 //
151 // The following are values that can be passed to the initParams parameter for
152 // functions: LCD_F_initModule().
153 //
154 //*****************************************************************************
155 #define LCD_F_CLOCKDIVIDER_1 0x0
156 #define LCD_F_CLOCKDIVIDER_2 0x800
157 #define LCD_F_CLOCKDIVIDER_3 0x1000
158 #define LCD_F_CLOCKDIVIDER_4 0x1800
159 #define LCD_F_CLOCKDIVIDER_5 0x2000
160 #define LCD_F_CLOCKDIVIDER_6 0x2800
161 #define LCD_F_CLOCKDIVIDER_7 0x3000
162 #define LCD_F_CLOCKDIVIDER_8 0x3800
163 #define LCD_F_CLOCKDIVIDER_9 0x4000
164 #define LCD_F_CLOCKDIVIDER_10 0x4800
165 #define LCD_F_CLOCKDIVIDER_11 0x5000
166 #define LCD_F_CLOCKDIVIDER_12 0x5800
167 #define LCD_F_CLOCKDIVIDER_13 0x6000
168 #define LCD_F_CLOCKDIVIDER_14 0x6800
169 #define LCD_F_CLOCKDIVIDER_15 0x7000
170 #define LCD_F_CLOCKDIVIDER_16 0x7800
171 #define LCD_F_CLOCKDIVIDER_17 0x8000
172 #define LCD_F_CLOCKDIVIDER_18 0x8800
173 #define LCD_F_CLOCKDIVIDER_19 0x9000
174 #define LCD_F_CLOCKDIVIDER_20 0x9800
175 #define LCD_F_CLOCKDIVIDER_21 0xa000
176 #define LCD_F_CLOCKDIVIDER_22 0xa800
177 #define LCD_F_CLOCKDIVIDER_23 0xb000
178 #define LCD_F_CLOCKDIVIDER_24 0xb800
179 #define LCD_F_CLOCKDIVIDER_25 0xc000
180 #define LCD_F_CLOCKDIVIDER_26 0xc800
181 #define LCD_F_CLOCKDIVIDER_27 0xd000
182 #define LCD_F_CLOCKDIVIDER_28 0xd800
183 #define LCD_F_CLOCKDIVIDER_29 0xe000
184 #define LCD_F_CLOCKDIVIDER_30 0xe800
185 #define LCD_F_CLOCKDIVIDER_31 0xf000
186 #define LCD_F_CLOCKDIVIDER_32 0xf800
187 
188 //*****************************************************************************
189 //
190 // The following are values that can be passed to the initParams parameter for
191 // functions: LCD_F_initModule().
192 //
193 //*****************************************************************************
194 #define LCD_F_CLOCKPRESCALER_1 (LCD_F_CTL_PRE_0)
195 #define LCD_F_CLOCKPRESCALER_2 (LCD_F_CTL_PRE_1)
196 #define LCD_F_CLOCKPRESCALER_4 (LCD_F_CTL_PRE_2)
197 #define LCD_F_CLOCKPRESCALER_8 (LCD_F_CTL_PRE_3)
198 #define LCD_F_CLOCKPRESCALER_16 (LCD_F_CTL_PRE_4)
199 #define LCD_F_CLOCKPRESCALER_32 (LCD_F_CTL_PRE_5)
200 
201 //*****************************************************************************
202 //
203 // The following are values that can be passed to the initParams parameter for
204 // functions: LCD_F_initModule().
205 //
206 //*****************************************************************************
207 #define LCD_F_STATIC (LCD_F_CTL_MX_0)
208 #define LCD_F_2_MUX (LCD_F_CTL_MX_1)
209 #define LCD_F_3_MUX (LCD_F_CTL_MX_2)
210 #define LCD_F_4_MUX (LCD_F_CTL_MX_3)
211 #define LCD_F_5_MUX (LCD_F_CTL_MX_4)
212 #define LCD_F_6_MUX (LCD_F_CTL_MX_5)
213 #define LCD_F_7_MUX (LCD_F_CTL_MX_6)
214 #define LCD_F_8_MUX (LCD_F_CTL_MX_7)
215 
216 //*****************************************************************************
217 //
218 // The following are values that can be passed to the v2v3v4Source parameter
219 // for functions: LCD_F_setVLCDSource().
220 //
221 //*****************************************************************************
222 #define LCD_F_V2V3V4_GENERATED_INTERNALLY_NOT_SWITCHED_TO_PINS (0x0)
223 #define LCD_F_V2V3V4_GENERATED_INTERNALLY_SWITCHED_TO_PINS (LCD_F_VCTL_REXT)
224 #define LCD_F_V2V3V4_SOURCED_EXTERNALLY (LCD_F_VCTL_EXTBIAS)
225 
226 //*****************************************************************************
227 //
228 // The following are values that can be passed to the v5Source parameter for
229 // functions: LCD_F_setVLCDSource().
230 //
231 //*****************************************************************************
232 #define LCD_F_V5_VSS (0x0)
233 #define LCD_F_V5_SOURCED_FROM_R03 (LCD_F_VCTL_R03EXT)
234 
235 //*****************************************************************************
236 //
237 // The following are values that can be passed to the initParams parameter for
238 // functions: LCD_F_initModule().
239 //
240 //*****************************************************************************
241 #define LCD_F_STANDARD_WAVEFORMS (0x0)
242 #define LCD_F_LOW_POWER_WAVEFORMS (LCD_F_CTL_LP)
243 
244 //*****************************************************************************
245 //
246 // The following are values that can be passed to the initParams parameter for
247 // functions: LCD_F_initModule().
248 //
249 //*****************************************************************************
250 #define LCD_F_SEGMENTS_DISABLED (0x0)
251 #define LCD_F_SEGMENTS_ENABLED (LCD_F_CTL_SON)
252 
253 //*****************************************************************************
254 //
255 // The following are values that can be passed to the mask parameter for
256 // functions: LCD_F_clearInterrupt(), LCD_F_getInterruptStatus(),
257 // LCD_F_enableInterrupt(), and LCD_F_disableInterrupt() as well as returned by
258 // the LCD_F_getInterruptStatus() function.
259 //
260 //*****************************************************************************
261 #define LCD_F_BLINKING_SEGMENTS_ON_INTERRUPT (LCD_F_IE_BLKONIE)
262 #define LCD_F_BLINKING_SEGMENTS_OFF_INTERRUPT (LCD_F_IE_BLKOFFIE)
263 #define LCD_F_FRAME_INTERRUPT (LCD_F_IE_FRMIE)
264 #define LCD_F_ANIMATION_LOOP_INTERRUPT (LCD_F_IE_ANMLOOPIE)
265 #define LCD_F_ANIMATION_STEP_INTERRUPT (LCD_F_IE_ANMSTPIE)
266 
267 //*****************************************************************************
268 //
269 // The following are values that can be passed to the displayMemory parameter
270 // for functions: LCD_F_selectDisplayMemory().
271 //
272 //*****************************************************************************
273 #define LCD_F_DISPLAYSOURCE_MEMORY (0x0)
274 #define LCD_F_DISPLAYSOURCE_BLINKINGMEMORY (0x1)
275 
276 //*****************************************************************************
277 //
278 // The following are values that can be passed to the clockPrescalar parameter
279 // for functions: LCD_F_setBlinkingControl().
280 //
281 //*****************************************************************************
282 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_512 LCD_F_BMCTL_BLKPRE_0
283 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_1024 LCD_F_BMCTL_BLKPRE_1
284 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_2048 LCD_F_BMCTL_BLKPRE_2
285 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_4096 LCD_F_BMCTL_BLKPRE_3
286 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_8162 LCD_F_BMCTL_BLKPRE_4
287 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_16384 LCD_F_BMCTL_BLKPRE_5
288 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_32768 LCD_F_BMCTL_BLKPRE_6
289 #define LCD_F_BLINK_FREQ_CLOCK_PRESCALAR_65536 LCD_F_BMCTL_BLKPRE_7
290 
291 //*****************************************************************************
292 //
293 // The following are values that can be passed to the clockPrescalar parameter
294 // for functions: LCD_F_setBlinkingControl().
295 //
296 //*****************************************************************************
297 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_1 LCD_F_BMCTL_BLKDIV_0
298 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_2 LCD_F_BMCTL_BLKDIV_1
299 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_3 LCD_F_BMCTL_BLKDIV_2
300 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_4 LCD_F_BMCTL_BLKDIV_3
301 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_5 LCD_F_BMCTL_BLKDIV_4
302 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_6 LCD_F_BMCTL_BLKDIV_5
303 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_7 LCD_F_BMCTL_BLKDIV_6
304 #define LCD_F_BLINK_FREQ_CLOCK_DIVIDER_8 LCD_F_BMCTL_BLKDIV_7
305 
306 //*****************************************************************************
307 //
308 // The following are values that can be passed to the mode parameter for
309 // functions: LCD_F_setBlinkingControl().
310 //
311 //*****************************************************************************
312 #define LCD_F_BLINK_MODE_DISABLED (LCD_F_BMCTL_BLKMOD_0)
313 #define LCD_F_BLINK_MODE_INDIVIDUAL_SEGMENTS (LCD_F_BMCTL_BLKMOD_1)
314 #define LCD_F_BLINK_MODE_ALL_SEGMENTS (LCD_F_BMCTL_BLKMOD_2)
315 #define LCD_F_BLINK_MODE_SWITCHING_BETWEEN_DISPLAY_CONTENTS \
316  (LCD_F_BMCTL_BLKMOD_3)
317 
318 //*****************************************************************************
319 //
320 // The following are values that can be passed to the clockPrescalar parameter
321 // for functions: LCD_F_setAnimationControl().
322 //
323 //*****************************************************************************
324 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_512 LCD_F_ANMCTL_ANMPRE_0
325 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_1024 LCD_F_ANMCTL_ANMPRE_1
326 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_2048 LCD_F_ANMCTL_ANMPRE_2
327 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_4096 LCD_F_ANMCTL_ANMPRE_3
328 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_8162 LCD_F_ANMCTL_ANMPRE_4
329 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_16384 LCD_F_ANMCTL_ANMPRE_5
330 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_32768 LCD_F_ANMCTL_ANMPRE_6
331 #define LCD_F_ANIMATION_FREQ_CLOCK_PRESCALAR_65536 LCD_F_ANMCTL_ANMPRE_7
332 
333 //*****************************************************************************
334 //
335 // The following are values that can be passed to the clockPrescalar parameter
336 // for functions: LCD_F_setAnimationControl().
337 //
338 //*****************************************************************************
339 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_1 LCD_F_ANMCTL_ANMDIV_0
340 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_2 LCD_F_ANMCTL_ANMDIV_1
341 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_3 LCD_F_ANMCTL_ANMDIV_2
342 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_4 LCD_F_ANMCTL_ANMDIV_3
343 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_5 LCD_F_ANMCTL_ANMDIV_4
344 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_6 LCD_F_ANMCTL_ANMDIV_5
345 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_7 LCD_F_ANMCTL_ANMDIV_6
346 #define LCD_F_ANIMATION_FREQ_CLOCK_DIVIDER_8 LCD_F_ANMCTL_ANMDIV_7
347 
348 //*****************************************************************************
349 //
350 // The following are values that can be passed to the mode parameter for
351 // functions: LCD_F_setAnimationControl().
352 //
353 //*****************************************************************************
354 #define LCD_F_ANIMATION_FRAMES_T0_TO_T7 LCD_F_ANMCTL_ANMSTP_7
355 #define LCD_F_ANIMATION_FRAMES_T0_TO_T6 LCD_F_ANMCTL_ANMSTP_6
356 #define LCD_F_ANIMATION_FRAMES_T0_TO_T5 LCD_F_ANMCTL_ANMSTP_5
357 #define LCD_F_ANIMATION_FRAMES_T0_TO_T4 LCD_F_ANMCTL_ANMSTP_4
358 #define LCD_F_ANIMATION_FRAMES_T0_TO_T3 LCD_F_ANMCTL_ANMSTP_3
359 #define LCD_F_ANIMATION_FRAMES_T0_TO_T2 LCD_F_ANMCTL_ANMSTP_2
360 #define LCD_F_ANIMATION_FRAMES_T0_TO_T1 LCD_F_ANMCTL_ANMSTP_1
361 #define LCD_F_ANIMATION_FRAMES_T0 LCD_F_ANMCTL_ANMSTP_0
362 
363 //*****************************************************************************
364 //
365 // The following are values that can be passed to the startPin parameter for
366 // functions: LCD_F_setPinsAsLCDFunction(); the endPin parameter for
367 // functions: LCD_F_setPinsAsLCDFunction(); the pin parameter for functions:
368 // LCD_F_setPinAsLCDFunction(), LCD_F_setPinAsPortFunction(),
369 // LCD_F_setPinAsCOM(), and LCD_F_setPinAsSEG().
370 //
371 //*****************************************************************************
372 #define LCD_F_SEGMENT_LINE_0 (0)
373 #define LCD_F_SEGMENT_LINE_1 (1)
374 #define LCD_F_SEGMENT_LINE_2 (2)
375 #define LCD_F_SEGMENT_LINE_3 (3)
376 #define LCD_F_SEGMENT_LINE_4 (4)
377 #define LCD_F_SEGMENT_LINE_5 (5)
378 #define LCD_F_SEGMENT_LINE_6 (6)
379 #define LCD_F_SEGMENT_LINE_7 (7)
380 #define LCD_F_SEGMENT_LINE_8 (8)
381 #define LCD_F_SEGMENT_LINE_9 (9)
382 #define LCD_F_SEGMENT_LINE_10 (10)
383 #define LCD_F_SEGMENT_LINE_11 (11)
384 #define LCD_F_SEGMENT_LINE_12 (12)
385 #define LCD_F_SEGMENT_LINE_13 (13)
386 #define LCD_F_SEGMENT_LINE_14 (14)
387 #define LCD_F_SEGMENT_LINE_15 (15)
388 #define LCD_F_SEGMENT_LINE_16 (16)
389 #define LCD_F_SEGMENT_LINE_17 (17)
390 #define LCD_F_SEGMENT_LINE_18 (18)
391 #define LCD_F_SEGMENT_LINE_19 (19)
392 #define LCD_F_SEGMENT_LINE_20 (20)
393 #define LCD_F_SEGMENT_LINE_21 (21)
394 #define LCD_F_SEGMENT_LINE_22 (22)
395 #define LCD_F_SEGMENT_LINE_23 (23)
396 #define LCD_F_SEGMENT_LINE_24 (24)
397 #define LCD_F_SEGMENT_LINE_25 (25)
398 #define LCD_F_SEGMENT_LINE_26 (26)
399 #define LCD_F_SEGMENT_LINE_27 (27)
400 #define LCD_F_SEGMENT_LINE_28 (28)
401 #define LCD_F_SEGMENT_LINE_29 (29)
402 #define LCD_F_SEGMENT_LINE_30 (30)
403 #define LCD_F_SEGMENT_LINE_31 (31)
404 #define LCD_F_SEGMENT_LINE_32 (32)
405 #define LCD_F_SEGMENT_LINE_33 (33)
406 #define LCD_F_SEGMENT_LINE_34 (34)
407 #define LCD_F_SEGMENT_LINE_35 (35)
408 #define LCD_F_SEGMENT_LINE_36 (36)
409 #define LCD_F_SEGMENT_LINE_37 (37)
410 #define LCD_F_SEGMENT_LINE_38 (38)
411 #define LCD_F_SEGMENT_LINE_39 (39)
412 #define LCD_F_SEGMENT_LINE_40 (40)
413 #define LCD_F_SEGMENT_LINE_41 (41)
414 #define LCD_F_SEGMENT_LINE_42 (42)
415 #define LCD_F_SEGMENT_LINE_43 (43)
416 #define LCD_F_SEGMENT_LINE_44 (44)
417 #define LCD_F_SEGMENT_LINE_45 (45)
418 #define LCD_F_SEGMENT_LINE_46 (46)
419 #define LCD_F_SEGMENT_LINE_47 (47)
420 
421 
422 //*****************************************************************************
423 //
424 // The following are values that can be passed to the com parameter for
425 // functions: LCD_F_setPinAsCOM().
426 //
427 //*****************************************************************************
428 #define LCD_F_MEMORY_COM0 (0x01)
429 #define LCD_F_MEMORY_COM1 (0x02)
430 #define LCD_F_MEMORY_COM2 (0x04)
431 #define LCD_F_MEMORY_COM3 (0x08)
432 #define LCD_F_MEMORY_COM4 (0x10)
433 #define LCD_F_MEMORY_COM5 (0x20)
434 #define LCD_F_MEMORY_COM6 (0x40)
435 #define LCD_F_MEMORY_COM7 (0x80)
436 
437 //*****************************************************************************
438 //
439 // The following are values that can be passed to the bias parameter for
440 // functions: LCD_F_selectBias().
441 //
442 //*****************************************************************************
443 #define LCD_F_BIAS_1_3 (0x0)
444 #define LCD_F_BIAS_1_2 (LCD_F_VCTL_LCD2B)
445 #define LCD_F_BIAS_1_4 (LCD_F_VCTL_LCD2B)
446 
447 /* Internal Macros for indexing */
448 #define OFS_LCDM0W 0x120
449 #define OFS_LCDBM0W 0x160
450 
451 //*****************************************************************************
452 //
463 //
464 //*****************************************************************************
465 extern void LCD_F_initModule(LCD_F_Config *initParams);
466 
467 //*****************************************************************************
468 //
474 //
475 //*****************************************************************************
476 extern void LCD_F_turnOn(void);
477 
478 //*****************************************************************************
479 //
485 //
486 //*****************************************************************************
487 extern void LCD_F_turnOff(void);
488 
489 /* Memory management functions */
490 
491 //*****************************************************************************
492 //
498 //
499 //*****************************************************************************
500 extern void LCD_F_clearAllMemory(void);
501 
502 //*****************************************************************************
503 //
509 //
510 //*****************************************************************************
511 extern void LCD_F_clearAllBlinkingMemory(void);
512 
513 //*****************************************************************************
514 //
530 //
531 //*****************************************************************************
532 extern void LCD_F_selectDisplayMemory(uint_fast16_t displayMemory);
533 
534 //*****************************************************************************
535 //
569 //
570 //*****************************************************************************
571 extern void LCD_F_setBlinkingControl(uint_fast16_t clockPrescalar,
572  uint_fast16_t divider, uint_fast16_t mode);
573 
574 //*****************************************************************************
575 //
613 //
614 //*****************************************************************************
615 extern void LCD_F_setAnimationControl(uint_fast16_t clockPrescalar,
616  uint_fast16_t divider,
617  uint_fast16_t frames);
618 
619 //*****************************************************************************
620 //
626 //
627 //*****************************************************************************
628 extern void LCD_F_enableAnimation(void);
629 
630 
631 //*****************************************************************************
632 //
638 //
639 //*****************************************************************************
640 extern void LCD_F_disableAnimation(void);
641 
642 //*****************************************************************************
643 //
649 //
650 //*****************************************************************************
651 extern void LCD_F_clearAllAnimationMemory(void);
652 
653 //*****************************************************************************
654 //
711 //
712 //*****************************************************************************
713 extern void LCD_F_setPinAsLCDFunction(uint_fast8_t pin);
714 
715 //*****************************************************************************
716 //
772 //
773 //*****************************************************************************
774 extern void LCD_F_setPinAsPortFunction(uint_fast8_t pin);
775 
776 //*****************************************************************************
777 //
885 //
886 //*****************************************************************************
887 extern void LCD_F_setPinsAsLCDFunction(uint_fast8_t startPin, uint8_t endPin);
888 
889 //*****************************************************************************
890 //
958 //
959 //*****************************************************************************
960 extern void LCD_F_setPinAsCOM(uint8_t pin, uint_fast8_t com);
961 
962 //*****************************************************************************
963 //
1020 //
1021 //*****************************************************************************
1022 extern void LCD_F_setPinAsSEG(uint_fast8_t pin);
1023 
1024 //*****************************************************************************
1025 //
1038 //
1039 //*****************************************************************************
1040 extern void LCD_F_selectBias(uint_fast16_t bias);
1041 
1042 //*****************************************************************************
1043 //
1058 //
1059 //*****************************************************************************
1060 extern void LCD_F_setVLCDSource(uint_fast16_t v2v3v4Source,
1061  uint_fast16_t v5Source);
1062 
1063 //*****************************************************************************
1064 //
1078 //
1079 //*****************************************************************************
1080 extern void LCD_F_clearInterrupt(uint32_t mask);
1081 
1082 //*****************************************************************************
1083 //
1094 //
1095 //*****************************************************************************
1096 extern uint32_t LCD_F_getInterruptStatus(void);
1097 
1098 //*****************************************************************************
1099 //
1109 //
1110 //*****************************************************************************
1111 extern uint32_t LCD_F_getEnabledInterruptStatus(void);
1112 
1113 //*****************************************************************************
1114 //
1128 //
1129 //*****************************************************************************
1130 extern void LCD_F_enableInterrupt(uint32_t mask);
1131 
1132 //*****************************************************************************
1133 //
1147 //
1148 //*****************************************************************************
1149 extern void LCD_F_disableInterrupt(uint32_t mask);
1150 
1151 //*****************************************************************************
1152 //
1165 //
1166 //*****************************************************************************
1167 extern void LCD_F_registerInterrupt(void (*intHandler)(void));
1168 
1169 //*****************************************************************************
1170 //
1181 //
1182 //*****************************************************************************
1183 extern void LCD_F_unregisterInterrupt(void);
1184 
1185 //*****************************************************************************
1186 //
1187 // Mark the end of the C bindings section for C++ compilers.
1188 //
1189 //*****************************************************************************
1190 #ifdef __cplusplus
1191 }
1192 #endif
1193 
1194 //*****************************************************************************
1195 //
1196 // Close the Doxygen group.
1198 //
1199 //*****************************************************************************
1200 
1201 #endif /* __MCU_HAS_LCD_F__ */
1202 
1203 #endif /* LCD_F_H_ */
void LCD_F_setAnimationControl(uint_fast16_t clockPrescalar, uint_fast16_t divider, uint_fast16_t frames)
Sets the animation control register.
Definition: lcd_f.c:89
void LCD_F_setPinsAsLCDFunction(uint_fast8_t startPin, uint8_t endPin)
Sets the LCD_F pins as LCD function pin.
Definition: lcd_f.c:146
void LCD_F_clearAllAnimationMemory(void)
Clears all LCD_F animation memory registers.
Definition: lcd_f.c:108
void LCD_F_setPinAsSEG(uint_fast8_t pin)
Sets the LCD_F pin as a segment line.
Definition: lcd_f.c:194
void LCD_F_clearInterrupt(uint32_t mask)
Clears the LCD_F selected interrupt flags.
Definition: lcd_f.c:225
void LCD_F_setPinAsPortFunction(uint_fast8_t pin)
Sets the LCD_F pins as port function pin.
Definition: lcd_f.c:130
void LCD_F_setBlinkingControl(uint_fast16_t clockPrescalar, uint_fast16_t divider, uint_fast16_t mode)
Sets the blinking control register.
Definition: lcd_f.c:80
void LCD_F_enableAnimation(void)
Enables animation on the LCD_F controller.
Definition: lcd_f.c:98
uint32_t clockPrescaler
Definition: lcd_f.h:113
void LCD_F_disableInterrupt(uint32_t mask)
Disables the LCD_F selected interrupts.
Definition: lcd_f.c:246
struct LCD_F_initParam LCD_F_Config
uint32_t muxRate
Definition: lcd_f.h:124
void LCD_F_unregisterInterrupt(void)
Definition: lcd_f.c:257
void LCD_F_setPinAsCOM(uint8_t pin, uint_fast8_t com)
Sets the LCD_F pin as a common line.
Definition: lcd_f.c:173
void LCD_F_initModule(LCD_F_Config *initParams)
Initializes the LCD_F Module.
Definition: lcd_f.c:41
void LCD_F_setPinAsLCDFunction(uint_fast8_t pin)
Sets the LCD_F pins as LCD function pin.
Definition: lcd_f.c:114
uint32_t clockDivider
Definition: lcd_f.h:104
void LCD_F_selectBias(uint_fast16_t bias)
Selects the bias level.
Definition: lcd_f.c:210
void LCD_F_disableAnimation(void)
Enables animation on the LCD_F controller.
Definition: lcd_f.c:103
void LCD_F_selectDisplayMemory(uint_fast16_t displayMemory)
Selects display memory.
Definition: lcd_f.c:75
uint32_t clockSource
Definition: lcd_f.h:69
uint32_t LCD_F_getEnabledInterruptStatus(void)
Returns the status of the selected interrupt flags masked with the currently enabled interrupts...
Definition: lcd_f.c:235
void LCD_F_enableInterrupt(uint32_t mask)
Enables the LCD_F selected interrupts.
Definition: lcd_f.c:241
void LCD_F_turnOff(void)
Turns the LCD_F off.
Definition: lcd_f.c:59
void LCD_F_clearAllBlinkingMemory(void)
Clears all LCD_F blinking memory registers.
Definition: lcd_f.c:70
Definition: lcd_f.h:61
void LCD_F_turnOn(void)
Turns on the LCD_F module.
Definition: lcd_f.c:54
void LCD_F_registerInterrupt(void(*intHandler)(void))
Definition: lcd_f.c:251
uint32_t LCD_F_getInterruptStatus(void)
Returns the status of the selected interrupt flags.
Definition: lcd_f.c:230
void LCD_F_setVLCDSource(uint_fast16_t v2v3v4Source, uint_fast16_t v5Source)
Sets the voltage source for V2/V3/V4 and V5.
Definition: lcd_f.c:216
uint32_t waveforms
Definition: lcd_f.h:129
void LCD_F_clearAllMemory(void)
Clears all LCD_F memory registers.
Definition: lcd_f.c:65
uint32_t segments
Definition: lcd_f.h:134

Copyright 2019, Texas Instruments Incorporated