Vous êtes sur la page 1sur 62

Programmable System-on-Chip

ppl@cypress.com / 2006

Programmable System on Chip


Un composant associant un microcontrleur et des fonctions logiques et analogiques configurables

Architecture PSoC : les atouts essentiels


9 Intgrer dans un composant des fonctions analogiques et logiques externes

avec PSoC (~20 composants)

avant PSoC (~90 composants)

9 Dfinir une plateforme hardware unique pour applications multiples 9 Reconfigurer/adapter les fonctionnalits en temps rel
3

La solution PSoCTM
Regroups dans un mme composant :
9 Un coeur Microcontrleur 8-bits, avec
9 9 9 9 9 Mmoire Flash Oscillateurs internes (pas de quartz externe) Multiplieur/accumulateur Contrleur d'interruptions, Sleep Timer, Watchdog Timer Contrleur I2C
Flash Flash Memory Memory 8-bit 8-bit Microcontroller Microcontroller Core (M8C) (M8C) Core Global Connect Matrix

48MHz Osc Osc 48MHz Int 32KHz 32KHz Osc Osc Int Ext 32KHz 32KHz Osc Osc Ext WatchDog Timer Timer WatchDog Sleep Timer Timer Sleep I2C Controller Interrupt Contr SRAM SRAM Configurable I/Os Decimator Decimator Multiplier/ Multiplier/ Accumulator Accumulator

La solution PSoCTM
Regroups dans un mme composant :
9 Un coeur Microcontrleur 8-bits 9 Des blocs logiques et analogiques banaliss configurables
9 Blocs Logiques configurables en Compteurs, Timers, UARTs, PWMs, SPI, Gnrateurs CRC, etc. 9 Blocs Analogiques configurables en amplis-op simples, comparateurs, filtres, CNAs, CANs, modem, etc.

Flash Flash Memory Memory

8-bit 8-bit Microcontroller Microcontroller Core (M8C) (M8C) Core

48MHz Osc Osc 48MHz Int 32KHz 32KHz Osc Osc Int Ext 32KHz 32KHz Osc Osc Ext WatchDog Timer Timer WatchDog Sleep Timer Timer Sleep Interrupt Contr Contr Interrupt SRAM SRAM ConfigurableI/Os I/Os Configurable Decimator Decimator Multiplier/ Multiplier/ Accumulator Accumulator

Analog PSoC Blocks

Global Global Connect Connect Matrix Matrix

Digital PSoC Blocks

Les solutions traditionnelles


Traditionnellement, le choix d'un microcontrleur consiste slectionner dans une famille celui disposant des ressources ncessaires l'application vise : UART, Timer, PWM, convert. A/N ou N/A, vitesse CPU, etc.

Le plus souvent le choix final rsulte d'un compromis le microcontrleur choisi possde toutes les ressources ncessaires, plus d'autres superflues le microcontrleur recherch n'existe pas, il faut accepter un sacrifice sur la fonctionnalit ou la performance, ou implanter les fonctions manquantes (par ex. analogiques) a l'extrieur La multiplicit des applications entraine la multiplicit des versions et des choix : standardisation difficile, volumes plus faibles, gestion plus complexe, etc.

beaucoup, beaucoup de variantes

PSoC : une approche radicalement nouvelle


Par opposition l'architecture PSoC intgre des blocs numriques et analogiques banaliss, configurables au gr de l'utilisateur : UART, SPI, timer, PWM, SPI, amplis op., filtres, convertisseurs, etc. un seul modle peut rpondre une multitude d'applications le microcontrleur ne se retrouve pas encombr de fonctions superflues Les blocs sont configurables et reconfigurables en fonctionnement, fonctionnement permettant d'adapter, de modifier, d'optimiser dynamiquement les fonctions ralises

UART

SPIDigital PWM PSoC Blocks Timer Timer

PWM

Comp

Ampli Analog PSoC Blocks Filtre

Comp

CNA

CAN

Slection/configuration des blocs (PSoC Designer)

En rsum

PSoC : une approche radicalement nouvelle des applications microcontrleurs


Driver H.P.

Capteur

Filtrage

Ampli

Microcontrleur
Micro traditionnel

PSoC

LED

Driver LED
LED

10

En rsum

PSoC : une approche radicalement nouvelle des applications microcontrleurs


Driver H.P.

Capteur

...et si ncessaire : Filtrage Ampli reconfiguration dynamique

Microcontrleur
Micro traditionnel

PSoC
11

LED

Modem

Driver LED
LED

La famille PSoC

Les principaux membres de la famille et leur diffrentiation


CY8C29xxx Program Memory (Kbytes) Data Memory (Bytes) Digital Blocs Analog Blocs I/O pins Availability 32 2K 16 12 24-64 Now CY8C27xxx 16 256 8 12 6-44 Now CY8C24xxx 4/16 256/512 4 6 6-48 Now CY8C21xxx 4/8 256/512 4 2 6-28 Now

12

PSoC CY8C27xxx
BandGap Out. Amp

POR GPIO RAM Decimator SMP M8C SROM


Analog IF Int Ctrl

MAC
13

32K Osc

16k Flash

Le coeur CPU occupe moins de 5% de la surface de la puce...

PLL/Osc

Architecture Microcontrleur

Coeur 8 bits M8C (24MHz) Mmoire Flash ISR Oscillateurs internes Multiplieur/Acc. Cbl Contrleur I2C Priphriques configurables E/S paramtrables

Flash Memory

8-bit Microcontroller Core (M8C)

Digital PSoC Blocks

48MHz Osc Int 32KHz Osc Ext 32KHz Osc WatchDog Timer Sleep Timer I2C Controller SRAM Configurable I/Os Decimator Multiplier/ Accumulator

Analog PSoC Blocks

Alimentation 3.3/5V Temp industrielle

14

Global Connect Matrix

Modle de programmation

PC

Program Counter (16 bits)


SP

Stack Pointer (8 bits)


A

Accumulator (8 bits)
X

Index (8 bits)
F
XA
X IO

S C Z IE

Flags (8 bits)

15

Jeu d'instructions
1, 2 ou 3 octets, 4 10 cycles/instruction (moyenne 6) Contrle droulement programme : CALL, LCALL, SSC, RET, RETI JMP, LJMP, JACC, JC, JNC, JZ, JNZ HALT, NOP Arithmtique ADD, ADC, SUB, SBB, INC, DEC, ASL, ASR Comparaisons CMP, TST Logique AND, OR, XOR, CPL, RLC, RRC Dplacement de donnes MOV, MOVI, SWAP, INDEX, PUSH, POP, ROMX

16

Modes d'adressage
Immdiat
ADD MOV A, 7 REG[8], 6

A A

'7'

OP

17

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV A, 7 REG[8], 6 A, [7] X, REG[8] [7], [8] '7' RAM

Direct
A A
OP

18

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV A, 7 REG[8], 6 A, [7] X, REG[8] [7], [9]
NOP

RAM '7' '9'

Direct

19

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV ADD MOV ADD A, 7 REG[8], 6 A, [7] X, REG[8] [7], [8] A, [X+7] A, REG[X+9] [X+7], A X X '7' A A
OP

RAM

Direct

Index

20

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV ADD MOV ADD ADD MOV A, 7 REG[8], 6 A, [7] X, REG[8] [7], [8] A, [X+7] A, REG[X+9] [X+7], A [X+7], 5 REG[X+8], 6 X X '7' '5' RAM

Direct

Index

OP

Immdiat index

21

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV ADD MOV ADD ADD MOV MVI MVI A, 7 REG[8], 6 A, [7] X, REG[8] [7], [8] A, [X+7] A, REG[X+9] [X+7], A [X+7], 5 REG[X+8], 6 A, [7] [7], A '7' +1 A A
NOP

RAM

Direct

Index

Immdiat index

Indirect post-incrment

22

Modes d'adressage
Immdiat
ADD MOV AND MOV MOV ADD MOV ADD ADD MOV MVI MVI A, 7 REG[8], 6 A, [7] X, REG[8] [7], [8] A, [X+7] A, REG[X+9] [X+7], A [X+7], 5 REG[X+8], 6 A, [8] [8], A

Direct

Index

Immdiat index

Indirect post-incrment

23

Espaces d'adressage Programmes (mmoire Flash)


4K-32K octets architecture extensible 64K octets espace spcifique (ROM) en mode superviseur

Donnes (mmoire SRAM)


256 octets par page architecture extensible 8 pages 1-4 pages pour les composants actuels

Registres
pour l'accs aux fonctions internes, aux blocs logiques/analogiques et aux E/S deux bancs de 256 registres

24

Espaces d'adressage

FLAG REG XA XIO S 1 0 1 RAM REG FLASH 16K 16K 0 0


SUPERVISOR CODE

8 PAGES MAX 2048 BYTES

32K 4 PAGES MAX (64 KB) 48K


SYSTEM PARAMETERS

32K

48K

64K

USER MAP

SUPER MAP

25

Mmoire Flash

4K 32Koct. selon le composant Process Cypress SONOS (Flash) Organisation par blocs 64 octets 50.000 cycles effac./prog par bloc Programmation tension nominale (Re)programmation in situ Emulation EEPROM

Flash Memory

8-bit Microcontroller Core (M8C) Digital PSoC Blocks

48MHz Osc Int 32KHz Osc Ext 32KHz Osc WatchDog Timer Sleep Timer I2C Controller SRAM Configurable I/Os Decimator Multiplier/ Accumulator

Analog PSoC Blocks

26

Mapping mmoire Flash


0000 0004 0008 000C 0010 0014 0018 001C 0020 0024 0028 002C 0030 0034 0038 003C 0060 0064

Reset Surveill. alimentation Blocs analogique (col.0) Blocs analogique (col.1) Blocs analogique (col.2) Blocs analogique (col.3) VC3 GPIO Blocs logique 0 Blocs logique 1 Blocs logique 2 Blocs logique 3 Blocs logique 4 Blocs logique 5 Blocs logique 6 Blocs logique 7 I2C Sleep Timer

Vecteurs d'interruption

Zone utilisateur
(32K) 7FFF
27

Protection mmoire Flash

Protection par blocs de 64 octets 4 niveaux de protection pour chaque bloc programmation, lecture externe, criture interne autorises programmation et criture autorises, lecture externe interdite criture autorise, programmation et lecture externe interdites programmation, criture, lecture externe interdites

Suppression de la protection par effacement complet du composant

28

Emulation E2PROM
La mmoire Flash est utilisable pour la lecture/criture de donnes non volatiles Accs par blocs de 64 octets Lecture : transfert bloc Flash en RAM Ecriture : transfert bloc RAM en Flash Routines firmware pour mulation accs-octet (Read-ModifyWrite) Flash RAM
Bloc n

29

Mmoire RAM

Mmoire pagine, 1 page = 256 octets Jusqu' 8 pages 1-8 pages selon la famille

Flash Memory

8-bit Microcontroller Core (M8C) Digital PSoC Blocks

48MHz Osc Int 32KHz Osc Ext 32KHz Osc WatchDog Timer Sleep Timer I2C Controller SRAM Configurable I/Os Decimator Multiplier/ Accumulator

Analog PSoC Blocks

30

Mapping mmoire RAM


RAM
00 Donnes systme

Donnes utilisateur

Pop

SP
Push

Pile

FF
31

Mapping Mmoire Registres et I/O


Register Bank 0
00h 00h

Register Bank 1

GPIO Data Registers

PSoC block Data Registers

GPIO Config Registers

PSoC block Config Registers

Digital PSoC block Data Registers Analog

System Resource Data Registers

Digital PSoC block Config Registers Analog

System Resource Data and Config Registers

FFh

FFh

"User" Space
32

"Config" Space

Oscillateurs et Horloges
Oscillateur interne principal frquence 48MHz prcision +/-2,5% sans composant externe peut tre cal sur quartz externe 32KHz si haute prcision ncessaire Oscillateur interne basse frquence frquence 32KHz prcision +/-20% sans composant externe (50% en mode veille) peut tre cal sur quartz externe 32KHz si haute prcision ncessaire

33

Systeme dhorlogerie
Internal (24MHz) External (1-24MHz)

Frquence principale = SYSCLK


24 MHz si mode interne 1 24 MHz si horloge externe

Oscill. Principal SYSCLK2 (48MHz) SYSCLK (24MHz) Diviseur 2n CPU 24V1 : Divis. 1 a 16 VC1 24V2 : Divis. 1 a 16 SYSCLK SYSCLK2 VC2

Horloge CPU = division de SYSCLK


8 divisions possibles, de 24/12MHz 96KHz (mode int.)

VC1 = division de SYSCLK (1 16) VC2 = division de VC1 (1 16) VC3 = division de VC1/VC2/SYSCLK/SYSCLK2 (1 256) SYSCLK, SYSCLK2, 32KHz, VC1, VC2, VC3 : horloges globales utilisables par les PSoC blocs Horloge Sleep Timer = division de 32KHz
4 divisions possibles, de 512Hz 1Hz

24V3 : Divis. 1 a 256 VC3 Oscill. 32KHz 32K Diviseur 2n

34

SLP

Entres/Sorties
Jusqu' 5 ports 8 bits + 1 port 4 bits La fonction des broches E/S est paramtrable : Entre et/ou Sortie standard (accessible en lecture et/ou en criture dans l'espace registre) Entre et/ou Sortie globale (connexion aux PSoC Blocks numriques) Entre et/ou Sortie analogique Mode de sortie paramtrable Strong (CMOS), Pull-up, Pull-down, High-Z, Open Drain Mode interruption configurable pour chaque broche Front montant, descendant, ou changement d'tat

35

Adaptabilit

Ce qui prcde dcrit un coeur Microcontrleur trs efficace Q'est-ce qui en fait un composant radicalement nouveau ?

Programmable System-on-Chip Blocks (PSoC Blocks)

36

PSoC Blocks (example CY8C27xxx)


Les PSoC Blocks sont des blocs banaliss (8 blocs logiques et 12 blocs analogiques) configurables par l'utilisateur Une fois configur un PSoC Block devient capable de remplir une fonction particulire, choisie dans une bibliothque de Modules Les Modules sont paramtrables par l'utilisateur, l'initialisation aussi bien qu'en fonctionnement Les Modules sont fournis prts l'emploi, avec routines logicielles de paramtrage et de contrle (API) La selection, le paramtrage et l'interconnexion des Modules s'effectuent graphiquement via le logiciel de developpement !
37 SPIDigital PWM PSoC Blocks Timer Timer

UART

PWM

Comp

Ampli Analog PSoC Blocks Filtre

Comp

CNA

CAN

PSoC Blocks logiques


8 PSoC Blocks logiques, chacun constituant une 'tranche' de 8 bits Chaque bloc est constitu de 3 registres Data et 4 registres de configuration 2 types de blocs logiques : standard : pour toute fonction de type comptage, PWM, etc. comm : idem + fonctions de transmission de type UART, SPI, etc. INPUTS Cascadables et interconnectables CLOCKS

PSoC Block logique


CPU Data Bus

Data Reg1
IN Process

Data Reg0
OUT Process

Data Reg2

Ou

Aux

Config. registers

38

Configuration des blocs logiques

Slection signal d'entre


0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Constante 0 Constante 1 Sortie PSoC Block numerique 3 Sortie PSoC Block numerique precedent Sortie PSoC Block analogique (colonne 0) Sortie PSoC Block analogique (colonne 1) Sortie PSoC Block analogique (colonne 2) Sortie PSoC Block analogique (colonne 3) Sortie Globale 0 (ou 4) Sortie Globale 1 (ou 5) Sortie Globale 2 (ou 6) Sortie Globale 3 (ou 7) Entree Globale 0 (ou 4) Entree Globale 1 (ou 5) Entree Globale 2 (ou 6) Entree Globale 3 (ou 7)
INPUTS CLOCKS

Data Reg1

Data Reg0
IN Process OUT Process

Data Reg2
Output Aux. IO

Config. registers

Slection de l'horloge
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 pas d'horloge Sortie Glogale 4 (ou 0) Sortie PSoC Block numerique 3 Sortie PSoC Block numerique precedent 48M 24V1 24V2 32K Sortie Globale 0 (ou 4) Sortie Globale 1 (ou 5) Sortie Globale 2 (ou 6) Sortie Globale 3 (ou 7) Entree Globale 0 (ou 4) Entree Globale 1 (ou 5) Entree Globale 2 (ou 6) Entree Globale 3 (ou 7)

Slection sortie
0-100 101 110 111 Invalidation de la sortie Sortie Globale 0 (ou 4) Sortie Globale 1 (ou 5) Sortie Globale 2 (ou 6) Sortie Globale 3 (ou 7)

39

1111

User Modules

User Module = fonction constitue de un ou plusieurs PSoC Blocks Regroups en bibliothque, et fournis prts l'emploi (hardware/firmware) Modules logiques disponibles :
Timer 8, 16, 24, 32 bits Counter 8, 16, 24, 32 bits Pseudo random sequence generator 8, 16, 24, 32 bits PWM 8, 16 bit PWMDB 8, 16 bit (PWM with dead band) CRC16 UART (Receive, Transmit, Full Duplex) SPI (Master, Slave) I2C software (I2C hardware disponible en ressource standard) IrDA (Receive, Transmit) E2PROM (software) LCD (software)

40

Exemple : Module 'Timer'

Timer 8 bits = 1 PSoC block (16 bits = 2 PSoC blocks, etc.)

Mesure de temps, capture d'vnements, gnration de baud rate, etc. Registre DR1 : Priode Registre DR0 : Dcompteur Registre DR2 : Capture

Internal 8-Bit Data Bus Data Registers

R/W

R/W

R/W

Period DR1 LSB MSB

AutoReload

LSB

Time DR0 LSB

Compare

CaptureVal DR2 LSB MSB


Configurable IntReq on Capture Output

MSB
Output may be Configured to Drive a Pin or PSoC block Input

Timer Clock from Clock Select Logic

Routines associes : Timer_write_period, Timer_enable_int, Timer_start, Timer_write_captureval, Timer_read_period, Timer_stop, etc.

41

PSoC Blocks analogiques


12 PSoC Blocks analogiques (4 colonnes) 2 types : CT : Continuous Time fonctions simples : ampli op, PGA, comparateur SC : Switched Capacitors fonctions complexes : filtrage, conversion, etc. Cascadables et interconnectables

Colonne 0

Colonne1

Colonne 2

Colonne 3

CT SCA SCB

CT SCB SCA

CT SCA SCB

CT SCB SCA

42

PSoC Blocks 'Continuous Time'


Ampli-op configurables et paramtrables Rseau de rsistances chelonnes (prcision 2%) Rfrence paramtrable
Port0 Sortie Colonne Sorties Blocs voisins AGND VREF Sorties Blocs voisins AGND VREFHI VREFLO

Mode

+ VDD

En CBUS OBUS OUT LOUT GOUT

15

Sorties Blocs voisins VSS

AGND

43

PSoC Blocks 'Continuous Time'


Exemple : ampli-op non inverseur
Vin Port0 Sortie Colonne Sorties Blocs voisins Mode

+ RB RA

+
Vout

En CBUS VDD OBUS OUT LOUT GOUT

G= 1+ RA/RB

15

Sorties Blocs voisins VSS

AGND

44

PSoC Blocks 'Continuous Time'


Exemple : comparateur
Port0 Sortie Colonne Sorties Blocs voisins Mode Vin

+ VDD RA RB

+
Vout

En CBUS VDD OBUS OUT LOUT GOUT

15

Sorties Blocs voisins VSS

AGND

45

Blocs 'Switched Cap'

Les rsistances sont remplaces par des capacits et des switches 1 2

46

Blocs 'Switched Cap'


Equivalence rsistance / capacit commute

1
q=C.V

22
++
q=C.V

i = q/t = fs.q = fs.C.V

R= i= V R

1 Fs.C

47

Blocs 'Switched Cap'

1
q=C.V

22
++
q=C.V

i = q/t = fs.q = fs.C.V

Avantages des capacits commutes : - simplicit de ralisation sur process CMOS - contrle du courant par la frquence de commutation des switches

48

PSoC Blocks 'Switched Cap'

Exemple : Ampli non inverseur

Vin

+ -

Vout Vin

Vout

RB

RA

1 2

CB

C A 2 1 1

G= 1+ RA/RB

G= CB/CA

49

PSoC Blocks 'Switched Cap'


2 types : SCA et SCB Ampli-op programmables CAN incrmental et CNA Filtres simples et biquad SCA : entre biquad SCB : sortie biquad
CC(32) Entres CC CA(32) Entres CA Entres REF Entres CB
1 2 1 2 1

Type SCA
CF(32)
1 2

+
2

CBUS OBUS

CB(32)
2 1

50

PSoC Blocks 'Switched Cap'


2 types : SCA et SCB Ampli-op programmables CAN incrmental et CNA Filtres simples et biquad SCA : entre biquad SCB : sortie biquad
CC(32) CARR CF(32)
1

Type SCB
2 1

CA(32) Entres CA Entres REF Entres CB


1 2 1 2

+
2

CBUS OBUS

CB(32)
2 1 1 2

51

Exemple : Convertisseur A/N


Convertisseur Delta Sigma 8 bits 1 bloc analogique type SC 1 bloc logique (timer) Dcimateur Hardware (diminue la charge du firmware) 8 bit = 32 Kech/s 11 bit = 7.8 Kech/s
ANALOG CLOCKS INPUT REF+ REF-

1
CF

CA

4
CLK

1 2
GATE CLK

16 bit DATA
LATCH

DECIMATOR TIMER 256 INTERRUPT

52

Exemple : Filtre passe-bas


2 blocs SC (ordre 2) Paramtres programmables frquence de coupure (f0) facteur d'attnuation gain 300 Hz 250 kHz

Vout C = 1 Vin C2 s 2 C C 1 1 C4 s C4 A B + f C +1 f C C 4 2 C 2 2 s s s 2 3

s 1 2f S

C2

C4 CA
V in
2

C1

CB
1
2

C3

V out

53

Exemple : Filtre passe-bande


2 blocs SC (ordre 2) Paramtres programmables frquence centrale (fc) Q gain 300 Hz 250 kHz
C2
1

Vout C = 1 Vin C2

s CB s 1 + 2 f s C3 f S 2 s C AC B 1 1 C 4 s C 4 + +1 f s C 2C 3 4 2 C 2 f C s 2

C4 CB

CA

C3

2
1 V out
AnalogBus

V in

2
1

C1

2 2
1

54

CompBus

User Modules analogiques (et mixtes)

Modules analogiques et mixtes :


Ampli simple, ampli diffrentiel, ampli inverseur, ampli gain programmable Comparateur Convert. A/N : SAR, delta-sigma, incrmental, double/triple incrmental Convert. N/A : 6/9 bits, DAC multiplieur Filtres : passe-bas, passe-bande Multiplexeur analogique Gnrateur DTMF CapSense (dtection capacitive)

Egalement disponibles : projets complets (sources et documentation), notes


d'applications, reference designs modem V21 Controleur LIN. Modulation/demodulation FSK Etc.

55

Fonctions combines
L'association de plusieurs modules permet la ralisation de fonctions complexes. Exemples :
Rectifieur Demodulateur Multiplieur

Modulation FSK

Modulation htrodyne

votre exemple...

56

Modulateur analogique (blocs SCA) La polarit du gain des blocs SC est dtermine par le signal ASign (contrl par firmware) Les blocs SCA possdent en plus un contrle par signal hardware
V in
ASign

Vout Vin

=
1

CA CF

CF
1

1
2

CA

V out

AMod

DBA03 GlobalOut4 GlobalOut0 low (no modulation)

57

Exemple : Rectifieur
SPI (Comparator to Global Output Converter) PreAmp Comparator Gain Stage (Full Wave Detector) Signal Flow Signal comes into Preamp Goes to Gain Stage and Comparator SPI converts comparator to Global Output Global Output used to control Gain Stage modulator bit Example: 4 cycle 20 kHz burst

58

Exemple : Dmodulateurd'amplitude
SPI (Comparator to Global Output Converter) Comparator PreAmp Low Pass Filter (AM Demodulator) Signal Flow Signal comes into Preamp Goes to Low Pass Filter and Comparator SPI converts comparator to Global Output Global Output used to control Low Pass Filter modulator bit Example: 10 cycle 50 kHz burst

59

Notes d'application (extrait)

AN2020 : Redundant Fan System AN2024 : Polyphonic Piano AN2025 : CTCSS Carrier Generation with a PSoC Microcontroller AN2028 : Ohmmeter AN2034 : Keypad Scan, PSoC Style AN2037 : 8-pin PDIP Produces 100 kHz Pseudo Random White Noise AN2042 : Multifunctional Optical Sensor AN2043 : Real-Time Clock in PSoC AN2044 : Signal Rectification, using Switched Capacitor Modulators AN2045 : Designing a Compact and Flexible LIN Controller AN2047 : Ultrasound Motion Sensor (New!) AN2048 : Range Finder By: Fabio Piana AN2049 : OnTV-21 By: Bernard Debbasch AN2050 : Vector-SoC: A 1-GHz Vectorial Network Analyzer By: Robert Lacoste AN2051 : Precision Digital Controller By: H.N. Naveen and S. G. Sriharsha AN2052 : Intelligent Light Effects Controller for Entertainment Systems By: Victor Kremin AN2053 : LCR Meter By: Laurent Lamesch AN2055 : Low-Power "Contactless" Tag Reader By: Chanh Ho Minh AN2056 : PAudio Analyzer By: Jerry Wasinger AN2058 : Remote Human Health Monitoring System By: Victor Kremin AN2059 : Simple Wireless Bluetooth Mobile Phone Headset By: Wong Kai Juan

AN2060 : Audiometer By: Amit Davjekar AN2062 : Laser Diode Controller By: Seenath Punnakal AN2063 : Blood Pressure Recorder By: Dave Goodrich AN2064 : Variable Color Street Number Sign By: Aubrey Kagan AN2067 : Bar Code Reading Attendance Register System By: Tejinder Singh AN2069 : Lock-In Amplifier By: Seenath Punnakal AN2074 : Poor Man's Oscilloscope By: Elden Crom AN2077 : Localized GPS Tracker By: G.K.Siddhartha, Puneet Nayyar, Ajit Singh AN2083 : PSoC485 By: Ray Walker AN2085 : All Purpose Tester By: Andrew McDowell AN2086 : Digitally Controlled Sine and Square Wave Generation AN2087 : Motor Tachometer Speed Calculation Using Hardware Timer Capture Feature AN2089 : Programmable Bipolar Analog Current Source. PSoC Style AN2091 : RC5 Codec AN2092 : Infrared Learner (Remote Control) AN2093 : Keypad Scan using ADC (SAR6 ) AN2095 : Logarithmic Signal Companding. Not just a good idea, it's m-Law! AN2098 : FSK Generator using the PSoC Device (Preliminary Draft!) AN2099 : Single Pole IIR Filters. To Infinity And Beyond! (Preliminary Draft!)

60

PSoC Applications

Rcapitulatif des caractristiques (CY8C27xxx)


Gnrales
Coeur CPU M8, jusqu 24MHz Multiplieur/Accumulateur cable Faible consommation Alim. 3.0V-5.25V (1V avec pompe de charge) Gamme industrielle

Horlogerie

oscillateur interne 24/48MHz, prcision 2.5% oscillateur interne 32KHz pour Watchdog et Sleep haute prcision avec quartz externe 32KHz Diviseurs de frquence pour blocs priphriques sortance 25mA sorties avec options pull-up/down, High-Z, Open Drain jusqu 12 entrees analogiques jusqu 4 sorties analogiques 40mA Interruption

Entres/Sorties

Mmoire Flash
16K octets 4 niveaux de protection Programmable in-situ (ISSP) programmable par blocs 50000 effacement/programmation par bloc

Blocs priphriques
12 blocs analogiques rail-to-rail configurables : ADCs (jusqu 14bits) DACs (jusqu 8 bits) Amplis gain programmables Filtres, comparateurs 8 blocs numeriques configurables Timers, compteurs, PWM, de 8 32 bits CRC, PRS UARTs half/full duplex, SPI maitre/esclave brochage libre Ralisation de fonctions complexes par combinaison

Autres ressources

Contrleur I2C maitre/esclave 400KHz Watchdog, Sleep timer Supervision dalimentation, avec detection de sous-tension Tensions de rfrence Logiciel tlchargeable gratuit Emulateur et programmateur Emulation temps rel Points darrt complexes Mmoire de trace (128Koct)

Systme de dveloppement

61

La famille PSoC

Rcapitulatif des caractristiques principales

CY8C29xxx Operating Frequency Operating voltage Program Memory (Kbytes) Data Memory (Bytes) Digital Blocs Analog Blocs I/O pins Packages 94KHz-24MHz 3.0-5.25V 32 2K 24 12 24-64 DIP,SSOP,MLF

CY8C27xxx 94KHz-24MHz 3.0-5.25V 16 256 8 12 6-44 DIP,SSOP,MLF

CY8C24xxx 94KHz-24MHz 2.4-5.25V 4/16 256/1024 4 6 6-24-48

CY8C21xxx 94KHz-24MHz 2.4-5.25V 4/8 256/512 4 2 6-28

DIP,SSOP,MLF SOIC,SSOP,MLF

62