Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 34 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
34
Dung lượng
1,01 MB
Nội dung
Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Chương 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN MCS-51 Chương giới thiệu tổng quan họ vi điều khiển MCS-51(chủ yếu AT89C51): cấu trúc phần cứng, sơ đồ chân, ghi, đặc tính lập trình đặc tính điện Giới thiệu Họ vi điều khiển MCS-51 Intel sản xuất vào năm 1980 IC thiết kế cho ứng dụng hướng điều khiển Các IC hệ thống vi xử lý hoàn chỉnh bao gồm các thành phần hệ vi xử lý: CPU, nhớ, mạch giao tiếp, điều khiển ngắt MCS-51 họ vi điều khiển sử dụng chế CISC (Complex Instruction Set Computer), có độ dài thời gian thực thi lệnh khác Tập lệnh cung cấp cho MCS-51 có lệnh dùng cho điều khiển xuất / nhập tác động đến bit MCS-51 bao gồm nhiều vi điều khiển khác nhau, vi điều khiển 8051 có 4KB ROM, 128 byte RAM 8031, khơng có ROM nội, phải sử dụng nhớ Sau này, nhà sản xuất khác Siemens, Fujitsu, … cấp phép làm nhà cung cấp thứ hai MCS-51 bao gồm nhiều phiên khác nhau, phiên sau tăng thêm số ghi điều khiển hoạt động MCS-51 Vi điều khiển AT89C51 AT89C51 vi điều khiển Atmel sản xuất, chế tạo theo cơng nghệ CMOS có đặc tính sau: - KB PEROM (Flash Programmable and Erasable Read Only Memory), có khả tới 1000 chu kỳ ghi xoá Tần số hoạt động từ: 0Hz đến 24 MHz mức khóa nhớ lập trình 128 Byte RAM nội Port xuất /nhập I/O bit Timer/counter 16 Bit nguồn ngắt Giao tiếp nối tiếp điều khiển phần cứng 64 KB vùng nhớ mã 64 KB vùng nhớ liệu ngồi Cho phép xử lý bit 210 vị trí nhớ định vị bit chu kỳ máy (4 µs thạch anh 12MHz) cho hoạt động nhân chia Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển - Tổng quan vi điều khiển MCS-51 Có chế độ nghỉ (Low-power Idle) chế độ nguồn giảm (Power-down) Ngoải ra, số IC khác họ MCS-51 có thêm định thời thứ 256 byte RAM nội 2.1 Sơ đồ VCC P0.0 – P0.7 P2.0 – P2.7 PORT 0 DRIVERS PORT 2 DRIVERS PORT O LATCH PORT 2 LATCH RAM ADDR REGISTER VSS RAM ROM PROGRAM ADDR REGISTER STACK POINTER ACC PCON SCON TMOD T2CON* TH0 TMP2 TMP1 B REGISTER TL1 TH2* RCAP2L* SBUF ALU TL0 TH1 TL2* RCAP2H* IE IP IINTERRUPT SERIAL PORT AND TIMER BLOCKS EA TIMING AND CONTROL RST INSTRUCTION REGISTER PSW PSEN ALE BUFFER TCON PC INCREAMENTER PROGRAM COUNTER DPTR PORT 1 LATCH PORT 3 LATCH PORT 1 DRIVER PORT 3 DRIVER OSC XTAL 1 XTAL 2 P1.0 – P1.7 P3.0 – P3.7 Note: * for Timer only Hình 1.1 – Sơ đồ khối AT89C51 Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 AT89C51 gồm có 40 chân, mơ tả sau: 19 18 P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2 EA/VPP RST P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD ALE/PROG PSEN 21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17 30 29 20 31 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 GND 39 38 37 36 35 34 33 32 VCC 40 AT89C51 Hình 1.2 – Sơ đồ chân AT89C51 Port 0: Port port có chức chân 32 – 39 AT89C51: - Chức IO (xuất / nhập): dùng cho thiết kế nhỏ Tuy nhiên, dùng chức Port phải dùng thêm điện trở kéo lên (pull-up), giá trị điện trở phụ thuộc vào thành phần kết nối với Port Khi dùng làm ngõ ra, Port kéo ngõ TTL Khi dùng làm ngõ vào, Port phải set mức logic trước - Chức địa / liệu đa hợp: dùng thiết kế lớn, đòi hỏi phải sử dụng nhớ ngồi Port vừa bus liệu (8 bit) vừa bus địa (8 bit thấp) Ngồi lập trình cho AT89C51, Port dùng để nhận mã lập trình xuất mà kiểm tra (quá trình kiểm tra đòi hỏi phải có điện trở kéo lên) Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Port 1: Port1 (chân – 8) có chức IO, khơng dùng cho mục đích khác (chỉ 8032/8052/8952 dùng thêm P1.0 P1.1 cho định thời thứ 3) Tại Port có điện trở kéo lên nên khơng cần thêm điện trở ngồi Port có khả kéo ngõ TTL dùng làm bit địa thấp trình lập trình hay kiểm tra Khi dùng làm ngõ vào, Port phải set mức logic trước Port 2: Port (chân 21 – 28) port có chức năng: - Chức IO (xuất / nhập): có khả kéo ngõ TTL - Chức địa chỉ: dùng làm bit địa cao cần nhớ ngồi có địa 16 bit Khi đó, Port khơng dùng cho mục đích IO Khi dùng làm ngõ vào, Port phải set mức logic trước Khi lập trình, Port dùng làm bit địa cao hay số tín hiệu điều khiển Port 3: Port (chân 10 – 17) port có chức năng: - Chức IO: có khả kéo ngõ TTL Khi dùng làm ngõ vào, Port phải set mức logic trước - Chức khác: mơ tả bảng 1.1 Bảng 1.1: Chức chân Port Bit Tên P3.0 RxD P3.1 TxD Chức Ngõ vào port nối tiếp Ngõ port nối tiếp P3.2 INT0 Ngắt P3.3 INT1 Ngắt P3.4 T0 P3.5 T1 Ngõ vào định thời Ngõ vào định thời P3.6 WR Tín hiệu điều khiển ghi liệu lên nhớ P3.7 RD Tín hiệu điều khiển đọc từ nhớ liệu Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Nguồn: Chân 40: VCC = 5V ± 20% Chân 20: GND PSEN (Program Store Enable): PSEN (chân 29) cho phép đọc nhớ chương trình mở rộng ứng dụng sử dụng ROM ngoài, thường nối đến chân OC (Output Control) ROM để đọc byte mã lệnh PSEN mức logic thời gian AT89C51 lấy lệnh.Trong trình này, PSEN tích cực lần chu kỳ máy Mã lệnh chương trình đọc từ ROM thông qua bus liệu (Port0) bus địa (Port0 + Port2) Khi 8951 thi hành chương trình ROM nội, PSEN mức logic ALE/ PROG (Address Latch Enable / Program): ALE/ PROG (chân 30) cho phép tách đường địa liệu Port truy xuất nhớ ALE thường nối với chân Clock IC chốt (74373, 74573) Các xung tín hiệu ALE có tốc độ 1/6 lần tần số dao động chip dùng làm tín hiệu clock cho phần khác hệ thống Xung cấm cách set bit SFR địa 8Eh lên Khi đó, ALE có tác dụng dùng lệnh MOVX hay MOVC Ngoài ra, chân dùng làm ngõ vào xung lập trình cho ROM nội ( PROG ) EA /VPP (External Access) : EA (chân 31) dùng phép thực thi chương trình từ ROM ngồi Khi nối chân 31 với Vcc, AT89C51 thực thi chương trình từ ROM nội (tối đa 8KB), ngược lại thực thi từ ROM (tối đa 64KB) Ngoài ra, chân EA lấy làm chân cấp nguồn 12V lập trình cho ROM RST (Reset): RST (chân 9) cho phép reset AT89C51 ngõ vào tín hiệu đưa lên mức chu kỳ máy X1,X2: Ngõ vào ngõ dao động, sử dụng cần kết nối thêm thạch anh tụ hình vẽ sơ đồ Tần số thạch anh thường sử dụng cho AT89C51 12Mhz Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Giá trị C1, C2 = 30 pF ± 10 pF Hình 1.3 – Sơ đồ kết nối thạch anh 2.2 Định chu kỳ máy Một chu kỳ máy bao gồm trạng thái (12 xung clock) Một trạng thái bao gồm phần ứng với 12 xung clock : Phase Phase Như vậy, chu kỳ máy bao gồm 12 xung clock biểu diễn từ S1P1 đến S6P2 (State 1, Phase Ỉ State 6, Phase 2) Chu kỳ lấy lệnh thực thi lệnh mô tả hình 1.4 Tín hiệu chốt địa ALE tích cực lần chu kỳ máy (trong khoảng thời gian S1P2 đến S2P1 từ S4P2 đến S5P1) Từ tần số xung chân ALE 1/6 tần số thạch anh ¾ Đối với lệnh thực thi chu kỳ: - Lệnh byte: thực thi thời điểm S1P2 sau mã lệnh chốt vào ghi lệnh S1P1 - Lệnh byte: byte thứ đọc thời điểm S4 thực thi thời điểm S4 ¾ Đối với lệnh thực thi chu kỳ: Quá trình lấy lệnh thực thời điểm S1 chu kỳ (byte mà lệnh 1) Nếu lệnh có nhiều byte lấy thời điểm giống lệnh thực thi chu kỳ Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Hình 1.4 – Chu kỳ lệnh Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển 2.3 Tổng quan vi điều khiển MCS-51 Tổ chức nhớ Bộ nhớ Bộ nhớ ngồi ROM 4KB Bộ nhớ chương trình 64 KB 0000h – 0FFFh 0000h – FFFFh RAM 128 byte Điều khiển PSEN 00h – 7Fh Bộ nhớ liệu 64 KB SFR 0000h – FFFFh 80h – 0FFh Điều khiển RD WR Hình 1.5 - Các vùng nhớ AT89C51 Bộ nhớ họ MCS-51 chia thành phần: nhớ nhớ Bộ nhớ bao gồm KB ROM 128 byte RAM (256 byte 8052) Các byte RAM có địa từ 00h – 7Fh ghi chức đặc biệt (SFR) có địa từ 80h – 0FFh truy xuất trực tiếp Đối với 8052, 128 byte RAM cao (địa từ 80h – 0FFh) truy xuất trực tiếp mà truy xuất gián tiếp (xem thêm phần tập lệnh) Bộ nhớ bao gồm nhớ chương trình (điều khiển đọc tín hiệu PSEN ) nhớ liệu (điều khiển tín hiệu RD hay WR phép đọc hay ghi liệu) Do số đường địa MCS-51 16 bit (Port chứa bit thấp Port chứa bit cao) nên nhớ ngồi giải mã tối đa 64KB 2.3.1 Tổ chức nhớ Bộ nhớ MCS-51 gồm ROM RAM RAM bao gồm nhiều vùng có mục đích khác nhau: vùng RAM đa dụng (địa byte từ 30h – 7Fh có thêm vùng 80h – 0FFh ứng với 8052), vùng địa hóa bit (địa byte từ 20h – 2Fh, gồm 128 bit định địa bit từ 00h – 7Fh), bank ghi (từ 00h – 1Fh) ghi chức đặc biệt (từ 80h – 0FFh) Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Các ghi chức đặc biệt (SFR – Special Function Registers): Bảng 1.2 – Các ghi chức đặc biệt Địa byte Có thể định địa bit Không định địa bit F8h F0h B E8h E0h ACC D8h D0h PSW C8h (T2CON) (RCAP2L) (RCAP2H) (TL2) (TH2) C0h B8h IP B0h P3 A8h IE A0h P2 98h SCON 90h P1 88h 80h SADEN SADDR SBUF BRL BDRCON TCON TMOD TL0 TH0 P0 SP DPL DPH TL1 TH1 AUXR CKCON PCON Các ghi định địa bit có địa bit bắt đầu địa byte trùng Ví dụ như: ghi P0 có địa byte 80h có địa bit 80h (ứng với P0.0) đến 87h (ứng với P0.7) Chức ghi mô tả phần sau Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 RAM nội: chia thành vùng phân biệt: vùng RAM đa dụng (30h – 7Fh), vùng RAM định địa bit (20h – 2Fh) bank ghi (00h – 1Fh) Địa byte Địa bit Chức 7F Vùng RAM đa dụng 30 2F 2E 2D 2C 2B 2A 29 28 27 26 25 24 23 22 21 20 1F 18 17 10 1F 08 07 00 7F 77 6F 67 5F 57 4F 47 3F 37 2F 27 1F 17 0F 07 7E 76 6E 66 5E 56 4E 46 3E 36 2E 26 1E 16 0E 06 7D 75 6D 65 5D 55 4D 45 3D 35 2D 25 1D 15 0D 05 7C 74 6C 64 5C 54 4C 44 3C 34 2C 24 1C 14 0C 04 7B 73 6B 63 5B 53 4B 43 3B 33 2B 23 1B 13 0B 03 7A 72 6A 62 5A 52 4A 42 3A 32 2A 22 1A 12 0A 02 79 71 69 61 59 51 49 41 39 31 29 21 19 11 09 01 78 70 68 60 58 50 48 40 38 30 28 20 18 10 08 00 Vùng định địa bit Bank Bank Các bank ghi Bank Bank ghi ( mặc định cho R0-R7) Hình 1.6 – Sơ đồ phân bố RAM nội ¾ RAM đa dụng: RAM đa dụng có 80 byte từ địa 30h – 7Fh truy xuất lần bit cách dùng chế độ địa trực tiếp hay gián tiếp Các vùng địa thấp từ 00h – 2Fh sử dụng cho mục đich chức đề cập phần sau ¾ RAM định địa bit: Vùng địa từ 20h – 2Fh gồm 16 byte (= 128 bit) thực giống vùng RAM đa dụng (mỗi lần bit) hay thực truy xuất lần bit lệnh Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 10 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Thanh ghi điều khiển nguồn PCON Thanh ghi PCON địa 87h không cho phép định địa bit bao gồm bit sau: Bit Chức Bảng 1.5 – Chức bit ghi PCON SMOD1 SMOD0 - POF GF1 GF0 PD IDL SMOD1 (Serial Mode 1): = cho phép tăng gấp đôi tốc độ port nối tiếp chế độ 1, SMOD0 (Serial Mode 0): cho phép chọn bit SM0 hay FE ghi SCON ( = chọn bit FE) POF (Power-off Flag): dùng để nhận dạng loại reset POF = mở nguồn Do đó, để xác định loại reset, cần phải xố bit POF trước GF1, GF0 (General purpose Flag): bit cờ dành cho người sử dụng PD (Power Down): xoá phần cứng hoạt động reset xảy Khi bit PD = vi điều khiển chuyển sang chế độ nguồn giảm Trong chế độ này: - Chỉ khỏi chế độ nguồn giảm cách reset - Nội dung RAM mức logic port trì - Mạch dao động bên chức khác ngừng hoạt động - Chân ALE PSEN mức thấp - Yêu cầu Vcc phải có điện áp 2V phục hồi Vcc = 5V 10 chu kỳ trước chân RESET xuống mức thấp lần IDL (Idle): xoá phần cứng hoạt động reset hay có ngắt xảy Khi bit IDL = vi điều khiển chuyển sang chế độ nghỉ Trong chế độ này: - Chỉ khỏi chế độ nguồn giảm cách reset hay có ngắt xảy - Trạng thái hành vi điều khiển trì nội dung ghi không đổi - Mạch dao động bên khơng gởi tín hiệu đến CPU - Chân ALE PSEN mức cao Lưu ý bit điều khiển PD IDL có tác dụng tất IC họ MSC-51 thực phiên CMOS Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 20 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển 2.5 Tổng quan vi điều khiển MCS-51 Cấu trúc port a Cấu trúc Port c Cấu trúc Port b Cấu trúc Port d Cấu trúc Port Hình 1.11 – Cấu trúc Port AT89C51 Cấu trúc Port mô tả hình vẽ, port có chốt (SFR từ P0 đến P3), đệm vào lái ngõ Port 0: - Khi dùng chế độ IO: FET kéo lên tắt (do khơng có tín hiệu ADDR CONTROL) nên ngõ Port hở mạch Như vậy, thiết kế Port làm việc chế độ IO, cần phải có điện trở kéo lên Trong chế độ này, chân Port dùng làm ngõ kéo tối đa ngõ TTL (xem thêm phần sink / source 2.7) Khi ghi mức logic Port 0, ngõ Q chốt (latch) mức nên FET tắt, ngõ Port nối lên Vcc thơng qua FET kéo xuống mức kết nối với tín hiệu ngồi Khi ghi mức logic Port 0, ngõ Q chốt mức nên FET dẫn, ngõ Port nối với GND nên mức ngõ vào Do đó, để đọc liệu Port cần phải set bit tương ứng Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 21 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển - Tổng quan vi điều khiển MCS-51 Khi dùng chế độ địa / liệu: FET đóng vai trò điện trở kéo lên nên không cần thiết kế thêm điện trở ngồi Port 1, 2, 3: Khơng dùng FET mà dùng điện trở kéo lên nên thiết kế khơng cần thiết phải thêm điện trở ngồi Khi dùng chế độ IO, cách thức hoạt động giống Port (nghĩa trước đọc liệu cần phải set bit tương ứng) Port 1, 2, có khả sink / source dòng cho ngõ TTL 2.6 Hoạt động Reset Để thực reset, cần phải tác động mức cao chân RST (chân 9) AT89C51 chu kỳ máy Sơ đồ mạch reset mơ tả sau: VCC R28 100 C20 0.1uF RST RESET R27 8.2K Hình 1.12 – Sơ đồ mạch reset AT89C51 Sau reset, nội dung RAM nội không thay đổi ghi thay đổi giá trị mặc định sau: Bảng 1.6 - Giá trị mặc định ghi reset Thanh ghi Nội dung Đếm chương trình PC 0000h A, B, PSW, SCON, SBUF 00h SP 07h DPTR 0000h Port đến port FFh IP XXX0 0000b IE 0X0X 0000b Các ghi định thời 00h PCON (HMOS) 0XXX XXXXb PCON (CMOS) 0XXX 0000b Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 22 https://fb.com/tailieudientucntt Giáo trình h Vi điều khiiển 2.7 Tổng quan vi điều khiển MCS 51 Các vấn n đề khác 2.7.1 Dòngg sink soource D Dòng điện siink sourrce pphần quan trrọng thiiết kế mạch m điện tử Sự khác chúng c mô tả hình 1.13 n dòng d sink vvà source Hình 1.13 – Khác T Trong AT899C51, Port có dòngg sink m chân tư ương đươnng với nggõ TTL cònn Port khác k có dònng sink /sourrce tương đương đ với ngõ TTL 2.7.2 Lập trình t cho AT89C51 A 2.7.2 Các chế độ khốá nhớ ch hương trình Bảng 1.7 – Các B C chế độ khố chươnng trình Chế Lập trình h bit Mơ tả khoố độ LB1 LB22 LB3 U U U Khơng khoố P U U Không cho phép lệnh MOVC nhớ chư ương trình ngồi, chânn EA lấy mẫu vàà chốt reeset, khơngg cho phép lậập trình P P P P U P Giống chế độ khôông cho phéép kiểm tra Giống chế độ khơơng cho phéép thực thi ngồi n Trong AT899C51, có bit khố (LB – lockk bit) có thhể lậpp trình (P – T program mmed) hay không k (U – unprogram mmed) cho phép chọnn chế độ đ khoá kháác (bảảng 1.7) CuuDuongThanCong.com https://fb.com/tailieudientucntt Giáo trình Vi điều khiển 2.7.2.2 Tổng quan vi điều khiển MCS-51 Lập trình Khi AT89C51 trạng thái xố, tất nhớ thường 0FFh lập trình Điện áp lập trình 5V hay 12V tuỳ theo loại IC Điện áp lập trình xác định ký hiệu chip hay byte nhận dạng xoá chip (xem bảng 1.8) Bảng 1.8 – Nhận dạng điện áp lập trình Vpp = 12V Ký hiệu AT89C51 xxxx yyww Byte nhận dạng (30h) = 1Eh (31h) = 51h (32h) = 0FFh Vpp = 5V AT89C51 xxxx-5 yyww (30h) = 1Eh (31h) = 51h (32h) = 05h Lưu ý AT89C51 lập trình theo byte nên phải thực xố tất chip trước lập trình - Q trình lập trình cho AT89C51 thực theo bước sau: Bước 1: Đặt giá trị địa lên đường địa Bước 2: Đặt liệu lên đường liệu Bước 3: Đặt tín hiệu điều khiển tương ứng (xem bảng 1.9) Bước 4: Đặt chân EA /VPP lên điện áp 12V (nếu sử dụng điện áp lập trình 12V) Bước 5: Tạo xung chân ALE/ PROG (xem bảng 1.9) Thường chu kỳ ghi byte khơng vượt q 1.5 ms Sau thay đổi địa lặp lại bước kết thúc liệu cần lập trình Bảng 1.9 – Các tín hiệu điều khiển lập trình Vpp P2.6 P2.7 P3.6 P3.7 Chế độ RST PSEN PROG Ghi mã H L H/12V L H H H Đọc mã H L H H L L H H Ghi lock bit LB1 H L H/12V H H H H LB2 H L H/12V H H L L LB3 H L H/12V H L H L Xoá chip H L H/12V H L L L Đọc byte nhận dạng H L H H L L L L Lưu ý xung PROG đòi hỏi thời gian khơng vượt q 1.5 ms, có chế độ xố chip cần xung 10ms Sơ đồ mạch lập trình kiểm tra cho AT89C51 mơ tả hình 1.14 1.15 Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 24 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Address 0000h – 0FFFh Xem bảng 1.9 Hình 1.14 – Sơ đồ mạch lập trình cho AT89C51 Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 25 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Address 0000h – 0FFFh Xem bảng 1.9 Hình 1.15 – Sơ đồ mạch kiểm tra cho AT89C51 Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 26 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Các dạng tín hiệu dùng để lập trình cho AT89C51 mơ tả hình 1.16 1.17 Hình 1.16 – Dạng sóng lập trình điện áp 12V Hình 1.17 - Dạng sóng lập trình điện áp 5V Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 27 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Khi lập trình, thơng số thời gian điện áp mô tả bảng 1.10 Bảng 1.10 – Các đặc tính lập trình kiểm tra T = – 700C, VCC = 5V ± 10% Ký Mơ tả hiệu VPP (1) Điện áp lập trình IPP (1) Dòng điện lập trình 1/tCLCL Tần số thạch anh Khoảng thời gian từ lúc địa ổn định tAVGL tạo xung PROG (xuống mức thấp) Khoảng thời gian giữ lại địa sau chân tGHAX PROG lên mức cao Khoảng thời gian từ lúc liệu ổn định tDVGL tạo xung PROG (xuống mức thấp) Khoảng thời gian giữ lại liệu sau chân tGHDX PROG lên mức cao Khoảng thời gian từ lúc P2.7 (ENABLE) lên mức tEHSH cao đến Vpp chuyển đến giá trị điện áp lập trình (5V/12V) Khoảng thời gian từ lúc Vpp chuyển lên giá trị tSHGL điện áp lập trình đến chân PROG xuống mức thấp tGHSL Khoảng thời gian từ lúc chân PROG lên mức cao (1) đến Vpp chuyển xuống giá trị điện áp thấp tGLGH Độ rộng xung lập trình tAVQV Khoảng thời gian từ lúc đưa địa lúc (2) đọc liệu tELQV Khoảng thời gian từ lúc chân P2.7 (ENABLE) (2) xuống mức thấp đến đọc liệu tEHQZ Khoảng thời gian từ lúc chân P2.7 (ENABLE) lên (2) mức cao đến thả đường liệu Khoảng thời gian từ lúc chân PROG lên mức cao tGHBL đến chân P3.4 (BUSY) xuống mức thấp Chu kỳ ghi byte tWC Min Max 11.5 12.5 1.0 24 48tCLCL Đơn vị V mA MHz 48tCLCL 48tCLCL 48tCLCL 48tCLCL 10 μs 10 μs 110 48tCLCL μs 48tCLCL 48tCLCL 1.0 μs 2.0 ms (1) Chỉ dùng cho điện áp lập trình 12V (2) Dùng cho chế độ kiểm tra (Tham khảo thêm mạch lập trình cho AT89C51 Phụ lục 3) Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 28 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 2.7.3 Các đặc tính AT89C51 2.7.3.1 Đặc tính DC Bảng 1.11 – Đặc tính DC AT89C51 T = - 40 – 850C; VCC = 5V ± 20% Ký Mô tả Điều kiện hiệu VIL Điện áp ngõ vào mức thấp Trừ EA VIL1 Điện áp ngõ vào mức thấp EA Trừ XTAL1, VIH Điện áp ngõ vào mức cao RST VIH1 Điện áp ngõ vào mức cao XTAL1, RST Điện áp ngõ mức thấp VOL IOL = 1.6 mA (1) (Port 1,2,3) Điện áp ngõ mức thấp VOL1 IOL = 3.2 mA (1) (Port 0,ALE, PSEN ) Min Max -0.5 -0.5 0.2 VCC - 0.1 0.2 VCC - 0.3 Đơn vị V V 0.2 VCC + 0.9 VCC + 0.5 V 0.7 VCC VCC + 0.5 V 0.45 V 0.45 V VOH Điện áp ngõ mức cao (Ports 1,2,3, ALE, PSEN ) IOH = -60 μA VCC = 5V ± 10% 2.4 V VOH1 IOH = -800 μA VCC = 5V ± 10% 0.75 VCC 0.9 VCC V V Điện áp ngõ mức cao (Port chế độ địa liệu đa hợp) IOH = -25 μA IOH = -10 μA 2.4 V 0.75 VCC 0.9 VCC V V IIL ITL ILI Dòng ngõ vào mức (Port 1,2,3) Dòng điện xảy chuyển mức logic từ xuống (P1, 2, 3) Dòng điện ngõ vào RRST Điện trở kéo xuống ngõ Reset CIO Điện dung chân ICC Dòng tối thiểu nguồn cung cấp Chế độ nguồn giảm (2) IOH = -300 μA IOH = -80 μA VIN = 0.45V -50 μA VIN = 2V, VCC = 5V ± 10% -650 μA 0.45 < VIN < VCC ±10 μA 300 KΩ 10 pF 20 mA mA 100 40 μA μA 50 Tần số = MHz TA = 25°C Chế độ thường 12 MHz Chế độ nghỉ 12 MHz VCC = 6V VCC = 3V (1) Ở chế độ thường, IOL xác định sau: - IOLmax chân 10 mA Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 29 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 - IOLmax port bit: 26 mA cho Port 15 mA cho Port 1,2,3 - IOLmax tất ngõ vào: 71 mA Nếu IOL không thoả mãn điều kiện trên, điện áp VOL lớn giá trị bảng 1.11 (2) Điện áp Vcc tối thiểu chế độ nguồn giảm 2V 2.7.3.2 Đặc tính AC Bảng 1.12 – Đặc tính AC AT89C51 Thạch anh 12 Ký MHz Mô tả hiệu Min Max 1/tCLCL Tần số thạch anh tLHLL Độ rộng xung ALE 127 Khoảng thời gian từ lúc địa ổn định tAVLL 43 đến ALE xuống mức thấp Khoảng thời gian giữ tLLAX lại địa sau 48 ALE xuống mức thấp Khoảng thời gian từ lúc ALE xuống mức tLLIV 233 thấp đến mã lệnh vào hợp lệ Khoảng thời gian từ lúc ALE xuống mức 43 tLLPL thấp đến PSEN xuống mức thấp 205 tPLPH Độ rộng xung PSEN Khoảng thời gian từ lúc PSEN xuống tPLIV 145 mức thấp đến mã lệnh vào hợp lệ Khoảng thời gian giữ lại mã lệnh sau tín tPXIX hiệu PSEN Khoảng thời gian từ tAVIV lúc đặt địa đến 312 mã lệnh vào hợp lệ Khoảng thời gian thả ngõ vào mã lệnh tPXIZ sau tín hiệu PSEN Thạch anh 16 - 24 MHz Min Max 24 2tCLCL-40 MHz ns tCLCL-13 ns tCLCL-20 ns 4tCLCL-65 ns tCLCL-13 ns 3tCLCL-20 ns 3tCLCL-45 ns ns 5tCLCL-55 ns tCLCL-10 ns Phạm Hùng Kim Khánh CuuDuongThanCong.com Đơn vị Trang 30 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển tPXAV tPLAZ tRLRH tWLWH tRLDV tRHDX tRHDZ tLLDV tAVDV tLLWL tAVWL tQVWX tQVWH tWHQX Khoảng thời gian từ tín hiệu PSEN đến địa hợp lệ Khoảng thời gian từ lúc PSEN xuống mức thấp đến thả địa Độ rộng xung RD Độ rộng xung WR Khoảng thời gian từ lúc RD xuống mức thấp đến liệu vào hợp lệ Khoảng thời gian giữ lại liệu sau tín hiệu RD Khoảng thời gian thả liệu sau tín hiệu RD Khoảng thời gian từ lúc ALE xuống mức thấp đến liệu hợp lệ Khoảng thời gian từ lúc đặt địa đến liệu hợp lệ Khoảng thời gian từ lúc ALE xuống mức thấp đến RD hay WR xuống mức thấp Khoảng thời gian từ lúc đặt địa đến RD hay WR xuống mức thấp Khoảng thời gian từ lúc liệu hợp lệ đến WR chuyển mức logic Khoảng thời gian từ lúc liệu hợp lệ đến WR lên mức cao Khoảng thời gian giữ Tổng quan vi điều khiển MCS-51 tCLCL-8 75 10 400 400 10 6tCLCL-100 5tCLCL-90 ns 97 2tCLCL-28 ns 517 8tCLCL-150 ns 585 9tCLCL-165 ns 3tCLCL+50 ns 0 300 3tCLCL-50 203 4tCLCL-75 ns 23 tCLCL-20 ns 433 7tCLCL-120 ns 33 tCLCL-20 ns Phạm Hùng Kim Khánh CuuDuongThanCong.com ns ns ns 6tCLCL-100 252 200 ns Trang 31 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển tRLAZ tWHLH Tổng quan vi điều khiển MCS-51 lại liệu sau tín hiệu WR Khoảng thời gian từ lúc RD xuống mức thấp đến thả địa Khoảng thời gian từ lúc RD hay WR lên mức cao đến ALE lên mức cao 43 123 tCLCL-20 ns tCLCL+25 ns ns ns ns ns ns ns Các đặc tính AC mơ tả hình vẽ sau: Hình 1.18 – Chu kỳ đọc nhớ chương trình ngồi Hình 1.19 – Chu kỳ đọc nhớ liệu Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 32 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Hình 1.20 – Chu kỳ ghi liệu nhớ Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 33 https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 BÀI TẬP CHƯƠNG 1 Giải thích thường phải có điện trở kéo lên (pull-up) Port 0? Trường hợp không cần sử dụng điện trở này? Thiết kế mạch giải mã địa dùng 74LS138 cho RAM KB, RAM 4KB ROM 16 KB Cho đồ nhớ sau: Bộ nhớ Địa RAM1 1000h – 1FFFh RAM2 3800h – 3FFFh ROM 8000h – 9FFFh Lập đồ nhớ đầy đủ thiết kế mạch giải mã địa theo đồ Cho mạch hình vẽ Xác định địa chân CS Cho biết chân dùng để đọc, chân dùng để ghi DATA BUS U14 21 22 23 24 25 26 27 28 WR RD ALE 10 11 12 13 14 15 16 17 30 29 P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 P3.0/RXD P3.1/TXD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD ALE/PROG PSEN P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7 XTAL1 XTAL2 EA/VPP RST AT89C51 RD WR U16 39 38 37 36 35 34 33 32 D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7 19 18 31 ALE 13 14 17 18 D0 D1 D2 D3 D4 D5 D6 D7 11 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 12 15 16 19 A0 A1 A2 A3 A4 A5 A6 A7 LE OE CS1 CS3 U15 74LS373 A5 A6 A7 VCC A B C G1 G2A G2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 10 15 14 13 12 11 10 CS2 12 13 11 CS4 CS5 CS6 CS7 CS8 74LS138 Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang 34 https://fb.com/tailieudientucntt ... Tổng quan vi điều khiển MCS-51 EA/VPP RST U10 Giáo trình vi điều khiển Phạm Hùng Kim Khánh ADDRESS BUS Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Bộ nhớ chương trình ngồi: Q trình. .. https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều khiển MCS-51 Hình 1.4 – Chu kỳ lệnh Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển 2.3... điều khiển ghi liệu lên nhớ P3.7 RD Tín hiệu điều khiển đọc từ nhớ liệu Phạm Hùng Kim Khánh CuuDuongThanCong.com Trang https://fb.com/tailieudientucntt Giáo trình Vi điều khiển Tổng quan vi điều