SAM4S16C Atmel Corporation, SAM4S16C Datasheet - Page 90

no-image

SAM4S16C

Manufacturer Part Number
SAM4S16C
Description
Manufacturer
Atmel Corporation
Datasheets

Specifications of SAM4S16C

Flash (kbytes)
1024 Kbytes
Pin Count
100
# Of Touch Channels
32
Hardware Qtouch Acquisition
No
Max I/o Pins
79
Ext Interrupts
79
Usb Transceiver
1
Quadrature Decoder Channels
2
Usb Speed
Full Speed
Usb Interface
Device
Spi
3
Twi (i2c)
2
Uart
4
Ssc
1
Sd / Emmc
1
Graphic Lcd
No
Video Decoder
No
Camera Interface
No
Adc Channels
16
Adc Resolution (bits)
12
Adc Speed (ksps)
1000
Analog Comparators
1
Resistive Touch Screen
No
Dac Channels
2
Dac Resolution (bits)
12
Temp. Sensor
Yes
Crypto Engine
No
Sram (kbytes)
128
Self Program Memory
YES
External Bus Interface
1
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
6
Output Compare Channels
6
Input Capture Channels
6
Pwm Channels
4
32khz Rtc
Yes
Calibrated Rc Oscillator
Yes
11.6.3.8
90
90
Absolute Value
Compare and Update Value
SAM4S
SAM4S
Instruction Width Selection
Table 11-16. Condition Code Suffixes (Continued)
The example below shows the use of a conditional instruction to find the absolute value of a
number. R0 = ABS(R1).
The example below shows the use of conditional instructions to update the value of R4 if the
signed values R0 is greater than R1 and R2 is greater than R3.
There are many instructions that can generate either a 16-bit encoding or a 32-bit encoding
depending on the operands and destination register specified. For some of these instructions,
the user can force a specific instruction size by using an instruction width suffix. The .W suffix
forces a 32-bit instruction encoding. The .N suffix forces a 16-bit instruction encoding.
If the user specifies an instruction width suffix and the assembler cannot generate an instruction
encoding of the requested width, it generates an error.
Note:
To use an instruction width suffix, place it immediately after the instruction mnemonic and condi-
tion code, if any. The example below shows instructions with the instruction width suffix.
Suffix
VS
VC
HI
LS
GE
LT
GT
LE
AL
flags
In some cases, it might be necessary to specify the .W suffix, for example if the operand is the
label of an instruction or literal data, as in the case of branch instructions. This is because the
assembler might not automatically generate the right size encoding.
MOVS
IT
RSBMI
CMP
ITT
CMPGT
MOVGT
BCS.W
ADDS.W R0, R0, R1 ; creates a 32-bit instruction even though the same
Flags
V = 1
V = 0
C = 1 and Z = 0
C = 0 or Z = 1
N = V
N ! = V
Z = 0 and N = V
Z = 1 and N ! = V
Can have any
value
label
R0, R1
MI
R0, R1, #0
R0, R1
GT
R2, R3
R4, R5
Meaning
Overflow
No overflow
Higher, unsigned >
Lower or same, unsigned ≤
Greater than or equal, signed ≥
Less than, signed <
Greater than, signed >
Less than or equal, signed ≤
Always. This is the default when no suffix is
specified.
; creates a 32-bit instruction even for a short branch
; operation can be done by a 16-bit instruction
; Compare R0 and R1, setting flags
; IT instruction for the two GT conditions
; If 'greater than', compare R2 and R3, setting
; If still 'greater than', do R4 = R5
; R0 = R1, setting flags
; IT instruction for the negative condition
; If negative, R0 = -R1
11100A–ATARM–28-Oct-11
11100A–ATARM–28-Oct-11

Related parts for SAM4S16C