ĐỒ ÁN THIẾT KẾ HỆ THỐNG ĐO VÀ KHỐNG CHẾ NHIỆT ĐỌ BẰNG MÁY VI TÍNH
thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 1 PHẦN MỘT TÌM HIỂU VỀ 8051 Chương I BỘ VI ĐIỀU KHIỂN 8051 I/ Tổng quan về bộ vi điều khiển 8051 1)Định nghĩa : Bộ vi điều khiển 8051 hay còn gọi là bộ vi xử lý được cấu tạo là một vi mạch số mật độ cực lớn làm việc theo chương trình tức theo nguyên tắc nhận lệnh từ bên ngoài và thực hiện lệnh đó. Bộ vi xử lý là một hệ thống thao tác trên các bit 0 và 1, nhưng bản thân hệ thống không giải quyết được vấn đề gì cả, mà bài toán chỉ được giải khi bộ vi xử lý thực hiện tất cả các chương trình ứng dụng mà ngươi lập trình đưa vào. 2) Sự phát triển của bộ điều khiển 8051 Sự phát triển của kĩ thuật vi xử lý gán liền với sự phát triển của bộ vi điều khiển. Intel hãng sản xuất bộ vi sử lý đầu tiên và là hãng có bộ vi điều khiển lớn nhất và phong phú nhất. Trong các họ vi điều khiển 8 bít hàng đầu thì 8051 có số lượng lớn nhất và có nhiều hãng cung cấp nhất. Nhà cung cấp lầ nhà sản xuất bên cạnh nhà sáng chế bộ vi điều khiển đối với 8051 thì nhà sáng chế là Intel. Nhưng hiên nay có rất nhiều hãng cung sản xuất. Các hãng này gồm Intel , Atmel , Philips/ Signetics , AMD , Simens , Matra , Pallas . Năm 1981 hãng Intel cho ra mắt bộ vi điều khiển được gọi là 8051. Bộ vi điều khiển này là một vi mạch tổng quát của họ MCS – 51 , bộ vi điều khiển này có các thống số và các đặc trưng như sau. - 4KB ROM . thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 2 - 128 byte RAM. - 4 port xuất nhập ( 4 cổng vào/ra) 8bít . - 2bộ định thời 16 bít . - Mạch giao tiếp nối tiếp . - Không gian nhớ chương trình ( mã) ngoài 64K . - Bộ xử lý bít . - 210 vị trí nhớ được định địa chỉ , mỗi vị trí 1 bít . - Nhân / chia trong 4μs . 8051 đã trở nên rất phổ biến sau khi Intel cho phép các nhà sản xuất khác sản xuất và bán bất kì biến dạng nào của 8051 nhưng với điều kiện họ phải mã chương trình tương thích với 8051 mặc dù do các hãng sản xuất khác nhau nên tốc độ và dung lượng nhớ của ROM trên chíp là khác nhau nhưng tất cả các lệnh đó đều tương thích với 8051 ban đầu. Các thông số của 8051 Đặc tính Số lượng ROM 4K byte RAM 128 byte Bộ định thời 2 Chân vào / ra 32 Cổng nối tiếp 1 Nguồn ngắt 6 3) Sơ đồ chức năng 8051 . Bộ vi điều khiển 8051 là thành viên đầu tiên của họ 8051 nó bao gồm các thành phần sau : Bộ vi sử lý , bộ nhớ và các thiết bị vào ra ngoài ra còn các mạch phụ trợ khác tuỳ theo từng loại của bộ vi điều khiển 8051 . thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 3 sơ đồ khối bộ vi điều khiển 8051 * CPU Còn được gọi là bộ xử lý trung tâm nó đIều khiển mọi hoạt động của hệ và hoạt động theo chương trình đIều khiển có sẵn * Bộ nhớ Bộ nhớ là nơi chứa chương trình và dữ liệu nó bao gồm có bộ nhớ trong và bộ nhớ ngoài . + Bộ nhớ trong bao gồm 2 thành phần ROM và RAM Ngắt ngoài Bộ tạo dao động Bus điều khiển 4 cổng vào ra Cổng nối tiêp CPU Đ/khiển ngắt RAM on chip ROM On chip chương trình ETC Timer0 Timer1 Vào Bộ đếm P 0 P 1 P 2 P 3 TXD RXD Địa chỉ dữ liệu thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 4 ROM ( Read only memory ) : Là bộ nhớ cố định có đặc điểm thông tin chỉ có thể đọc thông tin ra và thông tin không bị mất khi mất điện. Bộ nhớ ROM được dùng để chứa chương trình chính hoặc chứa chương trình điều hành hay chương trình hướng dẫn. RAM ( .) là bộ nhớ động có đặc điểm là thông tin có thể ghi hoặc đọc ra một ra một cách tuỳ ý và thông tin đó sẽ bị mất đi khi mất điện. RAM được sử dụng để nạp phần còn lại của hệ điều hành từ đĩa khởi động hoặc nạp vào các chương trình ứng dụng từ bộ nhớ ngoài, lưu trữ số liệu và trạng thái hệ thống trong quá trình làm việc. + Bộ nhớ ngoài gồm băng từ, đĩa từ . được sử dụng nhiều vì giá thành rất rẻ và được dùng để lưu trữ thông tin và dữ liệu • Cổng vào ra + Thực hiện trao đổi thông tin giữa CPU với các thiết bị ngoại vi như bàn phím, chuột máy in . + Để tránh cho CPU mất nhiều thời gian cho các cổng vào/ ra thì trong các máy tính người ta sử dụng các bộ xử lý giá thành thấp, chuyên dụng cho các cổng vào/ ra. Vì vậy khi CPU đang bận các bộ xử lý vào ra vẫn có thể làm công việc của nó. • Các Bus Các đường dây dùng để truyền song song các tín hiệu có cùng chức năng và có các loại Bus sau đây. + Bus địa chỉ: Là hệ thống các dây dẫn song song mà CPU cần tới để xác định địa chỏ của các thành phần trong qúa trình làm việc + Bus dữ liệu: Là hệ thống đường truyền song song được dùng để trao đổi dữ liệu giữa CPU với các thành phần bên ngoài và giữa các thành phần với nhau thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 5 + Bus điều khiển: Gồm các đường dây dùng để truyền tín hiệu điều khiển cần thiếu giúp cho CPU điều khiển việc trao đổi dữ liệu, xử lý sự cố và đồng bộ toàn hệ thống. II/ Sơ đồ, chức năng các chân của 8051 1) Sơ đồ chân của 8051 2) Chức năng các chân của 8051 - Chíp 8051 có 40 chân trong đó có 32 chân có công dụng xuất/ nhập tuy nhiên 24 trong 32 chân này có 2 mục đích sử dụng. Mỗi một chân này có thể hoạt động xuất/nhập như một đường địa chỉ/dữ liệu của bus địa chỉ/dữ liệu đa hợp, 32 chân này hình thành 4 port 8 bít. 8 chân cho một bort và có thể sử dụng như một đơn vị giao tiếp song song như máy in, bộ biến đổi DA . - Các chân còn lại dành cho nguồn V cc , đất GND, các chân dao động XTAL1. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 25 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD8 AD9 AD10 AD11 AD12 AD13 AD14 AD15 P10 P11 P12 P13 P14 P15 P16 P17 P00 P01 P02 P04 P05 P06 P07 P03 P20 P21 P22 P23 P24 P25 P26 P27 P30 P31 P32 P33 P34 P35 P36 P37 8051 PSEN ALE EA RST RD WR T1 T0 INT0 INT1 TXD RXD Vcc Vss XTAL 1 XTAL 2 12MHZ 30pF 30pF thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 6 3) Nhóm chân cổng vào ra Bốn cổng vào ra Port0, Port1, Port2, Port3, đèu có 8 chân và tạo thành cổng 8 bít . Khi Reset thì tất cảc các cổng làm nhiệm vụ đầu ra còn để làm nhiệm vụ đầu vào thì cần phải lập trình. a) Cổng Port 0 Cổng Port0 Có 8 chân (Chân từ 32 đến 39) bình thường đây là cổng ra, vào hoặc ra nhưng nó có hai tác dụng trong các thiết kế tối thiểu thì Port 0 được sử fụng làm nhiệm vụ xuất nhập còn trong các thiết bị lớn hơn thì Port trở thành bus địa chỉ và bus dữ liệu đa hợp. b) Cổng Port 1 Cổng Port 1 cũng có các chân ( Các chân từ 1 đến 8) các chân này chỉ có một tác dụng là dùng để giao tiếp với các thiết bị ngoại vi (làm đường xuất nhập hoặc làm các ngõ vào cho các mạch dịch thời thứ 3). Để chuyển cổng port 1 thành đầu vào cần lập trình bằng cách ghi 1 đến tất cả các bít của cổng. c) Cổng port 2 Cổng Port 2 có 8 chân( từ chân 24 đến chân 28) có thể được sử dụng làm đầu vào hoặc đầu ra. Cổng này có hai chức năng là chuyển địac hỉ và dữ liệu, byte địa chỉ cao của bus địa chỉ 16 bít cho các thiết kế có bộ nhớ chương trình ngoài . d) Cổng Port 3 Cổng Port có 8 chân từ chân 10 đến chân 17. Cổng này có thể được sử dụng làm đầu vào hoặc đầu ra. Khi không làm nhiệm vụ xuất nhập thì nó sẽ có các chức năng riêng liên quan đến các đặc trung cụ thể của 8051 , tuy nhiên cổng Port3 còn có một chấc năng quan trọng khác là cung cấp một số tín hiệu đặc biệt chẳng hạn như ngắt. thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 7 Bảng chức năng của cổng Port3 Bít Tên Địa chỉ bít Chức năng P3.0 RXD B0H Chân nhận dữ liệu của Port nối tiếp P3.1 TXD B1H Chân phát dữ liệu của Port nối tiếp P3.2 INT0 B2H Ngõ vào ngắt ngoài 0 P3.3 INT1 B3H Ngõ vào ngắt ngoài 1 P3.4 T0 B4H Ngõ vào của bộ định thời / đếm 0 P3.5 T1 B5H Ngõ vào của bộ định thời / đếm 1 P3.6 WR B6H Điều khiển ghi bộ nhớ dữ liệu ngoài P3.7 RD B7H Điều khiển đọc bộ nhớ dữ liệu ngoài 4) Nhóm chân nguồn dao động và điều khiển a) Nhóm chân nguồn + Chân Vcc: Chân 40 cung cấp điện áp nguồn +5V cho chíp + Chân GND: Chân số 20 là cung cấp nguồn âm (là chân mát) b) Nhóm chân dao động Nhóm chân XTAL1 và XTAL2 là các chân 18 và 19 của chíp 8051 hiện tại đã có môt bộ dao động đồng hồ ở bên ngoài dùng để kích hoạt và hai chân này cần được nối với bộ dao động thạch anh ở ngoài va khi đó được mắc với các tụ ổn định tần số dao động cho thạch anh . Tần số danh định của thạch anh là 12 MHz cho tất cả họ vi điều khiển 8051 . Bộ dao động tạo xung đồng hồ không nhất thiế t là bộ dao động dùng thạch anh mà cũng có thể dùng bộ dao động TTL khi đó dao động được nối tới chân XTAL1 còn chân XTAL2 để hở . c) Nhóm chân điều khiển . + Chân RESET ( chân số 9 ) là chân khởi động lại trạng thái ban đầu của hệ thống . Khi có xung cao đặt tới chân này thì bộ vi điều khiển 8051 sẽ kết thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 8 thúc mọi hoại động hiện tại và tiến hành khởi động lại . Quá trình này xảy ra hoàn toàn tương tự như khi bật nguồn và khi đó mọi giá trị trên thanh ghi đều bị xoá hết + Chân EA ( Chân số 31 ) Là chân truy xuất ngoài có thể được nối với +5V khi có mức logic1 và nối đất khi có mức logic 0 . Nếu có mức logic 1 thì nó sẽ thực thi chương trình trong ROM . Nếu có mức logic 0 và chân PSEN cũng ở mức 0 thì chương trình cần thực thi chứa ở bộ nhớ ngoài vì trong chíp không có bộ nhớ chương trình . + Chân PSEN (chân 29 ) Là chân ra có chức năng cho phép cất chương trình 1 và cho phép bộ nhớ chương trình cung cấp cho ta 4 tín hiệu điều khiển bus và là tín hiệu xuất trên chân này và đây cũng là tín hiệu cho phép truy xuất bộ nhớ chương trình ngoài và được nối với OE . Tín hiệu PSEN ở mức logic 0 khi thực hiện thời gian tìm nạp lệnh . Tín hiệu PSEN ở mức logic 1 khi thực hiện 1 chương trình chứa ở ROM . + Chân chốt địa chỉ ALE ( Chân 30 ) . Là chân có mức tích cực cao và là chân xuất tín hiệu cho phép xuất địa chỉ ALE . Khi pỏt được chọn làm bus địa chỉ / dữ liệu thi chân ALE xuất tín hiệu để chốt địa chỉ và sau khi chốt các chân của port sẽ xuất / nhập dữ liệu hợp lệ trong suốt 1/2 thứ 2 của chu kì bộ nhớ . Chân ALE còn được sử dụng để phân kênh địa chỉ và dữ liệu bằng cách nối tới chân G c ủa chíp 74LS373 . Tín hiệu ALE có tần số bằng 1/6 tần số của mạch dao động , chân ALE còn dùng làm chân nhận xung ngõ vào lập trình cho EDROM . thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 9 5) Cấu trúc của port xuất nhập . sơ đồ mạch bên trong của các port xuất / nhập . Việc ghi đến 1 chân của port sẽ nạp dung lượng vào bộ chốt của port , ngõ ra Q của bộ chốt điều khiển 1 trạm trường và transitor này nối với chân của port . Khả năng fan out của các port 1 , 2 và 3 là 4 tải vi mạch TTL loại Schottky công suất thấp còn của 0 là 8 tải loại Shottky công suất thấp . Trong đó 8051 internal bus : Đường truyền bên trong của 8051 . Read latch : Đọc bộ chốt . Internal pull up : Kéo lên bên trong . Read pin : Đọc chân port . port pin : Chân port . Write to latch : Ghi vào bộ chốt . Write to latch Port latch D 8051 internal bus Port Pin Vcc Read Pin internal Pull-up Read latch Q +V 5V NJFET thiết kế hệ thống đo và khống chế nhiệt độ bằng máy vi tính 10 6) Truy suất bộ nhớ chương trình ngoài . Bộ nhớ chương trình ngoài là bộ nhớ chỉ đọc và được cho phép bởi tín hiệu PSEN . Khi có 1 EPROM ngoaì được sử lý thì cả 2 port 0 và 1 đều không còn là các port xuất nhập . Sơ đồ 8051 truy xuất với bộ nhớ ngoài . Khi bộ nhớ ngoài được sử dụng thì port không làm nhiệm vụ của port xuất / nhập , port này trở thành bus địa chỉ ( A 0 ÷ A 7 ) và bus dữ liệu ( P 0 ÷ P 7 ) đa hợp . Ngõ ra ALE chốt byte thấp của địa chỉ ở thời điểm bắt đầu mỗi một chu kỳ bộ nhớ ngoài . Còn port 2 thường được dùng làm byte cao của bus địa chỉ . Sự xắp xếp đa hợp có hoạt động là 1/2 chu kỳ đầu của chu kỳ bộ nhớ , byte thấp của địa chỉ được cung cấp bởi port 0 và được chốt nhờ tín hiệu ALE . Mạch ch ốt 74HC374 giữ cho byte của địa chỉ ổn định trong cả chu kỳ bộ nhớ . Trong 1/2 chu ky sau của chu kỳ bộ nhớ port 0 được sử dụng làm bus dữ liệu và khi đó dữ liệu được đọc hay ghi . 7) Truy suất bộ nhớ dữ liệu ngoài . Sơ dồ cấu trúc sự truy suất của 8051 vói bộ nhớ dữ liệu ngoài Port0 8051 EA ALE Port2 PSEN D 0 ÷ D 7 RAM (1kbyte) A 0 ÷ A 7 A 18 ÷A 15 OE D Q G . khiển, các lối ra có thể chuyển sang trạng thái điện trở cao do đó vi mach 0804 được 1 2 3 4 5 6 REF+ Dout Clook Vcc GND AIN 7 8 REF- TTL 549 thiết kế hệ thống. 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 25 AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7 AD8 AD9 AD10 AD11 AD12 AD13