📄 m68k.h
字号:
* The MBAR register below holds the MBASE address for the other * register definitions! */</font><i><a name="m68k_MBARRegister_Type">typedef</a></i> <i>volatile</i> Short <font color='DarkBlue'>m68k_MBARRegister_Type</font>; <font color="#6920ac">/* Module Base Address Reg. */</font><i><a name="m68k_SCRRegister_Type">typedef</a></i> <i>volatile</i> Uns <font color='DarkBlue'>m68k_SCRRegister_Type</font>; <font color="#6920ac">/* System Control Reg. */</font><font color="#6920ac">/* * External Bus Interface Registers */</font><i><a name="m68k_PortRegister_Type">typedef</a></i> <i>struct</i> { <i>volatile</i> Byte DoNotAccess0; <i>volatile</i> Byte PACNT; <font color="#6920ac">/* Port A Control Register */</font> <i>volatile</i> Byte DoNotAccess1; <i>volatile</i> Byte PADDR; <font color="#6920ac">/* Port A Direction Register */</font> <i>volatile</i> Byte DoNotAccess2; <i>volatile</i> Byte PADAT; <font color="#6920ac">/* Port A Data Register */</font> <i>volatile</i> Short PBCNT; <font color="#6920ac">/* Port B Control Register */</font> <i>volatile</i> Short PBDDR; <font color="#6920ac">/* Port B Direction Register */</font> <i>volatile</i> Short PBDAT; <font color="#6920ac">/* Port B Data Register */</font>} <font color='DarkBlue'>m68k_PortRegister_Type</font>;<font color="#6920ac">/* * Interrupt Control Registers */</font><i><a name="m68k_InterruptControlRegister_Type">typedef</a></i> <i>struct</i>{ <i>volatile</i> Short LICR1; <font color="#6920ac">/* Latched Interrupt Control Register 1 */</font> <i>volatile</i> Short LICR2; <font color="#6920ac">/* Latched Interrupt Control Register 2 */</font> <i>volatile</i> Short PICR; <font color="#6920ac">/* Peripheral Interrupt Control Register */</font> <i>volatile</i> Byte DoNotAccess0; <i>volatile</i> Byte PIVR; <font color="#6920ac">/* Programmable Interrupt Vector */</font>} <font color='DarkBlue'>m68k_InterruptControlRegister_Type</font>;<font color="#6920ac">/* * Chip Select Registers */</font><i><a name="m68k_ChipSelectRegister_Type">typedef</a></i> <i>struct</i>{ <i>volatile</i> Short BR0; <font color="#6920ac">/* Base Register CS0 */</font> <i>volatile</i> Short OR0; <font color="#6920ac">/* Option Register CS0 */</font> <i>volatile</i> Short BR1; <font color="#6920ac">/* Base Register CS1 */</font> <i>volatile</i> Short OR1; <font color="#6920ac">/* Option Register CS1 */</font> <i>volatile</i> Short BR2; <font color="#6920ac">/* Base Register CS2 */</font> <i>volatile</i> Short OR2; <font color="#6920ac">/* Option Register CS2 */</font> <i>volatile</i> Short BR3; <font color="#6920ac">/* Base Register CS3 */</font> <i>volatile</i> Short OR3; <font color="#6920ac">/* Option Register CS3 */</font>} <font color='DarkBlue'>m68k_ChipSelectRegister_Type</font>; <font color="#6920ac">/* * UART Module Registers */</font><i><a name="m68k_UARTRegister_Type">typedef</a></i> <i>struct</i>{ <i>volatile</i> Byte DoNotAccess0; <i>volatile</i> Byte UMR; <font color="#6920ac">/* UART Mode Register */</font> <i>volatile</i> Byte DoNotAccess1; <i>volatile</i> Byte USR; <font color="#6920ac">/* UART Status/Clock Select Register */</font> <i>volatile</i> Byte DoNotAccess2; <i>volatile</i> Byte UCR; <font color="#6920ac">/* UART Command Register */</font> <i>volatile</i> Byte DoNotAccess3; <i>volatile</i> Byte UBFR; <font color="#6920ac">/* READ: UART Receive Buffer */</font> <font color="#6920ac">/* WRITE: UART Transmit Buffer */</font> <i>volatile</i> Byte DoNotAccess4; <i>volatile</i> Byte UIPCR; <font color="#6920ac">/* READ: UART Input Port Change Register*/</font> <font color="#6920ac">/* WRITE: UART Control Register */</font> <i>volatile</i> Byte DoNotAccess5; <i>volatile</i> Byte UISR; <font color="#6920ac">/* READ: UART Interrupt Status Register */</font> <font color="#6920ac">/* WRITE: UART Interrupt Mask Register */</font> <i>volatile</i> Byte DoNotAccess6; <i>volatile</i> Byte UBG1; <font color="#6920ac">/* Baud Rate Gen Prescaler MSB */</font> <i>volatile</i> Byte DoNotAccess7; <i>volatile</i> Byte UBG2; <font color="#6920ac">/* Baud Rate Gen Prescaler LSB */</font><font color="#6920ac">/* * NOTE - big hole in register map. filled in from M68K_MBASE+$110 - * M68K_MBASE+$117 */</font> <i>volatile</i> Byte DoNotAccessHole[8];<font color="#6920ac">/* sensible registers continue... */</font> <i>volatile</i> Byte DoNotAccess8; <i>volatile</i> Byte UIVR; <font color="#6920ac">/* UART Interrupt Vector Register */</font> <i>volatile</i> Byte DoNotAccess9; <i>volatile</i> Byte UIP; <font color="#6920ac">/* UART Register Input Port */</font> <i>volatile</i> Byte DoNotAccess10; <i>volatile</i> Byte UOP1; <font color="#6920ac">/* UART Output Port Bit Set Cmd */</font> <i>volatile</i> Byte DoNotAccess11; <i>volatile</i> Byte UOP0; <font color="#6920ac">/* UART Output Port Bit Reset Cmd */</font>} <font color='DarkBlue'>m68k_UARTRegister_Type</font>;<font color="#6920ac">/* * UART Timer Registers */</font><i><a name="m68k_TimerRegister_Type">typedef</a></i> <i>struct</i>{ <i>volatile</i> Short TMR1; <font color="#6920ac">/* Timer Mode Register 1 */</font> <i>volatile</i> Short TRR1; <font color="#6920ac">/* Timer Reference Register 1 */</font> <i>volatile</i> Short TCR1; <font color="#6920ac">/* Timer Capture Register 1 */</font> <i>volatile</i> Short TCN1; <font color="#6920ac">/* Timer Counter 1 */</font> <i>volatile</i> Byte DoNotAccess0; <i>volatile</i> Byte TER1; <font color="#6920ac">/* Timer Event Register 1 */</font> <i>volatile</i> Short WRR; <font color="#6920ac">/* Watchdog Reference Register */</font> <i>volatile</i> Short WCR; <font color="#6920ac">/* Watchdog Counter Register */</font> <i>volatile</i> Short DoNotAccess1; <i>volatile</i> Short TMR2; <font color="#6920ac">/* Timer Mode Register 2 */</font> <i>volatile</i> Short TRR2; <font color="#6920ac">/* Timer Reference Register 2 */</font> <i>volatile</i> Short TCR2; <font color="#6920ac">/* Timer Capture Register 2 */</font> <i>volatile</i> Short TCN2; <font color="#6920ac">/* Timer Counter 2 */</font> <i>volatile</i> Byte DoNotAccess2; <i>volatile</i> Byte TER2; <font color="#6920ac">/* Timer Event Register 2 */</font>} <font color='DarkBlue'>m68k_TimerRegister_Type</font>;<font color="#6920ac">/* * M-Bus (I2C) Module Registers */</font><i><a name="m68k_MBusModuleRegister_Type">typedef</a></i> <i>struct</i>{ <i>volatile</i> Byte DoNotAccess0; <i>volatile</i> Byte MADR; <font color="#6920ac">/* M-Bus Address register */</font> <i>volatile</i> Byte DoNotAccess1; <i>volatile</i> Byte MFDR; <font color="#6920ac">/* M-Bus Freq. Divider register */</font> <i>volatile</i> Byte DoNotAccess2; <i>volatile</i> Byte MBCR; <font color="#6920ac">/* M-Bus Control register */</font> <i>volatile</i> Byte DoNotAccess3; <i>volatile</i> Byte MBSR; <font color="#6920ac">/* M-Bus Status register */</font> <i>volatile</i> Byte DoNotAccess4; <i>volatile</i> Byte MBDR; <font color="#6920ac">/* M-Bus Data I/O register */</font>} <font color='DarkBlue'>m68k_MBusModuleRegister_Type</font>;<font color="#6920ac">/* * ---<<< CORTEX SPECIFIC DEFINITIONS >>>--- */</font><font color="#6920ac">/* fast interrupt enable/diable cookie */</font><i><a name="hrdi_FastIntrCookie_t">typedef</a></i> <i>hrdi_Priority_t</i> <i><font color='DarkBlue'>hrdi_FastIntrCookie_t</font></i>;<font color="#6920ac">/* global interrupt enable/diable cookie */</font><i><a name="hrdi_GlobalIntrCookie_t">typedef</a></i> <i>hrdi_Priority_t</i> <i><font color='DarkBlue'>hrdi_GlobalIntrCookie_t</font></i>;<font color="#6920ac">/* hardware interrupts dispatcher */</font><font size="+1"><i>crtx_Void_t</i> <a href="hrdi_Dispatcher.FIND-FUNC">hrdi_Dispatcher</a>(<i>crtx_Void_t</i>);</font><font color="#6920ac">/* Hardware interrupt dispatcher */</font><i><a name="hrdi_Dispatcher_t">typedef</a></i> <i>crtx_Void_t</i> (*<i><font color='DarkBlue'>hrdi_Dispatcher_t</font></i>)(<i>crtx_Void_t</i>);<font size="+1"><i>crtx_Void_t</i> <a href="port_Init.FIND-FUNC">port_Init</a>(<i>crtx_Void_t</i>);</font><font size="+1"><i>crtx_Void_t</i> <a href="port_Fatal.FIND-FUNC">port_Fatal</a>(<i>crtx_Void_t</i>);</font><font size="+1"><i>crtx_Void_t</i> <a href="port_Abort.FIND-FUNC">port_Abort</a>(<i>crtx_Void_t</i>);</font><font size="+1"><i>crtx_Void_t</i> <a href="port_Exit.FIND-FUNC">port_Exit</a>(<i>crtx_Void_t</i>);</font><font size="+1"><i>crtx_Void_t</i> <a href="port_InitSerial.FIND-FUNC">port_InitSerial</a>(<i>crtx_Void_t</i>);</font><font size="+1"><i>crtx_Void_t</i> <a href="port_Putc.FIND-FUNC">port_Putc</a>(<i>crtx_Char_t</i> Char_a);</font><b><font color='DarkGreen'>#if</font></b><font color="maroon"> HRDI_USE_CORTEX_SCNDRY_INTR_TBL == 1</font><font color="#6920ac">/* secondary interrupt table */</font><i>extern</i> <i>crtx_Void_t</i> *hrdi_StartISRs_g; <font color="#6920ac">/* in RAM */</font><i>extern</i> <i>crtx_Void_t</i> *hrdi_EndISRs_g;<i>extern</i> <i>crtx_Void_t</i> *hrdi_StartISRsCode_g; <font color="#6920ac">/* in ROM */</font><i>extern</i> <i>crtx_Void_t</i> *hrdi_EndISRsCode_g;<i>extern</i> <i>crtx_Void_t</i> **hrdi_StartISRsPtr_g;<b><font color='DarkGreen'>#endif</font></b><font color="maroon"> <font color="#6920ac">/* HRDI_USE_CORTEX_SCNDRY_INTR_TBL == 1 */</font></font><font color="#6920ac">/* ===== END OF THE DEFINITION FILE ===== */</font><b><font color='DarkGreen'>#endif</font></b><font color="maroon"> <font color="#6920ac">/* (CRTX_CPU_FAMILY==CRTX_M68000) */</font></font><b><font color='DarkGreen'>#ifdef</font></b><font color="maroon"> __cplusplus</font>}<b><font color='DarkGreen'>#endif</font></b><font color="maroon"> <font color="#6920ac">/* __cplusplus */</font></font><b><font color='DarkGreen'>#endif</font></b><font color="maroon"> <font color="#6920ac">/* __M68K__H */</font></font></pre></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -