/**
|
******************************************************************************
|
* @file fm33a0xxev_et.h
|
* @author FM33A0XXEV Application Team
|
* @version V1.0.0
|
* @date 16-April-2020
|
* @brief This file contains all the functions prototypes for the ET firmware library.
|
******************************************************************************
|
*/
|
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
|
#ifndef __FM33A0XXEV_ET_H
|
#define __FM33A0XXEV_ET_H
|
|
|
#ifdef __cplusplus
|
extern "C" {
|
#endif
|
|
/* Includes ------------------------------------------------------------------*/
|
|
#include "FM33A0XXEV.h"
|
|
#define ETx_CR_OPOL_Pos 10 /* Êä³ö¼«ÐÔÑ¡Ôñ (Output Polarity)
|
0£ºÊä³ö²»È¡·´
|
1£ºÊä³öÈ¡·´ */
|
#define ETx_CR_OPOL_Msk (0x1U << ETx_CR_OPOL_Pos)
|
#define ETx_CR_OPOL_NORMAL (0x0U << ETx_CR_OPOL_Pos) /* Êä³ö²»È¡·´ */
|
#define ETx_CR_OPOL_REVERSE (0x1U << ETx_CR_OPOL_Pos) /* Êä³öÈ¡·´ */
|
|
#define ETx_CR_EXFLT_Pos 9 /* ÍⲿÒý½ÅÊäÈëÊý×ÖÂ˲¨Ê¹ÄÜ
|
1 = ´ò¿ªÒý½ÅÊäÈëÐźÅÊý×ÖÂ˲¨
|
0 = ¹Ø±ÕÒý½ÅÊäÈëÐźÅÊý×ÖÂ˲¨ */
|
#define ETx_CR_EXFLT_Msk (0x1U << ETx_CR_EXFLT_Pos)
|
#define ETx_CR_EXFLT_OPEN (0x1U << ETx_CR_EXFLT_Pos)
|
#define ETx_CR_EXFLT_CLOSE (0x0U << ETx_CR_EXFLT_Pos)
|
|
#define ETx_CR_PWM_Pos 8 /* PWMÊä³ö¿ØÖÆ
|
1 = PWMÊä³öʹÄÜ
|
0 = PWMÊä³ö½ûÖ¹ */
|
#define ETx_CR_PWM_Msk (0x1U << ETx_CR_PWM_Pos)
|
|
#define ETx_CR_CEN_Pos 7 /* Æô¶¯¿ØÖÆ
|
1 = Æô¶¯¶¨Ê±Æ÷£¬ÔÚ¼ÆÊýÆ÷ģʽÏÂÆô¶¯Ê±½«¼ÆÊý³õÖµ¼ÓÔØÖÁ¼ÆÊýÆ÷ºÍ¹¤×÷¼Ä´æÆ÷£»ÔÚ²¶×½Ä£Ê½Ï£¬Æô¶¯Ê±¼ÆÊýÆ÷ÓÉÁ㿪ʼ×ÔÓɼÆÊý£¬¼ÆÊýµ½0xFFFFºó²úÉúÒç³öÐźÅÈ»ºóÓÉÁã¿ªÊ¼ÖØÐ¼ÆÊý
|
0 = Í£Ö¹¼ÆÊýÆ÷¼ÆÊý */
|
#define ETx_CR_CEN_Msk (0x1U << ETx_CR_CEN_Pos)
|
|
#define ETx_CR_MOD_Pos 6 /* ¹¤×÷ģʽѡÔñ
|
1 = ²¶×½Ä£Ê½
|
0 = ¶¨Ê±/¼ÆÊýģʽ */
|
#define ETx_CR_MOD_Msk (0x1U << ETx_CR_MOD_Pos)
|
#define ETx_CR_MOD_CAPTURE (0x1U << ETx_CR_MOD_Pos)
|
#define ETx_CR_MOD_COUNTER (0x0U << ETx_CR_MOD_Pos)
|
|
#define ETx_CR_CASEN_Pos 5 /* Cascade Enable£¬À©Õ¹¶¨Ê±Æ÷¼¶ÁªÊ¹ÄÜ
|
1 = ET1£¨ET3£©ºÍET2£¨ET4£©¼¶Áª³É32bit¶¨Ê±Æ÷
|
0 = 16bit¶¨Ê±Æ÷¶ÀÁ¢¹¤×÷ */
|
#define ETx_CR_CASEN_Msk (0x1U << ETx_CR_CASEN_Pos)
|
#define ETx_CR_CASEN_32BITS (0x1U << ETx_CR_CASEN_Pos)
|
#define ETx_CR_CASEN_16BITS (0x0U << ETx_CR_CASEN_Pos)
|
|
#define ETx_CR_EDGESEL_Pos 4 /* ¼ÆÊýģʽ²ÉÑØ·½Ê½Ñ¡Ôñ
|
£¨¼ÆÊýʱÖÓÑ¡Ôñmcu_clkʱ¸ÃλÎÞЧ£¬×ÜÊDzÉÓÃmcu_clkʱÖÓÉÏÉýÑØ¼ÆÊý£©
|
1 = ¼ÆÊýģʽ²ÉϽµÑØ
|
0 = ¼ÆÊýģʽ²ÉÉÏÉýÑØ */
|
#define ETx_CR_EDGESEL_Msk (0x1U << ETx_CR_EDGESEL_Pos)
|
#define ETx_CR_EDGESEL_FALLING (0x1U << ETx_CR_EDGESEL_Pos)
|
#define ETx_CR_EDGESEL_RISING (0x0U << ETx_CR_EDGESEL_Pos)
|
|
#define ETx_CR_CAPMOD_Pos 3 /* ²¶×½Ä£Ê½¿ØÖÆ
|
1 = Âö¿í²¶×½
|
0 = Âö³åÖÜÆÚ²¶×½ */
|
#define ETx_CR_CAPMOD_Msk (0x1U << ETx_CR_CAPMOD_Pos)
|
#define ETx_CR_CAPMOD_PULSE (0x1U << ETx_CR_CAPMOD_Pos)
|
#define ETx_CR_CAPMOD_CYCLE (0x0U << ETx_CR_CAPMOD_Pos)
|
|
#define ETx_CR_CAPCLR_Pos 2 /* ´øÇåÁ㲶׽ģʽ¿ØÖÆ
|
1 = ʼþ´¥·¢²¶×½£ºÊ¹Äܺó¼ÆÊýÆ÷±£³Ö0£¬²¶×½µ½µÚÒ»¸öÓÐÐ§ÑØÖ®ºótimer²Å¿ªÊ¼¼ÆÊý
|
0 = ²¶×½²»ÇåÁ㣬¼ÆÊýÆ÷Ò»Ö±×ÔÓɼÆÊý */
|
#define ETx_CR_CAPCLR_Msk (0x1U << ETx_CR_CAPCLR_Pos)
|
/* ʹÄܺó¼ÆÊýÆ÷±£³Ö0£¬²¶×½µ½µÚÒ»¸öÓÐÐ§ÑØÖ®ºótimer²Å¿ªÊ¼¼ÆÊý */
|
|
#define ETx_CR_CAPONCE_Pos 1 /* µ¥´Î²¶×½¿ØÖÆ
|
1 = µ¥´Î²¶×½ÓÐЧ£¬ÔÚ²¶×½µ½Ò»´ÎÂö³åÖÜÆÚºó¼ÆÊýÆ÷Í£Ö¹£¬ÈôÐèÒªÔٴβ¶×½ÐèÖØÐÂÆô¶¯
|
0 = Á¬Ðø²¶×½ */
|
#define ETx_CR_CAPONCE_Msk (0x1U << ETx_CR_CAPONCE_Pos)
|
#define ETx_CR_CAPONCE_SINGLE (0x1U << ETx_CR_CAPONCE_Pos)
|
#define ETx_CR_CAPONCE_CONTINUE (0x0U << ETx_CR_CAPONCE_Pos)
|
|
#define ETx_CR_CAPEDGE_Pos 0 /* ²¶×½ÑØÑ¡Ôñ
|
1 = ÖÜÆÚ²¶×½Ä£Ê½Ê±ÏÂÑØ²¶×½
|
0 = ÖÜÆÚ²¶×½Ä£Ê½Ê±ÉÏÑØ²¶×½ */
|
#define ETx_CR_CAPEDGE_Msk (0x1U << ETx_CR_CAPEDGE_Pos)
|
#define ETx_CR_CAPEDGE_FALLING (0x1U << ETx_CR_CAPEDGE_Pos)
|
#define ETx_CR_CAPEDGE_RISING (0x0U << ETx_CR_CAPEDGE_Pos)
|
|
#define ETx_INSR_SIG2SEL_Pos 7 /* ÄÚ²¿ÐźÅ2Ô´Ñ¡Ôñ(²¶×½Ô´)
|
1 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ2Ñ¡ÔñGroup1
|
0 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ2Ñ¡ÔñGroup2 */
|
#define ETx_INSR_SIG2SEL_Msk (0x1U << ETx_INSR_SIG2SEL_Pos)
|
#define ETx_INSR_SIG2SEL_GROUP1 (0x1U << ETx_INSR_SIG2SEL_Pos)
|
#define ETx_INSR_SIG2SEL_GROUP2 (0x0U << ETx_INSR_SIG2SEL_Pos)
|
|
#define ETx_INSR_SIG1SEL_Pos 6 /* ÄÚ²¿ÐźÅ1Ô´Ñ¡Ôñ£¨ÔÚ¼ÆÊýģʽϼÆÊýÔ´½öÓÉ´ËÑ¡Ôñ£¬²¶×½Ä£Ê½Ï¼ÆÊýÔ´£©
|
1 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ1Ñ¡ÔñGroup2
|
0 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ1Ñ¡ÔñGroup1 */
|
#define ETx_INSR_SIG1SEL_Msk (0x1U << ETx_INSR_SIG1SEL_Pos)
|
#define ETx_INSR_SIG1SEL_GROUP2 (0x1U << ETx_INSR_SIG1SEL_Pos)
|
#define ETx_INSR_SIG1SEL_GROUP1 (0x0U << ETx_INSR_SIG1SEL_Pos)
|
|
#define ETx_INSR_GRP2SEL_Pos 2 /* GROUP2 ÐźÅÑ¡Ôñ¿ØÖÆ
|
ET1
|
000 = UART0_RX
|
001 = UART1_RX
|
010 = XTLF
|
011 = ET1_IN1
|
100 = ET1_IN2
|
101 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
110 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
111 = RCMF
|
ET2
|
000 = UART2_RX
|
001 = UART3_RX
|
010 = XTLF
|
011 = ET2_IN1
|
100 = ET2_IN2
|
101 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
110 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
111 = RCMF
|
ET3
|
000 = ET3_IN1
|
001 = XTLF
|
010 = UART4_RX
|
011 = UART5_RX
|
100 = RTCSEC
|
101~111 = RFU
|
ET4
|
000 = ET4_IN1
|
001 = XTLF
|
010 = UART_RX2
|
011 = UART_RX0
|
100 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
101 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
110= RTCSEC
|
111= RCMF? */
|
#define ETx_INSR_GRP2SEL_Msk (0x7U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_UART0_RX (0x0U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_UART1_RX (0x1U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_XTLF (0x2U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_IN1 (0x3U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_IN2 (0x4U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_CMP1O (0x5U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_CMP2O (0x6U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET1_RCMF (0x7U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_UART2_RX (0x0U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_UART3_RX (0x1U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_XTLF (0x2U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_IN1 (0x3U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_IN2 (0x4U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_CMP1O (0x5U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_CMP2O (0x6U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET2_RCMF (0x7U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET3_IN1 (0x0U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET3_XTLF (0x1U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET3_UART4_RX (0x2U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET3_UART5_RX (0x3U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET3_RTCSEC (0x4U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_IN (0x0U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_XTLF (0x1U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_UART_RX2 (0x2U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_UART_RX0 (0x3U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_CMP1O (0x4U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_CMP2O (0x5U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_RTCSEC (0x6U << ETx_INSR_GRP2SEL_Pos)
|
#define ETx_INSR_GRP2SEL_ET4_RCMF (0x7U << ETx_INSR_GRP2SEL_Pos)
|
|
#define ETx_INSR_GRP1SEL_Pos 0 /* GROUP1 ÐźÅÑ¡Ôñ¿ØÖÆ
|
ET1
|
00 = APBCLK
|
01 = XTLF
|
10 = RCLP
|
11 = ET1_IN0
|
ET2
|
00 = APBCLK
|
01 = XTLF
|
10 = RCLP
|
11 = ET2_IN0
|
ET3
|
00 = APBCLK
|
01 = ET3_IN0
|
10 = RTCSEC
|
11 = RCLP
|
ET4
|
00 = APBCLK
|
01 = ET4_IN0
|
10 = RTC64HZ
|
11 = RCMF */
|
#define ETx_INSR_GRP1SEL_Msk (0x3U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET1_APBCLK (0x0U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET1_XTLF (0x1U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET1_RCLP (0x2U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET1_IN0 (0x3U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET2_APBCLK (0x0U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET2_XTLF (0x1U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET2_RCLP (0x2U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET2_IN0 (0x3U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET3_APBCLK (0x0U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET3_IN0 (0x1U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET3_RTCSEC (0x2U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET3_RCLP (0x3U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET4_APBCLK (0x0U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET4_IN0 (0x1U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET4_RTC64HZ (0x2U << ETx_INSR_GRP1SEL_Pos)
|
#define ETx_INSR_GRP1SEL_ET4_RCMF (0x3U << ETx_INSR_GRP1SEL_Pos)
|
|
#define ETx_PSCR1_PRESCALE1_Pos 0 /* ÊäÈëSignal1£¨¼ÆÊýÔ´£©µÄÔ¤·ÖƵ¼Ä´æÆ÷
|
00±íʾ1·ÖƵ£¬FF±íʾ256·ÖƵ */
|
#define ETx_PSCR1_PRESCALE1_Msk (0xffU << ETx_PSCR1_PRESCALE1_Pos)
|
|
#define ETx_PSCR2_PRESCALE2_Pos 0 /* ÊäÈëSignal2£¨²¶×½Ô´£©µÄÔ¤·ÖƵ¼Ä´æÆ÷
|
00±íʾ1·ÖƵ£¬FF±íʾ256·ÖƵ¡£ */
|
#define ETx_PSCR2_PRESCALE2_Msk (0xffU << ETx_PSCR2_PRESCALE2_Pos)
|
|
#define ETx_IVR_INITVALUE_Pos 0 /* À©Õ¹¶¨Ê±Æ÷³õÖµ¼Ä´æÆ÷ */
|
#define ETx_IVR_INITVALUE_Msk (0xffffU << ETx_IVR_INITVALUE_Pos)
|
|
#define ETx_CMPR_CMP_Pos 0 /* À©Õ¹¶¨Ê±Æ÷±È½Ï¼Ä´æÆ÷
|
¸Ã¼Ä´æÆ÷Óë¼ÆÊýÆ÷±È½Ï£¬Èô¼ÆÊýÖµ´óÓÚµÈÓڸüĴæÆ÷µÄÖµ£¬Ôò²úÉú¼ÆÊýÆ¥ÅäÐźÅÖÁÊä³ö¿ØÖÆÄ£¿é£¬²¢²úÉúÏàÓ¦Öжϡ£ */
|
#define ETx_CMPR_CMP_Msk (0xffffU << ETx_CMPR_CMP_Pos)
|
|
#define ETx_IER_CMPIE_Pos 2 /* À©Õ¹¶¨Ê±Æ÷±È½ÏÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ */
|
#define ETx_IER_CMPIE_Msk (0x1U << ETx_IER_CMPIE_Pos)
|
|
#define ETx_IER_CAPIE_Pos 1 /* À©Õ¹¶¨Ê±Æ÷²¶×½ÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ */
|
#define ETx_IER_CAPIE_Msk (0x1U << ETx_IER_CAPIE_Pos)
|
|
#define ETx_IER_OVIE_Pos 0 /* À©Õ¹¶¨Ê±Æ÷3Òç³öÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ */
|
#define ETx_IER_OVIE_Msk (0x1U << ETx_IER_OVIE_Pos)
|
|
#define ETx_ISR_CMPIF_Pos 3 /* ±È½Ï״̬£¬Ð´1Çå0
|
1 =µ±Ç°¼ÆÊýÆ÷µÄÖµ´óÓÚµÈÓڱȽϼĴæÆ÷µÄÖµ
|
0 =µ±Ç°¼ÆÊýÆ÷µÄֵСÓڱȽϼĴæÆ÷µÄÖµ */
|
#define ETx_ISR_CMPIF_Msk (0x1U << ETx_ISR_CMPIF_Pos)
|
|
#define ETx_ISR_EDGESTA_Pos 2 /* ²¶×½ÑØ×´Ì¬±êÖ¾
|
1 = ²¶×½µ½ÏÂÑØ
|
0 = ²¶×½µ½ÉÏÑØ */
|
#define ETx_ISR_EDGESTA_Msk (0x1U << ETx_ISR_EDGESTA_Pos)
|
|
#define ETx_ISR_CAPIF_Pos 1 /* À©Õ¹¶¨Ê±Æ÷²¶×½²úÉúÐźÅ
|
1 = ²¶×½µ½Ö¸¶¨µÄÑØ
|
0 = δ²¶×½µ½Ö¸¶¨µÄÑØ */
|
#define ETx_ISR_CAPIF_Msk (0x1U << ETx_ISR_CAPIF_Pos)
|
|
#define ETx_ISR_OVIF_Pos 0 /* À©Õ¹¶¨Ê±Æ÷3Òç³öÐźţ¬µ±¼ÆÊýÆ÷µÄÖµÓÉ0xFFFFÔÙÔö¼Óʱ½«ÖÃλ
|
1 = ²úÉú¼ÆÊýÒç³ö
|
0 = δ²úÉúÒç³ö */
|
#define ETx_ISR_OVIF_Msk (0x1U << ETx_ISR_OVIF_Pos)
|
|
#define ETCNTx_CNT_Pos 0
|
#define ETCNTx_CNT_Msk (0xffffU << ETCNTx_CNT_Pos)
|
//Macro_End
|
|
/* Exported functions --------------------------------------------------------*/
|
extern void ETx_Deinit(ET_Type* ETx);
|
|
/* Êä³ö¼«ÐÔÑ¡Ôñ (Output Polarity)
|
0£ºÊä³ö²»È¡·´
|
1£ºÊä³öÈ¡·´ Ïà¹Øº¯Êý */
|
extern void ETx_CR_OPOL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_OPOL_Get(ET_Type* ETx);
|
|
/* ÍⲿÒý½ÅÊäÈëÊý×ÖÂ˲¨Ê¹ÄÜ
|
1 = ´ò¿ªÒý½ÅÊäÈëÐźÅÊý×ÖÂ˲¨
|
0 = ¹Ø±ÕÒý½ÅÊäÈëÐźÅÊý×ÖÂ˲¨ Ïà¹Øº¯Êý */
|
extern void ETx_CR_EXFLT_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_EXFLT_Get(ET_Type* ETx);
|
|
/* PWMÊä³ö¿ØÖÆ
|
1 = PWMÊä³öʹÄÜ
|
0 = PWMÊä³ö½ûÖ¹ Ïà¹Øº¯Êý */
|
extern void ETx_CR_PWM_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_CR_PWM_Getable(ET_Type* ETx);
|
|
/* Æô¶¯¿ØÖÆ
|
1 = Æô¶¯¶¨Ê±Æ÷£¬ÔÚ¼ÆÊýÆ÷ģʽÏÂÆô¶¯Ê±½«¼ÆÊý³õÖµ¼ÓÔØÖÁ¼ÆÊýÆ÷ºÍ¹¤×÷¼Ä´æÆ÷£»ÔÚ²¶×½Ä£Ê½Ï£¬Æô¶¯Ê±¼ÆÊýÆ÷ÓÉÁ㿪ʼ×ÔÓɼÆÊý£¬¼ÆÊýµ½0xFFFFºó²úÉúÒç³öÐźÅÈ»ºóÓÉÁã¿ªÊ¼ÖØÐ¼ÆÊý
|
0 = Í£Ö¹¼ÆÊýÆ÷¼ÆÊý Ïà¹Øº¯Êý */
|
extern void ETx_CR_CEN_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_CR_CEN_Getable(ET_Type* ETx);
|
|
/* ¹¤×÷ģʽѡÔñ
|
1 = ²¶×½Ä£Ê½
|
0 = ¶¨Ê±/¼ÆÊýģʽ Ïà¹Øº¯Êý */
|
extern void ETx_CR_MOD_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_MOD_Get(ET_Type* ETx);
|
|
/* Cascade Enable£¬À©Õ¹¶¨Ê±Æ÷¼¶ÁªÊ¹ÄÜ
|
1 = ET1£¨ET3£©ºÍET2£¨ET4£©¼¶Áª³É32bit¶¨Ê±Æ÷
|
0 = 16bit¶¨Ê±Æ÷¶ÀÁ¢¹¤×÷ Ïà¹Øº¯Êý */
|
extern void ETx_CR_CASEN_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_CASEN_Get(ET_Type* ETx);
|
|
/* ¼ÆÊýģʽ²ÉÑØ·½Ê½Ñ¡Ôñ
|
£¨¼ÆÊýʱÖÓÑ¡Ôñmcu_clkʱ¸ÃλÎÞЧ£¬×ÜÊDzÉÓÃmcu_clkʱÖÓÉÏÉýÑØ¼ÆÊý£©
|
1 = ¼ÆÊýģʽ²ÉϽµÑØ
|
0 = ¼ÆÊýģʽ²ÉÉÏÉýÑØ Ïà¹Øº¯Êý */
|
extern void ETx_CR_EDGESEL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_EDGESEL_Get(ET_Type* ETx);
|
|
/* ²¶×½Ä£Ê½¿ØÖÆ
|
1 = Âö¿í²¶×½
|
0 = Âö³åÖÜÆÚ²¶×½ Ïà¹Øº¯Êý */
|
extern void ETx_CR_CAPMOD_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_CAPMOD_Get(ET_Type* ETx);
|
|
/* ´øÇåÁ㲶׽ģʽ¿ØÖÆ
|
1 = ʼþ´¥·¢²¶×½£ºÊ¹Äܺó¼ÆÊýÆ÷±£³Ö0£¬²¶×½µ½µÚÒ»¸öÓÐÐ§ÑØÖ®ºótimer²Å¿ªÊ¼¼ÆÊý
|
0 = ²¶×½²»ÇåÁ㣬¼ÆÊýÆ÷Ò»Ö±×ÔÓɼÆÊý Ïà¹Øº¯Êý */
|
extern void ETx_CR_CAPCLR_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_CR_CAPCLR_Getable(ET_Type* ETx);
|
|
/* µ¥´Î²¶×½¿ØÖÆ
|
1 = µ¥´Î²¶×½ÓÐЧ£¬ÔÚ²¶×½µ½Ò»´ÎÂö³åÖÜÆÚºó¼ÆÊýÆ÷Í£Ö¹£¬ÈôÐèÒªÔٴβ¶×½ÐèÖØÐÂÆô¶¯
|
0 = Á¬Ðø²¶×½ Ïà¹Øº¯Êý */
|
extern void ETx_CR_CAPONCE_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_CAPONCE_Get(ET_Type* ETx);
|
|
/* ²¶×½ÑØÑ¡Ôñ
|
1 = ÖÜÆÚ²¶×½Ä£Ê½Ê±ÏÂÑØ²¶×½
|
0 = ÖÜÆÚ²¶×½Ä£Ê½Ê±ÉÏÑØ²¶×½ Ïà¹Øº¯Êý */
|
extern void ETx_CR_CAPEDGE_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CR_CAPEDGE_Get(ET_Type* ETx);
|
|
/* ÄÚ²¿ÐźÅ2Ô´Ñ¡Ôñ(²¶×½Ô´)
|
1 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ2Ñ¡ÔñGroup1
|
0 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ2Ñ¡ÔñGroup2 Ïà¹Øº¯Êý */
|
extern void ETx_INSR_SIG2SEL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_INSR_SIG2SEL_Get(ET_Type* ETx);
|
|
/* ÄÚ²¿ÐźÅ1Ô´Ñ¡Ôñ£¨ÔÚ¼ÆÊýģʽϼÆÊýÔ´½öÓÉ´ËÑ¡Ôñ£¬²¶×½Ä£Ê½Ï¼ÆÊýÔ´£©
|
1 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ1Ñ¡ÔñGroup2
|
0 = À©Õ¹¶¨Ê±Æ÷3µÄÄÚ²¿ÐźÅ1Ñ¡ÔñGroup1 Ïà¹Øº¯Êý */
|
extern void ETx_INSR_SIG1SEL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_INSR_SIG1SEL_Get(ET_Type* ETx);
|
|
/* GROUP2 ÐźÅÑ¡Ôñ¿ØÖÆ
|
ET1
|
000 = UART0_RX
|
001 = UART1_RX
|
010 = XTLF
|
011 = ET1_IN1
|
100 = ET1_IN2
|
101 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
110 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
111 = RCMF
|
ET2
|
000 = UART2_RX
|
001 = UART3_RX
|
010 = XTLF
|
011 = ET2_IN1
|
100 = ET2_IN2
|
101 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
110 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
111 = RCMF
|
ET3
|
000 = ET3_IN1
|
001 = XTLF
|
010 = UART4_RX
|
011 = UART5_RX
|
100 = RTCSEC
|
101~111 = RFU
|
ET4
|
000 = ET4_IN1
|
001 = XTLF
|
010 = UART_RX2
|
011 = UART_RX0
|
100 = CMP1O£¨±È½ÏÆ÷1Êä³ö£©
|
101 = CMP2O£¨±È½ÏÆ÷2Êä³ö£©
|
110= RTCSEC
|
111= RCMF? Ïà¹Øº¯Êý */
|
extern void ETx_INSR_GRP2SEL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_INSR_GRP2SEL_Get(ET_Type* ETx);
|
|
/* GROUP1 ÐźÅÑ¡Ôñ¿ØÖÆ
|
ET1
|
00 = APBCLK
|
01 = XTLF
|
10 = RCLP
|
11 = ET1_IN0
|
ET2
|
00 = APBCLK
|
01 = XTLF
|
10 = RCLP
|
11 = ET2_IN0
|
ET3
|
00 = APBCLK
|
01 = ET3_IN0
|
10 = RTCSEC
|
11 = RCLP
|
ET4
|
00 = APBCLK
|
01 = ET4_IN0
|
10 = RTC64HZ
|
11 = RCMF Ïà¹Øº¯Êý */
|
extern void ETx_INSR_GRP1SEL_Set(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_INSR_GRP1SEL_Get(ET_Type* ETx);
|
|
/* ÊäÈëSignal1£¨¼ÆÊýÔ´£©µÄÔ¤·ÖƵ¼Ä´æÆ÷
|
00±íʾ1·ÖƵ£¬FF±íʾ256·ÖƵ Ïà¹Øº¯Êý */
|
extern void ETx_PSCR1_Write(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_PSCR1_Read(ET_Type* ETx);
|
|
/* ÊäÈëSignal2£¨²¶×½Ô´£©µÄÔ¤·ÖƵ¼Ä´æÆ÷
|
00±íʾ1·ÖƵ£¬FF±íʾ256·ÖƵ¡£ Ïà¹Øº¯Êý */
|
extern void ETx_PSCR2_Write(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_PSCR2_Read(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷³õÖµ¼Ä´æÆ÷ Ïà¹Øº¯Êý */
|
extern void ETx_IVR_Write(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_IVR_Read(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷±È½Ï¼Ä´æÆ÷
|
¸Ã¼Ä´æÆ÷Óë¼ÆÊýÆ÷±È½Ï£¬Èô¼ÆÊýÖµ´óÓÚµÈÓڸüĴæÆ÷µÄÖµ£¬Ôò²úÉú¼ÆÊýÆ¥ÅäÐźÅÖÁÊä³ö¿ØÖÆÄ£¿é£¬²¢²úÉúÏàÓ¦Öжϡ£ Ïà¹Øº¯Êý */
|
extern void ETx_CMPR_Write(ET_Type* ETx, uint32_t SetValue);
|
extern uint32_t ETx_CMPR_Read(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷±È½ÏÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ Ïà¹Øº¯Êý */
|
extern void ETx_IER_CMPIE_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_IER_CMPIE_Getable(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷²¶×½ÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ Ïà¹Øº¯Êý */
|
extern void ETx_IER_CAPIE_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_IER_CAPIE_Getable(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷3Òç³öÖжÏʹÄÜ
|
1 = ʹÄÜ
|
0 = ½ûÖ¹ Ïà¹Øº¯Êý */
|
extern void ETx_IER_OVIE_Setable(ET_Type* ETx, FunState NewState);
|
extern FunState ETx_IER_OVIE_Getable(ET_Type* ETx);
|
|
/* ±È½Ï״̬£¬Ð´1Çå0
|
1 =µ±Ç°¼ÆÊýÆ÷µÄÖµ´óÓÚµÈÓڱȽϼĴæÆ÷µÄÖµ
|
0 =µ±Ç°¼ÆÊýÆ÷µÄֵСÓڱȽϼĴæÆ÷µÄÖµ Ïà¹Øº¯Êý */
|
extern void ETx_ISR_CMPIF_Clr(ET_Type* ETx);
|
extern FlagStatus ETx_ISR_CMPIF_Chk(ET_Type* ETx);
|
|
/* ²¶×½ÑØ×´Ì¬±êÖ¾
|
1 = ²¶×½µ½ÏÂÑØ
|
0 = ²¶×½µ½ÉÏÑØ */
|
extern FlagStatus ETx_ISR_EDGESTA_Chk(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷²¶×½²úÉúÐźÅ
|
1 = ²¶×½µ½Ö¸¶¨µÄÑØ
|
0 = δ²¶×½µ½Ö¸¶¨µÄÑØ Ïà¹Øº¯Êý */
|
extern void ETx_ISR_CAPIF_Clr(ET_Type* ETx);
|
extern FlagStatus ETx_ISR_CAPIF_Chk(ET_Type* ETx);
|
|
/* À©Õ¹¶¨Ê±Æ÷3Òç³öÐźţ¬µ±¼ÆÊýÆ÷µÄÖµÓÉ0xFFFFÔÙÔö¼Óʱ½«ÖÃλ
|
1 = ²úÉú¼ÆÊýÒç³ö
|
0 = δ²úÉúÒç³ö Ïà¹Øº¯Êý */
|
extern void ETx_ISR_OVIF_Clr(ET_Type* ETx);
|
extern FlagStatus ETx_ISR_OVIF_Chk(ET_Type* ETx);
|
|
/*»ñÈ¡ET ¼ÆÊýÆ÷ÊýÖµ*/
|
extern uint32_t ETxCNT_CNTx_Read(ETCNT_Type* ETIMx);
|
//Announce_End
|
#ifdef __cplusplus
|
}
|
#endif
|
|
#endif /*__FM33A0XXEV_ET_H */
|