📄 at91sam9260.tcl
字号:
set AT91C_SHDWC_RTCWK [expr 0x1 << 17 ]
# *****************************************************************************
# SOFTWARE API DEFINITION FOR Real Time Timer Controller Interface
# *****************************************************************************
# -------- RTTC_RTMR : (RTTC Offset: 0x0) Real-time Mode Register --------
set AT91C_RTTC_RTPRES [expr 0xFFFF << 0 ]
set AT91C_RTTC_ALMIEN [expr 0x1 << 16 ]
set AT91C_RTTC_RTTINCIEN [expr 0x1 << 17 ]
set AT91C_RTTC_RTTRST [expr 0x1 << 18 ]
# -------- RTTC_RTAR : (RTTC Offset: 0x4) Real-time Alarm Register --------
set AT91C_RTTC_ALMV [expr 0x0 << 0 ]
# -------- RTTC_RTVR : (RTTC Offset: 0x8) Current Real-time Value Register --------
set AT91C_RTTC_CRTV [expr 0x0 << 0 ]
# -------- RTTC_RTSR : (RTTC Offset: 0xc) Real-time Status Register --------
set AT91C_RTTC_ALMS [expr 0x1 << 0 ]
set AT91C_RTTC_RTTINC [expr 0x1 << 1 ]
# *****************************************************************************
# SOFTWARE API DEFINITION FOR Periodic Interval Timer Controller Interface
# *****************************************************************************
# -------- PITC_PIMR : (PITC Offset: 0x0) Periodic Interval Mode Register --------
set AT91C_PITC_PIV [expr 0xFFFFF << 0 ]
set AT91C_PITC_PITEN [expr 0x1 << 24 ]
set AT91C_PITC_PITIEN [expr 0x1 << 25 ]
# -------- PITC_PISR : (PITC Offset: 0x4) Periodic Interval Status Register --------
set AT91C_PITC_PITS [expr 0x1 << 0 ]
# -------- PITC_PIVR : (PITC Offset: 0x8) Periodic Interval Value Register --------
set AT91C_PITC_CPIV [expr 0xFFFFF << 0 ]
set AT91C_PITC_PICNT [expr 0xFFF << 20 ]
# -------- PITC_PIIR : (PITC Offset: 0xc) Periodic Interval Image Register --------
set AT91C_PITC_CPIV [expr 0xFFFFF << 0 ]
set AT91C_PITC_PICNT [expr 0xFFF << 20 ]
# *****************************************************************************
# SOFTWARE API DEFINITION FOR Watchdog Timer Controller Interface
# *****************************************************************************
# -------- WDTC_WDCR : (WDTC Offset: 0x0) Periodic Interval Image Register --------
set AT91C_WDTC_WDRSTT [expr 0x1 << 0 ]
set AT91C_WDTC_KEY [expr 0xFF << 24 ]
# -------- WDTC_WDMR : (WDTC Offset: 0x4) Watchdog Mode Register --------
set AT91C_WDTC_WDV [expr 0xFFF << 0 ]
set AT91C_WDTC_WDFIEN [expr 0x1 << 12 ]
set AT91C_WDTC_WDRSTEN [expr 0x1 << 13 ]
set AT91C_WDTC_WDRPROC [expr 0x1 << 14 ]
set AT91C_WDTC_WDDIS [expr 0x1 << 15 ]
set AT91C_WDTC_WDD [expr 0xFFF << 16 ]
set AT91C_WDTC_WDDBGHLT [expr 0x1 << 28 ]
set AT91C_WDTC_WDIDLEHLT [expr 0x1 << 29 ]
# -------- WDTC_WDSR : (WDTC Offset: 0x8) Watchdog Status Register --------
set AT91C_WDTC_WDUNF [expr 0x1 << 0 ]
set AT91C_WDTC_WDERR [expr 0x1 << 1 ]
# *****************************************************************************
# SOFTWARE API DEFINITION FOR Timer Counter Channel Interface
# *****************************************************************************
# -------- TC_CCR : (TC Offset: 0x0) TC Channel Control Register --------
set AT91C_TC_CLKEN [expr 0x1 << 0 ]
set AT91C_TC_CLKDIS [expr 0x1 << 1 ]
set AT91C_TC_SWTRG [expr 0x1 << 2 ]
# -------- TC_CMR : (TC Offset: 0x4) TC Channel Mode Register: Capture Mode / Waveform Mode --------
set AT91C_TC_CLKS [expr 0x7 << 0 ]
set AT91C_TC_CLKS_TIMER_DIV1_CLOCK 0x0
set AT91C_TC_CLKS_TIMER_DIV2_CLOCK 0x1
set AT91C_TC_CLKS_TIMER_DIV3_CLOCK 0x2
set AT91C_TC_CLKS_TIMER_DIV4_CLOCK 0x3
set AT91C_TC_CLKS_TIMER_DIV5_CLOCK 0x4
set AT91C_TC_CLKS_XC0 0x5
set AT91C_TC_CLKS_XC1 0x6
set AT91C_TC_CLKS_XC2 0x7
set AT91C_TC_CLKS [expr 0x7 << 0 ]
set AT91C_TC_CLKS_TIMER_DIV1_CLOCK 0x0
set AT91C_TC_CLKS_TIMER_DIV2_CLOCK 0x1
set AT91C_TC_CLKS_TIMER_DIV3_CLOCK 0x2
set AT91C_TC_CLKS_TIMER_DIV4_CLOCK 0x3
set AT91C_TC_CLKS_TIMER_DIV5_CLOCK 0x4
set AT91C_TC_CLKS_XC0 0x5
set AT91C_TC_CLKS_XC1 0x6
set AT91C_TC_CLKS_XC2 0x7
set AT91C_TC_CLKI [expr 0x1 << 3 ]
set AT91C_TC_CLKI [expr 0x1 << 3 ]
set AT91C_TC_BURST [expr 0x3 << 4 ]
set AT91C_TC_BURST_NONE [expr 0x0 << 4 ]
set AT91C_TC_BURST_XC0 [expr 0x1 << 4 ]
set AT91C_TC_BURST_XC1 [expr 0x2 << 4 ]
set AT91C_TC_BURST_XC2 [expr 0x3 << 4 ]
set AT91C_TC_BURST [expr 0x3 << 4 ]
set AT91C_TC_BURST_NONE [expr 0x0 << 4 ]
set AT91C_TC_BURST_XC0 [expr 0x1 << 4 ]
set AT91C_TC_BURST_XC1 [expr 0x2 << 4 ]
set AT91C_TC_BURST_XC2 [expr 0x3 << 4 ]
set AT91C_TC_CPCSTOP [expr 0x1 << 6 ]
set AT91C_TC_LDBSTOP [expr 0x1 << 6 ]
set AT91C_TC_LDBDIS [expr 0x1 << 7 ]
set AT91C_TC_CPCDIS [expr 0x1 << 7 ]
set AT91C_TC_ETRGEDG [expr 0x3 << 8 ]
set AT91C_TC_ETRGEDG_NONE [expr 0x0 << 8 ]
set AT91C_TC_ETRGEDG_RISING [expr 0x1 << 8 ]
set AT91C_TC_ETRGEDG_FALLING [expr 0x2 << 8 ]
set AT91C_TC_ETRGEDG_BOTH [expr 0x3 << 8 ]
set AT91C_TC_EEVTEDG [expr 0x3 << 8 ]
set AT91C_TC_EEVTEDG_NONE [expr 0x0 << 8 ]
set AT91C_TC_EEVTEDG_RISING [expr 0x1 << 8 ]
set AT91C_TC_EEVTEDG_FALLING [expr 0x2 << 8 ]
set AT91C_TC_EEVTEDG_BOTH [expr 0x3 << 8 ]
set AT91C_TC_ABETRG [expr 0x1 << 10 ]
set AT91C_TC_EEVT [expr 0x3 << 10 ]
set AT91C_TC_EEVT_TIOB [expr 0x0 << 10 ]
set AT91C_TC_EEVT_XC0 [expr 0x1 << 10 ]
set AT91C_TC_EEVT_XC1 [expr 0x2 << 10 ]
set AT91C_TC_EEVT_XC2 [expr 0x3 << 10 ]
set AT91C_TC_ENETRG [expr 0x1 << 12 ]
set AT91C_TC_WAVESEL [expr 0x3 << 13 ]
set AT91C_TC_WAVESEL_UP [expr 0x0 << 13 ]
set AT91C_TC_WAVESEL_UPDOWN [expr 0x1 << 13 ]
set AT91C_TC_WAVESEL_UP_AUTO [expr 0x2 << 13 ]
set AT91C_TC_WAVESEL_UPDOWN_AUTO [expr 0x3 << 13 ]
set AT91C_TC_CPCTRG [expr 0x1 << 14 ]
set AT91C_TC_WAVE [expr 0x1 << 15 ]
set AT91C_TC_WAVE [expr 0x1 << 15 ]
set AT91C_TC_LDRA [expr 0x3 << 16 ]
set AT91C_TC_LDRA_NONE [expr 0x0 << 16 ]
set AT91C_TC_LDRA_RISING [expr 0x1 << 16 ]
set AT91C_TC_LDRA_FALLING [expr 0x2 << 16 ]
set AT91C_TC_LDRA_BOTH [expr 0x3 << 16 ]
set AT91C_TC_ACPA [expr 0x3 << 16 ]
set AT91C_TC_ACPA_NONE [expr 0x0 << 16 ]
set AT91C_TC_ACPA_SET [expr 0x1 << 16 ]
set AT91C_TC_ACPA_CLEAR [expr 0x2 << 16 ]
set AT91C_TC_ACPA_TOGGLE [expr 0x3 << 16 ]
set AT91C_TC_LDRB [expr 0x3 << 18 ]
set AT91C_TC_LDRB_NONE [expr 0x0 << 18 ]
set AT91C_TC_LDRB_RISING [expr 0x1 << 18 ]
set AT91C_TC_LDRB_FALLING [expr 0x2 << 18 ]
set AT91C_TC_LDRB_BOTH [expr 0x3 << 18 ]
set AT91C_TC_ACPC [expr 0x3 << 18 ]
set AT91C_TC_ACPC_NONE [expr 0x0 << 18 ]
set AT91C_TC_ACPC_SET [expr 0x1 << 18 ]
set AT91C_TC_ACPC_CLEAR [expr 0x2 << 18 ]
set AT91C_TC_ACPC_TOGGLE [expr 0x3 << 18 ]
set AT91C_TC_AEEVT [expr 0x3 << 20 ]
set AT91C_TC_AEEVT_NONE [expr 0x0 << 20 ]
set AT91C_TC_AEEVT_SET [expr 0x1 << 20 ]
set AT91C_TC_AEEVT_CLEAR [expr 0x2 << 20 ]
set AT91C_TC_AEEVT_TOGGLE [expr 0x3 << 20 ]
set AT91C_TC_ASWTRG [expr 0x3 << 22 ]
set AT91C_TC_ASWTRG_NONE [expr 0x0 << 22 ]
set AT91C_TC_ASWTRG_SET [expr 0x1 << 22 ]
set AT91C_TC_ASWTRG_CLEAR [expr 0x2 << 22 ]
set AT91C_TC_ASWTRG_TOGGLE [expr 0x3 << 22 ]
set AT91C_TC_BCPB [expr 0x3 << 24 ]
set AT91C_TC_BCPB_NONE [expr 0x0 << 24 ]
set AT91C_TC_BCPB_SET [expr 0x1 << 24 ]
set AT91C_TC_BCPB_CLEAR [expr 0x2 << 24 ]
set AT91C_TC_BCPB_TOGGLE [expr 0x3 << 24 ]
set AT91C_TC_BCPC [expr 0x3 << 26 ]
set AT91C_TC_BCPC_NONE [expr 0x0 << 26 ]
set AT91C_TC_BCPC_SET [expr 0x1 << 26 ]
set AT91C_TC_BCPC_CLEAR [expr 0x2 << 26 ]
set AT91C_TC_BCPC_TOGGLE [expr 0x3 << 26 ]
set AT91C_TC_BEEVT [expr 0x3 << 28 ]
set AT91C_TC_BEEVT_NONE [expr 0x0 << 28 ]
set AT91C_TC_BEEVT_SET [expr 0x1 << 28 ]
set AT91C_TC_BEEVT_CLEAR [expr 0x2 << 28 ]
set AT91C_TC_BEEVT_TOGGLE [expr 0x3 << 28 ]
set AT91C_TC_BSWTRG [expr 0x3 << 30 ]
set AT91C_TC_BSWTRG_NONE [expr 0x0 << 30 ]
set AT91C_TC_BSWTRG_SET [expr 0x1 << 30 ]
set AT91C_TC_BSWTRG_CLEAR [expr 0x2 << 30 ]
set AT91C_TC_BSWTRG_TOGGLE [expr 0x3 << 30 ]
# -------- TC_SR : (TC Offset: 0x20) TC Channel Status Register --------
set AT91C_TC_COVFS [expr 0x1 << 0 ]
set AT91C_TC_LOVRS [expr 0x1 << 1 ]
set AT91C_TC_CPAS [expr 0x1 << 2 ]
set AT91C_TC_CPBS [expr 0x1 << 3 ]
set AT91C_TC_CPCS [expr 0x1 << 4 ]
set AT91C_TC_LDRAS [expr 0x1 << 5 ]
set AT91C_TC_LDRBS [expr 0x1 << 6 ]
set AT91C_TC_ETRGS [expr 0x1 << 7 ]
set AT91C_TC_CLKSTA [expr 0x1 << 16 ]
set AT91C_TC_MTIOA [expr 0x1 << 17 ]
set AT91C_TC_MTIOB [expr 0x1 << 18 ]
# -------- TC_IER : (TC Offset: 0x24) TC Channel Interrupt Enable Register --------
set AT91C_TC_COVFS [expr 0x1 << 0 ]
set AT91C_TC_LOVRS [expr 0x1 << 1 ]
set AT91C_TC_CPAS [expr 0x1 << 2 ]
set AT91C_TC_CPBS [expr 0x1 << 3 ]
set AT91C_TC_CPCS [expr 0x1 << 4 ]
set AT91C_TC_LDRAS [expr 0x1 << 5 ]
set AT91C_TC_LDRBS [expr 0x1 << 6 ]
set AT91C_TC_ETRGS [expr 0x1 << 7 ]
# -------- TC_IDR : (TC Offset: 0x28) TC Channel Interrupt Disable Register --------
set AT91C_TC_COVFS [expr 0x1 << 0 ]
set AT91C_TC_LOVRS [expr 0x1 << 1 ]
set AT91C_TC_CPAS [expr 0x1 << 2 ]
set AT91C_TC_CPBS [expr 0x1 << 3 ]
set AT91C_TC_CPCS [expr 0x1 << 4 ]
set AT91C_TC_LDRAS [expr 0x1 << 5 ]
set AT91C_TC_LDRBS [expr 0x1 << 6 ]
set AT91C_TC_ETRGS [expr 0x1 << 7 ]
# -------- TC_IMR : (TC Offset: 0x2c) TC Channel Interrupt Mask Register --------
set AT91C_TC_COVFS [expr 0x1 << 0 ]
set AT91C_TC_LOVRS [expr 0x1 << 1 ]
set AT91C_TC_CPAS [expr 0x1 << 2 ]
set AT91C_TC_CPBS [expr 0x1 << 3 ]
set AT91C_TC_CPCS [expr 0x1 << 4 ]
set AT91C_TC_LDRAS [expr 0x1 << 5 ]
set AT91C_TC_LDRBS [expr 0x1 << 6 ]
set AT91C_TC_ETRGS [expr 0x1 << 7 ]
# *****************************************************************************
# SOFTWARE API DEFINITION FOR Timer Counter Interface
# *****************************************************************************
# -------- TCB_BCR : (TCB Offset: 0xc0) TC Block Control Register --------
set AT91C_TCB_SYNC [expr 0x1 << 0 ]
# -------- TCB_BMR : (TCB Offset: 0xc4) TC Block Mode Register --------
set AT91C_TCB_TC0XC0S [expr 0x3 << 0 ]
set AT91C_TCB_TC0XC0S_TCLK0 0x0
set AT91C_TCB_TC0XC0S_NONE 0x1
set AT91C_TCB_TC0XC0S_TIOA1 0x2
set AT91C_TCB_TC0XC0S_TIOA2 0x3
set AT91C_TCB_TC1XC1S [expr 0x3 << 2 ]
set AT91C_TCB_TC1XC1S_TCLK1 [expr 0x0 << 2 ]
set AT91C_TCB_TC1XC1S_NONE [expr 0x1 << 2 ]
set AT91C_TCB_TC1XC1S_TIOA0 [expr 0x2 << 2 ]
set AT91C_TCB_TC1XC1S_TIOA2 [expr 0x3 << 2 ]
set AT91C_TCB_TC2XC2S [expr 0x3 << 4 ]
set AT91C_TCB_TC2XC2S_TCLK2 [expr 0x0 << 4 ]
set AT91C_TCB_TC2XC2S_NONE [expr 0x1 << 4 ]
set AT91C_TCB_TC2XC2S_TIOA0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -