Tải bản đầy đủ (.doc) (43 trang)

Đo và ổn định nhiệt độ môi trường, hiển thị trên máy tính giao tiếp thông qua cổng COM dùng RS232

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.02 MB, 43 trang )

Lời mở đầu
Trong quá trình sản xuất ở các nhà máy,xí nghiệp hiện nay,việc đo và khống chế
nhiệt độ tự động là một yêu cầu hết sức cần thiết và quan trọng.Vì nếu nắm bắt
được nhiệt độ làm việc của các hệ thống,dây chuyền sản xuất...giúp chúng ta biết
được tình trạng làm việc của các yêu cầu.Và có những xử lí kịp thời tránh được
những hư hỏng và sự cố có thể xảy ra.Từ những yêu cầu trên ,nhóm em đã quyết
định làm đề tài :
 Đo và ổn định nhiệt độ môi trường, hiển thị trên máy tính. Giao tiếp thông
qua cổng COM dùng RS232
Đo nhiệt độ dùng LM35.
Điều khiển động cơ 1 chiều công suất nhỏ và 01 bóng đèn .
Dùng họ vi điều khiển 8051.

MỤC LỤC

Lời mở đầu..............................................................................................1
1


MỤC LỤC...............................................................................................1
Chương I : LÍ THUYẾT THIẾT KẾ....................................................4
I. Giới thiệu khái quát về Vi điều khiển 89s52.............................................................................................4
1.1 Sơ lược về phần cứng vi điều khiển...................................................................................................4
1.2 Khảo sát Sơ đồ chân...........................................................................................................................5
1.3 Kết nối phần cứng...............................................................................................................................8
II .Giới thiệu về cảm biến nhiệt độ LM 35....................................................................................................9
2.1 Khái quát chung..................................................................................................................................9
III.Giới thiệu về ADC 0804..........................................................................................................................10
3.1 Khái quát chung................................................................................................................................10
IV. RS232......................................................................................................................................................14
4.1 Chuẩn truyền thông nối tiếp RS232.................................................................................................14


4.2 Đặc tính kĩ thuật...............................................................................................................................16
4.3 Cấu tạo cổng Com.............................................................................................................................16
4.4 Giao tiếp với vi điều khiển................................................................................................................18
V.Giới thiệu vi mạch giao tiếp MAX 232.....................................................................................................18
5.1 Khái quát chung................................................................................................................................18
VI Giới thiệu phần mềm Visual Basic 6......................................................................................................19
6.1 Giới thiệu về Visual Basic.................................................................................................................19
6.2 Các thao tác cơ bản khi xây dựng ứng dụng....................................................................................21
6.3 Các đối tượng cơ bản.......................................................................................................................22
6.5 Ví dụ..................................................................................................................................................23

Chương II : THIẾT KẾ HỆ THỐNG.................................................25
I. Sơ đồ hệ thống........................................................................................................................................25
1.1 Sơ đồ hệ thống.................................................................................................................................25
2


1.2 Chức năng của từng khối.................................................................................................................25
II.Thiết kế và thi công..................................................................................................................................26
2.1 Sơ đồ khối nguồn :............................................................................................................................26
2.2 Sơ đồ khối điều khiển.......................................................................................................................26
2.3 Khối giao tiếp....................................................................................................................................27
2.4 Khối cảm biến và ADC.......................................................................................................................27
2.5 Sơ đồ nguyên lí tổng quát................................................................................................................28
III Phần mềm...............................................................................................................................................29
3.1 Giao diện giao tiếp máy tính............................................................................................................29
3.2 Phân tích nguyên lí mạch.................................................................................................................30

Chương III KẾT LUẬN.......................................................................31
I .Kết quả đạt được.....................................................................................................................................31

II .Hướng phát triển....................................................................................................................................31

PHỤ LỤC..............................................................................................31
1.Code chương trình...................................................................................................................................31
2.Tài liệu tham khảo....................................................................................................................................43
3.Lời kết..................................................................................................................................................43

Liệt kê hình :
Hình 1.1: Sơ đồ chân vi điều khiển
Hình 1.2: Mạch dao động
Hình 1.3: Reset
Hình 1.4: LM 35
3


Hình 1.5: ADC 0804
Hình 1.6: Phân chia thời gian đọc và ghi adc 0804
Hình 1.7: Đường truyền RS232
Hình 1.8: Khung dữ liệu
Hình 1.9: Quá trình truyền dữ liệu
Hình 1.10: Cổng com
Hình 1.11: Sơ đồ chân cổng com
Hình 1.12: Sơ đồ giao tiếp
Hình 1.13: MAX 232
Hình 1.14: Giao diện ban đầu khi mở VB6
Hình 1.15: Giao diện của chương trình VB6
Hình 1.16 : Ví dụ
Hình 1.17: Sơ đồ tổng quát hệ thống
Hình 1.18: Khối nguồn
Hình 1.19: Khối điều khiển

Hình 1.20: Khối giao tiếp
Hình 1.21:Khối cảm biến và ADC
Hình 1.22:Sơ đồ nguyên lí
Hình 1.23: Giao diện VB6
Hình 1.24: Đồ thị

Chương I : LÍ THUYẾT THIẾT KẾ
I. Giới thiệu khái quát về Vi điều khiển 89s52
1.1 Sơ lược về phần cứng vi điều khiển
• Có 4/8/12/20 Kbyte bộ nhớ FLASH ROM bên trong để lưu chương trình.
Nhờ vậy Vi điều khiển có khả năng nạp xoá chương trình bằng điện đến
10.000 lần
• 128 Byte RAM nội
• 4 Port xuất/nhập 8 bit
4


• Từ 2 đến 3 bộ định thời 16-bit
• Có khả năng giao tiếp truyền dữ liệu nối tiếp


Có thể mở rộng không gian nhớ chương trình ngoài 64KByte (bộ nhớ ROM
ngoại): khi chương trình do người lập trình viết ra có dung lượng lớn hơn
dung lượng bộ nhớ ROM nội, để lưu được chương trình này cần bộnhớROM
lớn hơn, cách giải quyết là kết nối

• Vi điều khiển với bộ nhớ ROM từ bên ngoài (hay còn gọi là ROM ngoại).
Dung lượng bộ nhớ ROM ngoại lớn nhất mà Vi điều khiển có thể kết nối là
64Kbyte
• Có thể mở rộng không gian nhớ dữ liệu ngoài 64KByte (bộ nhớ RAM ngoại)

• Bộ xử lí bit (thao tác trên các bit riêng rẽ) , 210 bit có thể truy xuất đến từng
bit
1.2 Khảo sát Sơ đồ chân
Mặc dù có nhiều kiểu đóng vỏ khác nhau, chẳng hạn như hai hàng chân DIP (Dual
In-line Pakage) dạng vỏ dẹt vuông QFP (Quad Flat Pakage) và dạng chíp không có
chân đỡ LLC (Leadless Chip Carrier)và đều có 40 chân cho các chức năng khác
nhau như vào ra I/0, đọc, ghi, địa chỉ, dữ liệu và ngắt. Tuy nhiên, vì hầu hết các
nhà phát triển chính dùng chíp đóng vỏ40 chân với hai hàng chân DIP, nên chúng
ta cùng khảo sát Vi điều khiển với 40 chân dạng DIP.

5


Hình 1.1 Sơ đồ chân vi điều khiển
- Chân VCC:Chân số 40 là VCC cấp điện áp nguồn cho Vi điều khiển. Nguồn điện
cấp là +5V±0.5.
- Chân GND: Chân số 20 nối GND (hay nối Mass). Khi thiết kế cần sử dụng một
mạch ổn áp để bảo vệcho Vi điều khiển, cách đơn giản là sử dụng IC ổn áp 7805.
- Port 0 (P0) Port 0 gồm 8 chân (từchân 32 đến 39) có hai chức năng:
Chức năng xuất/nhập :các chân này được dùng đểnhận tín hiệu từbên ngoài vào để
xử lí,hoặc dùng để xuất tín hiệu ra bên ngoài, chẳng hạn xuất tín hiệu để điều khiển
led đơn sáng tắt.
Chức năng là bus dữ liệu và bus địa chỉ(AD7-AD0) : 8 chân này (hoặc Port 0)còn
làm nhiệm vụ lấy dữ liệu từ ROM hoặc RAM ngoại (nếu có kết nối với bộ nhớ
ngoài), đồng thời Port 0 còn được dùng để định địa chỉ của bộ nhớ ngoài.
- Port 1 (P1)Port 1 gồm 8 chân (từ chân 1 đến chân 8), chỉ có chức năng làm các
đường xuất/nhập, không có chức năng khác.
- Port 2 (P2)Port 2 gồm 8 chân (từchân 21 đến chân 28) có hai chức năng:
Chức năng xuất/nhập


6


Chức năng là bus địa chỉ cao (A8-A15): khi kết nối với bộ nhớ ngoài có dung
lượng lớn, cần 2 byte để định địa chỉcủa bộ nhớ, byte thấp do P0 đảm nhận, byte
cao do P2 này đảm nhận.
- Port 3 (P3)Port 3 gồm 8 chân (từchân 10 đến 17):
Chức năng xuất/nhập
Với mỗi chân có một chức năng riêng thứ hai như trong bảng sau

- Chân RESET (RST) :Ngõ vào RST ởchân 9 là ngõ vào Reset dùng để thiết lập
trạng thái ban đầu cho vi điều khiển. Hệ thống sẽ được thiết lập lại các giá trị ban
đầu nếu ngõ này ở mức 1 tối thiểu 2 chu kì máy.
- Chân XTAL1 và XTAL2: Hai chân này có vị trí chân là 18 và 19 được sử dụng để
nhận nguồn xung clock từ bên ngoài để hoạt động, thường được ghép nối với thạch
anh và các tụ để tạo nguồn xung clock ổn định.
- Chân cho phép bộ nhớ chương trình PSEN (ProgramStore Enable) :tín hiệu được
xuất ra ở chân 29 dùng để truy xuất bộ nhớ chương trình ngoài. Chân này thường
được nối với chân OE (output enable) của ROM ngoài.
Khi vi điều khiển làm việc với bộ nhớ chương trình ngoài, chân này phát ra tín
hiệu kích hoạt ở mức thấp và được kích hoạt 2 lần trong một chu kì máy.
Khi thực thi một chương trình ở ROM nội, chân này được duy trì ở mức logic
không tích cực (logic 1) (Không cần kết nối chân này khi không sử dụng đến)

7


- Chân ALE :(chân cho phép chốt địa chỉ-chân 30) có chức năng là bus dữ liệu do
đó phải tách các đường dữ liệu và địa chỉ. Tín hiệu ởchân ALE dùng làm tín hiệu
điều khiển để giải đa hợp các đường địa chỉ và các đường dữliệu khi kết nối chúng

với IC chốt.
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động đưa vào Vi điều
khiển, như vậy có thể dùng tín hiệu ở ngõ ra ALE làm xung clock cung cấp cho các
phần khác của hệ thống.
Ghi chú: khi không sử dụng có thể bỏ trống chân này
- Chân EA :Chân EA dùng để xác định chương trình thực hiện được lấy từ ROM
nội hay ROM ngoại.
Khi EA nối với logic 1(+5V) thì Vi điều khiển thực hiện chương trình lấy từ bộ
nhớ nội
Khi EA nối với logic 0(0V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ
ngoại
1.3 Kết nối phần cứng
1.3.1 Kết nối trên hai chân XTAL1 và XTAL2.
Mạch dao động được đưa vào hai chân này thông thường được kết nối với dao
động thạch anh như sau:

Hình 1.2 Mạch dao động
Ghi chú: C1,C2= 30pF±10pF (thường được sử dụng với C1,C2 là tụ33pF) dùng ổn
định dao động cho thạch anh.Hoặc có thể cấp tín hiệu xung clock lấy từ một mạch
8


tạo dao động nào đó và đưa vào Vi điều khiển theo hình 1.3. Trong đó NC: để
trống, chân XTAL2 để trống
1.3.2 Kết nối chân RESET-chân 9

Hình 1.3 Reset
Khi bị cúp điện, hoặc đang hoạt động mà hệ thống bị lỗi cần tác động cho Vi điều
khiển hoạt động trở lại, hoặc do người sử dụng muốn quay về trạng thái hoạt động
ban đầu. Vì vậy chân RESET được kết nối như sau:

Với Vi điều khiển sử dụng thạch anh có tần số fzat= 12MHz sử dụng C=10µFvà
R=10KΩ.

II .Giới thiệu về cảm biến nhiệt độ LM 35
2.1 Khái quát chung

Hình 1.4 LM 35
LM35 có độ biến thiên theo nhiệt độ : 10mV/1(0C)

9


* Độ chính xác cao, tính năng cảm biến nhiệt độ rất nhạy, ở nhiệt độ 25(0C) nó có
sai số không quá 1%. Với tầm đo từ 0(0C) đến 128(0C) , tín hiệu ngõ ra tuyến tính
liên tục với những thay đổi của tín hiệu nhõ vào.
* Thông số kỹ thuật:
- Tiêu tán công suất thấp ,dòng làm việc từ 400µA đến 5mA.
- Dòng ngược 15mA, dòng thuận 10mA
- Độ chính xác: khi làm việc ở nhiệt độ 25(0C) với dòng làm việc 1mA thì điện áp
ngõ ra từ 2,94V đến3,04V.
* Đặc tính điện:
- Theo thông số của nhà sản xuất LM35, quan hệ giữa điện áp và ngõ ra như sau:
Vout =0.01*T(0K)=2,73+0,01*T(0C).
Vậy ứng với tầm hoạt động từ 0(0C) đến 100(0C) ta có sự biến thiên điện áp ngõ ra
là:
• Ở 0(0C) thì điện áp ngõ ra Vout = 2,73V.Ở 5(0C) thì điện áp ngõ ra Vout =
2,78V
• Ở 100(0C) thì điện áp ngõ ra Vout = 3,71V
Tầm biến thiên điện áp tương ứng với nhiệt độ từ 0(0C) đến 100(0C) là 1V


III.Giới thiệu về ADC 0804
3.1 Khái quát chung

10


Hình 1.5 ADC 0804
ADC 0804 là bộ chuyển đổi tương tự số trong họ các loạt ADC 800 từ hãng
National Semiconductor. Nó cũng được nhiều hãng khác sản xuất, nó làm việc với
+5V và có độ phân giải là 8 bít. Ngoài độ phân giải thì thời gian chuyển đổi cũng
là một yếu tố quan trọng khác khi đánh giá một bộ ADC. Thời gian chuyển đổi
được định nghĩa như là thời gian mà bộ ADC cần để chuyển một đầu vào tương tự
thành một số nhị phân. Trong ADC 0804 thời gian chuyển đổi thay đổi phụ thuộc
vào tần số đồng hồ được cấp tới chân CLK và CLK IN nhưng không thể nhanh hơn
110μs. Các chân của ADC 0804 được mô tả như sau:
1. Chân CS- chọn chíp:
Là một đầu vào tích cực mức thấp được sử dụng để kích hoạt chíp ADC 804. Để
truy cập ADC 804 thì chân này phải ở mức thấp.
2. Chân RD (đọc):
Đây là một tín hiệu đầu vào được tích cực mức thấp. Các bộ ADC chuyển đổi đầu
vào tương tự thành số nhị phân tương đương với nó và giữ nó trong một thanh ghi
trong.RD được sử dụng để nhận dữ liệu được chuyển đổi ở đầu ra của ADC 804.
Khi CS = 0 nếu một xung cao - xuống - thấp được áp đến chân RD thì đầu ra số 8
bít được hiển diện ở các chân dữ liệu D0 - D7. Chân RD cũng được coi như cho
phép đầu ra.
3. Chân ghi WR
(thực ra tên chính xác là “Bắt đầu chuyển đổi”). Đây là chân đầu vào tích cực mức
thấp được dùng để báo cho ADC 804 bắt đầu quá trình chuyển đổi.Nếu CS = 0 khi
WR tạo ra xung cao - xuống - thấp thì bộ ADC 804 bắt đầu chuyển đổi giá trị đầu
vào tương tự Vin về số nhị phân 8 bít. Lượng thời gian cần thiết để chuyển đổi thay

đổi phụ thuộc vào tần số đưa đến chânCLK IN và CLK R. Khi việc chuyển đổi dữ
liệu được hoàn tất thì chân INTR được ép xuống thấp bởi ADC804.
4. Chân CLK IN và CLK R.
Chân CLK IN là một chân đầu vào được nối tới một nguồn đồng hồ ngoài khi đồng
hồ ngoài được sử dụng đểtạo ra thời gian. Tuy nhiên 0804 cũng có một máy tạo
xung đồng hồ.Để sử dụng máy tạo xung đồng hồ trong(cũng còn được gọi là máy
tạo đồng hồ riêng) của 0804 thì các chân CLK IN và CLK R được nối tới một tụ
11


điện và một điện trở. Giá trị tiêu biểu của các đại lượng trên là R = 10kΩ và C=
150pF và tần số nhận được là f = 606kHz và thời gian chuyển đổi sẽ mất là 110μs.
5. Chân ngắt INTR (ngắt hay gọi chính xác hơn là “kết thúc chuyển đổi’). Đây là
chân đầu ra tích cực mức thấp. Bình thường nó ở trạng thái cao và khi việc chuyển
đổi hoàn tất thì nó xuống thấp để báo cho CPU biết là dữ liệu được chuyển đổi sẵn
sàng để lấy đi. Sau khi INTR xuống thấp, ta đặt CS = 0 và gửi một xung cao 0
xuống - thấp tới chân RD lấy dữ liệu ra của 804.
6. Chân Vin (+) và Vin (-).
Đây là các đầu vào tương tự vi sai mà Vin= Vin(+) - Vin(-). Thông thường Vin (-)
được nối xuống đất và Vin(+) được dùng như đầu vào tương tự được chuyển đổi
về dạng số.
7. Chân VCC
Đây là chân nguồn nuối +5V, nó cũng được dùng như điện áp tham chiếu khi đầu
vàoVref/2(chân 9) để hở.
8. Chân Vref/2
Chân 9 là một điện áp đầu vào được dùng cho điện áp tham chiếu. Nếu chân này
hở (không được nối) thì điện áp đầu vào tương tự cho ADC 804 nằm trong dải 0
đến +5V(giống như chân VCC). Tuy nhiên, có nhiều ứng dụng mà đầu vào tương
tự áp đến Vin cần phải khác ngoài dải 0 đến 5V. Chân Vref/2 được dùng để thực thi
các điện áp đầu vào khác ngoài dải 0 – 5V. Ví dụ, nếu dải đầu vào tương tự cần

phải là 0 đến 4V thì Vref/2được nối với +2V

Ghi chú:
- VCC = 5V,khi Vref/2 hở thì đo được ở đó khoảng 2,5V
12


- Kích thước bước (độ phân dải) là sự thay đổi nhỏ nhất mà ADC có thể phân biệt
được.
9. Các chân dữ liệu D0 - D7.
Các chân dữ liệu D0 - D7 (D7 là bít cao nhất MSB và D0 là bít thấp nhất LSB) là
các chân đầu ra dữ liệu số.Đây là những chân được đệm ba trạng thái và dữ liệu
được chuyển đổi chỉ được truy cập khi chân CS = 0 và chân RD bị đưa xuống mức
thấp.Để tính điện áp đầu ra ta có thể sử dụng công thức sau:

Với Dout là đầu ra dữ liệu số (dạng thập phân). Vin là điện áp đầu vào tương tự và
độ phân dải là sự thay đổi nhỏ nhất được tính như là (2× Vref/2) chia cho 256 đối
với ADC 8 bít.
10. Chân đất tương tự và chân đất số
Đây là những chân đầu vào cấp đất chung cho cả tín hiệu số và tương tự. Đất tương
tự được nối tới đất của chân Vin tương tự, còn đất số được nối tới đất của chân
Vcc. Lý do mà ta phải có hai đất là để cách ly tín hiệu tương tự Vin từ các điện áp
ký sinh tạo ra việc chuyển mạch số được chính xác. Trong phần trình bày của
chúng ta thì các chân này được nối chung với một đất.
Tuy nhiên, trong thực tế đodữ liệu các chân đất này thì được nối tách biệt.Từ
những điều trên ta kết luận rằng các bước cần phải thực hiện khi chuyển đổi dữ
liệu bởi ADC 0804là:
a) Bật CS = 0 và gửi một xung thấp lên cao tới chân WR để bắt đầu chuyển đổi.
b) Duy trì hiển thị chân INTR. Nếu INTR xuống thấp thì việc chuyển đổi được
hoàn tất và ta có thể sang bước kế tiếp. Nếu INTR cao tiếp tục thăm dò cho đến khi

nó xuống thấp.
c) Sau khi chân INTR xuống thấp, ta bật CS = 0 và gửi một xung cao - xuống thấp đến chân RD đểlấy dữ liệu ra khỏi chíp ADC 0804.

13


Hình 1.6 Phân chia thời gian đọc và ghi adc 0804

IV. RS232
4.1 Chuẩn truyền thông nối tiếp RS232

Hình 1.7 Đường truyền RS232
- Cổng nối tiếp được sử dụng để truyền dữ liệu hai chiều giữa máy tính và ngoại
vi, có các ưu điểm sau:
+Khoảng cách truyền xa hơn truyền song song.
+Số dây kết nối ít.
+Có thể truyền không dây dùng hồng ngoại.
+Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device).
+Cho phép nối mạng.
+Có thể tháo lắp thiết bị trong lúc máy tính đang làm việc.
+Có thể cung cấp nguồn cho các mạch điện đơn giản
14


Tín hiệu truyền theo chuẩn RS-232 của EIA (Electronics Industry Associations).
- Chuẩn RS-232 quy định mức logic 1 ứng với điện áp từ -3V đến -25V ,mức
logic 0 ứng với điện áp từ 3V đến 25V và có khả năng cung cấp dòng từ 10 mA
đến 20 mA. Ngoài ra, tất cả các ngõ ra đều có đặc tính chống chập mạch.
- Chuẩn RS-232 cho phép truyền tín hiệu với tốc độ đến 20.000 bps nhưng nếu
cáp truyền đủ ngắn có thể lên đến 115.200 bps.

- Các phương thức nối giữa DTE và DCE:
+Đơn công (simplex connection): dữ liệu chỉ được truyền theo 1 hướng.
+Bán song công ( half-duplex): dữ liệu truyền theo 2 hướng, nhưng mỗi thời
điểm chỉ được truyền theo 1 hướng.
+Song công (full-duplex): số liệu được truyền đồng thời theo 2 hướng.
- Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau:

Hình 1.8: Khung dữ liệu
Khi không truyền dữ liệu, đường truyền sẽ ở trạng thái mark (điện áp10V).Khi bắt
đầu truyền, DTE sẽ đưa ra xung Start (space: 10V) và sau đó lần lượt truyền từ D0
đến D7 và Parity, cuối cùng là xung Stop (mark:-10V) để khôi phục trạng thái
đường truyền. Dạng tín hiệu truyền mô tả như sau (truyền ký tự A):

Hình 1.9 Quá trình truyền dữ liệu
15


4.2 Đặc tính kĩ thuật

- Các tốc độ truyền dữ liệu thông dụng trong cổng nối tiếp là: 1200 bps,4800 bps,
9600 bps,19200 bps, 115200 bps
4.3 Cấu tạo cổng Com

Hình 1.10 Cổng com
Cổng RS-232 có ba loại giắc cắm khác nhau: dạng 9 chân DB – 9, dạng 25 chân
DB – 25, và dạng 26 chân ALT – A. Trong đó, hai dạng DB – 9 và DB – 25 được
sử dụng phổ biến hơn. Sơ đồ chân và ý nghĩa các chân được trình bày bên dưới.

16



• TxD (Transmit Data): đường gửi dữ liệu
• RxD (Receive Data): đường nhận dữ liệu
• RTS (Request To Send): Yêu cầu gửi; bộ truyền đặt đường này lên mức hoạt
động khi sẵn sàng truyền dữ liệu.
• CTS (Clear To Send): Xoá để gửi; bộ nhận đặt đường này lên mức hoạt động
để thông báo cho bộ truyền là nó sẵn sàng nhận dữ liệu.

17


Hình 1.11 Sơ đồ chân cổng com
4.4 Giao tiếp với vi điều khiển
Khi thực hiện giao tiếp với vi điều khiển, ta phải dùng thêm mạch chuyển mức
logic từ TTL RS232 và ngược lại. Các vi mạch thường sử dụng là MAX232 của
Maxim hay DS275 của Dallas. Mạch chuyển mức logic mô tả như sau:

Hình 1.12 Sơ đồ giao tiếp

V.Giới thiệu vi mạch giao tiếp MAX 232
5.1 Khái quát chung
Vi mạch MAX 232 của hãng MAXIM là một vi mạch chuyên dùng trong giao diện
nối tiếp với máy tính. Chúng có nhiệm vụ chuyển đổi mức TTL ở lối vào thành
18


mức +10V hoặc –10V ở phía truyền và các mức +3…+15V hoặc -3…-15V thành
mức TTL ở phía nhận.

Hình 1.13 MAX 232

Vi mạch MAX 232 có hai bộ đệm và hai bộ nhận. Đường dẫn điều khiển lối vào
CTS, điều khiển việc xuất ra dữ liệu ở cổng nối tiếp khi cần thiết, được nối với
chân 9 của vi mạch MAX 232. Còn chân RST (chân 10 của vi mạch MAX ) nối
với đường dẫn bắt tay để điều khiển quá trình nhận. Thường thì các đường dẫn bắt
tay được nối với cổng nối tiếp qua các cầu nối, để khi không dùng đến nữa có thể
hở mạch các cầu này. Cách truyền dữ liệu đơn giản nhất là chỉ dùng ba đường dẫn
TxD, RxD và GND (mass).

VI Giới thiệu phần mềm Visual Basic 6
6.1 Giới thiệu về Visual Basic
Visual Basic (Visual Basic) là sản phẩm của Microsoft, một thành phần phần của
bộVisual Studio.
Chức năng: Là một ngôn ngữlập trình dùng đểxây dựng các ứng dụng chạy trên
19


môi trường Windows.
Đặc điểm: Trực quan, cung cấp các công cụthuận lợi cho việc tạo các giao diện.
Cài đặt: từ đĩa CD VB6.0, chạy file setup, thực hiện các bước theo hướng dẫn.
Khởi động: Start/Programs/Microsoft VisualBasic 6.0/Microsoft V Basic 6.0

Hình 1.14 : Giao diện ban đầu khi mở VB6
Phiếu New: standard EXE tạo mới một ứng dụng (Project).
Phiếu Existing: mở ứng dụng đã có.
Cửa sổ giao diện của Visual Basic thường có các cửa sổcon, qui định việc ẩn hiện
bằng các thao tác:

20



Hình 1.15 Giao diện của chương trình VB6
- View/Project Explorer: trình bày các thành phần của một ứng dụng.
- View/Properties Window: trình bày các thuộc tính của đối tượng được chọn.
- View/ Form Layout Window: quy định vịtrí xuất hiện của cửa sổkết quả.
Mỗi ứng dụng là một chương trình bao gồm các chương trình con tương ứng với
từng sự kiện. Chọn View/Code đểviết và xem mã lệnh của các chương trình con
này. Chọn View/Object đểthiết kếgiao diện cho ứng dụng. VB lưu giữcác thông tin
của một ứng dụng bằng nhiều tập tin .FRM (nội dung form), .VBP (chương trình
chính),…Vì vậy nên tạo thư mục riêng cho từng ứng dụng.
6.2 Các thao tác cơ bản khi xây dựng ứng dụng
-Tạo mới một ứng dụng, mởmột ứng dụng sẵn có: thao tác như đã nói trong mục
trên.
- Lưu một ứng dụng: chọn biểu tượng Save Project, đặt tên cho các tập tin
.FRM, .VBP. Chú ý rằng phục vụcho cùng một ứng dụng có nhiều tập tin.
- Tạo một đối tượng (ô điều khiển): chọn loại đối tượng trong Toolbox rồi vẽ lên
form.
- Quy định thuộc tính cho đối tượng: chọn đối tượng, chọn thuộc tính, xác lập giá
trị cho thuộc tính trong Properties Window.

21


- Viết mã lệnh: nhắp đúp lên đối tượng hoặc View/Code rồi viết mã lệnh tương
ứng. Trên cửa sổ Code có thểchọn đối tượng và sự kiện của đối tượng trên các
combobox.
- Chạy chương trình: F5 hoặc chọn Run/start hoặc chọn nút start trên thanh công
cụ.
- Thoát khỏi VB: như các ứng dụng khác trên windows
6.3 Các đối tượng cơ bản.
1. Form

Là đối tượng chứa một số đối tượng khác của một ứng dụng. Khi chạy nó là màn
hình giao diện của ứng dụng.
Một số sự kiện của form:
- Initialize: được hệthống kích hoạt đầu tiên nên có thể dùng để thiết lập các thuộc
tính ban đầu cho form.
- Load: xảy ra sau sựkiện trên có thểthiết lập các thuộc tính ban đầu cho các đối
tượng của form.
- Click: xảy ra khi nguời dùng nhắp chuột trên form.
Một sốphương thức của form:
- Show: hiển thị form lên màn hình, sau khi show được gọi các phương thức của
các ô điều khiển khác trên form mới thực hiện được.
- Hide: che giấu một form nhưng không giải phóng bộnhớ.
- Load: nạp form vào bộnhớnhưng chưa xuất hiện trên màn hình.
- Unload: ngược lại của Load
Có thể dùng tên ngầm định “Me” thay cho tên Form đang xử lý.
2. Label.
Đối tượng dùng để hiển thị thông tin như lời chú giải, lời nhắc (1) cũng có thể
được dùng đểxuất kết quả(2). Thuộc tính thường dùng là Caption. Những Label
(1) thường xác lập thuộc tính trong cửa sổproperties. Các label (2) dùng lệnh dạng
22


<Tên label>.Caption = “Nội dung”
3. TextBox.
Đối tượng dùng đểnhập, xuất dữliệu. Thuộc tính quan trọng nhất là Text, chứa
dữ liệu của ô, mặc định có kiểu chuỗi. Vì vậy, cần chuyển đổi kiểu nếu muốn sử
dụng dữ liệu ởcác kiểu khác. TextBox không có thuộc tính Caption.
Một số thuộc tính, sự kiện khác:
- ScrollBars: thuộc tính qui định thanh cuốn ngang, dọc có hay không.
- Maxlength: thuộc tính qui định chiều dài tối đa của dữliệu nhập vào.

- Change: sựkiện xảy ra khi dữliệu của ô bịthay đổi.
- GotFocus: sự kiện xảy ra khi con trỏ được nhảy vào ô.
- LostFocus: sựkiện xảy ra khi con trỏnhảy ra khỏi ô.
- SetForcus: phương thức nhằm đưa con trỏ vào ô.
6.5 Ví dụ
Tạo ứng dụng tính diện tích hình chữ nhật có giao diện như sau:

Hình 1.16 Ví dụ
Khi chạy ứng dụng, nhập chiều dài, chiều rộng, nhấn nút tính kết quảxuất hiện
trong ô diện tích. Khi nhấn nút tiếp tục, chương trình xóa các sốcũ đểnhập dữliệu
mới. Nhấn nút thoát để đóng Form, quay vềVB.
Hướng dẫn:
+ Khởi động VB, tạo các label “Tính diện tích hình chữnhật”, “chiều dài”, “chiều
rộng”, “diện tích”. Nội dung các mục được quy định trong thuộc tính Caption của
23


từng label.
+ Tạo các Textbox đểnhập chiều dài, chiều rộng và xuất kết quảlà diện tích. Đặt
tên lần lượt cho các Textbox trên là a, b, S trong thuộc tính Name của từng
Textbox.
Đểtrống thuộc tính Text của các Textbox này.
+ Tạo các Command Button “Tính”, “Tiếp tục”, “Thóat” và nhắp đúp lên nút lệnh
đểmởcủa sổCode và viết mã cho các nút lệnh này nhưsau:
Mã của Command1
Private Sub Command1_Click()
s.Text = a * b
End Sub
Mã của Command2
Private Sub Command2_Click()

a.Text = ""
b.Text = ""
s.Text = ""
a.SetFocus
End Sub
Mã của Command3
Private Sub Command3_Click()
Unload Form1
End Sub
Phương thức a.SetFocus với mục đích đưa con trỏ đến ô đểnhập chiều dài. Đểlàm
điều này trong lần chạy đầu tiên ứng với thời điểm Form1 được khởi động, ta nhấp
đúp lên Form1 và viết mã lệnh sau:
Private Sub Form_Load()
24


Show
a.Text = ""
a.SetFocus
End Sub

Chương II : THIẾT KẾ HỆ THỐNG
I. Sơ đồ hệ thống
1.1 Sơ đồ hệ thống

Hình 1.17 Sơ đồ tổng quát hệ thống
1.2 Chức năng của từng khối
- Khối nguồn : cung cấp nguồn hoạt động cho toàn hệ thống
-Khối cảm biến : đo nhiệt độ thực tế rùi truyền tới ADC
- ADC : Chuyển đổi tương tự - số ,truyền tín hiệu vào vi điều khiển xử lí

25


×