Đo lường điều khiển bằng máy tính

18 827 0
Đo lường điều khiển bằng máy tính

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đo lường điều khiển bằng máy tính

Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc CHƯƠNG 1: TỔNG QUAN VỀ VI ĐIỀU KHIỂN 89C51 1.1 Giới thiệu chung MCS-51 là họ vi điều khiển của hãng Intel. Vi mạch tổng quát của họ MCS-51 là chip 8051. Chip 8051 có một số đặc trưng cơ bản sau:  Bộ nhớ chương trình bên trong: 4KB (ROM).  Bộ nhớ dữ liệu bên trong: 128 byte (RAM).  Bộ nhớ chương trình bên ngoải: 64KB (ROM).  Bộ nhớ dữ liệu ngoài: 64KB (RAM).  4 port xuất nhập (I/O port) 8 bit.  2 bộ định thời 16 bit.  Mạch giao tiếp nối tiếp.  Bộ xử lý bit (thao tác trên các bit riêng rẽ).  210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit.  Nhân/ chia trong 4µs. 1.2 Sơ đồ chân chip 8051 Trang 1 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc CHƯƠNG 2: TỔNG QUAN VỀ CHUẨN GIAO TIẾP RS232 2.1 Đặt Vấn Đề Vấn đề giao tiếp giữa PC và vi điều khiển rất quan trọng trong các ứng dụng điều khiển, đo lường... Ghép nối qua cổng nối tiếp RS232 là một trong những kỹ thuật được sử dụng rộng rãi để ghép nối các thiết bị ngoại vi với máy tính. Đây là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nối nhiều nhất là 2 thiết bị , chiều dài kết nối lớn nhất cho phép để đảm bảo dữ liệu là 12.5 đến 25.4m, tốc độ 20 Kbit/s đôi khi là tốc độ 115 Kbit/s với một số thiết bị đặc biệt. Ý nghĩa của chuẩn truyền thông nối tiếp nghĩa là trong một thời điểm chỉ có một bit được gửi đi dọc theo đường truyền. Có hai phiên bản RS232 được lưu hành trong thời gian tương đối dài là RS232B và RS232C. Nhưng cho đến nay thì phiên bản RS232B cũ thì ít được dùng còn RS232C hiện vẫn được dùng và tồn tại thường được gọi là tên ngắn gọn là chuẩn RS232 Các máy tính thường có 1 hoặc 2 cổng nối tiếp theo chuẩn RS232C được gọi là cổng COM. Trên Main máy tính có loại 9 chân hoặc loại 25 chân tùy vào đời máy và Main của máy tính. Việc thiết kế giao tiếp với cổng RS232 cũng tương đối dễ dàng, đặc biệt khi chọn chế độ hoạt động là không đồng bộ và tốc độ truyền dữ liệu thấp. 2.2 Đặc điểm của chuẩn RS232 Ưu điểm của giao diện nối tiếp RS232: Khả năng chống nhiễu của các cổng nối tiếp cao. Thiết bị ngoại vi có thể tháo lắp ngay cả khi máy tính đang được cấp điện. Có thể ghép nối với vi điều khiển hay PLC (Programmable Logic Device). Các mạch điện đơn giản có thể nhận được điện áp nguồn nuôi qua công nối tiếp. 2.2.1 Những đặc điểm cần lưu ý trong chuẩn RS232.             Cổng COM không phải là một hệ thống bus nó cho phép dễ dàng tạo ra liên kết dưới hình thức điểm với điểm giữa hai máy cần trao đổi thông tin với nhau, một thành viên thứ ba không thể tham gia vào cuộc trao đổi thông tin này. Trong chuẩn RS232 có mức giới hạn trên và dưới (logic 0 và 1) là ± 12V. Hiện nay đang được cố định trở kháng tải trong phạm vi từ 3 KΩ đến 7 KΩ. Mức logic 1 có điện áp nằm trong khoảng -3V đến -12V, mức logic 0 từ ± 3V đến 12V. Tốc độ truyền nhận dữ liệu cực đại là 100 Kbps. Các lối vào phải có điện dung nhỏ hơn 2500 pF. Trở kháng tải phải lớn hơn 3 KΩ nhưng phải nhỏ hơn 7 KΩ. Độ dài của cáp nối giữa máy tính và thiết bị ngoại vi ghép nối qua cổng nối tiếp RS232 không vượt qua 15m. Để ngăn cản sự dao động quá mức, tốc độ thay đổi (Slew rate ) của điện áp không được vượt qúa 30V/µs. Trang 2 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc Đối với các đường điều khiển, thời gian chuyển của tín hiệu (từ TRUE sang FALSE, hoặc từ FALSE sang TRUE ) không được vượt qúa 1ms.Đối với các đường dữ liệu, thời gian chuyển (từ 1 sang 0 hoặc từ 0 sang 1) phải không vượt quá 4% thời gian của 1 bit hoặc 1ms.  Các giá trị tốc độ truyền dữ liệu chuẩn : 50, 75, 110, 750, 300, 600, 1200, 2400, 4800, 9600, 19200, 28800, 38400,...,56600, 115200 bps.  2.2.2 Các mức điện áp trên đường truyền. RS 232 sử dụng phương thức truyền thông không đối xứng, tức là sử dụng tín hiệu điện áp chênh lệch giữa một dây dẫn và đất. Ngoài mức điện áp tiêu chuẩn ( logic 0 và 1) cũng cố định các giá trị trở kháng tải được đấu vào bus của bộ phận và các trở kháng ra của bộ phát. Mức điện áp của tiêu chuẩn RS232C ( chuẩn thường dùng bây giờ) được mô tả như sau:  Mức logic 0 : +3V , +12V  Mức logic 1 : -12V, -3V Các mức điện áp trong phạm vi từ -3V đến 3V là trạng thái chuyển tuyến. Chính vì từ -3V tới 3V là phạm vi không được định nghĩa, trong trường hợp thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, một tín hiệu phải vượt qua quãng quá độ trong một thơì gian ngắn hợp lý. Điều này dẫn đến việc phải hạn chế về điện dung của các thiết bị tham gia và của cả đường truyền. Tốc độ truyền dẫn tối đa phụ thuộc vào chiều dài của dây dẫn. Đa số các hệ thống hiện nay chỉ hỗ trợ với tốc độ 19,2 Kbps . 2.2.3 Cổng RS232 trên PC Hầu hết các máy tính cá nhân hiện nay đều được trang bị ít nhất là 1 cổng COM hay cổng nối tiếp RS232. Số lượng cổng COM có thể lên tới 3 hay nhiều hơn tùy từng loại main máy tính. Khi đó các cổng COM đó được đánh dấu là COM 1, COM 2, COM 3...Trên đó có 2 loại đầu nối được sử dụng cho cổng nối tiếp RS232 loại 9 chân (DB9) hoặc 25 chân (DB25). Tuy hai loại đầu nối này có cùng song song nhưng hai loại đầu nối này được phân biệt bởi cổng đực (DB9) và cổng cái (DB25). Địa chỉ cơ bản của cổng nối tiếp của máy tính PC có thể tóm tắt trong bảng các địa chỉ sau: COM 1 (cổng nối tiếp thứ nhất) Địa chỉ cơ bản = 3F8(Hex) COM 2 (cổng nối tiếp thứ hai) Địa chỉ cơ bản = 2F8(Hex) COM 3 (cổng nối tiếp thứ ba) Địa chỉ cơ bản = 3E8(Hex) COM 4 (cổng nối tiếp thứ tư) Địa chỉ cơ bản = 2E8(Hex) Trang 3 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc Ta xét sơ đồ chân cổng COM 9 chân: Chức năng của các chân như sau:  Chân 1 : Data Carrier Detect (DCD) : Phát tín hiệu mang dữ liệu.  Chân 2: Receive Data (RxD) : Nhận dữ liệu.  Chân 3 : Transmit Data (TxD) : Truyền dữ liệu.  Chân 4 : Data Termial Ready (DTR) : Đầu cuối dữ liệu sẵn sàng được kích hoạt bởi bộ phận khi muốn truyền dữ liệu.  Chân 5 : Singal Ground ( SG) : Mass của tín hiệu.  Chân 6 : Data Set Ready (DSR) : Dữ liệu sẵn sàng, được kích hoạt bởi bộ truyền khi nó sẵn sàng nhận dữ liệu.  Chân 7 : 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.  Chân 8 : Clear To Send (CTS) : Xóa để gửi ,bô nhận đặt đường này lên mức kích hoạt động để thông báo cho bộ truyền là nó sẵn sàng nhận tín hiệu.  Chân 9 : Ring Indicate (RI) : Báo chuông cho biết là bộ nhận đang nhận tín hiệu rung chuông. 2.2.4 Quá trình truyền nhận dữ liệu. Qua chân cắm ra TXD máy tính gởi dữ liệu của nó đến KIT Vi điều khiển. Trong khi đó các dữ liệu mà máy tính nhận được, lại được dẫn đến chân RXD Các tín hiệu còn lại có chức năng hỗ trợ để thiết lập và điều khiển quá trình truyền, được gọi là các tín hiệu bắt tay (handshake).Ưu điểm của quá trình truyền dùng tín hiệu bắt tay là có thể kiểm soát đường truyền. và vì thế không phải trong mọi trường hợp ứng dụng đều dùng hết. Truyền dữ liệu qua cổng nối tiếp RS232 được thực hiện không đồng bộ. Do vậy nên tại một thời điểm chỉ có một bit được truyền (1 kí tự). Bộ truyền gửi một bit bắt đầu (bit start) để thông báo cho bộ nhận biết một kí tự sẽ được gửi đến trong lần truyền bit tiếp theo . Bit này luôn bắt đầu bằng mức 0.. Tiếp theo đó là các bit dữ liệu (bits data) được gửi dưới dạng mã ASCII( có thể là 5,6,7 hay 8 bit dữ liệu) Sau đó là một Parity bit ( Kiểm tra bit chẵn, lẻ hay không) và cuối cùng là bit dừng - bit stop có thể là 1, 1,5 hay 2 bit dừng. Trang 4 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau: Khi không truyền dữ liệu, đường truyền sẽ ở trạng thái mark (điện áp -10V). 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. g) Truyền thông giữa hai nút. Các sơ đồ khi kết nối dùng cổng nối tiếp: Khi thực hiện kết nối như trên, quá trình truyền phải bảo đảm tốc độ ở đầu phát và thu giống nhau. Khi có dữ liệu đến DTE, dữ liệu này sẽ được đưa vào bộ đệm và tạo ngắt. 2.2.5 Tốc độ Baud Đây là một tham số đặc trưng của RS232. Tham số này chính là đặc trưng cho quá trình truyền dữ liệu qua cổng nối tiếp RS232 là tốc độ truyền nhận dữ liệu hay còn gọi là tốc độ bit. Tốc độ bit được định nghĩa là số bit truyền được trong thời gian 1 giây hay số bit truyền được trong thời gian 1 giây. Tốc độ bit này phải được thiết lập ở bên phát và bên nhận đều phải có tốc độ như nhau ( Tốc độ giữa vi điều khiển và máy tính phải chung nhau 1 tốc độ truyền bit). Ngoài tốc độ bit còn một tham số để mô tả tốc độ truyền là tốc độ Baud. Tốc độ Baud liên quan đến tốc độ mà phần tử mã hóa dữ liệu được sử dụng để diễn tả bit được truyền còn tôc độ bit thì phản ánh tốc độ thực tế mà các bit được truyền.Vì một phần tử báo hiệu sự mã hóa một bit nên khi đó hai tốc độ bit và tốc độ baud là phải đồng nhất. Một số tốc độ Baud thường dùng: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 28800, 38400, 56000, 115200 … Trong thiết bị thường dùng tốc độ là 19200. Khi sử dụng chuẩn nối tiếp RS232 thì yêu cầu khi sử dụng chuẩn là thời gian chuyển mức logic không vượt quá 4% thời gian truyền 1 bit. Do vậy, nếu tốc độ bit càng Trang 5 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc cao thì thời gian truyền 1 bit càng nhỏ thì thời gian chuyển mức logic càng phải nhỏ. Điều này làm giới hạn tốc Baud và khoảng cách truyền. 2.2.6 Bit chẵn lẻ hay Parity bit Đây là bit kiểm tra lỗi trên đường truyền. Thực chất của quá trình kiểm tra lỗi khi truyền dữ liệu là bổ xung thêm dữ liệu được truyền để tìm ra hoặc sửa một số lỗi trong quá trình truyền . Do đó trong chuẩn RS232 sử dụng một kỹ thuật kiểm tra chẵn lẻ. Một bit chẵn lẻ được bổ sung vào dữ liệu được truyền để ch thấy số lượng các bit "1" được gửi trong một khung truyền là chẵn hay lẻ. Một Parity bit chỉ có thể tìm ra một số lẻ các lỗi chả hạn như 1,3,,5,7,9... Nếu như một bit chẵn được mắc lỗi thì Parity bit sẽ trùng giá trị với trường hợp không mắc lỗi vì thế không phát hiện ra lỗi. Do đó trong kỹ thuật mã hóa lỗi này không được sử dụng trong trường hợp có khả năng một vài bit bị mắc lỗi. 2.2.7 Sơ đồ kết nối dùng IC MAX232 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 mức +12V hoặc –12V ở phía truyền và các mức +3…+15V hoặc -3…-15V thành mức TTL ở phía nhận. Max232 là IC chuyên dùng cho giao tiếp giữa RS232 và thiết bị ngoại vi. Đây là IC chạy ổn định và được sử dụng phổ biến trong các mạch giao tiếp chuẩn RS232. Mỗi đầu truyền ra và cổng nhận tín hiệu đều được bảo vệ chống lại sự phóng tĩnh điện. Ngoài ra Max232 còn được thiết kế với nguồn +5V cung cấp nguồn công suất nhỏ. Sơ đồ kết nối cổng COM với MAX232: 1 4 T 1 IN R 1O U T C 1+ T2O U T T 2 IN R 2O U T R 2 IN C 2+ 11 12 7 10 9 8 10u C 2- VC C C 1- G N D M A X232A 10u Trang 6 V+ 3 V- 5 2 10u T1O U T R 1 IN 6 C O M 1 1 6 2 7 3 8 4 9 5 10u 16 15 TX RX 1 2 VC C R S232_O U 17 14 13 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc Sơ đồ chân và cấu trúc bên trong của MAX232 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). Trang 7 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG 3.1 Sơ đồ nguyên lý Trang 8 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc 3.2 Giao diện Visual Basic 3.3 Chương trình viết trên vi xử lý P89V51RD2: #include ORG 00H LJMP START ORG 0023H LJMP SERIAL ORG 40H ;********************************************************* MAIN: START: MOV SCON,#50H Trang 9 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc MOV T2CON,#00110000B MOV RCAP2H,#0FFH MOV RCAP2L,#0DCH SETB TR2 MOV TMOD,#02H MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) SETB TR0 MOV IE,#92H SJMP $ ;****************************************************** SERIAL: CLR RI MOV A,SBUF CJNE A,#3,SERIAL1 CLR TR1 ;*********************************************** SERIAL1: CJNE A,#1,SERIAL2 SJMP CHEDO1 CHEDO1: CLR P1.4 SETB P1.5 SETB P1.6 SETB P1.7 MOV R0,#00H MOV DPTR,#TABLE2 SANGDUOI: MOV A,R0 MOVC A,@A+DPTR MOV P0,A MOV SBUF,A JNB TI,$ CLR TI ACALL DELAY CLR RI MOV A,SBUF CJNE A,#3,LAP LJMP STOP2 LAP: INC R0 CJNE R0,#32,SANGDUOI ;************************************************** SERIAL2: CJNE A,#2,SERIAL3 SJMP CHEDO2 CHEDO2: CLR P1.5 Trang 10 Đo Lường Điều Khiển Bằng Máy Tính SETB P1.4 SETB P1.6 SETB P1.7 MOV DPTR,#TABLE S1: MOV A,#00h MOVC A,@A+DPTR CJNE A,#01H,S2 LJMP CHEDO2 S2: MOV P0,A MOV SBUF,A JNB TI,$ CLR TI LCALL DELAY INC DPTR CLR RI MOV A,SBUF CJNE A,#3,LAP1 SJMP STOP2 LAP1: SJMP S1 SERIAL3: CJNE A,#4,SERIAL4 SJMP CHEDO3 CHEDO3: CLR P1.6 SETB P1.4 SETB P1.5 SETB P1.7 MOV R0,#00H MOV DPTR,#TABLE3 SANGDAN: MOV A,R0 MOVC A,@A+DPTR MOV P0,A MOV SBUF,A JNB TI,$ CLR TI ACALL DELAY CLR RI MOV A,SBUF CJNE A,#3,LAP2 SJMP STOP2 LAP2: INC R0 CJNE R0,#9,SANGDAN SERIAL4: Trang 11 GVHD: ThS. Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính CJNE A,#5,BAT_DAU SJMP CHEDO4 CHEDO4: CLR P1.7 SETB P1.4 SETB P1.5 SETB P1.6 MOV R0,#00H MOV DPTR,#TABLE4 HAIBIAVAORA: MOV A,R0 MOVC A,@A+DPTR MOV P0,A MOV SBUF,A JNB TI,$ CLR TI ACALL DELAY CLR RI MOV A,SBUF CJNE A,#3,LAP4 SJMP STOP2 LAP4: INC R0 CJNE R0,#8,HAIBIAVAORA ;****************************** BAT_DAU: LJMP SERIAL ;****************************** STOP2: SETB P1.4 SETB P1.5 SETB P1.6 SETB P1.7 MOV P0,#11111111B RETI ;************************************* DELAY: MOV R1,#200 DELAY1: MOV R2,#164 DELAY2: MOV R3,#2 DELAY3: DJNZ R3,DELAY3 DJNZ R2,DELAY2 DJNZ R1,DELAY1 RET TABLE: Trang 12 GVHD: ThS. Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc DB 00H, 0FFH,00H, 0FFH DB 01H TABLE2: DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 07FH,0BFH,0DFH,0EFH DB 0F7H,0FBH,0FDH,0FEH DB 07FH,0BFH,0DFH,0EFH DB 0F7H,0FBH,0FDH,0FEH TABLE3: DB 0FFH,0FEH,0FCH,0F8H,0F0H,0E0H,0C0H,80H,00H TABLE4: DB 0FFH,7EH,3CH,18H,00H,18H,3CH,7EH,0FFH END 3.4 Chương trình viết trên máy tính: Private Declare Sub InitCommonControls Lib "comctl32" () Dim TTLED1 As Byte Dim TTLED As String Dim a, b, c, d, e, f, g, h, i, j, k, l, m, n, p As Integer Private Sub CONNECT_Click() DIS.Enabled = True CONNECT.Enabled = False On Error GoTo Loiketnoi MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = Combo1.ListIndex + 1 If MSComm1.PortOpen = False Then MSComm1.PortOpen = True MSComm1.RThreshold = 1 MSComm1.SThreshold = 1 START.Enabled = True Combo1.Enabled = False Combo2.Enabled = False THONGBAOKN.Caption = "DANG KET NOI" THONGBAOKN.ForeColor = vbRed CHEDO1.Enabled = True CHEDO2.Enabled = True CHEDO3.Enabled = True CHEDO4.Enabled = True End If Loiketnoi: If Err.Number = 8002 Then Trang 13 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc MsgBox "LOI KET NOI", vbInformation, "THONG BAO" Combo1.Enabled = True CONNECT.Enabled = True DIS.Enabled = False End If End Sub Private Sub DIS_Click() DIS.Enabled = False MSComm1.Output = Chr(3) CONNECT.Enabled = True If MSComm1.PortOpen = True Then MSComm1.PortOpen = False START.Enabled = False STOPCT.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled = False CHEDO3.Enabled = False CHEDO4.Enabled = False CHEDO1.Value = False CHEDO2.Value = False CHEDO3.Value = False CHEDO4.Value = False Combo1.Enabled = True Combo2.Enabled = True LED1.BackColor = &H80000005 LED2.BackColor = &H80000005 LED3.BackColor = &H80000005 LED4.BackColor = &H80000005 LED5.BackColor = &H80000005 LED6.BackColor = &H80000005 LED7.BackColor = &H80000005 LED8.BackColor = &H80000005 THONGBAOKN.Caption = "NGAT KET NOI" THONGBAOKN.ForeColor = vbRed End If End Sub Private Sub EXIT_Click() If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End If If MsgBox("BAN CO MUON THOAT KHONG", vbInformation + vbYesNo, "THONG BAO") = vbYes Then End End If Trang 14 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc End Sub Private Sub Form_Load() START.Enabled = False STOPCT.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled = False CHEDO3.Enabled = False CHEDO4.Enabled = False CHEDO1.Value = False CHEDO2.Value = False CHEDO3.Value = False CHEDO4.Value = False End Sub Private Sub MSComm1_OnComm() If MSComm1.CommEvent = comEvReceive Then TTLED = MSComm1.Input TTLED1 = Asc(TTLED) End If a = TTLED1 Mod 2 b = TTLED1 \ 2 If a = 1 Then LED1.BackColor = &H80000005 Else LED1.BackColor = vbRed End If c = b Mod 2 d=b\2 If c = 1 Then LED2.BackColor = &H80000005 Else LED2.BackColor = vbRed End If e = d Mod 2 f=d\2 If e = 1 Then LED3.BackColor = &H80000005 Else LED3.BackColor = vbRed End If g = f Mod 2 h=f\2 If g = 1 Then LED4.BackColor = &H80000005 Else Trang 15 Đo Lường Điều Khiển Bằng Máy Tính LED4.BackColor = vbRed End If i = h Mod 2 j=h\2 If i = 1 Then LED5.BackColor = &H80000005 Else LED5.BackColor = vbRed End If k = j Mod 2 l=j\2 If k = 1 Then LED6.BackColor = &H80000005 Else LED6.BackColor = vbRed End If m = l Mod 2 n=l\2 If m = 1 Then LED7.BackColor = &H80000005 Else LED7.BackColor = vbRed End If p = n Mod 2 If p = 1 Then LED8.BackColor = &H80000005 Else LED8.BackColor = vbRed End If End Sub Private Sub START_Click() If CHEDO1.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO2.Enabled = False CHEDO3.Enabled = False CHEDO4.Enabled = False MSComm1.Output = Chr(1) Else If CHEDO2.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO1.Enabled = False CHEDO3.Enabled = False Trang 16 GVHD: ThS. Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS. Huỳnh Minh Ngọc CHEDO4.Enabled = False MSComm1.Output = Chr(2) Else If CHEDO3.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled = False CHEDO4.Enabled = False MSComm1.Output = Chr(4) Else If CHEDO4.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled = False CHEDO3.Enabled = False MSComm1.Output = Chr(5) Else MsgBox "VUI LONG CHON CHE DO DIEU KHIEN", vbInformation, "THONG BAO" End If End If End If End If End Sub Private Sub STOPCT_Click() STOPCT.Enabled = False START.Enabled = True CHEDO1.Value = False CHEDO2.Value = False CHEDO3.Value = False CHEDO4.Value = False CHEDO1.Enabled = True CHEDO2.Enabled = True CHEDO3.Enabled = True CHEDO4.Enabled = True TTLED1 = 255 LED1.BackColor = &H80000005 LED2.BackColor = &H80000005 LED3.BackColor = &H80000005 LED4.BackColor = &H80000005 LED5.BackColor = &H80000005 LED6.BackColor = &H80000005 Trang 17 Đo Lường Điều Khiển Bằng Máy Tính LED7.BackColor = &H80000005 LED8.BackColor = &H80000005 MSComm1.Output = Chr(3) End Sub Private Sub Timer1_Timer() If Label3.Left [...].. .Đo Lường Điều Khiển Bằng Máy Tính SETB P1.4 SETB P1.6 SETB P1.7 MOV DPTR,#TABLE S1: MOV A,#00h MOVC A,@A+DPTR CJNE A,#01H,S2 LJMP CHEDO2 S2: MOV P0,A MOV SBUF,A JNB TI,$ CLR TI LCALL DELAY INC DPTR CLR RI MOV A,SBUF... A,R0 MOVC A,@A+DPTR MOV P0,A MOV SBUF,A JNB TI,$ CLR TI ACALL DELAY CLR RI MOV A,SBUF CJNE A,#3,LAP2 SJMP STOP2 LAP2: INC R0 CJNE R0,#9,SANGDAN SERIAL4: Trang 11 GVHD: ThS Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính CJNE A,#5,BAT_DAU SJMP CHEDO4 CHEDO4: CLR P1.7 SETB P1.4 SETB P1.5 SETB P1.6 MOV R0,#00H MOV DPTR,#TABLE4 HAIBIAVAORA: MOV A,R0 MOVC A,@A+DPTR MOV P0,A MOV SBUF,A JNB TI,$ CLR TI ACALL... ;************************************* DELAY: MOV R1,#200 DELAY1: MOV R2,#164 DELAY2: MOV R3,#2 DELAY3: DJNZ R3,DELAY3 DJNZ R2,DELAY2 DJNZ R1,DELAY1 RET TABLE: Trang 12 GVHD: ThS Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc DB 00H, 0FFH,00H, 0FFH DB 01H TABLE2: DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 0FEH,0FDH,0FBH,0F7H DB 0EFH,0DFH,0BFH,07FH DB 07FH,0BFH,0DFH,0EFH DB... = "DANG KET NOI" THONGBAOKN.ForeColor = vbRed CHEDO1.Enabled = True CHEDO2.Enabled = True CHEDO3.Enabled = True CHEDO4.Enabled = True End If Loiketnoi: If Err.Number = 8002 Then Trang 13 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc MsgBox "LOI KET NOI", vbInformation, "THONG BAO" Combo1.Enabled = True CONNECT.Enabled = True DIS.Enabled = False End If End Sub Private Sub DIS_Click() DIS.Enabled... Sub EXIT_Click() If MSComm1.PortOpen = True Then MSComm1.PortOpen = False End If If MsgBox("BAN CO MUON THOAT KHONG", vbInformation + vbYesNo, "THONG BAO") = vbYes Then End End If Trang 14 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc End Sub Private Sub Form_Load() START.Enabled = False STOPCT.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled = False CHEDO3.Enabled = False CHEDO4.Enabled... LED2.BackColor = vbRed End If e = d Mod 2 f=d\2 If e = 1 Then LED3.BackColor = &H80000005 Else LED3.BackColor = vbRed End If g = f Mod 2 h=f\2 If g = 1 Then LED4.BackColor = &H80000005 Else Trang 15 Đo Lường Điều Khiển Bằng Máy Tính LED4.BackColor = vbRed End If i = h Mod 2 j=h\2 If i = 1 Then LED5.BackColor = &H80000005 Else LED5.BackColor = vbRed End If k = j Mod 2 l=j\2 If k = 1 Then LED6.BackColor = &H80000005... False MSComm1.Output = Chr(1) Else If CHEDO2.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO1.Enabled = False CHEDO3.Enabled = False Trang 16 GVHD: ThS Huỳnh Minh Ngọc Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc CHEDO4.Enabled = False MSComm1.Output = Chr(2) Else If CHEDO3.Value = True Then STOPCT.Enabled = True START.Enabled = False CHEDO1.Enabled = False CHEDO2.Enabled... TTLED1 = 255 LED1.BackColor = &H80000005 LED2.BackColor = &H80000005 LED3.BackColor = &H80000005 LED4.BackColor = &H80000005 LED5.BackColor = &H80000005 LED6.BackColor = &H80000005 Trang 17 Đo Lường Điều Khiển Bằng Máy Tính LED7.BackColor = &H80000005 LED8.BackColor = &H80000005 MSComm1.Output = Chr(3) End Sub Private Sub Timer1_Timer() If Label3.Left .. .Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc CHƯƠNG 2: TỔNG QUAN VỀ CHUẨN GIAO TIẾP RS232 2.1 Đặt Vấn Đề Vấn đề giao tiếp PC vi điều khiển quan trọng ứng dụng điều khiển, đo lường. .. RxD GND (mass) Trang Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG 3.1 Sơ đồ nguyên lý Trang Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc... S232_O U 17 14 13 Đo Lường Điều Khiển Bằng Máy Tính GVHD: ThS Huỳnh Minh Ngọc Sơ đồ chân cấu trúc bên MAX232 Vi mạch MAX 232 có hai đệm hai nhận Đường dẫn điều khiển lối vào CTS, điều khiển việc xuất

Ngày đăng: 06/10/2015, 11:02

Từ khóa liên quan

Mục lục

  • CHƯƠNG 2: TỔNG QUAN VỀ CHUẨN GIAO TIẾP RS232

    • 2.1 Đặt Vấn Đề

    • Ưu điểm của giao diện nối tiếp RS232:

      • 2.2.1 Những đặc điểm cần lưu ý trong chuẩn RS232.

      • 2.2.2 Các mức điện áp trên đường truyền.

      • 2.2.4 Quá trình truyền nhận dữ liệu.

      • 2.2.5 Tốc độ Baud

      • 2.2.6 Bit chẵn lẻ hay Parity bit

      • 2.2.7 Sơ đồ kết nối dùng IC MAX232

      • CHƯƠNG 3: THIẾT KẾ VÀ THI CÔNG

Tài liệu cùng người dùng

Tài liệu liên quan