ĐỒ ÁN GIỚI THIỆU HỆ THỐNG ĐIỀU KHIỂN NHIỆT ĐỘ LÀ ĐỒ ÁN ĐƯỢC CHỈNH SỮA KỸ LƯỢNG CỦA CÁC TIẾN SĨ TRONG NGÀNH ĐIỆN VÀ HỆ THỐNG ĐIỀU KHIỂN NHIỆT ĐỘ. QUA QUÁ TRÌNH THỨC HÀNH CỦA SINH VIÊN TẠO RA NHIỀU HƯỚNG TÍCH CỨC CHO ĐỒ ÁN NÀY
Trang 1PHẦN 1:
GIỚI THIỆU LÝ THUYẾT
Chương I:
I.Khái niệm về hệ thống điều khiển nhiệt độ:
Nhiệt độ là đại lượng vật lý hiện diện khắp mọi nơi và trong nhiềulĩnh vực, đặc biệt là trong công nghiệp vì mỗi sản phẩm , thiết bị hayđiều kiện làm việc cần những nhiệt độ khác nhau Muốn có được nhiệtđộ phù hợp cần phải có một hệ thống điều khiển.Tùy theo tính chất ,yêucầu của quá trình mà nó đòi hỏi các phương pháp điều khiển thích hợp
Hệ thống điều khiển nhiệt độ có thể phân làm hai loại :Hệ thốngđiều khiển hồi tiếp (feedback control system) và hệ thống điều khiểntuần tự (sequence control system)
khiển , so sánh nó với yêu cầu thực thi và tự động điều chỉnh đúng
động điều khiển trước khi xác định tuần tự
II Các nguyên tắc điều khiển :
1.Nguyên tắc thông tin phản hồi:
Trong các quá trình điều khiển ,tồn tại hai dòng thông tin một từ
cơ quan chủ quản đến đối tượng và một từ đối tượng đi ngược về cơquan điều khiển , được gọi là liên kết ngược hay hồi tiếp
a) Quá trình điều khiển theo
nguyên tắc bù nhiễu:
Tác động vào đối tượng
là luật điều khiển u theo
nguyên tác bùnhiễu để đạt đầu
ra c mong muốn,nhưng không
quan sát tín hiệu ra c
Về nguyên tắc ,đối với
hệ phức tạp thì điều khiển theo
mạch hở không cho kết quả tốt
b) Điều khiển theo sai lệch:
n
Điều khiển
Đối tượng
r
Điều khiển
Trang 2khiển có chất lượng thì sự đa dạng của cơ quan điều khiển phải tươngxứng với sự đa dạng của đối tượng Tính đa dạng của cơ quan điều khiểncó thể dùng để chế ngự đối tượng thể hiện ở :khả năng thu thập thôngtin , lưu trữ ,phân tích xử lý ,chọn quyết định ,tổ chức thực hiện.
3.Nguyên tắc bổ sung ngoài:
Một hệ thống luôn tồn tại và hoạt động trong môi trường cụ thể vàcó tác động qua lại chặt chẽ với môi trường đó Trong điều kiện thừanhận nguyên tắc bổ sung ngoài sau:thừa nhận có một đối tượng chưabiết (hộp đen)tác động vào hệ thống và ta phải điều khiển cả hệ thốnglẫn hộp đen
4.Nguyên tắc dự trư:õ
Vì nguyên tắc 3 luôn coi thông tin chưa đầy đủ phải đề phòng cácbất trắc có thể xảy ra và không được dùng toàn bộ lực lượng trong điềukiện bình thường Vốn dự trữ là không sử dụng ,nhưng cần để bảo đảmcho hệ thống vận hành an toàn
5.Nguyên tắc phân cấp:
Đối với một hệ thống phức tạp cần xây dựng nhiều lớp điều khiểnbổ sung cho trung tâm ,để khuếch đại khả năng điều khiển Phải tránhkhuynh hướng hình thức và phân cấp quá đáng ,xử lý cho đúng nhiện vụvà quyền hạn ở mỗi cấp
6.Nguyên tắc cân bằng nội:
Trang 3Mỗi hệ thống cần được xây dựng với cơ chế cân bằng nội để cókhả năng tự giải quyết những biến động xảy ra.
III.Các loại điều khiển:
Sự phân loại điều khiển có tính chất quy ước
1.Điều khiển ổn định hóa:
Mục tiêu điều khiển là kết quả đầu ra bằng đầu vào chuẩn r(t) =const với sai lệch cho phép exl (sai số ở chế độ xác lập)
2.Điều khiển theo chương trình:
Nếu r(t) là một hàm định trước theo thời gian ,yêu cầu đáp ứng racủa hệ thống sao chép lại các giá trị của tín hiệu vào r(t) thì ta có hệthống điều khiển theo chương trình
Ví dụ: hệ thống điều khiển máy công cụ CNC ,điều khiển tự độngnhà máy xi măng Hoàng Thạch ,hệ thống thu thập và truyền số liệu hệthống điện, quản lý vật tư ở nhà máy …
3.Điều khiển theo dõi:
Nếu tín hiệu tác động vào hệ thống r(t) là một hàm không bếttrước theo thời gian ,yêu cầu điều khiển đáp ứng ra c(t) luôn bám sátđược r(t) ,ta có hệ thống theo dõi.Điều khiển theo dõi được sử dụng rộngrãi trong các hệ thống điều khiển vũ khí ,hệ thống lái tàu ,máy bay…
4.Điều khiển
thích nghi:
Tín hiệu
v(t) chỉnh định
lại tham số
điều khiển sao
cho hệ thích
nghi với mọi
biến động của
Trang 45.Điều khiển tối ưu hàm mục tiêu đạt cực trị:
Ví dụ các bài toán qui hoạch ,vận trù trong kinh tế ,kỹ thuật đều làcác phương pháp điều khiển tối ưu
IV.Mô hình tổng quát và các phương pháp đo nhiệt độ:
1.Mô hình hệ thống điều khiển:
Hệ thống đo và điều khiển nhiệt độ là một đạng của hệ thống thuthập dữ liệu Nhìn chung một hệ thống thu thập dữ liệu đầy đủ có nhữngthành phần sau:
Phần thu thập dữ liệu từ đối tượng bên ngoài vào hệ thống vi xử máy tính Phần này gồm các cảm biến ,mạch gia công tín hiệu ,bộchuyển đổi tín hiệu tương đồng sang tín hiệu số (ADC) và các thiết bịngoại vi khác như nguồn, đường dây truyền dữ liệu …
động vào đối tượng
máy tính nhằm thu nhận dữ liệu và điều khiển nhiệt độ cũng nhưgiao tiếp với người sử dụng Các thành phần trên liên quan chặt chẽvới nhau ,tạo thành một hệ thống hợp nhất Từ phân tích trên một hệthống thu thập dữ liệu (ADS)sẽ có những thành phần cấu trúc sau:
Trang 52.Chức năng các khối trong hệ thống điều khiển:
2.1.Kít chủ vi xử lý:
Kit sử dụng một chip vi xử lý ,là đơn vị master nhận yêu cầu từngười sử dụng và truyền dữ liệu cho các slave khác ,ở đây sử dụng kỹthuật truyền thông đa xử lý để giao tiếp kit chủ và các kit xử lýslave,giữa kit chủ và máy tính, chỉ có thể giao tiếp khi tác động phím từkit
Kit chủ có thiết kế phần cứng như các kit slave, duy chỉ có thêmvề phần cứng mạng truyền và phần chương trình quản lý các thông sốcủa các đơn vị slave
2.2.Các kit xử lý tạm thời (slave):
Các kit xử lý tạm thời có nhiệm vụ thu nhận các giá trị từ ADC vàcó khả năng điều khiển nhiệt độ theo các phương pháp khác nhau.Chứcnăng của các thông số từ cổng nối tiếp
2.3 Mạng truyền:
Dùng để giao tiếp giữa các kit ,giữa các kit với máy tính Mạngtruyền sử dụng ở đây là theo khuyến cáo của nhà sản xuất chip giao tiếpmã 485.Chuẩn truyền 485 được sử dụng rộng rãi trong các thiết bị điềukhiển vi tính đơn giản trong kết nối phần cứng cũng như giao thức truyềnđây là mạng Half Duplex Trong một thời gian sử dụng nhất định chỉ có
Kênh n
Kênh 1
DỒNKÊNHTƯƠNGTỰ
KÍTLƯU TRỮ VÀĐIỀU KHIỂN
ADC
Mạch đối tượng 1
DAC
MạchGia công n
BỘ PHÂN KÊNH
Máy tính chủ
Mạch đối tượng n
MạchGia công 1
Trang 6thể nhiều nhất hai đối tượng liên lạc với nhau.Các cách thức giao tiếp làmột vi xử lý chủ và các vi xử lý tớ ,các vi xử lý tớ không thể liên lạc vớinhau mà chỉ có thể liên lạc thông qua vi xử lý chủ.
2.4 Chương trình điều khiển:
Thực hiện việc giao tiếp giữa các vi xử lý và kit chủ ,giữa kit chủvà máy tính ,đặt trị
3.Các phần tử trong thiết bị đo và phương pháp đo nhiệt độ:
3.1.Các phần tử trong thiết bị đo:
Phần tử biến đổi các đại lượng không điện sang đại lượng điện,bộphận này thường dùng thermocouple
Biến đổi tín hiệu điện thu được từ thermocouple cho phù hợp vớimức vào mạch biến đổi tín hiệu A/D
Hiển thị kết quả thu được dưới dạng hiển thị số
Thực hiện điều khiểntheo phương pháp PID hay ON/OFF
Khuếch đại tín hiệu điều khiển để điều chỉnh nhiệt độ
3.2.Các phương pháp đo:
Hiện nay có rất nhiều phương pháp đo khác nhau :từ đơn giản đếnphức tạp, từ loại có độ chính xác vừa đến loại chính xác cao
Đo nhiệt độ dùng cảm biến thạch anh có ưu điểm hơn so với cácphương pháp khác ,vì nó có độ chính xác cao ,việc chuyển đổi dạng sốrất dễ dàng đối với thông tin liên quan đến tần số
Ví dụ: đặc tính đo lường của tinh thể thạch anh do hãng Heulett Packardchế tạo có:
Trang 7 Khoảng đo -80oC 250oC.
Tuy nhiên có hạn chế là khó chế tạo ,các mạch dao động thạchanh khó tinh chỉnh
a) Cách lắp đặt bộ cảm ứng nhiệt:
Vị trí của cảm ứng nhiệt ảnh hưởng rất lớn đến việc đo đạc vàđiều khiển nhiệt độ của vật thể Cảm ứng nhiệt càng xa nguồn nhiệt thìcàng vọt lố cao do đó tùy theo yêu cầu cụ thể mà ta lắp đặt vị trí thíchhợp
b) Quan hệ giữa các thang đo nhiệt độ:
Chương II:
CẢM BIẾN NHIỆT ĐỘ
Cảm biến nhiệt độ là dụng cụ chuyển đổi đại lượng nhiệt thànhcác đại lượng vật lý khác chẳng hạn như điện, áp suất, độ giãn nở dài,độ giãn nở khối, điện trở, … Cảm biến nhiệt độ là phần tử không thểthiếu trong bất kỳ hệ thống đô lường điều khiển nhiệt độ nào Cảm biếnnhiệt độ có khả năng nhận biết được tín hiệu nhiệt độ một cách chínhxác, trung thực và chuyển đổi thành tín hiệu có thể đo lường được nhưđiện áp, dòng điện, điện trở, thể tích áp suất…
I.CÁC THÔNG SỐ CẢM BIẾN:
1.Thông số cấu tạo : được quyết định do nhà sản xuất và phụ thuộc vào
từng loại cảm biến
2.Thông số sử dụng: bao gồm các yếu tố sau:
Khoảng làm việc : là khoảng nhiệt độ mà cảm biến có khả năng
khi chưa bị bảo hòa Khoảng làm việc cao hay thấp là do tínhchất cấu tạo và tính lý hóa của từng loại cảm biến qui định
đôä nhạy: được định nghĩa:
dx df
s
Trang 8
df: sự thay đổi đại lượng đo của cảm biến
dx : sự thay đổi đại lượng vật lý
Ngưỡng độ nhạy: là mức thấp nhất mà cảm biến có thể phát hiện
được
Tính trễ: còn gọi là quán tính của cảm biến Tính trễ của cảm
biến tạo ra sai số của phép đo Tốc độ thay đổi cuả đại lượng đophải phù hợp với tính trễ của cảm biến Nếu đại lượng đo thay đổiquá nhanh mà quán tính của cảm biến lớn thì không thể đo chínhxác được Mọi cảm biến đều có tính trễ do ảnh hưởng của vỏ bảovệ
II.CÁC LOẠI CẢM BIẾN THÔNG DỤNG:
1.Cặp nhiệt điện :
Cặp nhiệt điện là dụng cụ đo nhiệt độ thường được sử dụng rộngrãi trong công nghiệp.Cơ sở chế tạo cặp nhiệt điện dựa trên các nguyênlý sau:
trên dây là T1-T2 thì sẽ có một sự hấp thụ hay tỏa nhiệt
dẫn thì tại vị trí mối nối sẽ có sự hấp thụ hay tỏa nhiệt
nhiệt độ tại một điểm thì ngay tại điểm đó sẽ xuất hiện một suất điệnđộng
bất kỳ sự phân bố nhiệt độ ra sao, suất điện động tổng cộng củamạch luôn bằng không
Trang 9Rỏ ràng ở đây nếu ta dùng hai dây kim loại đồng chất a ,nối vớinhau qua hai điểm T1 và T2 trong mạch sẽ xuất hiện hai suất điện độngbằng nhau nhưng ngược chiều nhau nên tổng suất điện động bằngkhông.
Nhưng nếu mạch kín trên được cấu tạo bởi hai dây kim loại khácnhau a và b thì tổng suất điện động xuất hiện trong mạch này bằng suấtđiện động Thomson phụ thuộc vào nhiệt độ tuyệt đối T1,T2 ở hai đầumối ghép của dây dẫn Ngoài ra trong mạch còn có suất điện độngSeebeck ,điều này được giải thích là do sự tập trung khác nhau của điệntử tự do ở hai đầu mối ghép Mặt khác ,do sự xuất hiện thế năng tiếpxúc tại khu vực mối ghép bởi hai dây dẫn không đồng chất lý thuyếttrên được thể hiện bằng công thức:
E ab (T1,T2)=E ab (T2)-E ab (T1)
Trong đó:
ghép có nhiệt độ T1,T2
ghép có nhiệt độ T1
ghép có nhiệt độ T2
Công thức trên chính là cơ sở chế tạo cạêp nhiệt điện Nếu đểchuẩn một đầu có nhiệt độ T1=0oC thì suất điện độngở hai đầu cặp nhiệttại mối ghép khi T2=T là:
A,B,C là các hằng số phụ thuộc vào vật liệu chế tạo Như vậy suấtđiện động E0 là hàm phi tuyến đối với nhiệt độ Nói cách khác độ nhạycủa cặp nhiệt thay đổi trong từng khoảng đo.Hoặc về mặt toán học hàm
Eo được xem là tuyến tính với nhiệt độ khi B,C A
3 2
2
1 2
AT
Trang 10
Tóm lại: suất điện động được xem là tuyến tính với nhiệt độ trongkhoảng làm việc nào đó tùy theo cấu tạo của từng loại kim loại để làmcặp nhiệt
Cấu tạo :
Cặp nhiệt điện được chế tạo bằng hai sợi kim loại khác nhau ,vàcó ít nhất là hai mối nối.Một đầu được giữ ở nhiệt độ chuẩn gọi là đầu
ra đầu còn lại tiếp xúc với đối tượng đo
Cặp nhiệt điện có cực dương và cực âm,cực dương thường đánhdấu màu đỏ
Tùy theo vật liệu chế tạo ,cặp nhiệt điện được phân thành các loạisau:
Vật liệu cấu tạo
Về nguyên tắc ,khi đốt nóng mối hàn của hai kim loại bất kỳ đềuphát sinh một suất điện động nhiệt Nhưng không phải tất cả các kimloại và hợp kim nào cũng đều dùng làm cặp nhiệt được.Vật liệu làm cặpnhiệt điện đòi hỏi một số yêu cầu sau:
Trang 11 một số tính chủ yếu như dẫn điện ,dẫn nhiệt tốt
Ngoài ra độ chính xác của cặp nhiệt điện còn phụ thuộc vào độchính xác chế tạo và lý tính của môi trường đo
+ Phải đặt cặp nhiệt ở nơi thích hợp vì thường là nhiệt không phânbố đều
+ Vị trí lắp đặt phải tránh chổ có từ trường ,điện trường mạnh
+Để cặp nhiệt thẳng đứng đề phòng ống bảo vệ bị biến dạng do nhiệtcao
+Nên lắp đặt dây bù vào ống sắt nối đất để tránh nhiễu
2.Nhiệt kế điện trở:
Nguyên lý làm việc của nhiệt kế là dựa vào sự thay đổi điện trởtheo nhiệt độ của các vật liệu dẫn điện
2.1.Nhiệt điện trở kim loại:
Cấu tạo:
Vật liệu cấu tạo điện trở kim loại đòi hỏi các yêu cầu sau:
+ Hệ số nhiệt lớn
+ Điện trở suất lớn
+ Tính ổn định lý hóa tốt
: là hệ số nhiệt điện trở
Ro: là điện trở ở 0oC
Hệ số nhiệt điện trở:
Hệ số nhiệt điện trở của kim loại sẽ tính như sau:
Trang 121dR
RdT
Hệ số nhiệt phụ thuộc vào tính đồng nhất của kim loại
2.2.Nhiệt điện trở bán dẫn:
Thay đổi nhiệt độ được chế tạo bằng chất bán dẫn thường gọi làThermistor
Thành phần chính của thermistor là bột của các oxyt kim loại như
…
Phân loại:
Nhiệt điện trở bán dẫn được chia thàn hai loại :
Nhiệt điện trở Pct :là loại nhiệt điện trở có hệ số nhiệt dương ,nghĩalà nhiệt độ tăng thì R giảm
và Zn2TiO4 Độ tin cậy của nhiệt điện trở bán dẫn phụ thuộc vào độtinh khiết của vật liệ chế tạo Nct thường có hình dạng như:dạnghạt ,dạng dĩa ,dạng khoen
Hệ số thu nhiệt độ:
Thermistor sẽ bị đốt nóng khi khi nhiệt độ môi trường xung quanhtăng từ nhiệt độ T0 đến T ,như vậy là nhiệt điện trở đã tiêu thụ đượcmột công suất theo công thức như sau:
W= C(T-T0)
C : là hệ số thu nhiệt của điện trở :là năng lượng cần thiết để làm
vị là wm/oC
Cách sử dụng:
Khi sử dụng nhiệt kế không nên dùng nhiệt điện trở ở nhiệt độquá cao hay qúa thấp làm cơ cấu tinh thể kim loại thay đổi ,cũng khôngnên để nơi quá ẩm sẽ tạo điều kiện cho điện trở rỉ không kiểm soát được.Không nên đặt điện trở kim loại nơi có chấn động rung hay va đập
Các ưu điểm: có độ chính xác cao,có thể kết nối với máy tính… 3.IC cảm biến nhiệt độ:
Đây là mạch tích hợp nhận tín hiệu nhiệt độ chuyển đổi thànhđiện ,cho phép đo được ở dạng biến áp hay dòng
Trang 13Một số loại IC cảm biến thông dụng:LX5700, LX135, LM235,LM335, AD590, LM134,…
Chương III:
GIỚI THIỆU HỌ MICROCONTROLLER
I.PHẦN CỨNG:
1 Sơ đồ khối:
Microcontroller 8051/8031 là một IC thuộc họ vi điều khiểnMCS_51 do hãng Intel phát minh và chế tạo.Các IC tiêu biểu cho họMC_51 là 8051 và 8031
Trang 14Chúng có các đặc điểm chung sau:
+ 128 byte Ram
+ 4 port I/O 8 bit
+ 2 bộ định thì 16 bit
+ Giao tiếp nối tiếp
+ 64K không gian bộ nhớ chương trình mở rộng
+ 64K không gian bộ nhớ dữ liệu mở rộng
4K ROM
CPU
Bộ dao
động Điều khiểnbus Port nốitiếp
Các thanh ghi khác
Timer 1 Timer 0
P3P1P2P0
PSE
Timer 0 Port nối tiếp
T1 T0
INT0 INT1
Sơ đồ khối 8051
Trang 15+ Một bộ xử lý luận lý (thao tác trên các bit đơn).
+ 210 bit có khả năng định vị riêng biệt trong Ram nội
+ 5 nguồn ngắt với 2 mức ưu tiên
2.Sơ lược các chân của 8051:
P0.4 P0.3 P0.2 P0.1 P0.0 39
33 34 35 36 37 38
P1.6 P1.5
P1.7
P1.4 P1.3 P1.2 P1.1 P1.0 1
7654
3
28
P2.6 P2.5 P2.7
P2.4 P2.3 P2.2 P21 P2.0 21
27
26 25 24 23
22
28
P3.6 P3.5 P3.7
P3.4 P3.3 P3.2 P3.1 P3.0
10
16
15
1413
12
11
17
/WR T1 /RD
T0 /INT1 /INT0 TXD RXD
19
29
30
319
ALERST
PSENEA
18
12MHz
30pF
30pF
20
VSS40
8051
Trang 16Port 2 là Port công dụng kép trên các chân 21-28 được dùng nhưcác đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiếtkế dùng bộ nhớ mở rộng.
2.4.Port 3:
Port 3 là một Port công dụng kép trên các chân 10-17 Các châncủa Port này có nhiều chức năng ,các công dụng chuyển đổi có liên hệvới các đặc tính đặc biệt của 8051/8031như ở bảng sau:
ngoài
ngoài
2.5.PSEN ( Prorgam Store Enable ):
8051/8031 có 4 tín hiệu điều khiển
PSEN là tín hiệu ra trên chân 29 nó là tín hiệu điều khiển để chophép bộ nhớ chương trình mở rộng và thường được nối đến chân OE(Output Enable) của một EPROM để cho phép đọc các byte mã lệnh.PSEN sẽ ở mức thấp trong thời gian lấy lệnh Các mã nhị phân củachương trình được đọc từ ERPOM qua bus dữ liệu và được chốt vàothanh
ghi lệnh của 8051 để giải mã lệnh Khi thi hành chương trình trong ROMnội (8051) PSEN sẽ ở mức thụ động cao
2.6.ALE( Address Latch Enable ):
Tín hiệu ra ALE trên chân 30 ,8051 dùng ALE cho việc giải kênhcác bus địa chỉ và dữ liệu.Khi Port 0 được dùng trong chế độ chuyển đổi
Trang 17củă nó: vừa là bus dữ liệu vừa là byte thấp của bus địa chỉ ,AlE là tínhiệu để chốt địa chỉ vào một thanh ghi bên ngoài ,trong nữa đầu của chukỳ bộ nhớ Sau đó các đường Port dùng để xuất hoặc nhập dữ liệu trongnữa chu kỳ sau của bộ nhớ
2.7.EA ( External Access ):
Đây là tín hiệu cho phép lựa chọn truy xuất bộ nhớ chương trìnhtrong hay ngoài Khi EA được mắc lên mức cao (+5V) thì 8051 thi hànhchương trình trong ROM nội Ngược lại, nếu Ea được mắc xuống mứcthấp (GND) thì 8051 chỉ thực thi chương trình từ bộ nhớ mở rộng
2.8.RST ( Reset ):
Ngỏ vào RST trên chân 9 là ngỏ reset của 8051 Khi tín hiệu nàyđược đưa lên mức cao (trong ít nhất 2 chu kỳ máy),các thanh ghi bêntrong 8051 được tải những giá trị thích hợp để khởi động hệ thống
2.10.Các ngỏ vào bộ dao động trên chip:
8051 có một bộ dao động trên chip ,nó thường được nối với mộtthạch anh giữa hai chân 18 và 19
2.11.Các chân nguồn :
8051 vận hành với nguồn đơn +5V Vcc (+5V) được nối vào chân
40 và Vss (GND) được nối vào chân 20
3.Tổ chức bộ nhớ:
8051/8031 có bộ nhớ theo cấu trúc Harvard : có vùng nhớ riêngbiệt cho chương trình và dữ liệu ,cả chương trình và dữ liệu có thể ở bêntrong 8051 Dù vậy chúng có thể được mở rộng bằng các thành phầnngoài lên đến tối đa 64K byte bộ nhớ chương trình và 64K byte bộ nhớdữ liệu
Bộ nhớ bên trong bao gồm ROM (8051) và RAM trên chip , RAMtrên chip bao gồm nhiều phần : phần lưu trữ đa dụng , phần lưu trữ địachỉ hóa từng bit, các bank thanh ghi và các thanh ghi chức năng đặc biệt.Hai đặc tính cần lưu ý là :
thể được truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác
các bộ vi xử lý khác
ĐỊA CHỈ ĐỊA CHỈ
Trang 18BYTE ĐỊA CHỈ BIT BYTE ĐỊA CHỈ BIT
RAM ĐA ĐỤNG
FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC D0 D7 D6 D5 D4 D3 D2 - D0 PSW
B8 - - - BC BB BA B9 B8 IP 2F 7F 7E 7D 7C 7B 7A 79 78
2E 77 76 75 74 73 72 71 70 B0 B7 B6 B5 B4 B3 B2 B1 B0 P3 2D 6F 6E 6D 6C 6B 6A 69 68
2C 67 66 65 64 63 62 61 60 A8 AF - - AC AB AA A9 A8 IE 2B 5F 5E 5D 5C 5B 5A 59 58
23 1F 1E 1D 1C 1B 1A 19 18 8D Không được địa chỉ hóa bit TH1
22 17 16 15 14 13 12 11 10 8C Không được địa chỉ hóa bit TH0
21 0F 0E 0D 0C 0B 0A 09 08 8B Không được địa chỉ hóa bit TL1
20 07 06 05 04 03 02 01 00 8A Không được địa chỉ hóa bit TL0 1F BANK 3 89 Không được địa chỉ hóa bit TMOD
17 BANK 2 87 Không được dịa chỉ hóa bit PCON 10
0F BANK 1 83 Không được địa chỉ hóa bit DPH
07 BANK 0
(thanh ghi R0-R7) 81 Không được địa chỉ hóa bit SP
Tóm tắc bộ nhớ dữ liệu trên chip
Ram bên trong 8051/8031 được phân chia giữa các bank thanh ghi
(00H-1FH),Ram địa chỉ hóa từng bit (20H-2FH),Ram đa dụng
(30H_7FH)và các thanh ghi chức năng đặc biệt (80H-FFH)
3.1
Ram đa dụng:
Mọi địa chỉ trong vùng RAM đa dụng đều có thể được truy xuất
tự do dùng cách đánh địa chỉ trực tiếp hoặc gián tiếp Ví dụ, để đọc nội
Trang 19dung ở địa chỉ 5FH của RAM nội vào thanh ghi tích lũy lệnh sau sẽ đượcdùng :
MOV A, #5FH
Lệnh này di chuyển một búyt dữ liệu dùng cách đánh địa chỉ trựctiếp để xác định “địa chỉ nguồn” (5FH) Đích nhận dữ liệu được ngầmxác định trong mã lệnh là thanh ghi tích lũy A
RAM bên trong cũng có thể được truy xuất dùng cách đánh địa chỉgián tiếp qua RO hay R1 Ví dụ, sau khi thi hành cùng nhiệm vụ nhưlệnh đơn ở trên:
MOV R0, #5FH
MOV A, @R0
Lệnh đầu dùng địa chỉ tức thời để di chuyển giá trị 5FH vào thanhghi R0 và lệnh thứ hai dùng địa gián tiếp để di chuyển dữ liệu “được trỏbởi R0” vào thanh ghi tích lũy
3.2.RAM địa chỉ hóa từng bit :
8051 / 8031 chứa 210 bit được địa chỉ hóa, trong đó 128 bit là ởcác địa chỉ byte 20H đến 2FH, và phần còn lại trong các thanh ghi chứcnăng đặc biệt
Ý tưởng truy xuất từng bit riêng rẽ bằng mềm là một đặc tính tiệnlợi của vi điều khiển nói chung Các bit có thể được đặt, xóa, AND,OR …với một lệnh đơn Đa số các chi xử lí đòi hỏi một chuổi lệnh đọc – sửa–ghi để đạt được hiệu quả tương tự Hơn nữa, các port I/0 cũng được địachỉ từng bit làm đơn giản phần mềm xuất nhập từng bit
Có 128 bit được địa chỉ hóa đa dụng ở các byte 20H đến 2FH Cácđịa chỉ này được truy xuất như các byte hoặc các bit phụ thuộc vào lệnhđược dùng ví dụ, để đặt bit 67H, ta dùng lệnh sau :
SETB 67HChú ý rằng “địa chỉ bit 67H” là bit có trọng số lớn nhất (MSB) ở
“địa chỉ byte 2CH” lệnh trên sẽ không tác động đến các bit khác của địachỉ này
3.3.Các bank thanh ghi :
32 byte thấp nhất của bộ nhớ nội là dành cho các bank thanh ghi.Bộ lệnh của 8051 / 8031 hổ trợ 8 thanh ghi (RO đến R7) và theo mặcđịnh (sau khi Reset hệ thống) các thanh ghi này ở các địa chỉ 00H-07H.Lệnh sau đây sẽ đọc nội dung ở địa chỉ 05H vào thanh ghi tích lũy
Trang 20MOV A,R5
Đây là lệnh một byte dùng địa chỉ thanh ghi Tất nhiên, thao táctương tự có thể được thi hành bằng lệnh 2 byte dùng địa chỉ trực tiếpnằm trong byte thứ hai:
MOV A,05H
Các lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanhhơn các lệnh tương ứng nhưng dùng địa chỉ trực tiếp Các giá trị dữ liệuđược dùng thường xuyên nên dùng một trong các thanh ghi này
Bank thanh ghi tích cực có thể chuyển đổi bằng cách thay đổi cácbit chọn bank thanh ghi trong từ trạng thái chương trình (PSW) Giả sửrằng bank thanh ghi 3 được tích cực, lệnh sau sẽ ghi nội dung của thanhghi tích lũy vào địa chỉ 18H:
MOV R0,A
Ýù tưởng dùng “các bank thanh ghi” cho phép “chuyển hướng”chương trình nhanh và hiệu qủa (từng phần riêng rẽ của phần mềm sẽ cómột bộ thanh ghi riêng không phụ thuộc vào các phần khác)
3.4 Các thanh ghi chức năng đặc biệt:
Các thanh ghi trong 8051/8031 được định dạng như một phần củaRAM trên chip Vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanhghi trực tiếp, sẽ không có lợi khi đặt chúng vào trong RAM trên chip).Đó là lý do để 8051/0831 có nhiều thanh ghi Cũng như R0 đến R7, có
21 thanh ghi chức năng đặc biệt (SFR: Special Funtion Register) ở vùngtrên của RAM nội, từ địa chỉ 80H đến FFH Chú ý rằng hầu hết 128 địachỉ từ 80H đến FFH không được định nghĩa Chỉ có 21 địa chỉ SFR làđược định nghĩa
Ngoại trừ tích lũy (A) có thể được truy xuất ngầm như đã nói, đasố các SFR được truy xuất dùng địa chỉ trực tiếp chú ý rằng một vàiSFR có thể được địa chỉ hóa bit hoặc byte Người thiết kế phải thậntrọng khi truy xuất bit và byte Ví dụ lệnh sau:
SETB 0E0H
Sẽ set bit 0 trong thanh ghi tích lũy, các bit khác không thay đổi Tathấy rằng E0H đồng thời là địa chỉ byte của thanh ghi tích lũy và là địachỉ bit có trọng số nhỏ nhất trong thanh ghi tích lũy Vì lệnh SETB chỉtác động trên bit, nên chỉ có địa chỉ bit là có hiệu quả
Trang 21a)Từ trạng thái chương trình:
Từ trạng thái chương trình (PSW: Program Status Word) ở địa chỉD0H chứa các bit trạng thái như bảng tóm tắt sau:
OVP
D7HD6HD5HD4HD3H
D2HD1HD0H
Cờ nhớCờ nhớ phụCờ 0
Bit 1 chọn bank thanh ghiBit chọn bank thanh ghi
00=bank 0; địa chỉ 00H-07H01=bank 1: địa chỉ 08H-0FH10=bank 2:địa chỉ 10H-17H11=bank 3:địa chỉ 18H-1FHCờ tràn
Dự trữCờ Parity chẵn
Bảng Từ trạng thái chương trình
bit thứ 7 trong phép toán cộng hay có mượn ở bit thứ 7 trong phéptoán trừ
qủa của 4 bit thấp trong khoảng 0AH đến 0FH Nếu các giá trị cộngđược là số BCD, thì sau lệnh cộng cần có DA A( hiệu chỉnh thậpphân thanh ghi tích lũy) để mang kết qủa lớn hơn 9 trở về tâm từ09
Các bit chọn bank thanh ghi (RSO và RS1) xác định bank thanh ghi được tích cực Chúng được xóa sau khi reset hệ thống và được thay đổi
Trang 22bằng phần mềm nếu cần Ví dụ, ba lệnh sau cho phép bank thanh ghi 3 và di chuyển nội dung của thanh ghi R7 đến thanh ghi tích lũy A:
b)Thanh ghi B:
Thanh ghi B ở địa chỉ F0H được dùng cùng với thanh ghi tích lũy
A cho các phép toán nhân và chia Lệnh MUL AB sẽ nhân các giá trịkhông dấu 8 bit trong A và B rồi trả về kết qủa 16 bit trong A (bytethấp) và B (byte cao) Lệnh DIV AB sẽ chia A cho B rồi trả về kết qủanguyên trong A và phần dư trong B Thanh ghi B cũng có thể được xemnhư thanh ghi đệm đa dụng Nó được địa chỉ hóa ttừng bit bằng các địachỉ bit FOH đến F7H
Con trỏ ngăn xếp:(SP)
Thanh ghi SP là thanh ghi 8 bit định vị tại địa chỉ 81H Nó chứa địa chỉcủa đata hiện tại ở đỉnh stack Các phép toán liên quan đến stack boagồm việc đưa dữ liệu vào stack(PUSH) và lấy ( POP) đata ra khỏistack Việc đưa data vào stack làm tăng SP trước khi ghi data vàostack ,và việc lấy data ra khỏi stack sẽ làm giảm nội dung SP
trỏ dữ liệu:
Con trỏ dữ liệu (DPTR) được dùng để truy xuất bộ nhớ ngoài làmột thanh ghi 16 bit ở địa chỉ 82H(DPL: byte thấp) và 83H (DPH:bytecao) Ba lệnh sau sẽ ghi 55H vào RAM ngoài ở địa chỉ 1000H:
Trang 23để di chuyển dữ liệu trong A (55H) đến RAM ngoài ở địa chỉ được chứatrong DPTR (1000H)
c)Các thanh ghi port xuất nhập:
Các port của 8051/8031 bao gồm Port 0 ở địa chỉ 80H, Port 1 ở địachỉ 90 H, Port 2 ở địa chỉ A0H và Port 3 ở địa chỉ B0H Tất cả các Portđều được địa chỉ hóa từng bit Điều đó cung cấp một khả năng giao tiếpthuận lợi
d)Các thanh ghi timer:
8051/8031 chứa 2 bộ định thời đếm 16 bit được dùng trong việcđịnh thời hoặc đếm sự kiện Timer 0 ở địa chỉ 8AH (TL0:byte thấp) và8CH (TH0:byte cao).Timer 1 ở địa chỉ 8BH (TL1:byte thấp) và 8DH(TH1: byte cao) việc vận hành timer được set bởi thanh ghi Timer Mode(TMOD) ở địa chỉ 89H và thanh ghi điều khiển timer (TCON) ở địa chỉ88H Chỉ có TCON được địa chỉ hóa từng bit
e)Các thanh ghi port nối tiếp:
8051/8031 chức một port nối tiếp trên chip dành cho việc trao đổithông tin với các thiết bị nối tiếp như máy tính, modem hoặc cho việcgiao tiếp với các IC khác có giao tiếp nối tiếp (có bộ chuyển đổi A/D,các thanh ghi dịch ) Một thanh ghi gọi là bộ đệm dữ liệu nối tiếp(SBUF) ở địa chỉ 99H sẽ giữ cả hai giữ liệu truyền và nhận Khi truyềndữ liệu thì ghi lên SBUf, khi nhận dữ liệu thì đọc SBUF Các mode vậnhành khác nhau được lập trình qua thanh ghi điều khiển port nối tiếp(SCON) (được địa chỉ hóa từng bit) ở địa chỉ 98H
f)Các thanh ghi ngắt:
8051/8031 có cấu trúc 5 nguồn ngắt, 2 mức ưu tiên Các ngắt bịcấm sau khi reset hệ thống và sẽ được cho phép bằng việc ghi thanh ghicho phép ngắt (IE) ở địa chỉ 8AH Cả hai thanh ghi được địa chỉ hóa từngbit
g)Các thanh ghi điều khiển công suất:
Thanh ghi điều khiển công suất (PCON) ở địa chỉ 87H chứa nhiềubit điều khiển Chúng được tóm tắt trong bảng sau:
hiệu
Ý nghĩa
Trang 24PDIDL
Bit này liên quan đến tốc độ baud trong Port nốitiếp
Không định nghĩaKhông định nghĩaKhông định nghĩaBit cờ đa dụng 1Bit cờ đa dụng 0Giảm công suấtChuyển sang chế độ nghỉ
BảngThanh ghi điều khiển công suất (PCON)
3.5 Bộ nhớ ngoài.
Khi dùng bộ nhớ ngoài, port 0 không còn là một port I/O thuần túynữa Nó được hợp kênh giữa bus địa chỉ (A0-A7) và bus dữ liệu (D0-D7)với tín hiệu ALE để chốt byte thấp của địa chỉ khi bắt đầu mỗi chu kỳbộ nhớ Port 2 thông thường được dùng cho byte cao của bus địa chỉ
Trong nửa đầu của mỗi chu kỳ bộ nhớ, byte thấp của địa chỉ đượccấp trong port 0 và được chốt bằng xung ALE Một IC chốt 74HC373(hoặc tương đương) sẽ giữ byte địa chỉ thấp trong phần còn lại của chukỳ bộ nhớ Trong nửa sau của chu kỳ bộ nhớ port 0 được dùng như busdữ liệu và được đọc hoặc ghi tùy theo lệnh
a) Truy xuất bộ nhớ chương trình ngoài:
Bộ nhớ chương trình ngoài là mộ IC ROM được phép bởi tín hiệuPSEn Hình sau mô tả cách nối một EPROM vào 8051/8031:
ALE
DG
EPROM 8051
74CH373
EA
Trang 25Một chu kỳ máy của 8051/8031 có 12 chu kỳ xung nhịp Nếu bộdao động trên chip được lái bởi một thạch anh 12MHz thì chu kỳ máykéo dài 1s Trong một chu kỳ máy sẽ có 2 xung ALE và 2 byte đượcđọc từ bộ nhớ chương trình (nếu lệnh hiện hành là một byte thì byte thứhai sẽ được loại bỏ) Giản đồ thời gian của một lần lấy lệnh được vẽ ởhình sau:
Trang 26b/ Truy xuất bộ nhớ dữ liệu ngoài:
Bộ nhớ dữ liệu ngoài là một bộ nhớ RAM được cho phép ghi/đọcbằng các tín hệu WR và RD (các chân P3.6 và P3.7 thay đổi chức năng).chỉ có một cách truy xuất bộ nhớ dữ liệu ngoài là với lệnh MOVX dùngcon trỏ dữ liệu (DPTR) 16 bit hoặc R0 và R1 xem như thanh ghi địa chỉ
Kết nối bus địa chỉ và bus dữ liệu giữa RAM và 8051/8031 cũnggiống EPROM và do đó cũng có thể lên đến 64 byte bộ nhớ RAM.Ngoài ra, chân RD của 8051/8031 được nối tới chân cho phép xuất (OE)của RAM và chân WR được nối tới chân ghi (WR) của RAM
Giản đồ thời gian cho lệnh đọc bộ nhớ dữ liệu ngoài được vẽ trênhình sau đối với lệnh MOVX A, @DPTR:
ALE
DG
Q
Port 2/PSEN
/WR
A8A15
Port 0
D0D7A0A7
RAM 8051
74CH373
Giao tiếp giữa 8051/8031 và RAM
/OE/WR
/RD
/CS NC
EA
Trang 27Giản đồ thời gian cho lệnh ghi (MOVX @DPTR, A) cũng tương tựchỉ khác đường WR sẽ thay vào đường RD và dữ liệu được xuất ra trênport 0 (RD vẫn giữ mức cao).
3.6 Lệnh reset.
8051/8031 được reset bằng cách giữ chân RST ở mức cao ít nhấttrong 2 chu kỳ máy và trả nó về múc thấp RST có thể được kích khi cấpđiện dùng một mạch R-C
Trang 28Trạng thái của tất cả các thanh ghi của 8051/8031 sau khi reset hệthống được tóm tắt trong bảng sau:
00H00H0XXXXXXB0XXX0000B
Bảng Trạng thái các thanh ghi sau khi reset
Quan trọng nhất trong các thanh ghi trên là thanh ghi đếm chươngtrình, nó được đặt lại 0000H Khi RST trở lại mức thấp, việc thi hànhchương trình luôn bắt đầu ở địa chỉ đầu tiên trong bộ nhớ trong chươngtrình: địa chỉ 0000H Nội dung của RAM trên chip không bị thay đổi bởilệnh reset
II TẬP LỆNH CỦA 8051/8031.
Tập lệnh 8051/8031 có 255 lệnh gồm 139 lệnh 1 byte, 92 lệnh 2byte và 24 lệnh 3 byte
1 Các chế độ đánh địa chỉ: trong tập lệnh có 8 chế độ đánh địa chỉ:
a)Thanh ghi địa ghi:
8051/8031 có 4 bank thanh ghi, mỗi bank có 8 thanh ghi đ1nh số từR0 đến R7 Tại mỗi thời điểm chỉ có một bank thanh ghi được tích cực
n n n
M a õ l e än h
Trang 29Ngoài ra, một số thanh ghi đặc biệt như thanh ghi tích lũyACC,B,DPTR.
b)Địa chỉ trực tiếp:
Trong chế độ này, các thanh ghi bên trong 8051/8031 được đánhđịa chỉ trực tiếp bằng 8 bit địa chỉ nằm trong byte thứ hai của mã lệnh
c)Địa chỉ gián tiếp:
R0 và R1 được dùng để chứa địa chỉ ô nhớ mà lệnh tác động đến.người ta quy ước dùng dấu @ trước R0 hoặc R1
d)Địa chỉ tức thời:
Người ta dùng # trước các toán hạng tức thời Các toán hạng đó cóthể là một hằng số, một ký số hay một biểu thức toán học
e)Địa chỉ tương đối:
Địa chỉ tương đối được dùng trong các lệnh nhảy 8051/8031 dùnggiá trị 8 bit có dấu để cộng thêm vào thanh ghi đếm chương trình (PC).Tầm nhảy của lệnh này trong khoảng từ –128 đến 127 ô nhớ Trước khicộng , thanh ghi PC sẽ tăng đến địa chỉ theo sau lệnh nhảy rồi tính toánđịa chỉ offset cần thiết để nhảy đến địa chỉ yêu cầu Như vậy địa chỉ mớilà địa chỉ tương đối so với lệnh kế tiếp chứ không phải là bản thân lệnhnhảy Thường lệnh này có liên quan đến nhãn được định nghĩa trước
Mã lệnh Địa chỉ trực tiếp
Địa chỉ trực tiếp
M a õ l e än h i Địa chỉ gián tiếp
Mã lệnh Dữliệu tức thời
Địa chỉ tức thời
Địa chỉ tương đối
M a õ l e än h O f f s e t t ư ơ n g đ o ái