intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Vi điều khiển: Chương 1 - Cấu trúc phần cứng của AT89C51

Chia sẻ: Tran Vuong Bao Bao | Ngày: | Loại File: PPT | Số trang:27

118
lượt xem
17
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 1 "Cấu trúc phần cứng của AT89C51" thuộc bài giảng Vi điều khiển trình bày tổng quan về phần cứng của AT89C51, đặc điểm phần cứng, cấu trúc chung của một vi điều khiển. Tham khảo nội dung bài giảng để nắm bắt thông tin chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Vi điều khiển: Chương 1 - Cấu trúc phần cứng của AT89C51

  1. MOÂN HOÏC VI ÑIEÀU KHIEÅN   MUÏC TIEÂU - Naém ñöôïc caáu truùc phaàn cöùng VI Ñieàu Khieån AT89C51 - Taäp leänh hôïp ngöõ - Khung chöông trình hôïp ngöõ vieát cho AT89C51 - Vieát chöông trình öùng duïng
  2. NOÄI DUNG MOÂN HOÏC D a ã n  n h a ä p Ch ö ô n g  1  : Ca á u  t ru ù c  p h a à n  c ö ù n g  c u û a   AT8 9 C5 1 Ch ö ô n g  2  : Ta ä p  le ä n h  AT8 9 c 5 1 Ch ö ô n g  3  : la ä p  t rìn h  h ô ïp  n g ö õ    Ch ö ô n g  4  : Bo ä  ñ ò n h  t h ô ø i ( t im e r) Ch ö ô n g  5  : N g a é t  ( In t e rru p t ) Ch ö ô n g  6  : P o rt  n o á i t ie á p  ( s e ria l p o rt ) Ch ö ô n g  7  : Gia o  t ie á p  
  3. TOÅNG QUAN - Sô löôïc quaù trình hình thaønh quaù phaùt trieån cuûa VÑK -Töø Vi xöû lyù ñeán Vi đÑiều khiển - Caáu truùc chung cuûa moät Vi đÑiều khiển
  4. Chöông 1: CAÁU TRUÙC PHAÀN CÖÙNG INT 1. INT0. Timer 2(8052/8032) Timer1 Timer0 serial port 128 byte RAM ROM Time 2 8032/8052 0K-8031/8032 8032/8052 4K-8051 8K-8052 Time 1 interrupt other register 128 byte RAM control Time 0 CPU oscillatior bus control I/O port serial port EA ALE RST TXD* RXD* PSEN P0 P1 P2 P3 address/data Hình 1.9 Caáu truùc beân trong 89C51
  5. ÑAËC ÑIEÅM PHAÀN CÖÙNG - 4 KB ROM noäi. - 128 Byte RAM noäi. - 4 Port xuaát /nhaäp I/O 8 bit. - 1 boä giao tieáp Giao tieáp noái tieáp. - 2 boä ñònh thôøi 16 bit - 64 KB boä nhôù chöông trình ngoaøi ( boä nhôù chöông trình = program = code memory) - 64 KB boä nhôù döõ lieäu ngoaøiRAM ngoaøi ( Boä nhôù döõ lieäu = Data) - 210 vò trí nhôù coù theå ñònh ñòa chæ bit.
  6. I. CPU Goàm ALU vaø Control unit ñöôïc ñoùng goùi. Ñaây laø CPU 8 bit. Chuùng ta chæ naém caùc cheá ñoä ñòa chæ maø CPU cung caáp (phaàn taäp leänh)
  7. II. I/O (INPUT/OUTPUT)
  8. 1. Chức năng các chân + Port 0 : P0.0 – P0.7: Port I/O 8 bit coù 2 chöùc naêng 8 ñöôøng döõ lieäu: D0 – D7 8 ñöôøng ñòa chæthaáp: A0 – A7 ( khi duøng vôùi boä nhôù môû roäng beân ngoaøi ) + Port 1 : 8 chaân : P1.0 – P1.7 : Port I/O 8 bit : duøng ñeå giao tieáp vôùi caùc thieát bò beân ngoaøi. + Port 2 : 8 chaân P2.0 – P2.7 : Port I/O 8 bit: coù 2 chöùc naêng 8 ñöôøng döõ lieäu: D0 – D7 8 ñöôøng ñòa chæcao: A8 – A15 ( khi duøng vôùi boä nhôù môû roäng beân ngoaøi ) + Port 3 : P3.O – P3.7 : Port I / O 8 bit: coù 2 chöùc naêng Port I / O 8 bit Caùc chaân ñieàu khieån : T0, T1, WR,RD, INT0, INT1, TxD, RxD
  9. 5V : Duøng ñeå khôûi ñoäng laïi heä thoáng 10U F 100 S1 8K2 0 Hình 1.2  Maïch reset XTAL1 vaø XATL2 : duøng ñeå gheùp vôùi thaïch anh beân ngoøai. Taàn soá danh ñònh cuûa thaïch anh laø 12Mhz (ñoâi luùc duøng 11.059 Mhz) ALE (Cho pheùp choát ñòa chæ Address Latch Enable) : Chaân naøy xuaát tín hieäu cho pheùp choát ñòa chæ(byte thaáp) cuûa ñòa chængoaøi vaøo 1 thanh ghi ngoaøi(boä ñeäm). Chaân naøy ñöôïc noái vôùi chaân cho pheùp cuûa vi maïch choát beân ngoaøi.
  10. 89C51 Memmory    P0 D0­D7 74CH373 D             Q A0­A7 ALE G   P2 A8-A15          Hình 1.3 Kết nối bộ nhớ ngòai - ALE = 1 : Port 0 trôû thaønh Address. P0.0 – P0.7 = A0 - A7 ( byte ñ/c thaáp ) - ALE = 0 : Port 0 trôû thaønh Port data.P0.0 – P0.7 = D0 - D7 - Neáu ta khoâng duøng boä nhôù ngoaøi thì chaân ALE noái ñaát.
  11.       : (cho pheùp truy xuaát ngoøai External Access)  duøng cho caû  EA ROM vaø RAM:  • EA = 0: Cho pheùp truy xuaát boä nhôù ngoaøi P2.0 – P2.7 = A8 – A15 ( byte ñòa chæ cao) EA = 1 : söû duïng 4KROM + 128 byte RAM noäi EA = 21 V : Ghi chöông trình vaøo ROM noäi (laäp PSEN trình)         (cho pheùp boä nhôù chöông trình Program Store Enable) Duøng cho ROM:  Cho pheùp boä nhôù chöông trình ngoaøi. Noái vôùi Chaân cuûa PSEN Eprom PSEN =0: Cho pheùp boä nhôù chöông trình ngoaøi. ù : Caùc PIN=cuûa 89C51 1 : Khi thöïclaø thi2chöông höôùng. Ñeåôû trình truy Romxuaát ta phaûi : noäi. c khi xuaát 1 bit ta phaûi xoùa bit ñoù =0. c khi nhaäp ta phaûi set bit ñoù =1.
  12. III. BOÄ NHÔÙ (MEMORY) 89C51 coù 2 loaïi boä nhôù : boä nhôù trong (ON-CHIP Memmory) vaø boä nhôù ngoaøi (External Memmory) Boä nhôù noäi : ÔÛ beân trong chip (On-Chip Memory) ROM noäi vaø RAM noäi. ROM noäi (4K) duøng ñeå chöùa chöông trình khi ta naïp chöông trình. RAM noäi (128 byte) duøng ñeå chöùa döõ lieäu. Vuøng stack thöôøng truù trong RAM treân chip (Ram noäi). Boä nhôù ngoaøi : ROM ngoaøi vaø RAM ngoaøi. – ROM ngoaøi : Naèm beân ngoaøi chip, thöôøng duøng EPROM (64 K) – RAM ngoaøi : Naèm beân ngoaøi chip, thöôøng duøng RAM tónh (64K). Khi duøng RAM ngoaøi thì vieäc truy xuaát khoâng ñöôïc linh hoaït, vaø toác toä truy xuaát thaáp.Tuy nhieân noù cho ta khaû naêng laø taêng dung löôïng RAM, ROM.
  13. 1 .  Bo ä  n h ô ù  n o ä i    ROM: 4K chöùa chöông trình RAM: coù128 byte bao goàm Caùc daõy thanh ghi, vuøng RAM ñònh ñòa chæ bit, vuøng RAM ña chöùc naêng, caùc thanh ghi coù chöùc naêng ñaët bieät (SFR) 7FH FFH Vuøng Ram Ña duïng Caùc thanh ghi coù chöùc naêng ñaëc 30H bieät 2FH Vuøng Ram Ñònh ñòa chæ bit 20H 1FH Caùc bank Ram 00H 80H Toùm taét boä nhôù döõ lieäu treân chip
  14. Caùc bank RAM  : Coù ñòa chætöø 00 – 1FH. 32 byte ñöôïc chia laøm 4 bank. Bank 0, bank 1, bank 2 vaø bank 3 8051 hoå trôï 8 thanh ghi R0, R1, …,R7. 1 thanh ghi laø 1 byte nhôù RAM. Ñöôïc xem nhö 1 soá thanh ghi phuï. Maëc ñònh 8 thanh ghi phuï thuoäc bank 0 8 thanh ghi R0 - R7 thuoäc bank naøo ñöôïc theå hieän qua 2 bit RS1 RS0 trong thanh ghi PSW RS1 =1 RS1 RS0 Bank ñöôïc choïn RS0 = 1 choïn bank 0 0 Bank 0 3 Caùc leänh söû duïng caùc  0 1 1 thanh ghi R0 – R7 thöïc hieän  1 0 2 nhanh hôn nhöõng leänh töông  1 1 3 ñöông duøng söï ñònh ñòa chæ tröïc  tieáp
  15. • Vu ø n g  RAM  ñ /c  h o a ù  b it  (  Bit  Ad d re s a b le   Lo c a t io n  ) • Coù 210 vò trí . Trong ñoù ( 20h – 2Fh ) = 16 byte* 8 bit = 128 bit. Phaàn coøn laïi chöùa trong caùc thanh ghi chöùc naêng ñaëc bieät. Trong vuøng nhôù naøy ta coù theå taùc ñoäng ñeán töøng bit. Ñaây laø 1 ñaët tröng maïnh cuûa caùc boä vi ñieàu khieån. Caùc ñòa chæ trong vuøng nhôù naøy coù theå truy xuaát töøng byte hay töøng bit tuøy theo töøng leänh cuï theå. • Ví duï : • SETB 00h ; bit coù ñ/c bit 00h thuoäc ñòa chæ byte 20h ñöôïc set = 1 • RAM ñ a  d u ïn g : • 80 byte coù ñòa chæ töø 30h – 7Fh : duøng ñeå truy xuaát thöôøng xuyeân vôùi taàn soá cao, laøm stack.
  16. Caùc thanh ghi chöùc naêng ñaëc bieät SFR (Special Function Register): Thanh ghi laø 1 byte nhôù hay 1 töø nhôù. Coù moät ñòa chæ, thöôøng ñöôïc gaùn cho 1 caùi teân gaén lieàn vôùi 1 hoaëc vaøi chöùc naêng cuï theå. Caùc thanh ghi noäi laø 1 phaàn cuûa RAM noäi . Do ñoù moãi thanh ghi coù 1 ñòa chæ. Coù 21 thanh ghi coù chöùc naêng ñaëc bieät. Trong ñoù coù 1 soá thanh ghi coù khaû naêng ñònh ñòa chæbit. Haàu heát caùc thanh ghi chöùc naêng ñaëc bieät ñöôïc truy xuaát baèng caùch söû duïng söï ñònh ñòa chæñòa chætröïc tieáp.
  17. +4 thanh ghi port P0, P1, P2, P3 : duøng cho caùc port xuaát nhaäp P0, P1, P2 vaø P3 +6 thanh ghi cho time TMOD, TCON, TH0, TL0, TH1, TL1: duøng cho timer0 vaø timer 1 +2 thanh ghi cho port noái tieáp SBUF, SCON : duøng cho port noái tieáp) +2 Thanh ghi duøng cho ngaét IE, IP : duøng cho ngaét +1 thanh ghi con troû döõ lieäu ngoøai DPTR: laø thanh ghi 2 buyte DPH +DPL duøng truy xuaát boä nhôù ngoøai +1 thanh ghi tích luõy A : laø thanh ghi ñöôïc duøng nhieàu nhaát. Chöùa keát quaû caùc pheùp toùan. +1 Thanh ghi phuï B : Duøng chung vôùi thanh chöùa A trong caùc leänh nhaân vaø chia. Ngoaøi ra thanh ghi B ñöôïc duøng nhö thanh ghi phuï R +1thanh ghi boä ñeám chöông trình PC (Program Counter) : Laø thanh ghi 2 byte, chæra ñòa chæcuûa leänh tieáp theo ñöôïc thöïc hieän. Ñoái vôùi 89c51, khi baét ñaàu thì ñòa chæcuûa leän ñaàu tieân laø 0000h. Ta khoâng theå thay ñoåi giaù trò trong boä ñeám chöông trình.
  18. + 1 thanh ghi ñieàu khieån nguoàn PCON (Power Control) : duøng cho vieäc taêng ñoâi toác ñoä baud port noái tieáp vaø thieát laäp cheá ñoä giaûm nguoàn (power down) + 1 thanh ghi con troû ngaên xeáp SP (Stack Pointer): Noäi dung cuûa thanh ghi SP chính laø ñænh hieän haønh cuûa Stack ( vuøng stack coù 32 byte. Neáu ta  khoâng khôûi taïo stack thì noù maëc ñònh laø 07h). Toát nhaát laø  ta khai baùo vuøng stack lôùn hôn 2FH. + 1 thanh ghi töø traïng thaùi chöông trình PSW (Program Status Word)
  19. Ñòa chæ byte – ñòa chæ bit A8: Ñ/c byte cuûa thanh ghi IE = ñ/c bit bo ( bit LSB ) cuûa IE MOV A, 26H; chuyeån 1 byte döõ lieäu töø ñòa chæ byte ( of Ram ) 26H vaøo thanh ghi tích luõy A SETB 26H; laäp bit coù ñ/c bit laø 26, ( töùc bit b6 cuûa ñ/c byte 24 leân 1 Ta coù 3 caùch ñeå xaùc ñònh ñòa chæ bit trong 1 caâu leänh: - ñòa chæñaõ bieát tröôùc SETB 0E7H - Söû duïng toaùn töû dot (.) giöõa ñòa chæbyte vaø vò trí bit SETB ACC.7 - Söû duïng kyù hieäu tieàn ñònh nghóa JNB TI,$
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
3=>0