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

Giới thiệu vi điều khiển họ MCS-51

Chia sẻ: Lê Quảng Vàng | Ngày: | Loại File: PDF | Số trang:0

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

Những vi điều khiển Intel 8051 được sản xuất với việc dùng công nghệ MOSFET, những những bản sau, chứa kí hiệu «C» trong tên, như 80C51, dùng công nghệ CMOS và yêu cầu công suất thấp, hơn những cái MOSFET trước (điều này cho phép trang bị cho các thiết bị với nguồn là pin).

Chủ đề:
Lưu

Nội dung Text: Giới thiệu vi điều khiển họ MCS-51

  1. Giới thiệu VĐK họ MCS-51 MCS-51 - Architecture 1 Plan † Giới thiệu họ MCS-51TM † Kiến trúc 8051 † Cấu trúc cổng I/O † Tổ chức bộ nhớ † Các thanh ghi đặc biệt † Bộ nhớ ngoài † Hoạt động RESET MCS-51 - Architecture 2
  2. Họ MCS-51TM † Do hãng Intel phát triển đầu tiên và được nhiều hãng sản xuất linh kiện phát triển theo „ Philip „ Atmel „ Siemens „ ... MCS-51 - Architecture 3 Feature 8051 8052 8031 ROM (program space in bytes) 4K 8K 0K RAM (bytes) 128 256 128 Timers 2 3 2 I/O pins 32 32 32 Serial port 1 1 1 Interrupt sources 6 8 6 MCS-51 - Architecture 4
  3. Sơ đồ khối External interrupts On-chip Timer/Counter Interrupt ROM for On-chip Timer 1 Counter Control program RAM Timer 0 Inputs code CPU Bus Serial 4 I/O Ports OSC Control Port P0 P1 P2 P3 TxD RxD Address/Data MCS-51 - Architecture 5 Sơ đồ chân P1.0 1 40 Vcc P1.1 2 39 P0.0(AD0) P1.2 3 38 P0.1(AD1) P1.3 P1.4 4 5 8051 37 36 P0.2(AD2) P0.3(AD3) P1.5 6 (8031) 35 P0.4(AD4) P1.6 7 34 P0.5(AD5) P1.7 8 33 P0.6(AD6) RST 9 32 P0.7(AD7) (RXD)P3.0 10 31 EA/VPP (TXD)P3.1 11 30 ALE/PROG (INT0)P3.2 12 29 PSEN (INT1)P3.3 13 28 P2.7(A15) (T0)P3.4 14 27 P2.6(A14) (T1)P3.5 15 26 P2.5(A13) (WR)P3.6 16 25 P2.4(A12) (RD)P3.7 17 24 P2.3(A11) XTAL2 18 23 P2.2(A10) XTAL1 19 22 P2.1(A9) MCS-51 - Architecture 6 GND 20 21 P2.0(A8)
  4. Cấu trúc cổng I/O † Yêu cầu: „ có khả năng giao tiếp với các thiết bị ngoại vi khác „ sơ đồ đơn giản „ số chân IC ít để tiết kiệm trong khi làm mạch in † Các chân của VĐK thường được tích hợp nhiều tính năng „ input „ output „ truyền tin „ ngắt „ đường vào ADC „ ... † Các cổng P0, P1, P2, P3 đều là các cổng vào ra hai chiều MCS-51 - Architecture 7 Cổng P1 Read latch Vcc TB2 Load(L1)* Internal CPU D Q P1.X bus P1.X pin Write to latch Clk Q M1 TB1 Read pin * Tải L1 chỉ có ở các cổng P1, P2, P3 MCS-51 - Architecture 8
  5. Cổng P0 Read latch TB2 Internal CPU D Q P0.X bus P1.X pin Write to latch Clk Q M1 TB1 Read pin Khi hoạt động như là một cổng I/O, P0 không có internal L1 Æ cần nối một điện trở pull-up bên ngoài Khi hoạt động như là bus AD thì P0 lại có internal pull-up MCS-51 - Architecture 9 Tổ chức bộ nhớ † Kiến trúc bộ nhớ của 8051 là kiến trúc Harvard „ không gian bộ nhớ chương trình và bộ nhớ dữ liệu là tách rời † 8051 có các bộ nhớ trong „ bộ nhớ chứa code lệnh: ROM „ bộ nhớ chứa dữ lệiu đọc/ghi : RAM † Có khả năng quản lý bộ nhớ code và data ngoài qua „ Bus data 8 bit AD0-AD7 (~ P0.0 và P0.7) „ Bus địa chỉ tới 16 bit † AD0 – AD7 † A8 – A15 (~ P2.0 – P2.7) „ Bus điều khiển PSEN, ALE, RD (P3.7), WR (P3.6) MCS-51 - Architecture 10
  6. † Chỉ sử dụng một trong hai bộ nhớ code lệnh † Có thể sử dụng đồng thời bộ nhớ dữ liệu trong (internal RAM) và bộ nhớ dữ liệu ngoài MCS-51 - Architecture 11 Phân vùng internal RAM của 8051* 7FH * internal RAM 8051 có 128 byte (00-7F) RAM sử dụng bình thường 8052 có 256 byte (00-FF) 30H 2FH Bit-Addressable RAM 20H 1FH Register Bank 3 18H 17H Register Bank 2 10H 0FH (Stack) Register Bank 1 08H 07H Register Bank 0 00H MCS-51 - Architecture 12
  7. Truy cập internal RAM † Truy cập trực tiếp (direct addressing mode) mov A, 06H † Truy cập gián tiếp (indirect addressing mode) thông qua thanh ghi R0 và R1 mov R1,#06H mov A, @R1 MCS-51 - Architecture 13 Vùng nhớ đánh địa chỉ theo bit † 8051 có 210 vị trí có thể truy cập theo bit „ 128 bit nằm tại vùng nhớ byte 20H đến 2F của internal RAM „ số còn lại là các thanh ghi đặc biệt † 128 bit trong vùng nhớ RAM được đánh địa chỉ từ 00-7F † Số còn lại được đánh địa chỉ từ 80 đến F7 (có một số địa chỉ bit bỏ trống) † Các bit này có thể tác động thông qua các lệnh bit „ setb 00h „ thiết lập bit 00 (~ với bit LSB của byte 20H) MCS-51 - Architecture 14
  8. Các bank thanh ghi † 8051 có 4 bank thanh ghi „ mỗi bank có 8 thanh ghi 8 bits được ký hiệu R0 đến R7 „ nằm tại địa chỉ từ 00 – 1F (8 x 4 = 32bytes) † Việc lựa chọn bank thanh ghi được thực hiện thông qua thanh ghi PSW † Các lệnh sử dụng bank thanh ghi „ code lệnh ngắn hơn „ tốc độ nhanh hơn so với các lệnh tương đương sử dụng chế truy cập trực tiếp hoặc gián tiếp MCS-51 - Architecture 15 Các thanh ghi chức năng đặc biệt (SFR) † 8051 có một tập (21) các thanh ghi đặc biệt „ phục vụ cho các hoạt động tính toán của ALU „ điều khiển các module timer, truyền tin, port „ … † Truy cập thanh ghi „ thông qua tên (A, B, PSW,…) „ thông qua địa chỉ với mode truy cập TRỰC TIẾP † Một số thanh ghi truy cập đến từng bit † Địa chỉ của các thanh ghi này được đánh từ 80H đến FF tuy nhiên chỉ có 21 ô được sử dụng MCS-51 - Architecture 16
  9. MCS-51 - Architecture 17 Thanh ghi từ trạng thái PSW CY AC F0 RS1 RS0 OV -- P Carry flag PSW.7 CY Auxiliary carry flag PSW.6 AC Available to the user for general purpose PSW.5 -- Register Bank selector bit 1 PSW.4 RS1 Register Bank selector bit 0 PSW.3 RS0 Overflow flag PSW.2 OV User define bit PSW.1 -- Parity flag Set/Reset odd/even parity PSW.0 P RS1 RS0 Register Bank Address 0 0 0 00H-07H 0 1 1 08H-0FH 1 0 2 10H-17H 1 1 MCS-51 3 - Architecture 18H-1FH 18
  10. Example: MOV A,#88H ADD A,#93H 88 10001000 +93 +10010011 Example: ---- -------------- MOV A,#9CH 11B 00011011 ADD A,#64H CY=1 AC=0 P=0 9C 10011100 Example: +64 +01100100 MOV A,#38H ---- -------------- ADD A,#2FH 100 00000000 CY=1 AC=1 P=0 38 00111000 +2F +00101111 ---- -------------- 67 01100111 CY=0 AC=1 P=1 MCS-51 - Architecture 19 Thanh ghi PCON MCS-51 - Architecture 20
  11. Idle mode † Trong Idle mode „ Clock đến CPU là off, nhưng vẫn cung cấp cho Interrupt, Timer, Serial function port „ Nội dung các thanh ghi SFRs và internal RAM được giữ nguyên. „ Các cổng giữ nguyên trạng thái „ ALE và PSEN giữ ở mức cao † Để thoát ra khỏi Idle mode có 2 cách „ Sử dụng các ngắt (INTx, Timer, UART), hoặc „ Sử dụng tín hiệu Reset (nội dung các thanh ghi và RAM không thay đổi) MCS-51 - Architecture 21 Power down mode † Trong Power down mode „ On-chip oscillator off „ Các thanh ghi đặc biệt SFRs và internal RAM giữ nguyên giá trị, các cổng cũng giữ nguyên giá trị „ ALE và PSEN giữ ở mức thấp † Để thoát ra khỏi Power down mode chỉ có 1 cách „ Sử dụng tín hiệu RESET „ Nội dung của các thanh ghi SFRs bị thay đổi giống như trong RESET thông thường „ Nội dung của internal RAM không bị ảnh hưởng MCS-51 - Architecture 22
  12. Thanh ghi Stack Pointer † Được sử dụng để truy cập bộ nhớ ngăn xếp † Các lệnh sử dụng SP: „ CALL „ RET „ RETI „ PUSH, POP MCS-51 - Architecture 23 Thanh ghi cổng † 8051 có 4 cổng P0, P1, P2, P3 tương ứng có 4 thanh ghi điều khiển † Thanh ghi cổng có thể truy cập đến từng bit MCS-51 - Architecture 24
  13. Các thanh ghi Timer † Timer 0 : có 2 thanh ghi TH0 và TL0 † Timer 1: có 2 thanh ghi TH1 và TL1 † Chế độ hoạt động của các bộ timer được điều khiển thông qua 2 thanh ghi: TMOD (Timer Mode) và TCON (Timer Control) MCS-51 - Architecture 25 Các thanh ghi cổng nối tiếp † 8051 có bộ truyền tin nối tiếp UART † Thông tin nhận về được cất trong thanh ghi SBUF † Thông tin truyền đi được cất trong thanh ghi SBUF † Chú ý: mặc dù tên giống nhau, nhưng thực chất đây là 2 thanh ghi khác nhau. Do đó việc truyền và nhận có thể hoạt động độc lập không ảnh hưởng đến nhau † Chế độ hoạt động của truyền tin nối tiếp được xác định thông qua thanh ghi SCON MCS-51 - Architecture 26
  14. Các thanh ghi ngắt † 8051 có 5 nguồn ngắt và 2 mức ưu tiên † Việc cho phép hoặc cấm các nguồn ngắt được xác định thông thanh ghi IE † Mức ưu tiên của nguồn ngắt được xác định thông qua thanh ghi IP MCS-51 - Architecture 27 Bộ nhớ ngoài † 8051 có thể quản lý bộ nhớ ngoài „ 64 Kbytes code program „ 64 Kbytes data program † Các tín hiệu điều khiển „ PSEN: đọc bộ nhớ chương trình „ RD, WR: đọc, ghi bộ nhớ data † Data bus AD0-AD7 † Address bus AD0-AD7 (thấp) A8-A15 (cao) † Sử dụng tín hiệu ALE để de-multiplex data/address trên AD0-AD7 „ ALE = 0 Æ cung cấp data „ ALE = 1 Æ cung cấp địa chỉ MCS-51 - Architecture 28
  15. Bộ nhớ chương trình PSEN OE ALE 74LS373 OC G P0.0 A0 D P0.7 A7 D0 D7 EA P2.0 A8 P2.7 A15 MCS-51 - Architecture 29 8051 ROM 2. 74373 latches the 1. Send address to PSEN address and send to ROM OE ALE ROM G 74LS373 OC P0.0 A0 D P0.7 A7 Address D0 D7 EA P2.0 A8 P2.7 A12 MCS-51 - Architecture 30 8051 ROM
  16. 2. 74373 latches the address and send to PSEN ROM OE ALE 74LS373 OC G P0.0 A0 D P0.7 Address A7 D0 D7 EA 3. ROM send the instruction back P2.0 A8 P2.7 A12 MCS-51 - Architecture 31 8051 ROM Chu kỳ đọc bộ nhớ chương trình ngoài MCS-51 - Architecture 32
  17. Chu kỳ đọc bộ nhớ data ngoài MCS-51 - Architecture 33 Chu kỳ viết bộ nhớ data ngoài MCS-51 - Architecture 34
  18. Chu kỳ máy † Một chu kỳ máy của 8051 chiếm 12 chu kỳ xung nhịp của tín hiệu clock † Một lệnh có thể thực hiện mất một hoặc nhiều chu kỳ máy MCS-51 - Architecture 35 Hoạt động RESET Internal RAM không chịu ảnh hưởng của hoạt động RESET MCS-51 - Architecture 36
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

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