You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

262 lines
11 KiB
XML

<per:ispPeripheral xmlns:per="http://crownking/per" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" per:id="USART" per:picalias="UART" rcsid="$Id: usart.plibgen.xml,v 1.1 2012/03/09 16:55:49 johnsonl Exp $" xsi:schemaLocation="http://crownking/per per/ispPeripheral.xsd">
<per:feature per:id="BaudRate">
<per:function per:id="BaudRateSet"/>
<per:featureVariant per:id="In16BitRegister">
<per:vreg per:id="BAUD_RATE"/>
</per:featureVariant>
<per:parameter per:id="BAUD_RATE_FACTOR">
<per:picval per:pic="PIC32MX795F512L" per:value="16"/>
</per:parameter>
</per:feature>
<per:feature per:id="EnableControl">
<per:function per:id="Disable"/>
<per:function per:id="Enable"/>
<per:featureVariant per:id="Default">
<per:vreg per:id="ENABLE_CONTROL"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="HighBaudRate">
<per:function per:id="BaudRateHighDisable"/>
<per:function per:id="BaudRateHighEnable"/>
<per:function per:id="BaudRateHighSet"/>
<per:featureVariant per:id="In16BitRegister">
<per:vreg per:id="BAUD_RATE"/>
<per:vreg per:id="HIGH_BAUD_RATE"/>
</per:featureVariant>
<per:parameter per:id="HIGH_BAUD_RATE_FACTOR">
<per:picval per:pic="PIC32MX795F512L" per:value="4"/>
</per:parameter>
</per:feature>
<per:feature per:id="ReceiverBuffer">
<per:function per:id="ReceiverByteReceive"/>
<per:featureVariant per:id="Default">
<per:vreg per:id="RECEIVER_BUFFER"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="ReceiverDataAvailableStatus">
<per:function per:id="ReceiverDataAvailable"/>
<per:featureVariant per:id="Default">
<per:vreg per:id="RECEIVER_DATA_AVAILABLE_STATUS"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="ReceiverEnable">
<per:featureVariant per:id="Default">
<per:function per:id="ReceiverDisable"/>
<per:function per:id="ReceiverEnable"/>
<per:vreg per:id="RECEIVER_ENABLE"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="TransmitterBuffer">
<per:featureVariant per:id="Default">
<per:function per:id="TransmitterByteSend"/>
<per:vreg per:id="TRANSMITTER_BUFFER"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="TransmitterBufferFullStatus">
<per:featureVariant per:id="Default">
<per:function per:id="TransmitterBufferFull"/>
<per:vreg per:id="TRANSMITTER_BUFFER_FULL_STATUS"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="TransmitterEmptyStatus">
<per:featureVariant per:id="Default">
<per:function per:id="TransmitterEmpty"/>
<per:vreg per:id="TRANSMITTER_EMPTY_STATUS"/>
</per:featureVariant>
</per:feature>
<per:feature per:id="TransmitterEnable">
<per:featureVariant per:id="Default">
<per:function per:id="TransmitterDisable"/>
<per:function per:id="TransmitterEnable"/>
<per:vreg per:id="TRANSMITTER_ENABLE"/>
</per:featureVariant>
</per:feature>
<per:interface per:id="UART16-1">
<per:sfr per:id="UMODE" per:expr="^U(\d)MODE$">
<per:field per:id="STSEL" per:expr="^STSEL$"/>
<per:field per:id="PDSEL" per:expr="^PDSEL$"/>
<per:field per:id="BRGH" per:expr="^BRGH$">
<per:vreg_ref per:idref="HIGH_BAUD_RATE"/>
</per:field>
<per:field per:id="RXINV" per:expr="^RXINV$"/>
<per:field per:id="ABAUD" per:expr="^ABAUD$"/>
<per:field per:id="LPBACK" per:expr="^LPBACK$"/>
<per:field per:id="WAKE" per:expr="^WAKE$"/>
<per:field per:id="UEN" per:expr="^UEN$"/>
<per:field per:id="RTSMD" per:expr="^RTSMD$"/>
<per:field per:id="IREN" per:expr="^IREN$"/>
<per:field per:id="USIDL" per:expr="^USIDL$"/>
<per:field per:id="UARTEN" per:expr="^UARTEN$">
<per:vreg_ref per:idref="ENABLE_CONTROL"/>
</per:field>
</per:sfr>
<per:sfr per:id="USTA" per:expr="^U(\d)STA$">
<per:field per:id="URXDA" per:expr="^URXDA$">
<per:vreg_ref per:idref="RECEIVER_DATA_AVAILABLE_STATUS"/>
</per:field>
<per:field per:id="OERR" per:expr="^OERR$"/>
<per:field per:id="FERR" per:expr="^FERR$"/>
<per:field per:id="PERR" per:expr="^PERR$"/>
<per:field per:id="RIDLE" per:expr="^RIDLE$"/>
<per:field per:id="ADDEN" per:expr="^ADDEN$"/>
<per:field per:id="URXISEL" per:expr="^URXISEL$"/>
<per:field per:id="TRMT" per:expr="^TRMT$">
<per:vreg_ref per:idref="TRANSMITTER_EMPTY_STATUS"/>
</per:field>
<per:field per:id="UTXBF" per:expr="^UTXBF$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER_FULL_STATUS"/>
</per:field>
<per:field per:id="UTXEN" per:expr="^UTXEN$">
<per:vreg_ref per:idref="TRANSMITTER_ENABLE"/>
</per:field>
<per:field per:id="UTXBRK" per:expr="^UTXBRK$"/>
<per:field per:id="UTXISEL0" per:expr="^UTXISEL0$"/>
<per:field per:id="UTXINV" per:expr="^UTXINV$"/>
<per:field per:id="UTXISEL1" per:expr="^UTXISEL1$"/>
</per:sfr>
<per:sfr per:id="UTXREG" per:expr="^U(\d)TXREG$">
<per:field per:id="ALL" per:expr="^U(\d)TXREG$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="URXREG" per:expr="^U(\d)RXREG$">
<per:field per:id="ALL" per:expr="^U(\d)RXREG$">
<per:vreg_ref per:idref="RECEIVER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="UBRG" per:expr="^U(\d)BRG$">
<per:field per:id="ALL" per:expr="^BRG$">
<per:vreg_ref per:idref="BAUD_RATE"/>
</per:field>
</per:sfr>
</per:interface>
<per:interface per:id="UART32-1">
<per:sfr per:id="UMODE" per:expr="^U(\d)MODE$">
<per:field per:id="STSEL" per:expr="^STSEL$"/>
<per:field per:id="PDSEL" per:expr="^PDSEL$"/>
<per:field per:id="BRGH" per:expr="^BRGH$">
<per:vreg_ref per:idref="HIGH_BAUD_RATE"/>
</per:field>
<per:field per:id="RXINV" per:expr="^RXINV$"/>
<per:field per:id="ABAUD" per:expr="^ABAUD$"/>
<per:field per:id="LPBACK" per:expr="^LPBACK$"/>
<per:field per:id="WAKE" per:expr="^WAKE$"/>
<per:field per:id="UEN" per:expr="^UEN$"/>
<per:field per:id="RTSMD" per:expr="^RTSMD$"/>
<per:field per:id="IREN" per:expr="^IREN$"/>
<per:field per:id="SIDL" per:expr="^SIDL$"/>
<per:field per:id="FRZ" per:expr="^FRZ$"/>
<per:field per:id="ON" per:expr="^ON$">
<per:vreg_ref per:idref="ENABLE_CONTROL"/>
</per:field>
</per:sfr>
<per:sfr per:id="USTA" per:expr="^U(\d)STA$">
<per:field per:id="URXDA" per:expr="^URXDA$">
<per:vreg_ref per:idref="RECEIVER_DATA_AVAILABLE_STATUS"/>
</per:field>
<per:field per:id="OERR" per:expr="^OERR$"/>
<per:field per:id="FERR" per:expr="^FERR$"/>
<per:field per:id="PERR" per:expr="^PERR$"/>
<per:field per:id="RIDLE" per:expr="^RIDLE$"/>
<per:field per:id="ADDEN" per:expr="^ADDEN$"/>
<per:field per:id="URXISEL" per:expr="^URXISEL$"/>
<per:field per:id="TRMT" per:expr="^TRMT$">
<per:vreg_ref per:idref="TRANSMITTER_EMPTY_STATUS"/>
</per:field>
<per:field per:id="UTXBF" per:expr="^UTXBF$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER_FULL_STATUS"/>
</per:field>
<per:field per:id="UTXEN" per:expr="^UTXEN$">
<per:vreg_ref per:idref="TRANSMITTER_ENABLE"/>
</per:field>
<per:field per:id="UTXBRK" per:expr="^UTXBRK$"/>
<per:field per:id="URXEN" per:expr="^URXEN$">
<per:vreg_ref per:idref="RECEIVER_ENABLE"/>
</per:field>
<per:field per:id="UTXINV" per:expr="^UTXINV$"/>
<per:field per:id="UTXISEL" per:expr="^UTXISEL$"/>
<per:field per:id="ADDR" per:expr="^ADDR$"/>
<per:field per:id="ADM_EN" per:expr="^ADM_EN$"/>
</per:sfr>
<per:sfr per:id="UTXREG" per:expr="^U(\d)TXREG$">
<per:field per:id="ALL" per:expr="^U(\d)TXREG$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="URXREG" per:expr="^U(\d)RXREG$">
<per:field per:id="ALL" per:expr="^U(\d)RXREG$">
<per:vreg_ref per:idref="RECEIVER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="UBRG" per:expr="^U(\d)BRG$">
<per:field per:id="ALL" per:expr="^BRG$">
<per:vreg_ref per:idref="BAUD_RATE"/>
</per:field>
</per:sfr>
</per:interface>
<per:interface per:id="UART32-2">
<per:param per:cpu="pic32mx795f512l" per:id="BAUD_RATE_FACTOR" per:value="16"/>
<per:param per:cpu="pic32mx795f512l" per:id="HIGH_BAUD_RATE_FACTOR" per:value="4"/>
<per:sfr per:id="UMODE" per:expr="^U(\d)MODE$">
<per:field per:id="STSEL" per:expr="^STSEL$"/>
<per:field per:id="PDSEL" per:expr="^PDSEL$"/>
<per:field per:id="BRGH" per:expr="^BRGH$">
<per:vreg_ref per:idref="HIGH_BAUD_RATE"/>
</per:field>
<per:field per:id="RXINV" per:expr="^RXINV$"/>
<per:field per:id="ABAUD" per:expr="^ABAUD$"/>
<per:field per:id="LPBACK" per:expr="^LPBACK$"/>
<per:field per:id="WAKE" per:expr="^WAKE$"/>
<per:field per:id="IREN" per:expr="^IREN$"/>
<per:field per:id="SIDL" per:expr="^SIDL$"/>
<per:field per:id="FRZ" per:expr="^FRZ$"/>
<per:field per:id="ON" per:expr="^ON$">
<per:vreg_ref per:idref="ENABLE_CONTROL"/>
</per:field>
</per:sfr>
<per:sfr per:id="USTA" per:expr="^U(\d)STA$">
<per:field per:id="URXDA" per:expr="^URXDA$">
<per:vreg_ref per:idref="RECEIVER_DATA_AVAILABLE_STATUS"/>
</per:field>
<per:field per:id="OERR" per:expr="^OERR$"/>
<per:field per:id="FERR" per:expr="^FERR$"/>
<per:field per:id="PERR" per:expr="^PERR$"/>
<per:field per:id="RIDLE" per:expr="^RIDLE$"/>
<per:field per:id="ADDEN" per:expr="^ADDEN$"/>
<per:field per:id="URXISEL" per:expr="^URXISEL$"/>
<per:field per:id="TRMT" per:expr="^TRMT$">
<per:vreg_ref per:idref="TRANSMITTER_EMPTY_STATUS"/>
</per:field>
<per:field per:id="UTXBF" per:expr="^UTXBF$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER_FULL_STATUS"/>
</per:field>
<per:field per:id="UTXEN" per:expr="^UTXEN$">
<per:vreg_ref per:idref="TRANSMITTER_ENABLE"/>
</per:field>
<per:field per:id="UTXBRK" per:expr="^UTXBRK$"/>
<per:field per:id="URXEN" per:expr="^URXEN$">
<per:vreg_ref per:idref="RECEIVER_ENABLE"/>
</per:field>
<per:field per:id="UTXINV" per:expr="^UTXINV$"/>
<per:field per:id="UTXISEL" per:expr="^UTXISEL$"/>
<per:field per:id="ADDR" per:expr="^ADDR$"/>
<per:field per:id="ADM_EN" per:expr="^ADM_EN$"/>
</per:sfr>
<per:sfr per:id="UTXREG" per:expr="^U(\d)TXREG$">
<per:field per:id="ALL" per:expr="^U(\d)TXREG$">
<per:vreg_ref per:idref="TRANSMITTER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="URXREG" per:expr="^U(\d)RXREG$">
<per:field per:id="ALL" per:expr="^U(\d)RXREG$">
<per:vreg_ref per:idref="RECEIVER_BUFFER"/>
</per:field>
</per:sfr>
<per:sfr per:id="UBRG" per:expr="^U(\d)BRG$">
<per:field per:id="ALL" per:expr="^BRG$">
<per:vreg_ref per:idref="BAUD_RATE"/>
</per:field>
</per:sfr>
</per:interface>
</per:ispPeripheral>