/**
|
******************************************************************************
|
* @file fm33a0xxev_lcd.h
|
* @author FM33A0XXEV Application Team
|
* @version V1.0.0
|
* @date 16-April-2020
|
* @brief This file contains all the functions prototypes for the LCD firmware library.
|
******************************************************************************
|
*/
|
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
|
#ifndef __FM33A0XXEV_LCD_H
|
#define __FM33A0XXEV_LCD_H
|
|
|
#ifdef __cplusplus
|
extern "C" {
|
#endif
|
|
/* Includes ------------------------------------------------------------------*/
|
|
#include "FM33A0XXEV.h"
|
|
#define LCD_CR_SCSEL_Pos 20/* µçÈÝÇý¶¯Ä£Ê½£¬Çý¶¯ÆµÂÊ
|
000£ºÆµÂÊΪ֡Ƶ*COMÊý
|
001£ºÆµÂÊΪLSCLK/8
|
010£ºÆµÂÊΪLSCLK/16
|
011£ºÆµÂÊΪLSCLK/32
|
100£ºÆµÂÊΪLSCLK/64
|
101£ºÆµÂÊΪLSCLK/128
|
110£ºÆµÂÊΪLSCLK/256
|
111£ºÆµÂÊΪLSCLK/512Ïà¹Øº¯Êý */
|
#define LCD_CR_SCSEL_Msk (0x7U << LCD_CR_SCSEL_Pos)
|
#define LCD_CR_SCSEL_LSCLK_COM (0x0U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪ֡Ƶ*COMÊý */
|
#define LCD_CR_SCSEL_LSCLK_8 (0x1U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/8*/
|
#define LCD_CR_SCSEL_LSCLK_16 (0x2U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/16 */
|
#define LCD_CR_SCSEL_LSCLK_32 (0x3U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/32 */
|
#define LCD_CR_SCSEL_LSCLK_64 (0x4U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/64 */
|
#define LCD_CR_SCSEL_LSCLK_128 (0x5U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/128 */
|
#define LCD_CR_SCSEL_LSCLK_256 (0x6U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/256 */
|
#define LCD_CR_SCSEL_LSCLK_512 (0x7U << LCD_CR_SCSEL_Pos) /* ƵÂÊΪLSCLK/512 */
|
|
#define LCD_CR_SC_CTRL_Pos 18/* µçÈÝÇý¶¯Ä£Ê½£¬Çý¶¯·½Ê½¿ØÖÆ
|
00£ºµ¥´ÎÇý¶¯
|
01£ºÁ¬ÐøÇý¶¯2´Î
|
10£ºÁ¬ÐøÇý¶¯4´Î
|
11£º¶à´ÎÇý¶¯ Ïà¹Øº¯Êý */
|
#define LCD_CR_SC_CTRL_Msk (0x3U << LCD_CR_SC_CTRL_Pos)
|
#define LCD_CR_SC_CTRL_S0 (0x0U << LCD_CR_SC_CTRL_Pos) /* µ¥´ÎÇý¶¯ */
|
#define LCD_CR_SC_CTRL_S1 (0x1U << LCD_CR_SC_CTRL_Pos) /* Á¬ÐøÇý¶¯2´Î*/
|
#define LCD_CR_SC_CTRL_S2 (0x2U << LCD_CR_SC_CTRL_Pos) /* Á¬ÐøÇý¶¯4´Î */
|
#define LCD_CR_SC_CTRL_S3 (0x3U << LCD_CR_SC_CTRL_Pos) /* ¶à´ÎÇý¶¯ */
|
|
|
#define LCD_CR_IC_CTRL_Pos 16 /* Æ«Öõç·ÊäÈëµçÁ÷Ô´´óС¿ØÖÆ (Input bias Current Control)
|
00£ºµçÁ÷×î´ó
|
01£ºµçÁ÷´Î´ó
|
10£ºµçÁ÷´ÎС
|
11£ºµçÁ÷×îС */
|
#define LCD_CR_IC_CTRL_Msk (0x3U << LCD_CR_IC_CTRL_Pos)
|
#define LCD_CR_IC_CTRL_L3 (0x0U << LCD_CR_IC_CTRL_Pos) /* µçÁ÷×î´ó */
|
#define LCD_CR_IC_CTRL_L2 (0x1U << LCD_CR_IC_CTRL_Pos) /* µçÁ÷´Î´ó */
|
#define LCD_CR_IC_CTRL_L1 (0x2U << LCD_CR_IC_CTRL_Pos) /* µçÁ÷´ÎС */
|
#define LCD_CR_IC_CTRL_L0 (0x3U << LCD_CR_IC_CTRL_Pos) /* µçÁ÷×îС */
|
|
#define LCD_CR_ENMODE_Pos 15 /* Çý¶¯Ä£Ê½Ñ¡Ôñ (LCD Enabling Mode)
|
0£ºRFU
|
1£ºÆ¬ÄÚµç×èÐÍÇý¶¯ */
|
#define LCD_CR_ENMODE_Msk (0x1U << LCD_CR_ENMODE_Pos)
|
#define LCD_CR_ENMODE_EXTERNALCAP (0x0U << LCD_CR_ENMODE_Pos) /* 0 = ƬÍâµçÈÝÇý¶¯ */
|
#define LCD_CR_ENMODE_INNERRESISTER (0x1U << LCD_CR_ENMODE_Pos) /* 1 = ƬÄÚµç×èÐÍÇý¶¯ */
|
|
#define LCD_CR_FLICK_Pos 14 /* ÏÔʾÉÁ˸ʹÄÜλ (LCD Flick Enable)
|
1£ºÏÔʾÉÁ˸£¬ÉÁ˸ƵÂÊÓÉTONºÍTOFF¼Ä´æÆ÷ÉèÖÃ
|
0£º¹Ø±ÕÉÁ˸ */
|
#define LCD_CR_FLICK_Msk (0x1U << LCD_CR_FLICK_Pos)
|
/* ÏÔʾÉÁ˸£¬ÉÁ˸ƵÂÊÓÉTONºÍTOFF¼Ä´æÆ÷ÉèÖà */
|
/* ¹Ø±ÕÉÁ˸ */
|
|
#define LCD_CR_BIAS_Pos 8 /* LCDÆ«ÖÃµçÆ½Ñ¡Ôñ룬ÓÃÓÚÏÔʾ»Ò¶È¿ØÖÆ (LCD Bias Voltage Select) */
|
#define LCD_CR_BIAS_Msk (0xfU << LCD_CR_BIAS_Pos)
|
|
#define LCD_CR_BIASMD_Pos 5 /* Æ«ÖÃÀàÐÍÑ¡Ôñ (Bias Mode)
|
1£º1/3 Bias
|
0£º1/4 Bias */
|
#define LCD_CR_BIASMD_Msk (0x1U << LCD_CR_BIASMD_Pos)
|
#define LCD_CR_BIASMD_3BIAS (0x1U << LCD_CR_BIASMD_Pos) /* 1/3 Bias */
|
#define LCD_CR_BIASMD_4BIAS (0x0U << LCD_CR_BIASMD_Pos) /* 1/4 Bias */
|
|
#define LCD_CR_ANTIPOLAR_Pos 4 /* ·À¼«»¯Ê¹ÄÜ (Anti-Polarization)
|
1£ºCOMºÍSEGÔÚLCD¹Ø±ÕÇé¿öϽӵØ
|
0£ºCOMºÍSEGÔÚLCD¹Ø±ÕÇé¿öϸ¡¿Õ */
|
#define LCD_CR_ANTIPOLAR_Msk (0x1U << LCD_CR_ANTIPOLAR_Pos)
|
#define LCD_CR_ANTIPOLAR_GND (0x1U << LCD_CR_ANTIPOLAR_Pos) /* COMºÍSEGÔÚLCD¹Ø±ÕÇé¿öÏÂ½ÓµØ */
|
#define LCD_CR_ANTIPOLAR_FLOAT (0x0U << LCD_CR_ANTIPOLAR_Pos) /* COMºÍSEGÔÚLCD¹Ø±ÕÇé¿öϸ¡¿Õ */
|
|
#define LCD_CR_WFT_Pos 3 /* Çý¶¯²¨ÐÎÑ¡Ôñ (Waveform Format)
|
1£ºBÀನÐÎ
|
0£ºAÀನÐÎ */
|
#define LCD_CR_WFT_Msk (0x1U << LCD_CR_WFT_Pos)
|
#define LCD_CR_WFT_BTYPE (0x1U << LCD_CR_WFT_Pos) /* BÀನÐÎ */
|
#define LCD_CR_WFT_ATYPE (0x0U << LCD_CR_WFT_Pos) /* AÀನÐÎ */
|
|
#define LCD_CR_LMUX_Pos 1 /* COMÊýÁ¿Ñ¡Ôñ (Segment Line Mux)
|
00£º4COM
|
01£º6COM
|
10/11£º8COM */
|
#define LCD_CR_LMUX_Msk (0x3U << LCD_CR_LMUX_Pos)
|
#define LCD_CR_LMUX_4COM (0x0U << LCD_CR_LMUX_Pos) /* 4COM */
|
#define LCD_CR_LMUX_6COM (0x1U << LCD_CR_LMUX_Pos) /* 6COM */
|
#define LCD_CR_LMUX_8COM (0x2U << LCD_CR_LMUX_Pos) /* 8COM */
|
|
|
#define LCD_CR_EN_Pos 0 /* LCDÏÔʾʹÄÜλ (LCD Enable)
|
1£ºÆô¶¯LCDÏÔʾ
|
0£º¹Ø±ÕLCDÏÔʾ */
|
#define LCD_CR_EN_Msk (0x1U << LCD_CR_EN_Pos)
|
/* Æô¶¯LCDÏÔʾ */
|
/* ¹Ø±ÕLCDÏÔʾ */
|
|
#define LCD_TEST_LCCTRL_Pos 7 /* LCD²âÊÔ¿ØÖÆÎ»£¬½öÔÚ²âÊÔģʽÏÂÓÐЧ (Line Constant Control)
|
COM¡¢SEGÊä³öµçƽÓɲâÊÔģʽϵÄÒý½ÅÊä³öÊý¾Ý¼Ä´æÆ÷¾ö¶¨¡£²»Í¬ÉèÖÃÏÂSEG»òCOMÊä³öµÄ½á¹û²Î¼ûºóÎıí¸ñ¡£ */
|
#define LCD_TEST_LCCTRL_Msk (0x1U << LCD_TEST_LCCTRL_Pos)
|
#define LCD_TEST_LCCTRL_LOW (0x0U << LCD_TEST_LCCTRL_Pos)
|
#define LCD_TEST_LCCTRL_HIGH (0x1U << LCD_TEST_LCCTRL_Pos)
|
|
#define LCD_TEST_TESTEN_Pos 0 /* ²âÊÔģʽʹÄÜλ (Test mode Enable)
|
1£ºLCD²âÊÔģʽʹÄÜ¡£ÔÚLCD²âÊÔģʽÏ£¬LCDÒý½Å¾²Ì¬Êä³öÄ£ÄâÖ±Á÷µçƽ£¬ËùÓÐÓ붯̬ɨÃèʱ¼äÒÔ¼°É¨Ã貨ÐÎÏà¹Ø¼Ä´æÆ÷ÉèÖÃÎÞЧ
|
0£ºÕý³£¹¤×÷ģʽ£¬²âÊÔģʽÎÞЧ£¬Ïà¹Ø²âÊԼĴæÆ÷¿ØÖÆÎÞЧ */
|
#define LCD_TEST_TESTEN_Msk (0x1U << LCD_TEST_TESTEN_Pos)
|
/* LCD²âÊÔģʽʹÄÜ¡£ÔÚLCD²âÊÔģʽÏ£¬LCDÒý½Å¾²Ì¬Êä³öÄ£ÄâÖ±Á÷µçƽ£¬ËùÓÐÓ붯̬ɨÃèʱ¼äÒÔ¼°É¨Ã貨ÐÎÏà¹Ø¼Ä´æÆ÷ÉèÖÃÎÞЧ */
|
/* Õý³£¹¤×÷ģʽ£¬²âÊÔģʽÎÞЧ£¬Ïà¹Ø²âÊԼĴæÆ÷¿ØÖÆÎÞЧ */
|
|
#define LCD_FCR_DF_Pos 0 /* ÏÔʾԤ·ÖƵ¼Ä´æÆ÷ (Display Frequency) */
|
#define LCD_FCR_DF_Msk (0xffU << LCD_FCR_DF_Pos)
|
|
#define LCD_FLKT_TOFF_Pos 8 /* ÉÁ˸ÏÔʾϨÃðʱ¼ä¼Ä´æÆ÷ (Display-Off Time)
|
TOFF×îС²½³¤ÎªTstep = COM*DF[7:0]*2*16/32768Hz£¬Êµ¼ÊOFFʱ¼äΪTOFF * Tstep */
|
#define LCD_FLKT_TOFF_Msk (0xffU << LCD_FLKT_TOFF_Pos)
|
|
#define LCD_FLKT_TON_Pos 0 /* ÉÁ˸ÏÔʾµãÁÁʱ¼ä¼Ä´æÆ÷ (Display-On Time)
|
TON×îС²½³¤ÎªTstep = COM*DF[7:0]*2*16/32768Hz£¬Êµ¼ÊONʱ¼äΪTON * Tstep */
|
#define LCD_FLKT_TON_Msk (0xffU << LCD_FLKT_TON_Pos)
|
|
#define LCD_IER_DONIE_Pos 1 /* ÏÔʾµãÁÁÖжÏʹÄÜλ (Display-On Interrupt Enable)
|
1£ºÏÔʾµãÁÁÖжÏʹÄÜ
|
0£ºÏÔʾµãÁÁÖжϽûÖ¹ */
|
#define LCD_IER_DONIE_Msk (0x1U << LCD_IER_DONIE_Pos)
|
/* ÏÔʾµãÁÁÖжÏʹÄÜ */
|
/* ÏÔʾµãÁÁÖжϽûÖ¹ */
|
|
#define LCD_IER_DOFFIE_Pos 0 /* ÏÔʾϨÃðÖжÏʹÄÜλ (Display-OFF Interrupt Enable)
|
1£ºÏÔʾϨÃðÖжÏʹÄÜ
|
0£ºÏÔʾϨÃðÖжϽûÖ¹ */
|
#define LCD_IER_DOFFIE_Msk (0x1U << LCD_IER_DOFFIE_Pos)
|
/* ÏÔʾϨÃðÖжÏʹÄÜ */
|
/* ÏÔʾϨÃðÖжϽûÖ¹ */
|
|
#define LCD_ISR_DONIF_Pos 1 /* ÏÔʾµãÁÁÖжϱêÖ¾ (Display-On Interrupt Flag,write 1 to clear)
|
ÏÔʾÓÉÃð±äÁÁʱӲ¼þ²úÉúÖжϱêÖ¾£¬Ó²¼þÖÃ룬Èí¼þÇåÁã */
|
#define LCD_ISR_DONIF_Msk (0x1U << LCD_ISR_DONIF_Pos)
|
|
#define LCD_ISR_DOFFIF_Pos 0 /* ÏÔʾϨÃðÖжϱêÖ¾ (Display-OFF Interrupt Flag,write 1 to clear)
|
ÏÔʾÓÉÁÁ±äÃðʱӲ¼þ²úÉúÖжϱêÖ¾£¬Ó²¼þÖÃ룬Èí¼þÇåÁã */
|
#define LCD_ISR_DOFFIF_Msk (0x1U << LCD_ISR_DOFFIF_Pos)
|
|
#define LCD_BSTCR_OSC_CFG_Pos 12
|
#define LCD_BSTCR_OSC_CFG_Msk (0xfU << LCD_BSTCR_OSC_CFG_Pos)
|
|
#define LCD_BSTCR_BUF_OFF_Pos 9
|
#define LCD_BSTCR_BUF_OFF_Msk (0x1U << LCD_BSTCR_BUF_OFF_Pos)
|
|
#define LCD_BSTCR_BUFBYP_Pos 8
|
#define LCD_BSTCR_BUFBYP_Msk (0x1U << LCD_BSTCR_BUFBYP_Pos)
|
|
#define LCD_BSTCR_VLCDPD_Pos 7
|
#define LCD_BSTCR_VLCDPD_Msk (0x1U << LCD_BSTCR_VLCDPD_Pos)
|
|
#define LCD_BSTCR_VLCDCFG_Pos 2
|
#define LCD_BSTCR_VLCDCFG_Msk (0x1fU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_2_4V (0x0U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_2_6V (0x1U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_2_8V (0x2U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_3_0V (0x3U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_3_2V (0x4U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_3_4V (0x5U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_3_6V (0x6U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_3_8V (0x7U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_4_0V (0x8U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_4_2V (0x9U << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_4_4V (0xaU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_4_6V (0xbU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_4_8V (0xcU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_5_0V (0xdU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_5_2V (0xeU << LCD_BSTCR_VLCDCFG_Pos)
|
#define LCD_BSTCR_VLCDCFG_5_4V (0xfU << LCD_BSTCR_VLCDCFG_Pos)
|
|
#define LCD_BSTCR_BOOST_TEN_Pos 1
|
#define LCD_BSTCR_BOOST_TEN_Msk (0x1U << LCD_BSTCR_BOOST_TEN_Pos)
|
|
#define LCD_BSTCR_BOOST_EN_Pos 0
|
#define LCD_BSTCR_BOOST_EN_Msk (0x1U << LCD_BSTCR_BOOST_EN_Pos)
|
|
#define LCD_COM_EN_COMEN_Pos 0 /* LCD COM0~3Êä³öʹÄÜ¿ØÖÆ */
|
#define LCD_COM_EN_COMEN_Msk (0xfU << LCD_COM_EN_COMEN_Pos)
|
|
#define LCD_SEG_EN0_SEGENx_Pos 0 /* LCD SEG0~31Êä³öʹÄÜ¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGENx_Msk (0xffffffffU << LCD_SEG_EN0_SEGENx_Pos)
|
|
#define LCD_SEG_EN1_SEGENx_Pos 0 /* LCD SEG32~43,COM4~7Êä³öʹÄÜ¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGENx_Msk (0xfffU << LCD_SEG_EN1_SEGENx_Pos)
|
|
#define LCD_COM_EN_COMEN3_Pos 3 /* COM3Êä³ö¿ØÖÆ@4\6\8COMģʽ */
|
#define LCD_COM_EN_COMEN3_Msk (0x1U << LCD_COM_EN_COMEN3_Pos)
|
|
#define LCD_COM_EN_COMEN2_Pos 2 /* COM2Êä³ö¿ØÖÆ@4\6\8COMģʽ */
|
#define LCD_COM_EN_COMEN2_Msk (0x1U << LCD_COM_EN_COMEN2_Pos)
|
|
#define LCD_COM_EN_COMEN1_Pos 1 /* COM1Êä³ö¿ØÖÆ@4\6\8COMģʽ */
|
#define LCD_COM_EN_COMEN1_Msk (0x1U << LCD_COM_EN_COMEN1_Pos)
|
|
#define LCD_COM_EN_COMEN0_Pos 0 /* COM0Êä³ö¿ØÖÆ@4\6\8COMģʽ */
|
#define LCD_COM_EN_COMEN0_Msk (0x1U << LCD_COM_EN_COMEN0_Pos)
|
|
#define LCD_SEG_EN0_SEGEN31_Pos 31 /* SEG31Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN31_Msk (0x1U << LCD_SEG_EN0_SEGEN31_Pos)
|
|
#define LCD_SEG_EN0_SEGEN30_Pos 30 /* SEG30Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN30_Msk (0x1U << LCD_SEG_EN0_SEGEN30_Pos)
|
|
#define LCD_SEG_EN0_SEGEN29_Pos 29 /* SEG29Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN29_Msk (0x1U << LCD_SEG_EN0_SEGEN29_Pos)
|
|
#define LCD_SEG_EN0_SEGEN28_Pos 28 /* SEG28Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN28_Msk (0x1U << LCD_SEG_EN0_SEGEN28_Pos)
|
|
#define LCD_SEG_EN0_SEGEN27_Pos 27 /* SEG27Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN27_Msk (0x1U << LCD_SEG_EN0_SEGEN27_Pos)
|
|
#define LCD_SEG_EN0_SEGEN26_Pos 26 /* SEG26Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN26_Msk (0x1U << LCD_SEG_EN0_SEGEN26_Pos)
|
|
#define LCD_SEG_EN0_SEGEN25_Pos 25 /* SEG25Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN25_Msk (0x1U << LCD_SEG_EN0_SEGEN25_Pos)
|
|
#define LCD_SEG_EN0_SEGEN24_Pos 24 /* SEG24Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN24_Msk (0x1U << LCD_SEG_EN0_SEGEN24_Pos)
|
|
#define LCD_SEG_EN0_SEGEN23_Pos 23 /* SEG23Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN23_Msk (0x1U << LCD_SEG_EN0_SEGEN23_Pos)
|
|
#define LCD_SEG_EN0_SEGEN22_Pos 22 /* SEG22Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN22_Msk (0x1U << LCD_SEG_EN0_SEGEN22_Pos)
|
|
#define LCD_SEG_EN0_SEGEN21_Pos 21 /* SEG21Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN21_Msk (0x1U << LCD_SEG_EN0_SEGEN21_Pos)
|
|
#define LCD_SEG_EN0_SEGEN20_Pos 20 /* SEG20Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN20_Msk (0x1U << LCD_SEG_EN0_SEGEN20_Pos)
|
|
#define LCD_SEG_EN0_SEGEN19_Pos 19 /* SEG19Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN19_Msk (0x1U << LCD_SEG_EN0_SEGEN19_Pos)
|
|
#define LCD_SEG_EN0_SEGEN18_Pos 18 /* SEG18Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN18_Msk (0x1U << LCD_SEG_EN0_SEGEN18_Pos)
|
|
#define LCD_SEG_EN0_SEGEN17_Pos 17 /* SEG17Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN17_Msk (0x1U << LCD_SEG_EN0_SEGEN17_Pos)
|
|
#define LCD_SEG_EN0_SEGEN16_Pos 16 /* SEG16Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN16_Msk (0x1U << LCD_SEG_EN0_SEGEN16_Pos)
|
|
#define LCD_SEG_EN0_SEGEN15_Pos 15 /* SEG15Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN15_Msk (0x1U << LCD_SEG_EN0_SEGEN15_Pos)
|
|
#define LCD_SEG_EN0_SEGEN14_Pos 14 /* SEG14Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN14_Msk (0x1U << LCD_SEG_EN0_SEGEN14_Pos)
|
|
#define LCD_SEG_EN0_SEGEN13_Pos 13 /* SEG13Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN13_Msk (0x1U << LCD_SEG_EN0_SEGEN13_Pos)
|
|
#define LCD_SEG_EN0_SEGEN12_Pos 12 /* SEG12Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN12_Msk (0x1U << LCD_SEG_EN0_SEGEN12_Pos)
|
|
#define LCD_SEG_EN0_SEGEN11_Pos 11 /* SEG11Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN11_Msk (0x1U << LCD_SEG_EN0_SEGEN11_Pos)
|
|
#define LCD_SEG_EN0_SEGEN10_Pos 10 /* SEG10Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN10_Msk (0x1U << LCD_SEG_EN0_SEGEN10_Pos)
|
|
#define LCD_SEG_EN0_SEGEN9_Pos 9 /* SEG9Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN9_Msk (0x1U << LCD_SEG_EN0_SEGEN9_Pos)
|
|
#define LCD_SEG_EN0_SEGEN8_Pos 8 /* SEG8Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN8_Msk (0x1U << LCD_SEG_EN0_SEGEN8_Pos)
|
|
#define LCD_SEG_EN0_SEGEN7_Pos 7 /* SEG7Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN7_Msk (0x1U << LCD_SEG_EN0_SEGEN7_Pos)
|
|
#define LCD_SEG_EN0_SEGEN6_Pos 6 /* SEG6Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN6_Msk (0x1U << LCD_SEG_EN0_SEGEN6_Pos)
|
|
#define LCD_SEG_EN0_SEGEN5_Pos 5 /* SEG5Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN5_Msk (0x1U << LCD_SEG_EN0_SEGEN5_Pos)
|
|
#define LCD_SEG_EN0_SEGEN4_Pos 4 /* SEG4Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN4_Msk (0x1U << LCD_SEG_EN0_SEGEN4_Pos)
|
|
#define LCD_SEG_EN0_SEGEN3_Pos 3 /* SEG3Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN3_Msk (0x1U << LCD_SEG_EN0_SEGEN3_Pos)
|
|
#define LCD_SEG_EN0_SEGEN2_Pos 2 /* SEG2Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN2_Msk (0x1U << LCD_SEG_EN0_SEGEN2_Pos)
|
|
#define LCD_SEG_EN0_SEGEN1_Pos 1 /* SEG1Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN1_Msk (0x1U << LCD_SEG_EN0_SEGEN1_Pos)
|
|
#define LCD_SEG_EN0_SEGEN0_Pos 0 /* SEG0Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN0_SEGEN0_Msk (0x1U << LCD_SEG_EN0_SEGEN0_Pos)
|
|
#define LCD_SEG_EN1_SEGEN43_Pos 11 /* SEG43Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN43_Msk (0x1U << LCD_SEG_EN1_SEGEN43_Pos)
|
|
#define LCD_SEG_EN1_SEGEN42_Pos 10 /* SEG42Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN42_Msk (0x1U << LCD_SEG_EN1_SEGEN42_Pos)
|
|
#define LCD_SEG_EN1_SEGEN41_Pos 9 /* SEG41Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN41_Msk (0x1U << LCD_SEG_EN1_SEGEN41_Pos)
|
|
#define LCD_SEG_EN1_SEGEN40_Pos 8 /* SEG40Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN40_Msk (0x1U << LCD_SEG_EN1_SEGEN40_Pos)
|
|
#define LCD_SEG_EN1_SEGEN39_Pos 7 /* SEG39Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN39_Msk (0x1U << LCD_SEG_EN1_SEGEN39_Pos)
|
|
#define LCD_SEG_EN1_SEGEN38_Pos 6 /* SEG38Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN38_Msk (0x1U << LCD_SEG_EN1_SEGEN38_Pos)
|
|
#define LCD_SEG_EN1_SEGEN37_Pos 5 /* SEG37Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN37_Msk (0x1U << LCD_SEG_EN1_SEGEN37_Pos)
|
|
#define LCD_SEG_EN1_SEGEN36_Pos 4 /* SEG36Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN36_Msk (0x1U << LCD_SEG_EN1_SEGEN36_Pos)
|
|
#define LCD_SEG_EN1_SEGEN35_Pos 3 /* SEG35Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN35_Msk (0x1U << LCD_SEG_EN1_SEGEN35_Pos)
|
|
#define LCD_SEG_EN1_SEGEN34_Pos 2 /* SEG34Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN34_Msk (0x1U << LCD_SEG_EN1_SEGEN34_Pos)
|
|
#define LCD_SEG_EN1_SEGEN33_Pos 1 /* SEG33Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN33_Msk (0x1U << LCD_SEG_EN1_SEGEN33_Pos)
|
|
#define LCD_SEG_EN1_SEGEN32_Pos 0 /* SEG32Êä³ö¿ØÖÆ */
|
#define LCD_SEG_EN1_SEGEN32_Msk (0x1U << LCD_SEG_EN1_SEGEN32_Pos)
|
|
#define LCD_SEG_EN1_COMEN7_Pos 11 /* COM7¸´ÓÃSEGEN43 */
|
#define LCD_SEG_EN1_COMEN7_Msk (0x1U << LCD_SEG_EN1_COMEN7_Pos)
|
|
#define LCD_SEG_EN1_COMEN6_Pos 10 /* COM6¸´ÓÃSEGEN42 */
|
#define LCD_SEG_EN1_COMEN6_Msk (0x1U << LCD_SEG_EN1_COMEN6_Pos)
|
|
#define LCD_SEG_EN1_COMEN5_Pos 9 /* COM5¸´ÓÃSEGEN41 */
|
#define LCD_SEG_EN1_COMEN5_Msk (0x1U << LCD_SEG_EN1_COMEN5_Pos)
|
|
#define LCD_SEG_EN1_COMEN4_Pos 8 /* COM4¸´ÓÃSEGEN40 */
|
#define LCD_SEG_EN1_COMEN4_Msk (0x1U << LCD_SEG_EN1_COMEN4_Pos)
|
|
//Macro_End
|
|
/* Exported functions --------------------------------------------------------*/
|
extern void LCD_Deinit(void);
|
|
/* µçÈÝÇý¶¯Ä£Ê½£¬Çý¶¯ÆµÂÊ
|
000£ºÆµÂÊΪ֡Ƶ*COMÊý
|
001£ºÆµÂÊΪLSCLK/8
|
010£ºÆµÂÊΪLSCLK/16
|
011£ºÆµÂÊΪLSCLK/32
|
100£ºÆµÂÊΪLSCLK/64
|
101£ºÆµÂÊΪLSCLK/128
|
110£ºÆµÂÊΪLSCLK/256
|
111£ºÆµÂÊΪLSCLK/512Ïà¹Øº¯Êý */
|
extern void LCD_CR_SCSEL_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_SCSEL_Get(void);
|
|
/* µçÈÝÇý¶¯Ä£Ê½£¬Çý¶¯·½Ê½¿ØÖÆ
|
00£ºµ¥´ÎÇý¶¯
|
01£ºÁ¬ÐøÇý¶¯2´Î
|
10£ºÁ¬ÐøÇý¶¯4´Î
|
11£º¶à´ÎÇý¶¯ Ïà¹Øº¯Êý */
|
extern void LCD_CR_SC_CTRL_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_SC_CTRL_Get(void);
|
|
/* Æ«Öõç·ÊäÈëµçÁ÷Ô´´óС¿ØÖÆ (Input bias Current Control)
|
00£ºµçÁ÷×î´ó
|
01£ºµçÁ÷´Î´ó
|
10£ºµçÁ÷´ÎС
|
11£ºµçÁ÷×îС Ïà¹Øº¯Êý */
|
extern void LCD_CR_IC_CTRL_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_IC_CTRL_Get(void);
|
|
/* Çý¶¯Ä£Ê½Ñ¡Ôñ (LCD Enabling Mode)
|
0£ºRFU
|
1£ºÆ¬ÄÚµç×èÐÍÇý¶¯ Ïà¹Øº¯Êý */
|
extern void LCD_CR_ENMODE_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_ENMODE_Get(void);
|
|
/* ÏÔʾÉÁ˸ʹÄÜλ (LCD Flick Enable)
|
1£ºÏÔʾÉÁ˸£¬ÉÁ˸ƵÂÊÓÉTONºÍTOFF¼Ä´æÆ÷ÉèÖÃ
|
0£º¹Ø±ÕÉÁ˸ Ïà¹Øº¯Êý */
|
extern void LCD_CR_FLICK_Setable(FunState NewState);
|
extern FunState LCD_CR_FLICK_Getable(void);
|
|
/* LCDÆ«ÖÃµçÆ½Ñ¡Ôñ룬ÓÃÓÚÏÔʾ»Ò¶È¿ØÖÆ (LCD Bias Voltage Select) Ïà¹Øº¯Êý */
|
extern void LCD_CR_BIAS_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_BIAS_Get(void);
|
|
/* Æ«ÖÃÀàÐÍÑ¡Ôñ (Bias Mode)
|
1£º1/3 Bias
|
0£º1/4 Bias Ïà¹Øº¯Êý */
|
extern void LCD_CR_BIASMD_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_BIASMD_Get(void);
|
|
/* ·À¼«»¯Ê¹ÄÜ (Anti-Polarization)
|
1£ºCOMºÍSEGÔÚLCD¹Ø±ÕÇé¿öϽӵØ
|
0£ºCOMºÍSEGÔÚLCD¹Ø±ÕÇé¿öϸ¡¿Õ Ïà¹Øº¯Êý */
|
extern void LCD_CR_ANTIPOLAR_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_ANTIPOLAR_Get(void);
|
|
/* Çý¶¯²¨ÐÎÑ¡Ôñ (Waveform Format)
|
1£ºBÀನÐÎ
|
0£ºAÀನÐÎ Ïà¹Øº¯Êý */
|
extern void LCD_CR_WFT_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_WFT_Get(void);
|
|
/* COMÊýÁ¿Ñ¡Ôñ (Segment Line Mux)
|
00£º4COM
|
01£º6COM
|
10/11£º8COM Ïà¹Øº¯Êý */
|
extern void LCD_CR_LMUX_Set(uint32_t SetValue);
|
extern uint32_t LCD_CR_LMUX_Get(void);
|
|
/* LCDÏÔʾʹÄÜλ (LCD Enable)
|
1£ºÆô¶¯LCDÏÔʾ
|
0£º¹Ø±ÕLCDÏÔʾ Ïà¹Øº¯Êý */
|
extern void LCD_CR_EN_Setable(FunState NewState);
|
extern FunState LCD_CR_EN_Getable(void);
|
|
/* LCD²âÊÔ¿ØÖÆÎ»£¬½öÔÚ²âÊÔģʽÏÂÓÐЧ (Line Constant Control)
|
COM¡¢SEGÊä³öµçƽÓɲâÊÔģʽϵÄÒý½ÅÊä³öÊý¾Ý¼Ä´æÆ÷¾ö¶¨¡£²»Í¬ÉèÖÃÏÂSEG»òCOMÊä³öµÄ½á¹û²Î¼ûºóÎıí¸ñ¡£ Ïà¹Øº¯Êý */
|
extern void LCD_TEST_LCCTRL_Set(uint32_t SetValue);
|
extern uint32_t LCD_TEST_LCCTRL_Get(void);
|
|
/* ²âÊÔģʽʹÄÜλ (Test mode Enable)
|
1£ºLCD²âÊÔģʽʹÄÜ¡£ÔÚLCD²âÊÔģʽÏ£¬LCDÒý½Å¾²Ì¬Êä³öÄ£ÄâÖ±Á÷µçƽ£¬ËùÓÐÓ붯̬ɨÃèʱ¼äÒÔ¼°É¨Ã貨ÐÎÏà¹Ø¼Ä´æÆ÷ÉèÖÃÎÞЧ
|
0£ºÕý³£¹¤×÷ģʽ£¬²âÊÔģʽÎÞЧ£¬Ïà¹Ø²âÊԼĴæÆ÷¿ØÖÆÎÞЧ Ïà¹Øº¯Êý */
|
extern void LCD_TEST_TESTEN_Setable(FunState NewState);
|
extern FunState LCD_TEST_TESTEN_Getable(void);
|
|
/* ÏÔʾԤ·ÖƵ¼Ä´æÆ÷ (Display Frequency) Ïà¹Øº¯Êý */
|
extern void LCD_FCR_Write(uint32_t SetValue);
|
extern uint32_t LCD_FCR_Read(void);
|
|
/* ÉÁ˸ÏÔʾϨÃðʱ¼ä¼Ä´æÆ÷ (Display-Off Time)
|
TOFF×îС²½³¤ÎªTstep = COM*DF[7:0]*2*16/32768Hz£¬Êµ¼ÊOFFʱ¼äΪTOFF * Tstep Ïà¹Øº¯Êý */
|
extern void LCD_FLKT_TOFF_Set(uint32_t SetValue);
|
extern uint32_t LCD_FLKT_TOFF_Get(void);
|
|
/* ÉÁ˸ÏÔʾµãÁÁʱ¼ä¼Ä´æÆ÷ (Display-On Time)
|
TON×îС²½³¤ÎªTstep = COM*DF[7:0]*2*16/32768Hz£¬Êµ¼ÊONʱ¼äΪTON * Tstep Ïà¹Øº¯Êý */
|
extern void LCD_FLKT_TON_Set(uint32_t SetValue);
|
extern uint32_t LCD_FLKT_TON_Get(void);
|
|
/* ÏÔʾµãÁÁÖжÏʹÄÜλ (Display-On Interrupt Enable)
|
1£ºÏÔʾµãÁÁÖжÏʹÄÜ
|
0£ºÏÔʾµãÁÁÖжϽûÖ¹ Ïà¹Øº¯Êý */
|
extern void LCD_IER_DONIE_Setable(FunState NewState);
|
extern FunState LCD_IER_DONIE_Getable(void);
|
|
/* ÏÔʾϨÃðÖжÏʹÄÜλ (Display-OFF Interrupt Enable)
|
1£ºÏÔʾϨÃðÖжÏʹÄÜ
|
0£ºÏÔʾϨÃðÖжϽûÖ¹ Ïà¹Øº¯Êý */
|
extern void LCD_IER_DOFFIE_Setable(FunState NewState);
|
extern FunState LCD_IER_DOFFIE_Getable(void);
|
|
/* ÏÔʾµãÁÁÖжϱêÖ¾ (Display-On Interrupt Flag,write 1 to clear)
|
ÏÔʾÓÉÃð±äÁÁʱӲ¼þ²úÉúÖжϱêÖ¾£¬Ó²¼þÖÃ룬Èí¼þÇåÁã Ïà¹Øº¯Êý */
|
extern void LCD_ISR_DONIF_Clr(void);
|
extern FlagStatus LCD_ISR_DONIF_Chk(void);
|
|
/* ÏÔʾϨÃðÖжϱêÖ¾ (Display-OFF Interrupt Flag,write 1 to clear)
|
ÏÔʾÓÉÁÁ±äÃðʱӲ¼þ²úÉúÖжϱêÖ¾£¬Ó²¼þÖÃ룬Èí¼þÇåÁã Ïà¹Øº¯Êý */
|
extern void LCD_ISR_DOFFIF_Clr(void);
|
extern FlagStatus LCD_ISR_DOFFIF_Chk(void);
|
extern void LCD_BSTCR_OSC_CFG_Set(uint32_t SetValue);
|
extern uint32_t LCD_BSTCR_OSC_CFG_Get(void);
|
extern void LCD_BSTCR_BUF_OFF_Setable(FunState NewState);
|
extern FunState LCD_BSTCR_BUF_OFF_Getable(void);
|
extern void LCD_BSTCR_BUFBYP_Setable(FunState NewState);
|
extern FunState LCD_BSTCR_BUFBYP_Getable(void);
|
extern void LCD_BSTCR_VLCDPD_Setable(FunState NewState);
|
extern FunState LCD_BSTCR_VLCDPD_Getable(void);
|
extern void LCD_BSTCR_VLCDCFG_Set(uint32_t SetValue);
|
extern uint32_t LCD_BSTCR_VLCDCFG_Get(void);
|
extern void LCD_BSTCR_BOOST_TEN_Setable(FunState NewState);
|
extern FunState LCD_BSTCR_BOOST_TEN_Getable(void);
|
extern void LCD_BSTCR_BOOST_EN_Setable(FunState NewState);
|
extern FunState LCD_BSTCR_BOOST_EN_Getable(void);
|
|
/* LCD COM0~3Êä³öʹÄÜ¿ØÖÆ Ïà¹Øº¯Êý */
|
extern void LCD_COM_EN_Write(uint32_t SetValue);
|
extern uint32_t LCD_COM_EN_Read(void);
|
|
/* LCD SEG0~31Êä³öʹÄÜ¿ØÖÆ Ïà¹Øº¯Êý */
|
extern void LCD_SEG_EN0_Write(uint32_t SetValue);
|
extern uint32_t LCD_SEG_EN0_Read(void);
|
|
/* LCD SEG32~43,COM4~7Êä³öʹÄÜ¿ØÖÆ Ïà¹Øº¯Êý */
|
extern void LCD_SEG_EN1_Write(uint32_t SetValue);
|
extern uint32_t LCD_SEG_EN1_Read(void);
|
//Announce_End
|
|
/*DISPDATAxÏÔʾÊý¾Ý¼Ä´æÆ÷Ë¢ÐÂ*/
|
extern void LCD_DISPDATAx_Refresh(uint32_t* DispBuf);
|
|
#ifdef __cplusplus
|
}
|
#endif
|
|
#endif /* __FM33A0XXEV_LCD_H */
|