DANH M C CÁC KÝ HI U, CH VI T T T AACB- Analog Continuous Blocks AD- Analog to Digital Converter AGND- Analog Ground ALU- Athrimectic and Logic Unit ASC- Analog Switch Type C ASD- Analog
Trang 1I H C QU C GIA HÀ N I
Nguy n c Minh
NG D NG VI U KHI N PSoC U KHI N NG C M T
CHI U THEO PH NG PHÁP PID
Ngành : K THU T N T - VI N THÔNGChuyên ngành : K THU T VÔ TUY N N T
VÀ THÔNG TIN LIÊN L C
Trang 2L I C M N
Sau m t th i gian h c t p và nghiên c u, c s giúp c a các th y cô,các b n h c và ng nghi p, n nay tôi ã hoàn thành b n lu n v n th c s " ng
d ng vi u khi n PSoC™ u khi n ng c m t chi u theo ph ng pháp PID"
M c dù ã có nhi u c g ng song do trình và i u ki n nghiên c u có h n nên
ch c ch n b n lu n v n v n còn i m thi u sót Tôi r t mong nh n c các ý ki nóng góp c a các th y cô và các b n hoàn thi n h n n a ki n th c c a mình.Tôi xin bày t s kính tr ng và bi t n sâu s c i v i th y giáo-ti n s Tr nQuang Vinh, m c dù r t b n nh ng ã r t nhi t tình h ng d n, giúp tôi hoànthành b n lu n v n này
Tôi c ng xin g i l i c m n t i các th y cô, các b n h c và ng nghi p ã ngviên, giúp tôi hoàn thành công vi c
Xin chân thành c m n !
Trang 3M C L C
Trang ph bìa -1
L I C M N -2
M C L C -3
DANH M C CÁC KÝ HI U, CH VI T T T -5
DANH M C CÁC B NG, HÌNH V , TH -7
M U -13
CH NG 1 H VI U KHI N PSoC™
1.11 Các l i vào ra s (Digital Input and Output) 27 1.12 Các l i vào ra t ng t (Analog Input and Output) 30
1.14 Các kh i t ng t kh trình (Analog Programable Blocks) 36
1.21 Ph n m m phát tri n ng d ng PSoC™ Designer 48
Trang 4CH NG 2 LÝ THUY T U KHI N PID
1 S chi ti t m ch u khi n ng c s d ng chíp PSoC™ 77
2 Mã ngu n ch ng trình nhúng n p cho chíp PSoC™ CY8C27443 78
3 C u hình ch ng trình bên trong chíp PSoC™ CY8C27443 90
Trang 5DANH M C CÁC KÝ HI U, CH VI T T T A
ACB- Analog Continuous Blocks
AD- Analog to Digital Converter
AGND- Analog Ground
ALU- Athrimectic and Logic Unit
ASC- Analog Switch Type C
ASD- Analog Switch Type D
B
BC- Broadcast Line
C
CISC- Complex Insructions Set Computer
CMOS- Complementary Metal Oxide Semiconductor CPU- Central Processing Unit
CRC- Cyclic Redunduncy Check
D
DA- Digital to Analog Converter
DSP- Digital Signal Processing
DTMF- Dial Tone Multifrequency
F
FPGA- Field Programable Gate Array
G
GIE- Global Input Even
GIO- Global Input Odd
GOE- Global Output Even
GOO- Global Output Odd
GPIO- General Purpose Input Output
H
HDL- Hardware Description Language
Trang 6I2C- Inter Intergrated Circuit (Inter-IC) IC- Intergrated Circuit
ILO- Internal Local Oscilator
IMO- Internal Main Oscilator
IrDA- Infrared Data Association IP-Intellectual Properties
PCH- Program Counter Hight
PCL- Program Counter Low
PDA- Portable Digital Access
PSoC™ -Programable System on Chip POR- Power on Reset
PRS-PWM- Pulse Width Modulation
R
RAM- Read Only Memory
RO- Row Output
ROM- Read Only Memory
S
SC- Switch Capacitor
SISO- Serial In Serial Out
SMP- Switch Mode Pump
SoC- System on Chip
Trang 7SP- Stack Pointer
SPI- Serial Programming Interface
SRAM- Static Random Access Memory
U
UART- Universal Asynchroneous Rceiver Transmiter W
WDT- Watch-dog Timer
Trang 8DANH M C CÁC B NG, HÌNH V , TH Các hình s d ng trong lu n v n
Hình 1: Mô hình chíp PSoC
Hình 2: M t c t ngang c a l p SONOS
Hình 3.Chíp PSoC CY8C27442 PDIP
Hình 4 Ki n trúc chung c a h vi u khi n PSoC
Hình 5: C u t o CPU
Hình v 6 H th ng ng h trong PSoC
Hình 7: Ho t ng ti t ki m n ng l ng c a vi u khi n PSoC Hình 8 M ch n reset ngoài
Hình 15.K t n i ng dây l i vào toàn c c
Hình 16 K t n i thông qua b h p kênh
Hình 25 i n áp tham chi u AGND trong PSoC
Hình 26 Các giá tr n áp tham chi u trong PSoC
Hình 27 Ch b m i n áp SMP
Trang 9Hình 28 Ph n c ng th c hi n phép nhân 8x8 bít
Hình 29.Quá trình nhân
Hình 30 Các ng t x y ra
Hình 31 Không gian a ch trong PSoC
Hình 32 Ph n m m thi t k PSoC Designer
Hình 33 Ph n c ng l p trình cho chíp PSoC
Hình 34 a i u khi n v i b u khi n PID
Hình 34 b i u khi n v i b u khi n PID
Hình 35 Nhi m v c a b u khi n PID
Hình 36 Hàm quá
Hình 37.a Xác nh tham s cho mô hình x p x c a i t ng
Hình 37.b Xác nh tham s cho mô hình x p x c a i t ng
Hình 46 L u thu t toán quét bàn phím
Hình 47 Kh i m ch giao ti p gi a vi u khi n PSoC và máy tính PC qua c ng RS232
Hình 48 Kh i m ch công su t u khi n ng c
Hình 49 M ch ngu n n áp +5Volt
Hình 50.M ch ngu n n áp +12Volt
Hình 51.S kh i m ch o t n s
Trang 10Hình 52.C u hình máy o t n s trên chíp PSoC
Hình 53.K t qu thu t toán PID
Hình 54 S chi ti t b ng m ch u khi n s d ng chíp PSoC CY8C27443 Hình 55 C u hình ch ng trình bên trong chíp PSoC CY8C27443
Hình 56 Mã ngu n ch ng trình c c ng COM s d ng ph n m m LabVIEW 7.1
Các b ng s d ng trong lu n v n
B ng 1 Ch u khi n các chân
B ng 2 S l ng các kh i s trong m i thành ph n ch c n ng
B ng 3 Các giá tr n áp tham chi u
B ng4 Các h s l a ch n theo ph ng pháp th hai c a Nichols-Ziegles
Trang 11M U
N i dung chính c a lu n v n này là nghiên c u và phát tri n ng d ng trên
m t h vi u khi n hi n ang còn m i m và r t c quan tâm trên th gi i c ng
nh n c ta : h vi u khi n PSoC™ c a hãng Cypress Micro System
Nh ng tr c khi tìm hi u v PSoC chúng ta s xem xét nguyên nhân nào khi n cho
h vi u khi n này c nhi u ng i quan tâm n th
Theo m t cu n sách tr ng (white-book) c công ty Sun Microsystem công b ã
a ra m t con s d oán: m t gia ình có m c s ng trung bình cu i th p niênnày s s d ng kho ng 50 n 100 vi u khi n các lo i nh m th c hi n các công
vi c nh : i u khi n n tho i s và các lò vi sóng, máy video cassete, máy thuhình, các thi t b liên l c di ng, PDA vvv Th m chí có th xem nh con s này
ph n ánh m c thu nh p c a gia ình trong các n c phát tri n Không th ph
nh n c m t th c t là ã có m t con s kh ng l các vi i u khi n và vi x lý
c s d ng trong các n t gia d ng.[6]
Bên c nh các ng d ng gia ình m t l nh v c khác c ng ang kích thích s t ng
tr ng c a vi u khi n ó là th ng m i n t V i vi c thanh toán qua th tín
d ng, lo i th có dung l ng b nh nhi u h n so v i lo i th t thông th ng và t
ra tin c y h n V i c tính mà nhi u ng i ch p nh n là th thông minh, lo i th
này ã th hi n m i kh n ng thay th ti n m t u ó còn có ngh a là s l ng
ng i s d ng th thông minh s là m t con s vô cùng l n Còn có th k ra nhi u
s ki n khác: m t xe ô tô lo i trung bình có kho ng 15 b vi u khi n, xe ô tôMercedes S-class i 1999 có t i 63 b vi u khi n, trong khi lo i BMW có t i 65
b vi u khi n Theo cách nhìn ánh giá m t b vi u khi n thì chúng luôn t
ra d dàng khi s d ng trong các thi t b n t ho c các h th ng n t s , ch ng
h n nh trong m t máy gi t dùng trong gia ình B ng vi c s d ng vi u khi ncác s n ph m c n n r t ít chi phí khi nâng c p, r t ít linh ki n d tr cho b o hành
b o d ng Nói khác i vi u khi n mang l i nhi u l i nhu n và s c c nh tranh r t
l n do có ch t l ng cao nên nhi u ng i c ng i dùng c ng nh nhà s n xu t u
Trang 12xô n v i các vi u khi n Càng c s d ng r ng rãi, c bi t là trong các
n gia d ng, vi u khi n càng t ng thêm tính h p d n v phía ng i dùngcàng mang l i nhi u l i nhu n cho nhà s n xu t và cung ng ng th i càng t ngthêm ng l c t ng tr ng v s l ng [6] Trong xu th chung y công nghPSoC ã ra i và phát tri n t o nên m t s thay i l n ó chính là dòng vi
i u khi n mang nhi u tính n ng m i và h p d n, nó có th thay th các thành ph n
k t h p c a c m t h th ng phát tri n d a trên n n các vi u khi n truy n th ng
b ng ch m t thi t b có kh n ng tái c u hình n chíp (single- chip configurable
device) ng th i giá thành l i r ây th c s là m t công ngh u vi t, c tích
h p m t CPU nhanh, b nh ch ng trình FLASH, b nh d li u SRAM ng
l c thúc y t o ra các sáng ki n c a ng i dùng chính là kh n ng c u hình chocác m ng s và t ng t (digital and analog array) bên trong chíp c g i là các
kh i PSoC (PSoC blocks) nó cho phép ng i dùng l p trình các thu t toán x lý
ph c t p m t cách d dàng b ng ngôn ng C ho c Assembly So v i các vi ukhi n thông d ng nh AT8051, 68HC11 ho c 68HC908 c a Motorola, MicrochipPIC16#73 có c u trúc CPU ngo i vi c nh thì chíp PSoC có kh n ng m m d othích ng v i a d ng ng d ng c s và t ng t , nh t là có kh n ng tái c u hình
ng (Dynamic reconfigurable) cho phép nhi u ch c n ng c thi t l p trên cùng
m t chíp t i các th i m khác nhau trong cùng m t ng d ng Ví d : trong m tmáy bán hàng t ng c a hãng Cocacola s d ng chíp PSoC thì 23 gi 59 phúthàng ngày thi t b này làm nhi m v nh n ti n và bán u ng, trong m t vài giây
m i êm nó th c hi n vi c tái c u hình tr thành m t modem 300 baud, th c hi nnhi m v chuy n t i các thông tin v u ng, ti n thu c cùng các thông tin v
tr ng thái b o d ng v trung tâm u hành Công ngh ch t o chíp thông minhtrong o l ng và i u khi n trên c s PSoC có hi u qu kinh t r t cao, do chípPSoC có kh n ng x lý h n h p các tín hi u t ng t và s Nó cho phép phát tri ncác s n ph m m i nhanh chóng, d dàng m r ng các ch c n ng sau này Côngngh PSoC™ cho ta nhi u gi i pháp l a ch n và h tr a ng d ng, t o l ng,
i u khi n, x lý, truy n thông, k t n i m ng trên cùng m t chíp v i giá thành th p
Trang 13H th ng ph n m m h tr thi t k ng d ng trên chíp PSoC™ Designer c a hãngCypress Micro System có y các ch c n ng thi t k , s p x p các kh i, mô
ph ng, l p trình, tìm l i và n p chíp hi n i, có các mô un ng d ng phong phú
giúp ta không ph i l p trình trên các ngôn ng HDL (Hardware Description
Language) khó hi u Ngoài ra giá thành c a m t chíp PSoC™ tr ng r t r
(1-5USD/chíp), r h n r t nhi u so v i các chíp ngo i khác
V i chíp PSoC™ c a hãng Cypress Micro System chúng ta th y
- ây là công ngh m i ( c bình ch n là công ngh sáng t o c a n m 2001) ã
c nh h ng phát tri n các chíp thông minh cho các thi t b o l ng và
i u khi n v i s l ng l n và giá thành th p
- Là chíp u tiên trên th gi i v i các b x lý có kh n ng x lý ng th i các tín
hi u t ng t , s và truy n thông phong phú nh t trong các công ngh SoC™ hi n
i Gi i pháp Processor + FPGA c a hãng Altera ho c Xilinx và các hãng khác chcho phép ta t o ra các chíp s có b x lý (Digital IC) ho c m t s ch c n nganalog c nh nào ó
- Là công ngh có ch c n ng nhân c ng (MAC) cho phép phát tri n các thu t toán
x lý nhanh nh các phép tính c a chíp DSP
- u t cho các công c phát tri n, h th ng ph n m m thi t k và các IP(Intellectual Properties) r h n nhi u so v i các công c phát tri n và ph n m mthi t k FPGA
- Ph ng pháp l p trình cho chíp v t ra kh i ràng bu c c a các ngôn ng HDL
ph c t p, kém hi u qu mà áp d ng ph ng pháp l p trình m i theo kh i ch c n ng
m c cao nên th i gian thi t k c rút ng n áng k
- Là m t công ngh tiên ti n n c ngoài nh ng l i r t phù h p cho trình nghiên
c u Vi t Nam do có công c h tr hi n i giúp cho các c s c a Vi t Nam ddàng nhanh chóng t o ra c các s n ph m m i c a mình ph c v thi t th c cho
s n xu t và i s ng ây là c h i cho các doanh nghi p Vi t Nam c ng nh cácnhóm say mê nghiên c u có c h i t n thành công l n v i các s n ph m c
áo có các chíp thông minh ch a ng ý t ng sáng t o và bí quy t c a riêng mình
Trang 14CH NG 1 H VI U KHI N PSoC™
1.1 Công ngh SONOS [8]
- Khi chúng ta phát tri n các ng d ng n t d a trên n n vi u khi n, m t v n
th ng g p ph i ó là s c n thi t ph i có thêm các thi t b ngo i vi ph trlàm vi c cùng v i vi u khi n, nh là các b khu ch i thu t toán OP-AM,khu ch i công c , các b l c, các b nh th i, các m ch s logic, các b bi n i
AD, DA…vv Xây d ng các ph n t này th ng mang l i nhi u khó kh n ph c t p:chúng chi m nhi u không gian, c bi t m t nhi u th i gian khi thi t k ch t o
m ch in, tiêu t n công su t ngu n nuôi T t c các y u t ó s góp ph n làm chogiá thành s n ph m t ng cao, kéo dài th i gian hoàn thành s n ph m (time-to-market)…
Hình 1 Mô hình chíp PSoC
Trang 15do các t SONOS l u tr n tích trong l p các b nh Nitride làm cho các t bào
nh này kh c ph c c nh ng khuy t m c a các c ng Oxide (Oxide gate).
M c dù công ngh SONOS ã c phát tri n trong nhi u n m tr c, nh ng quytrình này ch th c s c a vào s n xu t t o ra các thi t b có th tích l n trongvài n m tr l i ây Chìa khoá cho công ngh này chính là kh n ng u khi n các
ng h m oxide (tunnel oxide) dày c v i chính xác không quá vài ph n tr mbên trên m t b m t c c k m ng [8]
Hình 2 M t c t ngang c a l p SONOS (l p m ng màu tr ng n m ngang chính là
ng h m oxide kích th c 20 angstroms)
Công ngh PSoC là m t trong nh ng công ngh thúc y quá trình ti n hoá c a
máy tính i n t , thoát kh i các ràng bu c c a h máy tính c ng (Rigid Computing
Machine) sang th h máy tính t thích nghi (Adaptive Computing Machine).
1.2 PSoC™ H th ng kh trình trên chíp.
-PSoC™ (Programable System on Chip- h th ng kh trình trên chíp) cho chúng ta
th y t t c các khái ni m m i trong s phát tri n c a vi u khi n Thêm vào ó là
t t c các thành ph n c a m t vi u khi n 8 bít tiêu chu n PSoC™ óng gói trên
m t chíp các kh i có tính n ng t ng t (Analog Blocks) và s (Digital Blocks) l ptrình c B n thân các kh i này s cho phép chúng ta th c hi n vi c c u hình
t o ra m t l ng l n các lo i ngo i vi c n thi t cho ng d ng trên n n vi u khi n.Các kh i s (Digital Blocks) bao g m các kh i kh trình nh h n cho phép c uhình t o ra các l a ch n cho s phát tri n các thành ph n s
Trang 16Các kh i t ng t (Analog Blocks) c s d ng phát tri n các thành ph n
ng t ví d nh : các b l c t ng t , các b so sánh, các b khu ch i thu ttoán thu n, o, các b bi n i AD và DA
Có m t s các h PSoC™ mà chúng ta có th l a ch n cho vi c phát tri n các ng
d ng c a mình tùy thu c vào yêu c u c th c a ng d ng Ch có m t s khác nhau
b n gi a các h PSoC™ , ó là s l ng các kh i s , t ng t kh trình và schân vào ra
1.3 Các c m chính c a vi u khi n PSoC™ [10]
M t s các tính n ng n i b t nh t c a vi u khi n PSoC™ ó là :
- n v MAC, là ph n c ng th c hi n phép nhân 8x8 bít, k t qu c l utrong m t thanh ghi tích l y 32 bít
Hình 3 Chíp PSoC CY8C27443 PDIP
Trang 17- Hai b thu phát không ng b v n n ng song công
- Nhi u thi t b l p trình n i ti p SPI (Serial Programming Interface)
- Các l a ch n k t n i cho t t c các chân l i ra (output pin)
- L a ch n trong vi c t h p các kh i
- L a ch n l p trình trên t ng không gian b nh xác nh và b o v ghi
- i v i t t c các chân u có các tr ng thái có th l a ch n: Pull up, Pulldown, Hight Z, Strong ho c Open
- Có kh n ng sinh ra các ng t trong quá trình thay i tr ng thái trên t t ccác chân vào ra (Input/Output pin)
- Truy n thông I2C ch , t ho c Multi I2C t c có th lên t i 400Khz
- M ch n giám sát n áp c tích h p s n bên trong
- i n áp tham chi u chu n n i sinh
ng t (Analog Modulators) Ch c n ng này ch có duy nh t trên PSoC™
- MAC (Multiply - accumulate) thanh ghi nhân tích l y 8x8 bít ây là m tthành ph n c t y u c a các b x lý tín hi u s , nó cho phép th c hi n các thu t
Trang 18toán x lý tín hi u s m t cách nhanh chóng Giá tr áng ý c a nó chính là ch
ph n c ng nhân tích l y này không ph i là thành ph n th ng có trong các h vi
i u khi n 8 bít khác
- Kh n ng ho t ng v i n áp thay i c c tính này c bi t quan
tr ng trong vi c phát tri n các thi t b n t m i mà không c n thi t k l i m ch in
và th c hi n vi c chuy n m c n áp
- Kh n ng l a ch n ho t ng v i n áp ngu n nuôi th p (~1Volt) là m t
l i th tuy t v i khi làm vi c trong các h th ng s d ng ngu n nuôi là pin
- Vi c c u hình và ho t ng c a các b m (Counters), b nh th i(Timers) và b u ch r ng xung (PWMs) linh ho t h n r t nhi u so v i các vi
i u khi n thông th ng
- T ng ghi mã cho vi c truy xu t t i t t c các ngo i vi ang s d ng
- Trong tr ng h p c n thi t ph i s d ng t i m t l ng l n các thành ph n
kh trình, PSoC™ cho chúng ta m t l a ch n, ó là kh n ng c u hình ng(Dynamic reconfiguration) Kh n ng này cho phép chúng ta thay i các ngo i vitrong th i gian ch y (run-time) Theo cách này t i c a b vi x lý c gi m thi u
t i m i th i m, dành ph n l n công vi c cho các thành ph n ph n c ng chuyên
bi t
1.5 M t vài h n ch c a chíp PSoC™
Bên c nh nh ng u i m n i b t nêu trên thì PSoC™ c ng có m t vài h n ch màchúng ta c n ph i ý khi l a ch n PSoC™ cho các thi t k c a mình
- Trong các h th ng yêu c u chính xác ho c các phép o t c cao có
th n y sinh v n v i c tính c a các thi t b t ng t Trong t ng h p nàychúng ta nên phân tích xem t c c a b chuy n i AD và l ch m t chi u/nhi u c a các b khu ch i thu t toán có áp ng c yêu c u t ra không
- Các thành ph n t ng t không có kh n ng làm vi c v i ngu n n áp âmthông th ng Ví d m c n áp không cung c p cho các b khu ch i thu t toán
c l y là t AGND (th ng là 2,5 Volt) T t c các n áp trên m c t u
Trang 19c coi là i n áp d ng, trong khi t t c các n áp d i m c t u c coi làcác i n áp âm.
- H u n t t c các h vi u khi n PSoC™ u có 256 byte RAM, s
ng này có th là h i nh i v i m t vài ng d ng
1.6 T ng quan v h th ng
Vi i u khi n PSoC™ c thi t k d a trên n n ki n trúc CISC-8 bít C u t ochung c a chúng cùng v i các kh i c s c bi u di n nh hình 1
Hình 4 Ki n trúc chung c a h vi u khi n PSoC
Các thành ph n c u t o nên vi i u khi n PSoC™ bao g m:
- n v x lý trung tâm (CPU unit).
ây là ph n chính c a vi u khi n, m c ích c a nó là th c thi các câu l nh c a
ch ng trình và i u khi n ti n trình làm vi c c a các kh i khác
- B t o t n s (Frequency generator)
Trang 20T o ra các tín hi u nh th i c n thi t cho CPU ho t ng, c ng nh cung c p các
t n s cho các kh i PSoC™ kh trình làm vi c Các tín hi u này c t o ra d atrên b dao ng n i t i ho c tín hi u dao ng tham chi u t bên ngoài
- B u khi n tái kh i ng (Reset Controller)
Cho phép vi i u khi n b t u ho t ng và a vi i u khi n v tr ng thái ban utrong tr ng h p x y ra các s ki n không mong mu n
- B canh gi Watch Dog (Watch Dog timer)
c s d ng phát hi n các vòng l p ch t c a ch ng trình ph n m m (Dead loops software)
B nh th i gian ng (Sleep timer)
Có th theo chu k " ánh th c" vi u khi n PSoC™ thoát kh i tr ng thái ho t
ng ti t ki m n ng l ng Nó c ng có th c s d ng nh m t b nh th ithông th ng
- Các chân vào ra (Input/Output pins)
Cho phép th c hi n vi c trao i thông tin gi a CPU, các kh i s , t ng t khtrình và th gi i bên ngoài
- Các kh i s kh trình (Digital programable blocks)
c s d ng t o ra các thành ph n s kh trình c ng i dùng l a ch n
- Các kh i t ng t kh trình (Analog programable blocks)
c s d ng t o ra các thành ph n t ng t nh các b chuy n i AD, DA,các b l c (Filters), các b thu xung a t n (DTMF receiver), các b khu ch ithu t toán thu n, o, khu ch i công c kh trình B u khi n ng t u khi ncác ho t ng c n thi t trong tr ng h p x y ra ng t
- B u khi n I2C (I2C Controller)
Cho phép th c hi n vi c truy n thông theo chu n I2C
- Tham chi u n áp (Voltage reference)
Là m t thành ph n c n thi t t t y u cho ho t ng c a các thành ph n t ng t bêntrong các kh i t ng t kh trình
- n v MAC (MAC unit)
Trang 21c s d ng cho các ho t ng c a ph n c ng thi t k cho vi c th c hi n cácphép nhân 8 bít.
- SMP
ây là m t h th ng có th c s d ng nh là m t thành ph n n nh n áp
Ví d : nó có th cho phép cung c p ngu n cho vi u khi n PSoC™ t m t ngu npin 1.5 Volt n l
1.7 n v x lý trung tâm (CPU )
Trong khi l p trình các câu l nh c l u trong b nh ch ng trình (Flash) theo
m t cách d hi u i v i vi u khi n CPU th c hi n t ng câu l nh t i m i m t
th i m t b nh ch ng trình, gi i mã nó và th c hi n các ho t ng t ng ng
n v x lý trung tâm CPU có m t s thanh nghi n i t i: PC (Program thanh ghi b m ch ng trình, SP (Stack pointer)- thanh ghi con tr ng n x p,thanh ghi A, X và thanh nghi c F (Flag) , hoàn toàn gi ng nh m t n v x lý s
counter)-h c ALU (Atcounter)-hrimetic and Logic Unit) và m t n v gi i mã l nh cùng k t h p
th c thi m t câu l nh
Hình 5 C u t o CPU
I.7.1 Thanh ghi b m ch ng trình (PC-Program Counter)
c s d ng nh m t con tr dùng tr t i câu l nh ti p theo c a ch ng trình
s c th c thi Sau m i m t l nh m i giá tr c a b m ch ng trình s c t
ch t i câu l nh ti p theo trong b nh ch ng trình s c gi i mã và th c thi
1.7.2 Thanh ghi con tr ng n x p (SP- Stack Pointer)
Trang 22Ch t i a ch c a b nh SRAM, n i ó d li u c ghi vào ho c c ra tùythu c các câu l nh t ng ng PUSH ho c POP Khi x y ra các câu l nh này giá tr
u trong SP c t ng t ng lên ho c gi m i
1.7.3 Thanh ghi tích l y (A - Accumulator)
Là thanh ghi chính i u khi n t t c các thao tác toán h c, logic hay chuy n d li u
1.7.4 Thanh ghi ch s (X- Index)
Có th c dùng v i ch c n ng nh thanh ghi A trong ph n l n các câu l nh.Ngoài ra nó còn c dùng trong các tr ng h p s d ng a ch ch s (IndexAddressing )
1.7.5 Thanh ghi c (F- Flag)
Ch a ng các bít mô t k t qu c a câu l nh ã c th c thi tr c ó Nó c ng có
m t quy t c l a ch n b nh phân trang RAM trong tr ng h p khi vi u khi nPSoC™ có nhi u h n 256 byte RAM Bít c không Z (Flag Zero) c ng ch ra r ngthanh ghi tích l y l u tr m t giá tr 0 Trong khi bít c nh C (Carry) cho th y có
x y ra nh trong các ho t ng toán h c ho c logic
1.7.6 n v logic-s h c (ALU- Athrimetic Logic Unit)
ây là m t thành ph n tiêu chu n c a m t CPU, nó c s d ng trong các thao táctoán h c nh c ng, tr , d ch trái, d ch ph i ho c các thao tác logic D li u c tác
ng b i các câu l nh có th c l u tr trong các thanh ghi n i A, X ho c trong
b nh RAM
1.8 B t o t n s (Frequency Generator)
B t o t n s là m t thành ph n không th thi u i v i s ho t ng c a CPU M i
m t thành ph n kh trình bên trong chíp PSoC™ u có m t yêu c u riêng bi t v
t c Do v y PSoC™ có m t h th ng dành t o ra các tín hi u có t n s khácnhau i u này c th c hi n b ng vi c l a ch n các tham s t ng ng Hình v
6 ch ra hai h th ng c l p t o ra các tín hi u SYSCLK và CLK 32k
Trang 24Là tín hi u thu c b ng vi c chia t n s c a m t trong các tín hi u 24V2, 24V1,SYSCLK và SYSCLKx2 v i tham s N, N ch y trong gi i t 1 t i 256.
ch n các tham s phù h p trong trang Device Edittor ho c trong khi ang ho t ng
b ng cách thông qua các bít th p trong thanh ghi OSCCR0
1.8.7 CLK32K
Là m t tín hi u t c th p v i t n s 32Khz Nó có th c s d ng nh m tthành ph n l i vào kh trình Ho c c ng có th c dùng cho các ho t ng ánh
th c (wake up) c a b nh th i gian ng (Sleep timer) trong tr ng h p tín hi u
i u khi n b i SYSCLK không c kích ho t
Tín hi u SYSCLK có th thu c b ng cách s d ng b dao ng ch n i t i(IMO-Internal Main Oscilator) trong khi tín hi u CLK32K thu c thông qua bdao ng a ph ng n i t i (ILO-Internal Local Oscilator)
Sai s ng h 2,5% trong tr ng h p s d ng b dao ng n i chính là gi i h n
i v i các ng d ng òi h i chính xác cao Trong tr ng h p ó nên s d ngtín hi u ng h SYSCLK tham chi u t bên ngoài D i t n s bên ngoài có th s
d ng t 1MHz t i 24MHz, c n i v i PSoC™ thông qua chân P1[4]
Tình hu ng t ng t x y ra i v i ngu n ng h CLK32K, ngu n ng h này
c ng có th c t o ra t b dao ng a ph ng n i t o ILO ho c m t ngu n
ng h ngoài 32Khz chính xác h n Trong c hai tr ng h p vi u khi n kh i
ng v i b t o t n s n i t i, sau ó nó s c n thi t ph i tuân theo các th t c
ng ng
1.9 Công su t tiêu th c a chíp PSoC™.
T n s tín hi u CPUCLK c a b vi x lý có liên quan tr c ti p t i t c th c thicâu l nh c a vi u khi n T n s t ng lên g p ôi, ch ng trình c th c thi
Trang 25nhanh x p x g p hai l n M t khác, t n s cao không ph i luôn c n thi t làmcho hi u n ng toàn h th ng t t h n B t l i chính trong vi c t ng t n s là s có các
nh h ng không mong mu n trong vi c tiêu th công su t ngu n nuôi c a b vi
i u khi n, nh t là khi h th ng ho t ng b ng ngu n pin B t l i khác khi s d ng
t n s cao là s x y ra các xuyên nhi u t , u này có th gây nh h ng t i cácthi t b xung quanh chíp PSoC™ Do v y tránh các b t l i trên chúng ta nên s
d ng các ngu n ng h th p nh t có th trong các ng d ng Giá tr m c nh c a
t n s tín hi u trong vi u khi n là 3MHz, ây là giá tr phù h p nh t th a mãn t c
và công su t tiêu th
duy trì th i gian làm vi c n nh lâu nh t có th c i v i vi u khi n khi
s d ng ngu n nuôi pin, ó là gi m công su t tiêu th H u h t các vi u khi n chlàm vi c trong m t chu k th i gian nào ó trong khi ph n l n th i gian còn l i là
n m trong tr ng thái ngh M c tiêu ti t ki m n ng l ng có th th c hi n c khi
a vi i u khi n v tr ng thái ng trong khi nó không óng vai trò quan tr ngtrong m ch n Ti t ki m n ng l ng c th c hi n v i h u h t các t n s , ngo i
tr CPU32K và SLEEP, khi ó b vi x lý s ng ng vi c th c thi các câu l nh Vi
i u khi n PSoC™ ch có th c ánh th c kh i tr ng thái ng b i các ng t ho c
Trang 26Do có các kh n ng sai l i x y ra trong quá trình làm vi c c a vi u khi n, trong
tr ng h p này vi i u khi n yêu c u ph i c tái kh i ng, hay nói cách khác nó
c a v tr ng thái ban u Tr ng thái ban u có ngh a là t t c các thanh ghi
n i u c kh i t o và ch ng trình c th c thi t l nh u tiên
Hình 7 Ho t ng ti t ki m n ng l ng c a vi u khi n PSoC
1.10 Tái kh i ng (Reset)
1.10.1 Kh i ng khi b t ngu n (POR-Power On Reset)
Trong quá trình làm vi c c a vi u khi n, r t có th x y ra s th ng giáng ngu n
i n cung c p u này r t nguy hi m n u nh i n áp s t xu ng d i m c gi i
h n cho phép, khi ó vi i u khi n s ho t ng sai Trong tr ng h p này d a vào
b phát hi n n áp th p, vi u khi n s t ng chuy n v ch tái kh i ngkhi b t ngu n (POR) và s n m ch này cho t i khi n áp n nh tr l i trên
m c gi i h n c nh báo c t tr c b i tham s Trip Voltage
1.10.2 Tái kh i ng t ngu n bên ngoài (XRES- External Reset)
Hình 8 M ch n reset ngoài
Tái kh i ng (reset) t ngu n bên ngoài cho phép ng i dùng a vi i u khi n v
tr ng thái ban u Vi c reset c th c thi khi chân XRES c c tr ng thái
Trang 27Logic 1 M t m ch n reset n gi n có th có c ch v i m t n tr kéo
xu ng (pull-down register) và m t khóa chuy n m ch nh hình v 8
1.10.3 Tái kh i ng WDG (Watch-dog Reset)
Tái kh i ng watch-dog (WDR reset) c s d ng tránh các vòng l p ch t c a
ph n m m ho c các ho t ng sai quy cách, a h th ng v tr ng thái ban u B
nh th i watch-dog timer WDT th ng xuyên c tái kh i ng theo chu kbên trong m t ch ng trình chính sau khi các o n ch ng trình con t ng ng
c th c thi ch bình th ng, sau m t quãng th i gian xác nh nào óWDT l i c tái kh i ng m t l n và các ch ng trình con l i ti p t c c th cthi Nh ng n u ch ng trình b t c ngh n bên trong m t o n ch ng trình con và
b nh th i WDT không c tái kh i ng, khi s x y ra vi c tái kh i ngwatch-dog (watch-dog reset)
1.11 Các l i vào ra s (Digital Inputs and Outputs)
Vi c k t n i gi a vi u khi n PSoC™ v i th gi i bên ngoài c th c hi n thôngqua các chân vào ra I/O (Input/Output pins) T ng nhóm 8 chân có th c truy
nh p m t cách ng th i nh là các ph n c a m t c ng Các h PSoC™ khác nhau
có s c ng khác nhau, thao tác c/ghi c th c hi n gi ng nhau trong m i tr ng
h p Các thanh ghi truy c p c ng c l u tr bên trong không gian a ch thanhghi, ó là các thanh ghi : PRT1DR, PRT2DR, PRT3DR, PRT4DR ho c PRT5DR
1.11.1 Ghi d li u ra c ng (writing to port)
Vi c ghi d li u ra c ng PRTxDR ng ngh a v i vi c thi t l p giá tr cho thanh ghi
mà thông qua ó các m ch n kh i t o s u khi n tr ng thái c a các chân
M ch n kh i t o (init circuit) có th a tín hi u t thanh ghi PRTxDR tr c ti p
t i các l i ra (tr ng thái strong), ho c thông qua các n tr kéo lên (pull-up), kéo
xu ng (pull-down) hay thông qua các l i ra c c máng h (open drain) Bên c nh ócòn có m t kh n ng khác dùng cách ly m t cách c l p giá tr c a thanh ghi
v i tr ng thái c a các chân (Hi-Z)
Trang 281.11.3 Ch u khi n các chân (driver mode)
Chính là s l a ch n cách k t n i các thanh ghi a ch c ng PRTxDR v i các chân
c a vi u khi n Vi c l a ch n ch này có th c thi t l p thông qua giao
di n môi tr ng phát tri n IDE c a ph n m m PSoC™ Designer, ho c có th cthi t l p ngay trong khi ang ho t ng b ng cách thi t l p giá tr cho các thanh ghiPRTxDM0, PRTxDM1 và PRTxDM2 Có t t c 8 cách l a ch n thi t l p tr ngthái cho các chân, i u này cho phép d dàng v i các thi t b bên ngoài mà ch c n
r t ít các thành ph n ph tr Ch làm vi c c a các chân c nh ngh a theo
Trang 29b ng sau ây, tùy thu c vào tr ng thái c a các bít trong các thanh ghi DM0, DM1,DM2.
B ng 1 Ch u khi n các chân
Strong mode- Ch này c s d ng khi c n thi t ph i k t n i tr c ti p cácthanh ghi a ch c ng PRTxDR t i th ng các chân Cách k t n i này c s d ngkhi các chân c dùng nh là các l i vào tín hi u
Hình 10 Ch Strong
Analog Hi-Z mode- Ch này c s d ng khi k t n i v i các tín hi u t ng t
ví d nh l i vào c a m t b chuy n i AD
Hình 11 Ch Analog Hi-Z
Trang 30Trong tr ng h p ó, t t c các k t n i bên trong gi a các thanh ghi PRTxDR vàcác chân s b ng t, do ó s không gây nh h ng t i các giá tr n áp a vào tbên ngoài Các i n tr kéo lên ho c kéo xu ng Pull-up ho c Pull-down c s
d ng khi k t n i v i các phím b m ho c các thi t b khác mà c n thi t có các thành
ph n có yêu c u nh v y
Open Drain mode- Ch này c s d ng khi có m t s vi u khi n cùng
c k t n i trên m t ng dây, khi ó s c n t i các n tr kéo lên ho c kéo
xu ng bên ngoài Ch này c quy c s d ng nh n ra m t ng dây
mà ng dây này s phát tín hi u khi có l i x y ra v i m t trong các vi u khi n
Ví d khi s d ng ki u n tr kéo lên bên ngoài, khi l i (tr ng thái 0) x y ra trên
b t k m t chân l i ra nào thì tr ng thái c a ng dây s chuy n v 0 Các chântrên vi i u khi n PSoC™ cho phép ng i dùng có th th c hi n các ng t trên b t
k m t chân nào khi tín hi u thay i ho c t i các s n lên ho c s n xu ng c a tín
hi u
Hình 12 Ch Open Drain
1.12 Các l i vào ra t ng t (Analog Inputs and Outputs)
M t s chân vào ra bên c nh các ch c n ng chu n chúng còn c s d ng trongcác h t ng vào ra t ng t Các chân c a c ng P0 c ng nh 4 chân th p c ngP2 có th c s d ng nh các l i vào t ng t Các l i vào c ng P0 c n i
v i các kh i PSoC™ t ng t , thông qua các b ghép kênh t ng t Trong khi v i
c ng P2 các kh i này c n i th ng t i các kh i t ng t kh trình SC () Cácchân P2[4] và P2[6] có th c s d ng nh các l i vào tham chi u n áp t bên
Trang 31ngoài Các l i ra t các kh i t ng t có th c n i v i 4 b m l i ra (ouputbuffer), chúng c n i t i các chân P0[2], P0[3], P0[4] và P0[5].
Hình 13 Các l i vào/ra t ng t
1.13 Truy c p các kh i s kh trình
Hình 14 Truy c p các kh i s
Các thành ph n s c c t gi bên trong các kh i s kh trình và không c k t
n i tr c ti p v i các chân vào ra Vi c k t n i c th c hi n thông qua các ngdây k t n i toàn c c (global connection lines), các b h p kênh (multiplexer) và các
ng dây c a các kh i kh trình Vi i u khi n PSoC™ có th có 1, 2 ho c 4nhóm các kh i s kh trình, tùy thu c vào t ng h
1.13.1 Các ng dây l i vào toàn c c (Global Input Lines)
Các ng dây l i vào toàn c c thi t l p k t n i gi a các chân và l i vào h p kênh
ng dây l i vào toàn c c c chia thành hai nhóm v i ch s ch n ho c l , tùy
Trang 32thu c vào yêu c u bài toán có th ch n k t n i t i các c ng v i ch s ch n Global Input Event) ho c l (GIO-Global Output Odd) Nguyên t c k t n i là ch có
(GIE-th (GIE-th c hi n k t n i duy nh t gi a m t dây và m t chân có cùng ch s Ví d : dâyGIO_0 ch có th k t n i t i chân s 0 c a các c ng có ch s l nh P1[0], P3[0],P5[0]
Hình 15 K t n i ng dây l i vào toàn c c
1.13.2 Các ng dây l i vào b h p kênh c a m t kh i
B h p kênh l i vào l a ch n m t trong các ng dây toàn c c và n i nó v i
ng dây mang tín hi u d n t i các kh i s kh trình
Hình 16 K t n i thông qua b h p kênh
Trang 33Hình v 15 ch ra r ng các ng dây l i vào m t kh i có th c n i v i các dâyGIO ho c GIE v i cùng ch s ho c các ng dây có ch s sai khác nhau b ng 4,
ví d GIE3, GIE7…vv
1.13.3 Các kh i s kh trình (Digital Programable Blocks)
Bên trong các kh i s kh trình ng i dùng có th thi t l p c u hình t o ra cácthành ph n nh : b nh th i, b m, PWM, PRS, b t o CRC và các thi t b ph c
v vi c trao i thông tin SPI, IrDA và UART
Trang 341.13.4 Tín hi u ng h cho các kh i s
Tín hi u ng h r t c n thi t cho s làm vi c c a các thành ph n s Tùy thu c vào
t n s ng h c n thi t s d ng mà có th l a ch n tín hi u ng h t m t d i cácngu n ng h cho s n nh sau :
- Tín hi u ng h n i VC1, VC2, VC3, SYSCLKx2, CPU_32
- L i ra ( ã c hi u ch nh ) t các kh i s
- ng dây thông tin qu ng bá (BC-Common Broadcast Line)
- Các ng dây l i vào (RI) ho c l i ra (RO) các kh i
Hình 18 Các ngu n ng h kh d
H u h t các tín hi u ng h n i dùng chung bên trong là VC1, VC2 và VC3 dokhi s d ng v i các hi u ch nh khác nhau chúng s t o ra c m t d i r t nhi u cáctín hi u ng h kh d s d ng c Trong tr ng h p d i các t n s này v nkhông áp ng c yêu c u s d ng, khi ó l i ra t các kh i ch c n ng nhCounter, Timer ho c PWM (Pulse Width Modulation) có th c s d ng nh các
t n s ã hi u ch nh hình v 13 m i tên ch m ch m cho th y cách k t n i tr c
ti p gi a l i ra c a kh i tr c v i l i vào c a kh i sau Tr ng h p tín hi u c n a
t m t kh i t i nhi u kh i khác thì th ng c th c hi n b ng cách thông qua
ng dây qu ng bá BC (broadcast line)
1.13.5 L i vào tín hi u c a các kh i
H u h t các thành ph n, bên c nh tín hi u ng h u có m t ho c hai l i vào s
Ví d trong t ng h p xây d ng m t b m, dùng l i vào c a m t b u ch
r ng xung PWM làm ch c n ng cho phép m (Enable counting), s có r t nhi u
l a ch n trong vi c l y các tín hi u l i vào nh sau:
- Các ng dây l i vào c a kh i (RI), tr ng h p tín hi u l y t bên ngoài
Trang 35ng dây l i ra RO Tín hi u có th c l y t các ng dây l i ra i th ng t i
l i ra c a vi u khi n ho c là l i vào c a m t thành ph n khác Các b h p kênh
l i ra c s d ng k t n i các ng dây c a các kh i kh trình v i các ngdây l i ra toàn c c (Global Output Lines)
1.13.7 Các b h p kênh và m ch n logic (Multiplexers and Logic Circuits)
Tùy thu c vào tr ng thái c a các b h p kênh, các ng dây l i ra ho c l i vào c acác kh i kh trình có th c k t n i v i nhau
Các tín hi u c l a ch n có th c a th ng t i l i ra c a m ch n logic.Khi ó các l i vào khác có th c s d ng m t vài các ng dây hi u ch nh c acác kh i kh trình (RO) M ch n logic có th :
- Cho qua m t trong hai tín hi u
- o các tín hi u này
- Th c hi n các phép toán logic AND, OR, XOR….trên các tín hi u l i vào ã c
l y o tr c ó
Hình 19 M ch n logic
Trang 361.13.8 Các b u khi n l i ra
Hình 20 K t n i các ng dây vào ra
L i ra c a m ch n logic có th c a th ng t i 4 b u khi n l i vào, nó có
th t o ra các k t n i t i m t ho c nhi u các ng dây l i ra toàn c c Các ngdây c a các kh i kh trình v i m t vài ch s có th c k t n i v i GOO ho cGOE có cùng ch s ho c v i ch s cao h n 4 Các ng dây l i ra toàn c c t o racác k t n i gi a b u khi n và các chân Chúng c chia làm hai nhóm, tùythu c vào vi c chúng có th k t n i t i c ng nào có ch s ch n hay l Nguyên t c
k t n i là luôn ch có m t ng dây và m t chân có cùng ch s m i có th thi t
l p k t n i v i nhau Bên c nh ó còn có m t kh n ng k t n i gi a các ng dây
l i vào và l i ra, u này cho phép t ng c ng kh n ng x lý các tín hi u l i vào
1.14 Các kh i t ng t kh trình (Analog Programable Blocks)
Các kh i t ng t kh trình c nhóm vào thành các c t, m i c t có 3 kh i Tùythu c vào các h PSoC™ khác nhau mà có th có 1, 2 ho c 4 c t các kh i t ng t
M i c t u có l i vào h p kênh, ng dây cung c p tín hi u ng h , l i ra t ng
t và ng dây so sánh
Trang 371.14.3 Các c t t ng t (Analog collums)
M t c t c a các kh i t ng t có th c t o ra b i ba lo i kh i t ng t : ACB,ASC ho c ASD L i ra c a các kh i này có th c n i t i các kh i t ng t khác,
t i ng dây t ng t l i ra ho c t i ng dây so sánh (comparator line)
Trang 38Hình 22 Các kh i t ng t
Các kh i ACB c s d ng l u tr các b khu ch i thu t toán v i các l ivào và l i ra ghép tr c ti p (rail-to-rail), các thanh ghi i u khi n s , các b ghépkênh n i t i Tùy thu c vào các k t n i n i b c th c hi n bên trong các kh iACB (Analog Continious Block) có th th c hi n c u hình t o ra các b khu ch
i thu t toán thu n, o, khu ch i công c , hay các b so sánh L i vào t i các
kh i ACB có th c s d ng các b h p kênh t ng t ho c l i ra tín hi u c acác kh i li n k
Các kh i ASC (Analog Switch Type C) và ASD (Analog Switch Type D) là các
kh i theo ki u t chuy n m ch (Switch Capacitor- SC type) Chúng bao g m các bkhu ch i thu t toán v i l i vào ghép tr c ti p, các b h p kênh bên trong Các b
bi n i AD/DA và các b l c t ng t có th thu c tùy thu c vào c u hình bêntrong c a các kh i này L i vào t i các kh i ASC và ASD có th t các kh i li n k ,
nh ng các tín hi u t các b h p kênh t ng t không th n i c tr c ti p t i các
kh i SC mà ph i thông qua các kh i ACB
Các l i ra t ng t (Analog Output)
M i m t c t các kh i t ng t u có chung m t ng dây l i raAnalogOutputBus Các ng dây l i ra t ng t này có th c k t n i, thôngqua m t b m, t i 4 chân gi a c a c ng 0
Trang 401.15.1 i n áp tham chi u AGND
AGND là i n áp t cho các thành ph n t ng t Giá tr n áp cao h n AGND
c coi nh i n áp d ng, th p h n c coi nh i n áp âm Vi u khi nPSoC™ s d ng ngu n nuôi n c c, do ó giá tr n áp t AGND c a nó là m tgiá tr n m gi a giá tr t th c (GND) và ngu n cung c p (VDD) Giá tr c aAGND c l a ch n b i ng i dùng
Hình 25 i n áp tham chi u AGND trong PSoC
1.15.2 i n áp tham chi u RefH và RefL
RefHi và RefLo cho giá tr n áp tham chi u cao h n và th p h n giá tr n ápAGND, chúng c s d ng cho các thành ph n AD và DA.Vi i u khi n PSoC™
có m t h th ng có th t o ra m t s tín hi u có giá tr AGND, RefHi và RefLo
i u này cho phép có các i u ch nh n gi n i v i các lo i c m bi n (sensor) có
i n áp khác nhau n áp tham chi u c t o ra t m t ngu n n áp chu nkhông thay i theo nhi t Vbg=1,3 Volt, n áp ngu n nuôi VDD ho c cácngu n n áp bên ngoài (nh ch ra b ng 3) Vi u khi n PSoC™ c u
ch nh r t t t làm vi c v i ngu n cung c p là pin