Tổng quan về vi điều khiển, chương 4

Chia sẻ: Minh Anh | Ngày: | Loại File: PDF | Số trang:5

0
294
lượt xem
184
download

Tổng quan về vi điều khiển, chương 4

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tham khảo tài liệu 'tổng quan về vi điều khiển, chương 4', kỹ thuật - công nghệ, điện - điện tử phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả

Chủ đề:
Lưu

Nội dung Text: Tổng quan về vi điều khiển, chương 4

  1. Chương 4: CẤU TRÚC BÊN TRONG CỦA VI ĐIỀU KHIỂN 1.4.BỘ NHỚ CHƯƠNG TRÌNH- BỘ NHỚ ROM Bộ nhớ ROM dùng để lưu chương trình do người viết chương trình viết ra. Chương trình là tập hợp các câu lệnh thể hiện các thuật toán để giải quyết các công việc cụ thể, chương trình do người thiết kế viết trên máy vi tính, sau đó được đưa vào lưu trong ROM của vi điều khiển, khi hoạt động, vi điều khiển truy xuất từng câu lệnh trong ROM để thực hiện chương trình. ROM còn dùng để chứa số liệu các bảng, các tham số hệ thống, các số liệu cố định của hệ thống. Trong quá trình hoạt động nội dung ROM là cố định, không thể thay đổi, nội dung ROM chỉ thay đổi khi ROM ở chế độ xóa hoặc nạp chương trình (do các mạch điện riêng biệt thực hiện). Bộ nhớ ROM được tích hợp trong chip Vi điều khiển với dung lượng tùy vào chủng loại cần dùng, chẳng hạn đối với 89S52 là 8KByte, với 89S53 là 12KByte. Bộ nhớ bên trong Vi điều khiển 89Sxx là bộ nhớ Flash ROM cho phép xóa bộ nhớ ROM bằng điện và nạp vào chương trình mới cũng bằng điện và có thể nạp xóa nhiều lần Bộ nhớ ROM được định địa chỉ theo từng Byte, các byte được đánh địa chỉ theo số hex-số thập lục phân, bắt đầu từ địa chỉ 0000H, khi viết chương trình cần chú ý đến địa chỉ lớn nhất trên ROM, chương trình được lưu sẽ bị mất khi địa chỉ lưu vượt qua vùng này. Ví dụ: AT89S52 có 8KByte bộ nhớ ROM nội, địa chỉ lớn nhất là 1FFFH, nếu chương trình viết ra có dung lượng lớn hơn 8KByte các byte trong các địa chỉ lớn hơn 1FFFH sẽ bị mất.
  2. Ngoài ra Vi điều khiển còn có khả năng mở rộng bộ nhớ ROM với việc giao tiếp với bộ nhớ ROM bên ngoài lên đến 64KByte(địa chỉ từ 0000H đến FFFFH). 1.5.BỘ NHỚ DỮ LIỆU- BỘ NHỚ RAM Bộ nhớ RAM dùng làm môi trường xử lý thông tin, lưu trữ các kết quả trung gian và kết quả cuối cùng của các phép toán, xử lí thông tin. Nó cũng dùng để tổ chức các vùng đệm dữ liệu, trong các thao tác thu phát, chuyển đổi dữ liệu. RAM nội trong Vi điều khiển được tổ chức như sau: Các vị trí trên RAM được định địa chỉ theo từng Byte bằng các số thập lục phân (số Hex) Các bank thanh ghi có địa chỉ 00H đến 1FH 210 vị trí được định địa chỉ bit các vị trí RAM bình thường Các thanh ghi có chức năng đặc biệt có địa chỉ từ 80H đến FFH. Các byte RAM 8 bit của vi điều khiển được gọi là "ô nhớ", nếu các ô nhớ có chức năng đặc biệt thường được gọi là "thanh ghi", nếu là bit thì được gọi là "bit nhớ".
  3. Cấu trúc bộ nhớ RAM bên trong Vi điều khiển địa địa Kí chỉ Địa chỉ bit chỉ Địa chỉ bit hiệu byte byte 7F FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B Vùng RAM bình thường E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC 30 7F 7E 7D 7C 7B 7A 79 78 D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW 2F 2E 77 76 75 74 73 72 71 70 B8 - - - BC BB BA B9 B8 IP 2D 6F 6E 6D 6C 6B 6A 69 68 2C 67 66 65 64 63 62 61 60 B0 P3 B7 B6 B5 B4 B3 B2 B1 B0 2B 5F 5E 5D 5C 5B 5A 59 58 2A 57 56 55 54 53 52 51 50 A8 IE AF ACABAA A9 A8 29 4F 4E 4D 4C 4B 4A 49 48 28 A0 P2 47 46 45 44 43 42 41 40 A7 A6 A5 A4 A3 A2 A1 A0 27 3F 3E 3D 3C 3B 3A 39 38 99 SBUF 26 37 36 35 34 33 32 31 30 98 SCON 25 97 96 95 94 93 92 91 90 2F 2E 2D 2C 2B 2A 29 28 24 90 P1 23 27 26 25 24 23 22 21 20 22 1F 1E 1D 1C 1B 1A 19 18 8D TH1 21 17 16 15 14 13 12 11 10 8C TH0 20 0F 0E 0D 0C 0B 0A 09 08 8B TL1 1F 07 06 05 04 03 02 01 00 8A TL0 18 89 TMOD Bank 3 88 TCON 87 PCON
  4. 17 8F 8E 8D 8C 8B 8A 89 88 Bank 2 83 DPH 10 82 DPL 0F Bank 1 81 SP 80 P0 08 Bank thanh ghi 0 07 Mặc định được gán từ R0- 87 86 85 84 83 82 81 80 R7 00 Bảng này chỉ hiện thị đúng khi xem bằng Interner Explorer 1.5.1. Các bank thanh ghi Các bank thanh ghi có địa chỉ byte từ 00H đến 1FH, có 8 thanh ghi trong mỗi bank, các thanh ghi được đặt tên từ R0-R7, các thanh ghi này được đặt mặc định trong bank 1. Có 4 bank thanh ghi và tại mỗi thời điểm chỉ có một bank thanh ghi được truy xuất với các thanh ghi từ R0 đến R7, để thay đổi việc truy xuất các thanh ghi trên các bank thanh ghi, người dùng phải thay đổi giá trị các bit chọn bank trong thanh ghi trạng thái PSW bằng các câu lệnh trong chương trình. Các lệnh dùng các thanh ghi từ R0 đến R7 mất khoảng không gian lưu trữ ít hơn và thời gian thực hiện nhanh hơn so với các lệnh dùng các ô nhớ RAM khác, ngoài ra các thanh ghi này còn có thêm một số chức năng đặc biệt khác, vì lí do này các dữ liệu sử dụng thường thường được người viết chương trình đưa vào lưu trong các thanh ghi này. Ngoài ra, có thể truy xuất thanh ghi trên các bank thanh ghi
  5. như với các ô nhớ bình thường khác. Ví dụ: nguời dùng có thể truy xuất đến thanh ghi R7 bằng ô nhớ 07H. 1.5.2. Vùng RAM truy xuất từng bit Trên RAM nội có 210 ô nhớ bit được định địa chỉ và có thể truy xuất đến từng bit, các bit nhớ này cũng được định địa chỉ bằng các số thập lục phân- số Hex. Trong đó có 128 bit nằm trong các ô nhớ có địa chỉ byte từ 20H đến 2FH, các bit nhớ còn lại chứa trong nhóm thanh ghi có chức năng đặc biệt. Mặc dù các bit nhớ và ô nhớ (byte) cùng được định bằng số Hex, tuy nhiên chúng sẽ được nhận dạng là địa chỉ bit hay địa chỉ byte thông qua các câu lệnh tương ứng dành cho các bit nhớ hoặc các ô nhớ này. Ví dụ: mov 05H,#10111111B ;>>> lệnh này thiết lập giá trị cho ô nhớ có địa chỉ là 05H JB 05H,nhan01 ;>>> lệnh này liên quan đến trạng thái của bit nhớ có địa chỉ 05H 1.5.3. Vùng RAM bình thường Vùng RAM này có địa chỉ byte từ 30H đến 7FH, dùng để lưu trữ dữ liệu, được truy xuất theo từng byte. 1.5.4. Các thanh ghi có chức năng đặc biệt Các thanh ghi này được định địa chỉ byte, một số được định thêm địa chỉ bit, có địa chỉ của các thanh ghi này nằm trong khoảng 80H đến FFH. Các thanh ghi đặc biệt này này được dùng để xác lập trạng thái hoạt động cần thiết cho Vi điều khiển.
Đồng bộ tài khoản