SlideShare a Scribd company logo
1 of 11
Download to read offline
Nội dung:                                                    Chương 2: Cấu trúc họ vi điều khiển 8051
 • Chương 1: Giới thiệu về Vi xử lý                            2.1. Giới thiệu chung
 • Chương 2: Giới thiệu về cấu trúc của Họ Vi điều             •   Cùng với việc phát triển các VXL cho hệ máy tính, các
       khiển 8051                                                  hãng cũng chế tạo các hệ vi xử lý chuyên dụng
 • Chương 3: Khảo sát tập lệnh và lập trình Vi điều                ⇒ Vi điều khiển (VĐK).
        khiển 8051
 • Chương 4: Hoạt động của bộ định thời                        • VĐK (MicroController) là một thiết bị tích hợp các
 • Chương 5: Hoạt động ngắt                                        phần tử của một hệ vi xử lý lên trên cùng một Chip.

 • Chương 6: Hoạt động truyền thông nối tiếp
 • Chương 7: Thiết kế giao tiếp




Chương 2: Cấu trúc họ vi điều khiển 8051
 2.1. Giới thiệu chung
   VĐK cũng có thể có:

      – Timer : phục vụ cho các hoạt động có tính chu kỳ.

      – Truyền tin nối tiếp : dùng để kết nối với các thiết
         bị khác.

      – ADC : cho phép xử lý các tín hiệu tương tự - số.
Chương 2: Cấu trúc họ vi điều khiển 8051
                                                         2.2. Giới thiệu chung về họ VĐK 8051
                                                         • Hiện nay có hơn 40 công ty sản xuất các loại vi điều
                                                            khiển khác nhau của họ 8051.
                                                         • Một số công ty có trên 40 version 8051.
                                                         • Trên 100 triệu vi điều khiển 8051 được bán ra mỗi
                                                            năm.

                                                         • Họ VĐK MCS-51 được phát triển bởi Intel năm 1980
                                                            và sau đó các nhà sản xuất khác như: Siemens, Philips,
                                                            Atmel,…




Tóm tắt một số đặc điểm chính của họ 8051:                MCS-51 bao gồm nhiều phiên bản khác nhau, mỗi
     4K bytes ROM trong.                                  phiên bản sau tăng thêm một số thanh ghi điều khiển hoạt
                                                          động của MCS-51.
     128 bytes RAM trong.
     4 cổng I/O 8-bit.                                 Đặc tính         8051       8031       8751       8052       8032       8752

     2 bộ định thời 16 bit.                            ROM trên chíp   4K byte      0K         4K         8K         0K       8K byte

     Giao tiếp nối tiếp.                               RAM             128 byte   128 byte   128 byte   256 byte   256 byte   256 byte

     Quản lý được 64K bộ nhớ chương trình bên ngoài.   Bộ định thời       2          2          2          3          3          3

     Quản lý được 64K bộ nhớ dữ liệu bên ngoài.        Chân vào ra       32         32         32         32         32         32
     Thao tác trên các Bit riêng rẽ.
     210 vị trí nhớ được định địa chỉ Bit.
     Thực hiện phép nhân/chia trong 4µs.
                                     µ
Cấu trúc bên
                                                        trong của MCS-51




Vi điều khiển AT89C51                                    2.3. Sơ đồ chân

• AT89C51 là vi điều khiển do Atmel sản xuất, chế tạo
  theo công nghệ CMOS.

• 4 KB EEPROM (Electrical Erase Programmable Read
  Only Memory), có khả năng tới 1000 chu kỳ ghi xoá.
2.3. Sơ đồ chân
                          Chân nguồn: Vcc, GND.
                                                                Chân nguồn:
                          Các cổng vào/ra: P0, P1, P2, P3.
                                                                  Vcc = 5V ± 20%        : (chân số 40)
                          Chân truy xuất bộ nhớ ngoài: /EA.

                          Chân cho phép bộ nhớ chương             GND = 0V              : (chân số 20)
                          trình: /PSEN.

                          Chân cho phép chốt địa chỉ: ALE.

                          Chân Reset: RST.

                          Các chân XTAL1 và XTAL2.




   Các cổng vào/ra                                              Các cổng vào/ra

• P0 : gồm các chân từ 32 – 39, có 2 công dụng:               • P1 : gồm các chân từ 1-8: Chỉ có chức năng
                                                               xuất/nhập.
        Xuất / nhập: dùng cho các thiết kế nhỏ.

        Bus địa chỉ / dữ liệu đa hợp: khi dùng các             Tuy nhiên đối với các VĐK: 8032, 8052, 8752 (có
      thiết kế lớn, đòi hỏi phải sử dụng bộ nhớ                sử dụng bộ định thời thứ 3) thì P1.0 và P1.1 còn làm
      ngoài thì Port 0 vừa là bus dữ liệu (8 bit) vừa          ngõ vào cho bộ định thời thứ 3.
      là bus địa chỉ (8 bit thấp).
Các cổng vào/ra                                       • P3 : gồm các chân từ 10 – 17, có 2 công dụng:
                                                                Xuất / nhập.
• P2 : gồm các chân từ 21 – 28, có 2 công dụng:
                                                                Các công dụng khác được mô tả như sau:
         Xuất / nhập: dùng cho các thiết kế nhỏ.          Bit            Tên                     Chức năng
                                                         P3.0            RxD       Ngõ vào port nối tiếp
         Bus địa chỉ / dữ liệu đa hợp: khi dùng các      P3.1            TxD       Ngõ ra port nối tiếp
       thiết kế lớn, đòi hỏi phải sử dụng bộ nhớ         P3.2           /INT0      Ngắt ngoài 0
       ngoài thì Port 2 vừa là bus dữ liệu (8 bit) vừa   P3.3           /INT1      Ngắt ngoài 1
       là bus địa chỉ (8 bit cao). -                     P3.4             T0       Ngõ vào của bộ định thời 0
                                                         P3.5             T1       Ngõ vào của bộ định thời 1
                                                         P3.6            /WR       Điều khiển ghi dữ liệu lên bộ nhớ ngoài.
                                                         P3.7            /RD       Điều khiển đọc từ bộ nhớ dữ liệu ngoài.




Chân truy xuất bộ nhớ ngoài: /EA (External Access)       Chân cho phép bộ nhớ chương trình: /PSEN
                                                           (Program Store Enable)
• EA (chân 31) dùng để cho phép thực thi chương trình
  từ ROM ngoài.                                          • PSEN (chân 29): cho phép đọc bộ nhớ chương trình mở
                                                           rộng đối với các ứng dụng sử dụng ROM ngoài.
• Khi nối EA với Vcc (5V) , AT89C51 sẽ thực thi chương
  trình từ ROM nội.                                      • Thường được nối đến chân OE (Output Enable) của
                                                           ROM ngoài để đọc các byte mã lệnh.
• Ngược lại, khi nối EA với GND (0V) , AT89C51 sẽ thực
  thi chương trình từ ROM ngoài.
                                                         • Khi 89x51 thi hành chương trình trong ROM nội, PSEN
• Ngoài ra, chân EA còn được dùng để nhận điện áp          sẽ ở mức logic 1.
  cho việc lập trình (Vpp) EPROM nội.
Chân Reset: RST
  Chân cho phép chốt địa chỉ: ALE (Address Latch Enable)
                                                            • Ngõ vào Reset (chân 9): dùng để thiết lập trạng thái ban
• ALE/ PROG (chân 30) cho phép tách các đường địa chỉ và        đầu (Reset) cho hệ thống.
  dữ liệu tại Port 0 và Port 2.
                                                            •   Để thực hiện Reset cần phải giữ ngõ vào RST ở mức cao ít
                                                                nhất 2 chu kỳ máy.
• Khi truy xuất bộ nhớ ngoài. ALE thường nối với
  chân Clock của IC chốt (74373, 74573).

• Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao
  động trên chip (12/6 = 2 MHz).

• Ngoài ra, chân này còn được dùng để nhận ngõ vào xung
  lập trình cho ROM nội (PROG).




   Các chân XTAL1 và XTAL2
  • Ngõ vào và ngõ ra bộ dao động, được nối với mạch dao
    động bên ngoài (thạch anh).

  • Tần số thạch anh thường sử dụng cho AT89C51
    khoảng 12Mhz.
2.3. Tổ chức bộ nhớ                                       2.3. 1. Tổ chức bộ nhớ trong

Bộ nhớ của MCS-51 bao gồm: bộ nhớ trong và bộ nhớ ngoài      Bộ nhớ trong của MCS-51 gồm ROM và RAM.

                                                                RAM bao gồm các vùng nhớ:

                                                                • Các bank thanh ghi (từ 00h –1Fh).
                                                                • Vùng có thể định địa chỉ hóa từng bit (20h – 2Fh).
                                                                • Vùng RAM đa mục đích (địa chỉ byte từ 30h – 7Fh).
                                                                • Các thanh ghi chức năng đặc biệt (từ 80h – 0FFh).
RAM        Thanh ghi chức năng đặc biệt
Tổ chức bộ nhớ                                                         Tổ chức bộ nhớ dữ liệu
dữ liệu
                                                                         Các bank thanh ghi:
                                                                         • Có 4 bank thanh ghi có địa chỉ từ: 00h –1Fh.
                                                                         • Mỗi bank có 8 thanh ghi 8 bit: R0 – R7.




 Tổ chức bộ nhớ dữ liệu
                                                                       Tổ chức bộ nhớ dữ liệu
   Các bank thanh ghi:
                                                                         Vùng RAM định địa chỉ từng bit: gồm 16 byte có địa chỉ
    • Việc lựa chọn bank thanh ghi được thực hiện thông                 từ 20h – 2Fh (16 x 8 = 128 bit).
    qua thanh ghi PSW (từ trạng thái chương trình).
                                                                        Vùng RAM đa mục đích: gồm 80 byte có địa chỉ từ
    • Các lệnh sử dụng bank thanh ghi sẽ có code ngắn hơn               30h – 7Fh. Vùng nhớ này, có thể truy xuất mỗi lần 8 bit
    và tốc độ nhanh hơn các lệnh tương đương.                           bằng cách dùng chế độ địa chỉ trực tiếp hay gián tiếp.

    Ví dụ: MOV A, R5 ; đọc nội dung tại địa chỉ 05H vào
    thanh ghi A. (lệnh này chiếm 1byte).

            MOV A, 05H ; (lệnh chiếm 2 byte).
Các thanh ghi chức năng đặc biệt (SFR – Special              Các thanh ghi chức năng đặc biệt (SFR – Special
Function registers)                                          Function registers)
    Thanh ghi tích lũy (A hay Acc - Accumulator ):                 Thanh ghi B:
   Là thanh ghi rất quan trọng của VĐK, có chức năng lưu
   trữ dữ liệu khi tính toán, hầu hết các phép toán thực           • Thanh ghi B dùng cho các phép toán nhân, chia và
   hiện đều thông qua thanh ghi này.                               có thể dùng như một thanh ghi tạm, chứa các kết quả
                                                                   trung gian.
   Thanh ghi tích luỹ có thể truy xuất trực tiếp thông qua
   địa chỉ E0h (byte) hay truy xuất từng bit thông qua địa    VD:     MUL AB; Nhân hai số nguyên 8 bit, kết quả lưu vào A, B
   chỉ bit từ E0h đến E7h.                                                  ; A chứa kết quả byte thấp
                                                                            ; B chứa kết quả byte cao
   VD:        MOV       A,#1
              MOV       0E0h,#1 ; có cùng kết quả                  • Thanh ghi B có địa chỉ byte F0h và địa chỉ bit từ
   Hay:       SETB      ACC.4                                         F0h – F7h.
              SETB      0E4h        ; cũng tương tự




Các thanh ghi chức năng đặc biệt (SFR)                        Hãy biểu diễn ngăn xếp và con trỏ ngăn xếp đối với
                                                              đoạn chương trình sau đây. Giả thiết vùng ngăn xếp là
 Thanh ghi con trỏ Stack (SP – Stack Pointer):                mặc định.
                                                              MOV          R6, #25H
 • SP là một thanh ghi 8 bit, có địa chỉ 81h. Được sử dụng    MOV          R1, #12H
 để truy cập bộ nhớ ngăn xếp. SP chứa địa chỉ của dữ liệu     MOV          R4, #0F3H
 hiện đang ở đỉnh của ngăn xếp.                               PUSH         6
                                                              PUSH         1
 • Ngăn xếp là một vùng bộ nhớ RAM được CPU sử dụng           PUSH         4    Sau PUSH 6         Sau PUSP 1         Sau PUSH 4

 để lưu thông tin tạm thời. Thông tin này có thể là dữ        0B                  0B              0B                  0B
 liệu, có thể là địa chỉ.                                     0A                  0A              0A                  0A        F3

 • Khi VĐK được cấp nguồn thì SP có giá 07h. SP có thể        09                  09              09        12        09        12
 được khởi động lại.                                          08                  08        25    08        25        08        25

 Ví dụ: MOV SP, #5Fh; Vùng Stack bắt đầu có địa chỉ 60h.      Bắt đầu SP = 07     SP = 08         SP = 09             SP = 0A
Khảo sát ngăn xếp và hãy trình bày nội dung của các thanh               Các thanh ghi chức năng đặc biệt (SFR)
ghi và SP sau khi thực hiện đoạn chương trình sau đây:
      POP 3        ; Lấy ngăn xếp trở lại R3                             Thanh ghi con trỏ dữ liệu (DPTR – Data Pointer):
      POP 5        ; Lấy ngăn xếp trở lại R5
                                                                         • SP là một thanh ghi 16 bit, có địa chỉ 82h (DPL) và 83h
      POP 2        ; Lấy ngăn xếp trở lại R2
                    Sau POP3          Sau POP 5          Sau POP 2
                                                                         (DPH). Được sử dụng để truy xuất bộ nhớ chương trình
0B       54         0B                0B                 0B              ngoài hoặc bộ nhớ dữ liệu ngoài.
0A       F9         0A         F9     0A                 0A              Ví dụ: MOV         A, #55h; nạp giá trị 55H vào A.
09       76         09         76     09        76       09                     MOV DPTR, #1000H; nạp địa chỉ ô nhớ vào DPTR
08       6C         08         6C     08        6C       08        6C
                                                                                MOV         @DPTR, A; nạp giá trị 55H vào ô nhớ có địa
Bắt đầu SP = 0B     SP = 0A           SP = 09            SP = 08
                                                                                                          chỉ chứa trong DPTR(1000H)




 Các thanh ghi chức năng đặc biệt (SFR)                                 Các thanh ghi chức năng đặc biệt (SFR)
     Các Thanh ghi port                                                  Các thanh ghi định thời
                                                                         Dùng để định các khoảng thời gian hoặc đếm các sự kiện.
        Các thanh ghi P0 tại địa chỉ 80h, P1 tại địa chỉ 90h, P2, tại
                                                                         MCS – 51 có 2 thanh ghi định thời 16 bit:
     địa chỉ A0h, P3 tại địa chỉ B0h là các thanh ghi chốt cho 4
     port xuất / nhập (Port 0, 1, 2, 3).                                 • Timer 0: TL0 (8Ah) và TH0 (8Ch).
                                                                         • Timer 1: TL1 (8Bh) và TH1 (8Dh).
       Tất cả các thanh ghi này đều cho phép định địa chỉ bit:
     P0 từ 80h – 87h, P1 từ 90h – 97h, P2 từ A0h – A7h, P3 từ            Hoạt động định thời được thiết lập bởi các thanh ghi:
     B0h – B7h.                                                          • TMOD (Timer Mode Register): thanh ghi chế độ định thời có
                                                                         địa chỉ 89h.
        Các địa chỉ bit này có thể thay thế bằng toán tử.
        Ví dụ như: 2 lệnh sau là tương đương:                            • TCON (Timer Control register) có địa chỉ 88h, thanh ghi điều
                    SETB         P0.0                                    khiển định thời.
                    SETB         80h
Các thanh ghi chức năng đặc biệt (SFR)                           Các thanh ghi chức năng đặc biệt (SFR)
 Các thanh ghi của port nối tiếp                                  Các thanh ghi ngắt (Interrupt Register)
 Dùng để truyền thông với các thiết bị nối tiếp như: Modem,       Dùng để điều khiển, thiết lập các chế độ khi lập trình ngắt.
 VĐK,…
                                                                  Thanh ghi ngắt gồm có 2 thanh ghi:
 Thanh ghi port nối tiếp gồm có 2 thanh ghi:
                                                                  • IE (Interrupt Enable Register – Thanh ghi cho phép ngắt)
 • SBUF (Serial Data Buffer – Bộ đệm dữ liệu nối tiếp) có địa     có địa chỉ A8h.
 chỉ 99h, dùng để lưu trữ dữ liệu đi và đọc dữ liệu truyền về.
                                                                  • IP (Interrupt Priority Register – Thanh ghi ưu tiên ngắt)
 • SCON (Serial Port Control register) có địa chỉ 98h, có chức    có địa chỉ B8h, có chức năng thiết lập các ngắt ưu tiên.
 năng điều khiển việc truyền thông nối tiếp.




Các thanh ghi chức năng đặc biệt (SFR)                           Các thanh ghi chức năng đặc biệt (SFR)
 Thanh ghi điều khiển nguồn (PCON – Power Control                 Từ trạng thái chương trình (PSW – Program State Word)
 Register)                                                        Có địa chỉ D0h, chứa các bit trạng thái có chức năng:
 Có địa chỉ 87h, được định địa chỉ từng bit, dùng để điều           Bit       Ký hiệu      Địa chỉ                 Mô tả Bit

 khiển các chế độ nguồn:                                           PSW.7       CY           D7h       Cờ nhớ
                                                                   PSW.6       AC           D6h       Cờ nhớ phụ
 • Chế độ giảm nguồn.                                              PSW.5        F0          D5h       Cờ 0
                                                                   PSW.4       RS0          D4h       Chọn bank thanh ghi (Bit 1)
 • Chế độ nghỉ                                                     PSW.3       RS1          D3h       Chọn bank thanh ghi (Bit 0)
                                                                   PSW.2       OV           D2h       Cờ tràn
                                                                   PSW.1         -          D1h       Dự trữ
                                                                   PSW.0        P           D0h       Cờ kiểm tra chẵn lẻ

More Related Content

What's hot

Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Ky Nguyen Ad
 
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien tiểu minh
 
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềuThiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềunataliej4
 
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdThiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdnataliej4
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Vũ Anh
 
Hướng dẫn lập_trình_avr
Hướng dẫn lập_trình_avrHướng dẫn lập_trình_avr
Hướng dẫn lập_trình_avrDuy Tân
 
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDĐồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDMr Giap
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thuTrần Đức Anh
 
Tự học PLC CP1L
Tự học PLC CP1LTự học PLC CP1L
Tự học PLC CP1Lquanglocbp
 
Bộ điều khiển lập trình PLC - Điện tử đo lường
Bộ điều khiển lập trình PLC - Điện tử đo lườngBộ điều khiển lập trình PLC - Điện tử đo lường
Bộ điều khiển lập trình PLC - Điện tử đo lườngChia sẻ tài liệu học tập
 
8051 giao tiep lcd
8051 giao tiep lcd8051 giao tiep lcd
8051 giao tiep lcdJean Okio
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxBùi Ngọc Bảo
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thư Viện Số
 

What's hot (19)

ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PICĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr
 
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien
Ky thuat vi dieu khien ----- Thiet ke he thong voi vi dieu khien
 
Chuong6 hoạt động ngắt
Chuong6 hoạt động ngắtChuong6 hoạt động ngắt
Chuong6 hoạt động ngắt
 
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiềuThiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
Thiết kế, chế tạo mạch điều khiển, hiển thị tốc độ động cơ điện 1 chiều
 
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdThiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
 
Avr nang cao
Avr nang caoAvr nang cao
Avr nang cao
 
Atmel avr
Atmel avrAtmel avr
Atmel avr
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520
 
Hướng dẫn lập_trình_avr
Hướng dẫn lập_trình_avrHướng dẫn lập_trình_avr
Hướng dẫn lập_trình_avr
 
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCDĐồ Án Đo Điện Áp Hiển Thị Trên LCD
Đồ Án Đo Điện Áp Hiển Thị Trên LCD
 
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đĐề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
 
Bao cao vdk_va_pic
Bao cao vdk_va_picBao cao vdk_va_pic
Bao cao vdk_va_pic
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
 
Tự học PLC CP1L
Tự học PLC CP1LTự học PLC CP1L
Tự học PLC CP1L
 
Bộ điều khiển lập trình PLC - Điện tử đo lường
Bộ điều khiển lập trình PLC - Điện tử đo lườngBộ điều khiển lập trình PLC - Điện tử đo lường
Bộ điều khiển lập trình PLC - Điện tử đo lường
 
8051 giao tiep lcd
8051 giao tiep lcd8051 giao tiep lcd
8051 giao tiep lcd
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
 

Viewers also liked

Giải bài tập Tin học 11 SGK
Giải bài tập Tin học 11 SGKGiải bài tập Tin học 11 SGK
Giải bài tập Tin học 11 SGKHảo Hảo
 
Quản trị tình huống (1) (1)
Quản trị tình huống (1) (1)Quản trị tình huống (1) (1)
Quản trị tình huống (1) (1)Em Để Yêu
 
Phong cach lanh dao, phong cách lãnh đạo
Phong cach lanh dao, phong cách lãnh đạoPhong cach lanh dao, phong cách lãnh đạo
Phong cach lanh dao, phong cách lãnh đạoViệt Long Plaza
 
Quyền lực và phong cách lãnh đạo
Quyền lực và phong cách lãnh đạoQuyền lực và phong cách lãnh đạo
Quyền lực và phong cách lãnh đạoTrong Hoang
 
Chương 6 văn hóa trong các hoạt động kinh doanh
Chương 6 văn hóa trong các hoạt động kinh doanhChương 6 văn hóa trong các hoạt động kinh doanh
Chương 6 văn hóa trong các hoạt động kinh doanhNgọc Yến Lê Thị
 

Viewers also liked (6)

Giải bài tập Tin học 11 SGK
Giải bài tập Tin học 11 SGKGiải bài tập Tin học 11 SGK
Giải bài tập Tin học 11 SGK
 
Quản trị tình huống (1) (1)
Quản trị tình huống (1) (1)Quản trị tình huống (1) (1)
Quản trị tình huống (1) (1)
 
Lanh dao
Lanh daoLanh dao
Lanh dao
 
Phong cach lanh dao, phong cách lãnh đạo
Phong cach lanh dao, phong cách lãnh đạoPhong cach lanh dao, phong cách lãnh đạo
Phong cach lanh dao, phong cách lãnh đạo
 
Quyền lực và phong cách lãnh đạo
Quyền lực và phong cách lãnh đạoQuyền lực và phong cách lãnh đạo
Quyền lực và phong cách lãnh đạo
 
Chương 6 văn hóa trong các hoạt động kinh doanh
Chương 6 văn hóa trong các hoạt động kinh doanhChương 6 văn hóa trong các hoạt động kinh doanh
Chương 6 văn hóa trong các hoạt động kinh doanh
 

Similar to Chuong 2 gioi thieu ve cau truc ho vdk 8051

Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Huynh MVT
 
Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Brooklyn Abbott
 
418 giaotrinh avr
418 giaotrinh avr418 giaotrinh avr
418 giaotrinh avranhhoi12345
 
Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vnbibibobo2007
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Mr Giap
 
Lập trình C cho 8051
Lập trình C cho 8051Lập trình C cho 8051
Lập trình C cho 8051chilacaiten
 
Tìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcTìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcDan Vu
 
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfĐồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfNuioKila
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picCu Bi
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucmster_dang
 
vxl.vdk.TranThanhPhong
vxl.vdk.TranThanhPhongvxl.vdk.TranThanhPhong
vxl.vdk.TranThanhPhongLong Tran Huy
 
datasheet.pdf
datasheet.pdfdatasheet.pdf
datasheet.pdfDuyL84058
 
Spartan 3e-vietnamese
Spartan 3e-vietnameseSpartan 3e-vietnamese
Spartan 3e-vietnamesebuianhminh
 
Tìm hiểu về Arduino và một số dự án với Arduino
Tìm hiểu về Arduino và một số dự án với ArduinoTìm hiểu về Arduino và một số dự án với Arduino
Tìm hiểu về Arduino và một số dự án với Arduinonvn0696
 
uC_lec_02_03_nDD.pptx
uC_lec_02_03_nDD.pptxuC_lec_02_03_nDD.pptx
uC_lec_02_03_nDD.pptxTrngTrng96
 

Similar to Chuong 2 gioi thieu ve cau truc ho vdk 8051 (20)

Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03Vxl ch03-8051-3.1 3.2-v03
Vxl ch03-8051-3.1 3.2-v03
 
Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051
 
Đề tài: Thiết kế Hệ Thống Quảng Cáo, HAY, 9đ
Đề tài: Thiết kế Hệ Thống Quảng Cáo, HAY, 9đĐề tài: Thiết kế Hệ Thống Quảng Cáo, HAY, 9đ
Đề tài: Thiết kế Hệ Thống Quảng Cáo, HAY, 9đ
 
418 giaotrinh avr
418 giaotrinh avr418 giaotrinh avr
418 giaotrinh avr
 
Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vn
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52
 
Lập trình C cho 8051
Lập trình C cho 8051Lập trình C cho 8051
Lập trình C cho 8051
 
Vdk 8051
Vdk 8051 Vdk 8051
Vdk 8051
 
Tìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bướcTìm hiểu cách dùng pic để chạy motor bước
Tìm hiểu cách dùng pic để chạy motor bước
 
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdfĐồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
Đồ Án Thiết Kế Lịch Vạn Niên Điện Tử Hiển Thị Trên LCD.pdf
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-pic
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautruc
 
Vi dieu khien_pic
Vi dieu khien_picVi dieu khien_pic
Vi dieu khien_pic
 
vxl.vdk.TranThanhPhong
vxl.vdk.TranThanhPhongvxl.vdk.TranThanhPhong
vxl.vdk.TranThanhPhong
 
datasheet.pdf
datasheet.pdfdatasheet.pdf
datasheet.pdf
 
Spartan 3e-vietnamese
Spartan 3e-vietnameseSpartan 3e-vietnamese
Spartan 3e-vietnamese
 
Tìm hiểu về Arduino và một số dự án với Arduino
Tìm hiểu về Arduino và một số dự án với ArduinoTìm hiểu về Arduino và một số dự án với Arduino
Tìm hiểu về Arduino và một số dự án với Arduino
 
uC_lec_02_03_nDD.pptx
uC_lec_02_03_nDD.pptxuC_lec_02_03_nDD.pptx
uC_lec_02_03_nDD.pptx
 
Co ban ve msp430
Co ban ve msp430Co ban ve msp430
Co ban ve msp430
 
Bao cao full
Bao cao fullBao cao full
Bao cao full
 

More from Bút Chì

Chuong 6 truyen thong noi tiep
Chuong 6 truyen thong noi tiepChuong 6 truyen thong noi tiep
Chuong 6 truyen thong noi tiepBút Chì
 
Chuong 5 hoat dong ngat
Chuong 5  hoat dong ngatChuong 5  hoat dong ngat
Chuong 5 hoat dong ngatBút Chì
 
Chuong 4 hoat dong dinh thoi
Chuong 4 hoat dong dinh thoiChuong 4 hoat dong dinh thoi
Chuong 4 hoat dong dinh thoiBút Chì
 
Chuong 3 khao sat tap lenh va ltrinh vdk
Chuong 3 khao sat tap lenh va ltrinh vdkChuong 3 khao sat tap lenh va ltrinh vdk
Chuong 3 khao sat tap lenh va ltrinh vdkBút Chì
 
Chuong 1 gioi thieu ve vi xu ly
Chuong 1 gioi thieu ve vi xu lyChuong 1 gioi thieu ve vi xu ly
Chuong 1 gioi thieu ve vi xu lyBút Chì
 
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren oto
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren otoChuong 0 kien thuc co ban ve he thong dien va dien tu tren oto
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren otoBút Chì
 
Chuong 7 thiet ke giao tiep
Chuong 7 thiet ke giao tiepChuong 7 thiet ke giao tiep
Chuong 7 thiet ke giao tiepBút Chì
 

More from Bút Chì (7)

Chuong 6 truyen thong noi tiep
Chuong 6 truyen thong noi tiepChuong 6 truyen thong noi tiep
Chuong 6 truyen thong noi tiep
 
Chuong 5 hoat dong ngat
Chuong 5  hoat dong ngatChuong 5  hoat dong ngat
Chuong 5 hoat dong ngat
 
Chuong 4 hoat dong dinh thoi
Chuong 4 hoat dong dinh thoiChuong 4 hoat dong dinh thoi
Chuong 4 hoat dong dinh thoi
 
Chuong 3 khao sat tap lenh va ltrinh vdk
Chuong 3 khao sat tap lenh va ltrinh vdkChuong 3 khao sat tap lenh va ltrinh vdk
Chuong 3 khao sat tap lenh va ltrinh vdk
 
Chuong 1 gioi thieu ve vi xu ly
Chuong 1 gioi thieu ve vi xu lyChuong 1 gioi thieu ve vi xu ly
Chuong 1 gioi thieu ve vi xu ly
 
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren oto
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren otoChuong 0 kien thuc co ban ve he thong dien va dien tu tren oto
Chuong 0 kien thuc co ban ve he thong dien va dien tu tren oto
 
Chuong 7 thiet ke giao tiep
Chuong 7 thiet ke giao tiepChuong 7 thiet ke giao tiep
Chuong 7 thiet ke giao tiep
 

Chuong 2 gioi thieu ve cau truc ho vdk 8051

  • 1. Nội dung: Chương 2: Cấu trúc họ vi điều khiển 8051 • Chương 1: Giới thiệu về Vi xử lý 2.1. Giới thiệu chung • Chương 2: Giới thiệu về cấu trúc của Họ Vi điều • Cùng với việc phát triển các VXL cho hệ máy tính, các khiển 8051 hãng cũng chế tạo các hệ vi xử lý chuyên dụng • Chương 3: Khảo sát tập lệnh và lập trình Vi điều ⇒ Vi điều khiển (VĐK). khiển 8051 • Chương 4: Hoạt động của bộ định thời • VĐK (MicroController) là một thiết bị tích hợp các • Chương 5: Hoạt động ngắt phần tử của một hệ vi xử lý lên trên cùng một Chip. • Chương 6: Hoạt động truyền thông nối tiếp • Chương 7: Thiết kế giao tiếp Chương 2: Cấu trúc họ vi điều khiển 8051 2.1. Giới thiệu chung VĐK cũng có thể có: – Timer : phục vụ cho các hoạt động có tính chu kỳ. – Truyền tin nối tiếp : dùng để kết nối với các thiết bị khác. – ADC : cho phép xử lý các tín hiệu tương tự - số.
  • 2. Chương 2: Cấu trúc họ vi điều khiển 8051 2.2. Giới thiệu chung về họ VĐK 8051 • Hiện nay có hơn 40 công ty sản xuất các loại vi điều khiển khác nhau của họ 8051. • Một số công ty có trên 40 version 8051. • Trên 100 triệu vi điều khiển 8051 được bán ra mỗi năm. • Họ VĐK MCS-51 được phát triển bởi Intel năm 1980 và sau đó các nhà sản xuất khác như: Siemens, Philips, Atmel,… Tóm tắt một số đặc điểm chính của họ 8051: MCS-51 bao gồm nhiều phiên bản khác nhau, mỗi 4K bytes ROM trong. phiên bản sau tăng thêm một số thanh ghi điều khiển hoạt động của MCS-51. 128 bytes RAM trong. 4 cổng I/O 8-bit. Đặc tính 8051 8031 8751 8052 8032 8752 2 bộ định thời 16 bit. ROM trên chíp 4K byte 0K 4K 8K 0K 8K byte Giao tiếp nối tiếp. RAM 128 byte 128 byte 128 byte 256 byte 256 byte 256 byte Quản lý được 64K bộ nhớ chương trình bên ngoài. Bộ định thời 2 2 2 3 3 3 Quản lý được 64K bộ nhớ dữ liệu bên ngoài. Chân vào ra 32 32 32 32 32 32 Thao tác trên các Bit riêng rẽ. 210 vị trí nhớ được định địa chỉ Bit. Thực hiện phép nhân/chia trong 4µs. µ
  • 3. Cấu trúc bên trong của MCS-51 Vi điều khiển AT89C51 2.3. Sơ đồ chân • AT89C51 là vi điều khiển do Atmel sản xuất, chế tạo theo công nghệ CMOS. • 4 KB EEPROM (Electrical Erase Programmable Read Only Memory), có khả năng tới 1000 chu kỳ ghi xoá.
  • 4. 2.3. Sơ đồ chân Chân nguồn: Vcc, GND. Chân nguồn: Các cổng vào/ra: P0, P1, P2, P3. Vcc = 5V ± 20% : (chân số 40) Chân truy xuất bộ nhớ ngoài: /EA. Chân cho phép bộ nhớ chương GND = 0V : (chân số 20) trình: /PSEN. Chân cho phép chốt địa chỉ: ALE. Chân Reset: RST. Các chân XTAL1 và XTAL2. Các cổng vào/ra Các cổng vào/ra • P0 : gồm các chân từ 32 – 39, có 2 công dụng: • P1 : gồm các chân từ 1-8: Chỉ có chức năng xuất/nhập. Xuất / nhập: dùng cho các thiết kế nhỏ. Bus địa chỉ / dữ liệu đa hợp: khi dùng các Tuy nhiên đối với các VĐK: 8032, 8052, 8752 (có thiết kế lớn, đòi hỏi phải sử dụng bộ nhớ sử dụng bộ định thời thứ 3) thì P1.0 và P1.1 còn làm ngoài thì Port 0 vừa là bus dữ liệu (8 bit) vừa ngõ vào cho bộ định thời thứ 3. là bus địa chỉ (8 bit thấp).
  • 5. Các cổng vào/ra • P3 : gồm các chân từ 10 – 17, có 2 công dụng: Xuất / nhập. • P2 : gồm các chân từ 21 – 28, có 2 công dụng: Các công dụng khác được mô tả như sau: Xuất / nhập: dùng cho các thiết kế nhỏ. Bit Tên Chức năng P3.0 RxD Ngõ vào port nối tiếp Bus địa chỉ / dữ liệu đa hợp: khi dùng các P3.1 TxD Ngõ ra port nối tiếp thiết kế lớn, đòi hỏi phải sử dụng bộ nhớ P3.2 /INT0 Ngắt ngoài 0 ngoài thì Port 2 vừa là bus dữ liệu (8 bit) vừa P3.3 /INT1 Ngắt ngoài 1 là bus địa chỉ (8 bit cao). - P3.4 T0 Ngõ vào của bộ định thời 0 P3.5 T1 Ngõ vào của bộ định thời 1 P3.6 /WR Điều khiển ghi dữ liệu lên bộ nhớ ngoài. P3.7 /RD Điều khiển đọc từ bộ nhớ dữ liệu ngoài. Chân truy xuất bộ nhớ ngoài: /EA (External Access) Chân cho phép bộ nhớ chương trình: /PSEN (Program Store Enable) • EA (chân 31) dùng để cho phép thực thi chương trình từ ROM ngoài. • PSEN (chân 29): cho phép đọc bộ nhớ chương trình mở rộng đối với các ứng dụng sử dụng ROM ngoài. • Khi nối EA với Vcc (5V) , AT89C51 sẽ thực thi chương trình từ ROM nội. • Thường được nối đến chân OE (Output Enable) của ROM ngoài để đọc các byte mã lệnh. • Ngược lại, khi nối EA với GND (0V) , AT89C51 sẽ thực thi chương trình từ ROM ngoài. • Khi 89x51 thi hành chương trình trong ROM nội, PSEN • Ngoài ra, chân EA còn được dùng để nhận điện áp sẽ ở mức logic 1. cho việc lập trình (Vpp) EPROM nội.
  • 6. Chân Reset: RST Chân cho phép chốt địa chỉ: ALE (Address Latch Enable) • Ngõ vào Reset (chân 9): dùng để thiết lập trạng thái ban • ALE/ PROG (chân 30) cho phép tách các đường địa chỉ và đầu (Reset) cho hệ thống. dữ liệu tại Port 0 và Port 2. • Để thực hiện Reset cần phải giữ ngõ vào RST ở mức cao ít nhất 2 chu kỳ máy. • Khi truy xuất bộ nhớ ngoài. ALE thường nối với chân Clock của IC chốt (74373, 74573). • Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip (12/6 = 2 MHz). • Ngoài ra, chân này còn được dùng để nhận ngõ vào xung lập trình cho ROM nội (PROG). Các chân XTAL1 và XTAL2 • Ngõ vào và ngõ ra bộ dao động, được nối với mạch dao động bên ngoài (thạch anh). • Tần số thạch anh thường sử dụng cho AT89C51 khoảng 12Mhz.
  • 7. 2.3. Tổ chức bộ nhớ 2.3. 1. Tổ chức bộ nhớ trong Bộ nhớ của MCS-51 bao gồm: bộ nhớ trong và bộ nhớ ngoài Bộ nhớ trong của MCS-51 gồm ROM và RAM. RAM bao gồm các vùng nhớ: • Các bank thanh ghi (từ 00h –1Fh). • Vùng có thể định địa chỉ hóa từng bit (20h – 2Fh). • Vùng RAM đa mục đích (địa chỉ byte từ 30h – 7Fh). • Các thanh ghi chức năng đặc biệt (từ 80h – 0FFh).
  • 8. RAM Thanh ghi chức năng đặc biệt Tổ chức bộ nhớ Tổ chức bộ nhớ dữ liệu dữ liệu Các bank thanh ghi: • Có 4 bank thanh ghi có địa chỉ từ: 00h –1Fh. • Mỗi bank có 8 thanh ghi 8 bit: R0 – R7. Tổ chức bộ nhớ dữ liệu Tổ chức bộ nhớ dữ liệu Các bank thanh ghi: Vùng RAM định địa chỉ từng bit: gồm 16 byte có địa chỉ • Việc lựa chọn bank thanh ghi được thực hiện thông từ 20h – 2Fh (16 x 8 = 128 bit). qua thanh ghi PSW (từ trạng thái chương trình). Vùng RAM đa mục đích: gồm 80 byte có địa chỉ từ • Các lệnh sử dụng bank thanh ghi sẽ có code ngắn hơn 30h – 7Fh. Vùng nhớ này, có thể truy xuất mỗi lần 8 bit và tốc độ nhanh hơn các lệnh tương đương. bằng cách dùng chế độ địa chỉ trực tiếp hay gián tiếp. Ví dụ: MOV A, R5 ; đọc nội dung tại địa chỉ 05H vào thanh ghi A. (lệnh này chiếm 1byte). MOV A, 05H ; (lệnh chiếm 2 byte).
  • 9. Các thanh ghi chức năng đặc biệt (SFR – Special Các thanh ghi chức năng đặc biệt (SFR – Special Function registers) Function registers) Thanh ghi tích lũy (A hay Acc - Accumulator ): Thanh ghi B: Là thanh ghi rất quan trọng của VĐK, có chức năng lưu trữ dữ liệu khi tính toán, hầu hết các phép toán thực • Thanh ghi B dùng cho các phép toán nhân, chia và hiện đều thông qua thanh ghi này. có thể dùng như một thanh ghi tạm, chứa các kết quả trung gian. Thanh ghi tích luỹ có thể truy xuất trực tiếp thông qua địa chỉ E0h (byte) hay truy xuất từng bit thông qua địa VD: MUL AB; Nhân hai số nguyên 8 bit, kết quả lưu vào A, B chỉ bit từ E0h đến E7h. ; A chứa kết quả byte thấp ; B chứa kết quả byte cao VD: MOV A,#1 MOV 0E0h,#1 ; có cùng kết quả • Thanh ghi B có địa chỉ byte F0h và địa chỉ bit từ Hay: SETB ACC.4 F0h – F7h. SETB 0E4h ; cũng tương tự Các thanh ghi chức năng đặc biệt (SFR) Hãy biểu diễn ngăn xếp và con trỏ ngăn xếp đối với đoạn chương trình sau đây. Giả thiết vùng ngăn xếp là Thanh ghi con trỏ Stack (SP – Stack Pointer): mặc định. MOV R6, #25H • SP là một thanh ghi 8 bit, có địa chỉ 81h. Được sử dụng MOV R1, #12H để truy cập bộ nhớ ngăn xếp. SP chứa địa chỉ của dữ liệu MOV R4, #0F3H hiện đang ở đỉnh của ngăn xếp. PUSH 6 PUSH 1 • Ngăn xếp là một vùng bộ nhớ RAM được CPU sử dụng PUSH 4 Sau PUSH 6 Sau PUSP 1 Sau PUSH 4 để lưu thông tin tạm thời. Thông tin này có thể là dữ 0B 0B 0B 0B liệu, có thể là địa chỉ. 0A 0A 0A 0A F3 • Khi VĐK được cấp nguồn thì SP có giá 07h. SP có thể 09 09 09 12 09 12 được khởi động lại. 08 08 25 08 25 08 25 Ví dụ: MOV SP, #5Fh; Vùng Stack bắt đầu có địa chỉ 60h. Bắt đầu SP = 07 SP = 08 SP = 09 SP = 0A
  • 10. Khảo sát ngăn xếp và hãy trình bày nội dung của các thanh Các thanh ghi chức năng đặc biệt (SFR) ghi và SP sau khi thực hiện đoạn chương trình sau đây: POP 3 ; Lấy ngăn xếp trở lại R3 Thanh ghi con trỏ dữ liệu (DPTR – Data Pointer): POP 5 ; Lấy ngăn xếp trở lại R5 • SP là một thanh ghi 16 bit, có địa chỉ 82h (DPL) và 83h POP 2 ; Lấy ngăn xếp trở lại R2 Sau POP3 Sau POP 5 Sau POP 2 (DPH). Được sử dụng để truy xuất bộ nhớ chương trình 0B 54 0B 0B 0B ngoài hoặc bộ nhớ dữ liệu ngoài. 0A F9 0A F9 0A 0A Ví dụ: MOV A, #55h; nạp giá trị 55H vào A. 09 76 09 76 09 76 09 MOV DPTR, #1000H; nạp địa chỉ ô nhớ vào DPTR 08 6C 08 6C 08 6C 08 6C MOV @DPTR, A; nạp giá trị 55H vào ô nhớ có địa Bắt đầu SP = 0B SP = 0A SP = 09 SP = 08 chỉ chứa trong DPTR(1000H) Các thanh ghi chức năng đặc biệt (SFR) Các thanh ghi chức năng đặc biệt (SFR) Các Thanh ghi port Các thanh ghi định thời Dùng để định các khoảng thời gian hoặc đếm các sự kiện. Các thanh ghi P0 tại địa chỉ 80h, P1 tại địa chỉ 90h, P2, tại MCS – 51 có 2 thanh ghi định thời 16 bit: địa chỉ A0h, P3 tại địa chỉ B0h là các thanh ghi chốt cho 4 port xuất / nhập (Port 0, 1, 2, 3). • Timer 0: TL0 (8Ah) và TH0 (8Ch). • Timer 1: TL1 (8Bh) và TH1 (8Dh). Tất cả các thanh ghi này đều cho phép định địa chỉ bit: P0 từ 80h – 87h, P1 từ 90h – 97h, P2 từ A0h – A7h, P3 từ Hoạt động định thời được thiết lập bởi các thanh ghi: B0h – B7h. • TMOD (Timer Mode Register): thanh ghi chế độ định thời có địa chỉ 89h. Các địa chỉ bit này có thể thay thế bằng toán tử. Ví dụ như: 2 lệnh sau là tương đương: • TCON (Timer Control register) có địa chỉ 88h, thanh ghi điều SETB P0.0 khiển định thời. SETB 80h
  • 11. Các thanh ghi chức năng đặc biệt (SFR) Các thanh ghi chức năng đặc biệt (SFR) Các thanh ghi của port nối tiếp Các thanh ghi ngắt (Interrupt Register) Dùng để truyền thông với các thiết bị nối tiếp như: Modem, Dùng để điều khiển, thiết lập các chế độ khi lập trình ngắt. VĐK,… Thanh ghi ngắt gồm có 2 thanh ghi: Thanh ghi port nối tiếp gồm có 2 thanh ghi: • IE (Interrupt Enable Register – Thanh ghi cho phép ngắt) • SBUF (Serial Data Buffer – Bộ đệm dữ liệu nối tiếp) có địa có địa chỉ A8h. chỉ 99h, dùng để lưu trữ dữ liệu đi và đọc dữ liệu truyền về. • IP (Interrupt Priority Register – Thanh ghi ưu tiên ngắt) • SCON (Serial Port Control register) có địa chỉ 98h, có chức có địa chỉ B8h, có chức năng thiết lập các ngắt ưu tiên. năng điều khiển việc truyền thông nối tiếp. Các thanh ghi chức năng đặc biệt (SFR) Các thanh ghi chức năng đặc biệt (SFR) Thanh ghi điều khiển nguồn (PCON – Power Control Từ trạng thái chương trình (PSW – Program State Word) Register) Có địa chỉ D0h, chứa các bit trạng thái có chức năng: Có địa chỉ 87h, được định địa chỉ từng bit, dùng để điều Bit Ký hiệu Địa chỉ Mô tả Bit khiển các chế độ nguồn: PSW.7 CY D7h Cờ nhớ PSW.6 AC D6h Cờ nhớ phụ • Chế độ giảm nguồn. PSW.5 F0 D5h Cờ 0 PSW.4 RS0 D4h Chọn bank thanh ghi (Bit 1) • Chế độ nghỉ PSW.3 RS1 D3h Chọn bank thanh ghi (Bit 0) PSW.2 OV D2h Cờ tràn PSW.1 - D1h Dự trữ PSW.0 P D0h Cờ kiểm tra chẵn lẻ