Revision: 1647
Author: robhamerling
Date: Mon Feb 1 12:23:07 2010
Log: Update of devicefiles.html w.r.t. naming convention for USART registers
http://code.google.com/p/jallib/source/detail?r=1647
Modified:
/trunk/doc/html/devicefiles.html
=======================================
--- /trunk/doc/html/devicefiles.html Wed Dec 9 01:12:24 2009
+++ /trunk/doc/html/devicefiles.html Mon Feb 1 12:23:07 2010
@@ -581,6 +581,58 @@
'binary' field, regardless if the bits are scattered over the register or
not.
+<h3>Names of registers and subfields of [E]USART modules</h3>
+<p>PICs can have zero, one or two USART modules, of which zero, one or both
+can be 'extended' (EUSART) modules.
+Compared to a 'legacy' USART an 'extended' USART has a BAUDCON
+register and can use a 16 bits in stead of an 8-bits value for the
+baudrate divisor,
+allowing a more accurate baudrate setting, especially at high speeds.
+<p>The names of USART related registers and -subfields are not particular
+constent in the MPLAB .dev files, so it is desired to normalize these.
+And it would be convenient if serial libraries supporting a single serial
+interface could be used one of both USARTs of PICs with two USARTs.
+These are the primary reasons for the following naming convention in the
+Jallib device files:
+<ul>
+<li>for PICs with 1 USART:
+ <ul>
+ <li>no suffix
+ </ul>
+<li>for PICS with 2 USARTs:
+ <ul>
+ <li>first USART: suffix '1' and an alias without suffix
+ <li>second USART: suffix '2'
+ </ul>
+</ul>
+<p>Application of these rules results in the following list of names:
+<table>
+<tr><th>single USART <th>first of 2 USARTs <th>second of 2
USARTs</tr>
+<tr><td>BAUDCON <td>BAUDCON1<br>BAUDCON (alias) <td>BAUDCON2
</tr>
+<tr><td>BAUDCTL <td>BAUDCTL1<br>BAUDCTL (alias) <td>BAUDCTL2
</tr>
+<tr><td>RCREG <td>RCREG1<br>RCREG (alias) <td>RCREG2
</tr>
+<tr><td>RCSTA <td>RCSTA1<br>RCSTA (alias) <td>RCSTA2
</tr>
+<tr><td>SPBRG <td>SPBRG1<br>SPBRG (alias) <td>SPBRG2
</tr>
+<tr><td>SPBRGH <td>SPBRGH1<br>SPBRGH (alias) <td>SPBRGH2
</tr>
+<tr><td>TXREG <td>TXREG1<br>TXREG (alias) <td>TXREG2
</tr>
+<tr><td>TXSTA <td>TXSTA1<br>TXSTA (alias) <td>TXSTA2
</tr>
+<tr><td>PIE1_RCIE <td>PIE1_RC1IE<br>PIE1_RCIE (alias) <td>PIE3_RC2IE
</tr>
+<tr><td>PIE1_TXIE <td>PIE1_TX1IE<br>PIE1_TXIE (alias) <td>PIE3_TX2IE
</tr>
+<tr><td>PIR1_RCIF <td>PIR1_RC1IF<br>PIR1_RCIF (alias) <td>PIR3_RC2IF
</tr>
+<tr><td>PIR1_TXIF <td>PIR1_TX1IF<br>PIR1_TXIF (alias) <td>PIR3_TX2IF
</tr>
+</table>
+<p>Notes:
+<ul compact>
+<li>BAUDCON and SPBGRH registers are only available with extended USARTs.
+<li>The original name and the alias might appear exchanged.
+</ul>
+<p>With these names serial libaries or application programs supporting only
+a single serial interface can use the register and field names without
+suffix for the only USART or the first of two USARTs.
+Libraries supporting two serial interfaces will preferrably use the
+qualified names (with suffix).
+
+
<h3>Names of Timer fields</h3>
<p>Some register subfields of timer control registers have inconsistent
names in the MPLAB .dev files.
@@ -961,6 +1013,9 @@
EC_NOCLKOUT -- External Clock (TTL) signal on OSC1, OSC2 is I/O
EC_CLKOUT_PLL -- EC_CLKOUT with PLL active
EC_NOCLKOUT_PLL -- EC_NOCLKOUT with PLL active
+ ECH_NOCLKOUT -- external clock, high power mode
+ ECL_NOCLKOUT -- external clock, low power mode
+ ECM_NOCLKOUT -- external clock, medium power mode
RC_CLKOUT -- (external) Resistor/Capacitor oscillator on OSC1,
ClockOut on OSC2
RC_NOCLKOUT -- (external) Resistor/Capacitor oscillator on OSC1,
OSC2 is I/O
INTOSC_CLKOUT -- Internal oscillator, OSC1 is I/O, ClockOut on OSC2
--
You received this message because you are subscribed to the Google Groups
"jallib" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/jallib?hl=en.