AT91RM9200-CI-002 Atmel, AT91RM9200-CI-002 Datasheet - Page 104

no-image

AT91RM9200-CI-002

Manufacturer Part Number
AT91RM9200-CI-002
Description
IC ARM9 MCU 256 BGA
Manufacturer
Atmel
Series
AT91SAMr

Specifications of AT91RM9200-CI-002

Core Processor
ARM9
Core Size
16/32-Bit
Speed
180MHz
Connectivity
EBI/EMI, Ethernet, I²C, MMC, SPI, SSC, UART/USART, USB
Peripherals
POR
Number Of I /o
122
Program Memory Size
128KB (128K x 8)
Program Memory Type
ROM
Ram Size
48K x 8
Voltage - Supply (vcc/vdd)
1.65 V ~ 1.95 V
Oscillator Type
Internal
Operating Temperature
-40°C ~ 85°C
Package / Case
256-BGA
Lead Free Status / RoHS Status
Contains lead / RoHS non-compliant
Eeprom Size
-
Data Converters
-

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
AT91RM9200-CI-002
Manufacturer:
Atmel
Quantity:
10 000
Description of the
SvcComm Structure
104
Description of the Buffer Structure
AT91RM9200
The Xmodem protocol implementation demonstrates how to use the communication pipe.
The AT91PS_Buffer is a pointer to the AT91S_Buffer structure manages the buffers. This struc-
ture embeds the following functions:
All the functions can be overloaded by the application to adapt buffer management.
A simple implementation of buffer management for the Xmodem Service is provided in the boot
ROM source code.
The SvcComm structure provides the interface between low-level functions and the pipe object.
It contains pointers of functions initialized to the lower level functions (e.g. SvcXmodem).
• pointers to functions that manage the read buffer
• pointers to functions that manage the write buffer
} AT91S_Pipe, *AT91PS_Pipe;
typedef struct _AT91S_Buffer
{
char *pBuffer, unsigned int Size);
char const *pBuffer, unsigned int Size);
*pBuffer);
*pBuffer);
char const **pData, unsigned int *pSize);
char **pData, unsigned int *pSize);
unsigned int size);
unsigned int size);
} AT91S_Buffer, *AT91PS_Buffer;
char (*IsWritten) (struct _AT91S_Pipe *pPipe,char const *pVoid);
char (*IsReceived) (struct _AT91S_Pipe *pPipe,char const *pVoid);
struct _AT91S_Pipe *pPipe;
void *pChild;
// Functions invoked by the pipe
AT91S_BufferStatus (*SetRdBuffer)
AT91S_BufferStatus (*SetWrBuffer)
AT91S_BufferStatus (*RstRdBuffer)
AT91S_BufferStatus (*RstWrBuffer)
char (*MsgWritten)
char (*MsgRead)
// Functions invoked by the peripheral
AT91S_BufferStatus (*GetWrBuffer)
AT91S_BufferStatus (*GetRdBuffer)
AT91S_BufferStatus (*EmptyWrBuffer)
AT91S_BufferStatus (*FillRdBuffer)
char (*IsWrEmpty)
char (*IsRdFull)
(struct _AT91S_Buffer *pSBuffer);
(struct _AT91S_Buffer *pSBuffer);
(struct _AT91S_Buffer *pSBuffer, char const
(struct _AT91S_Buffer *pSBuffer, char const
(struct _AT91S_Buffer *pSBuffer,
(struct _AT91S_Buffer *pSBuffer,
(struct _AT91S_Buffer *pSBuffer);
(struct _AT91S_Buffer *pSBuffer);
(struct _AT91S_Buffer *pSBuffer,
(struct _AT91S_Buffer *pSBuffer,
(struct _AT91S_Buffer *pSBuffer,
(struct _AT91S_Buffer *pSBuffer,
1768I–ATARM–09-Jul-09

Related parts for AT91RM9200-CI-002