SAM3S1A Atmel Corporation, SAM3S1A Datasheet - Page 934

no-image

SAM3S1A

Manufacturer Part Number
SAM3S1A
Description
Manufacturer
Atmel Corporation
Datasheets

Specifications of SAM3S1A

Flash (kbytes)
64 Kbytes
Pin Count
48
Max. Operating Frequency
64 MHz
Cpu
Cortex-M3
# Of Touch Channels
17
Hardware Qtouch Acquisition
No
Max I/o Pins
34
Ext Interrupts
34
Usb Transceiver
1
Quadrature Decoder Channels
1
Usb Speed
Full Speed
Usb Interface
Device
Spi
2
Twi (i2c)
2
Uart
3
Ssc
1
Graphic Lcd
No
Video Decoder
No
Camera Interface
No
Adc Channels
8
Adc Resolution (bits)
12
Adc Speed (ksps)
1000
Analog Comparators
1
Resistive Touch Screen
No
Temp. Sensor
Yes
Crypto Engine
No
Sram (kbytes)
16
Self Program Memory
YES
Dram Memory
No
Nand Interface
Yes
Picopower
No
Temp. Range (deg C)
-40 to 85
I/o Supply Class
1.8/3.3
Operating Voltage (vcc)
1.62 to 3.6
Fpu
No
Mpu / Mmu
Yes / No
Timers
3
Output Compare Channels
3
Input Capture Channels
3
Pwm Channels
4
32khz Rtc
Yes
Calibrated Rc Oscillator
Yes
Figure 37-8. Data IN Transfer for Ping-pong Endpoint
934
TXPKTRDY Flag
(UDP_MCSRx)
FIFO (DPR)
Bank 0
FIFO (DPR)
USB Bus
Packets
TXCOMP Flag
(UDP_CSRx)
Bank 1
SAM3S
Written by
Microcontroller
Microcontroller
Load Data IN Bank 0
Set by Firmware,
Data Payload Written in FIFO Bank 0
When using a ping-pong endpoint, the following procedures are required to perform Data IN
transactions:
Warning: There is software critical path due to the fact that once the second bank is filled, the
driver has to wait for TX_COMP to set TX_PKTRDY. If the delay between receiving TX_COMP
is set and TX_PKTRDY is set too long, some Data IN packets may be NACKed, reducing the
bandwidth.
Warning: TX_COMP must be cleared after TX_PKTRDY has been set.
1. The microcontroller checks if it is possible to write in the FIFO by polling TXPKTRDY to
2. The microcontroller writes the first data payload to be sent in the FIFO (Bank 0), writing
3. The microcontroller notifies the USB peripheral it has finished writing in Bank 0 of the
4. Without waiting for TXPKTRDY to be cleared, the microcontroller writes the second
5. The microcontroller is notified that the first Bank has been released by the USB device
6. Once the microcontroller has received TXCOMP for the first Bank, it notifies the USB
7. At this step, Bank 0 is available and the microcontroller can prepare a third data pay-
Data IN
PID
be cleared in the endpoint’s UDP_CSRx register.
zero or more byte values in the endpoint’s UDP_FDRx register.
FIFO by setting the TXPKTRDY in the endpoint’s UDP_CSRx register.
data payload to be sent in the FIFO (Bank 1), writing zero or more byte values in the
endpoint’s UDP_FDRx register.
when TXCOMP in the endpoint’s UDP_CSRx register is set. An interrupt is pending
while TXCOMP is being set.
device that it has prepared the second Bank to be sent, raising TXPKTRDY in the end-
point’s UDP_CSRx register.
load to be sent
Microcontroller Load Data IN Bank 1
USB Device Send Bank 0
Written by
Microcontroller
Read by USB Device
Data IN
Cleared by USB Device,
Data Payload Fully Transmitted
.
Set by USB
Device
ACK
PID
Interrupt Cleared by Firmware
Data IN
PID
Microcontroller Load Data IN Bank 0
USB Device Send Bank 1
Interrupt Pending
Written by
Microcontroller
Set by Firmware,
Data Payload Written in FIFO Bank 1
Read by USB Device
Data IN
Set by USB Device
6500C–ATARM–8-Feb-11
ACK
PID

Related parts for SAM3S1A