![Rabbit RabbitCore RCM4100 Скачать руководство пользователя страница 49](http://html1.mh-extra.com/html/rabbit/rabbitcore-rcm4100/rabbitcore-rcm4100_user-manual_3119422049.webp)
User’s Manual
45
5.2
Dynamic C Function Calls
5.2.1 Digital I/O
The RCM4100 series of modules was designed to interface with other systems, and so
there are no drivers written specifically for the I/O. The general Dynamic C read and write
functions allow you to customize the parallel I/O to meet your specific needs. For exam-
ple, use
WrPortI(PEDDR, &PEDDRShadow, 0x00);
to set all the Port E bits as inputs, or use
WrPortI(PEDDR, &PEDDRShadow, 0xFF);
to set all the Port E bits as outputs.
When using the auxiliary I/O bus on the Rabbit 4000 chip, add the line
#define PORTA_AUX_IO
// required to enable auxiliary I/O bus
to the beginning of any programs using the auxiliary I/O bus.
The sample programs in the Dynamic C
SAMPLES/RCM4100
folder provide further
examples.
5.2.2 Serial Communication Drivers
Library files included with Dynamic C provide a full range of serial communications sup-
port. The
RS232.LIB
library provides a set of circular-buffer-based serial functions. The
PACKET.LIB
library provides packet-based serial functions where packets can be delimited
by the 9th bit, by transmission gaps, or with user-defined special characters. Both libraries
provide blocking functions, which do not return until they are finished transmitting or
receiving, and nonblocking functions, which must be called repeatedly until they are fin-
ished, allowing other functions to be performed between calls. For more information, see
the
Dynamic C Function Reference Manual
and Technical Note TN213,
Rabbit Serial
Port Software
.
5.2.3 SRAM Use
The RCM4100 series of modules has a battery-backed data SRAM and a program-execu-
tion SRAM. Dynamic C provides the
protected
keyword to identify variables that are to
be placed into the battery-backed SRAM. The compiler generates code that maintains two
copies of each protected variable in the battery-backed SRAM. The compiler also generates
a flag to indicate which copy of the protected variable is valid at the current time. This flag
is also stored in the battery-backed SRAM. When a protected variable is updated, the
“inactive” copy is modified, and is made “active” only when the update is 100% complete.
This assures the integrity of the data in case a reset or a power failure occurs during the
update process. At power-on the application program uses the active copy of the variable
pointed to by its associated flag.
Содержание RabbitCore RCM4100
Страница 1: ...RabbitCore RCM4100 C Programmable Core Module User s Manual 019 0153 090508 G...
Страница 18: ...14 RabbitCore RCM4100...
Страница 102: ...98 RabbitCore RCM4100...
Страница 106: ...102 RabbitCore RCM4100...
Страница 110: ...106 RabbitCore RCM4100...
Страница 112: ......