1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên Cứu Công Nghệ Chế Tạo Thước Kính Bằng Phương Pháp Quang Khắc (Photolithography)

97 6 0

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LUẬN VĂN THẠC SỸ KHOA HỌC NGHIÊN CỨU CÔNG NGHỆ CHẾ TẠO THƯỚC KÍNH BẰNG PHƯƠNG PHÁP QUANG KHẮC (PHOTOLITHOGRAPHY) NGÀNH CƠ KHÍ CHÍNH XÁC VÀ QUANG HỌC MÃ SỐ: PHẠM XUÂN KHẢI Người hướng dẫn khoa học: TS NGUYỄN THỊ PHƯƠNG MAI HÀ NỘI 2007 MỤC LỤC Trang Mục lục …………………………………………………………………… Danh sách hình vẽ…………………………………………………… Lời nói đầu CHƯƠNG THƯỚC KÍNH VÀ CÁC PHƯƠNG PHÁP CHẾ TẠO MẶT NẠ VÀ THÂN THƯỚC ……………………….…… 1.1 Tổng quan thước kính ……………… 1.2 Các phương pháp chế tạo thân thước kính 22 CHƯƠNG CÔNG NGHỆ GIA CÔNG BẰNG QUANG KHẮC … 2.1 Cơ sở lý thuyết phương pháp ……………………………… 2.2 Thiết bị sử dụng công nghệ quang khắc………………… 2.3 Quy trình cơng nghệ gia cơng quang khắc … ………… 2.4 Quang khắc tia Rơntghen (tia X) ………………………… 2.5 Quang khắc chùm điện tử ……………………………… 26 26 29 38 49 50 CHƯƠNG CHẾ TẠO MẶT NẠ VÀ THÂN THƯỚC KÍNH BẰNG CƠNG NGHỆ QUANG KHẮC –ĂN MỊN 3.1 Yêu cầu kỹ thuật mặt nạ thân thước kính ……………… 3.2 Chế tạo khn ……………………….…………………….…… 3.3 Quy trình cơng nghệ làm thân thước kính ………… …….…… 3.4 Các kết đạt ……………………………….………… 53 53 54 56 60 CHƯƠNG CHẾ TẠO THƯỚC KÍNH VỚI THÂN THƯỚC VÀ MẶT NẠ LÀM BẰNG CÔNG NGHỆ QUANG KHẮC 4.1 Thiết kế phẩn đầu đọc thước kính………………………… 4.2 Phương pháp xử lý tín hiệu………………………… …….…… 4.3 Các kết đạt ……………………………….………… 65 68 73 75 Kết luận…………………………………………………………………… 78 Tài liệu tham khảo ………………………………………………………… 79 Phụ lục 80 DANH SÁCH CÁC HÌNH VẼ Trang Chương Hình 1.1 Hình ảnh số loại thước kính có mặt Việt nam… Hình 1.2 Máy đo tọa độ Mitutoyo 10 Hình1.3 Đồ gá có sử dụng thước kính 10 Hình 1.4 Sơ đồ cấu trúc thước kính 11 Hình 1.5 Sơ đồ vị trí tương quan cửa sổ a, b, c, d 12 Hình 1.6 Sơ đồ mạch cầu dạng tín hiệu đầu đọc quang học 14 Hình 1.7 Mạch khuyếch đại thuật tốn sử dụng để tạo xung 16 Hình 1.8 Mạch nguyên lý chuyển đổi tín hiệu theo Heidenhain 18 Hình 1.9 Dạng tín hiệu mạch EXOR 19 Hình 1.10 Nguyên lý đếm thuận nghịch 20 Hình 1.11 Phương pháp xác định chiều đếm 21 Hình 1.12 Thước kính với thân thước gia cơng máy phay CNC 22 Hình 1.13 Thân thước kính chế tạo cách in mực lên Polyme… 23 Hình 1.14 Thước kính có độ phân giải 0.02, phạm vi đo 1,2m…………… 24 Hình 1.15 Mask thân thước chế tạo bốc bay trực tiếp… 24 Hình 1.16 Bề mặt thân thước kính chế tạo photolithography… 25 Chương Hình 2.1 Hình ảnh tổng thể quy trình gia cơng quang khắc……… 26 Hình 2.2 Bản chất trình quang khắc…………………………… 27 Hình 2.3 Quá trình thay đổi cấu tạo phân tử chất cảm quang dương 28 Hình 2.4 Dải phổ đèn Hg…………………………………………… 29 Hình 2.5 Các hệ thống chiếu sáng cơng nghệ quang khắc………… 30 Hình 2.6 Hình ảnh khe hở g hệ thống quang khắc không tiếp xúc 30 Hình 2.7 Phân bố cường độ sáng bề mặt chất cảm quang………… 31 Hình 2.8 Quy trình cơng nghệ chế tạo khuôn với lớp nhũ tương……… 32 Hình 2.9 Một số loại dấu so khn……………………………………… 32 Hình 2.10 Sơ đồ máy chụp thu nhỏ……………………………………… 33 Hình 2.11 Sơ đồ máy chụp lặp…………………………………………… 34 Hình 2.12 Sơ đồ hệ thống gia công màng Al đế thủy tinh laser 35 Hình 2.13 Hình ảnh bề mặt mẫu gia cơng femto-second laser 36 Hình 2.14 Sự phản xạ từ khn có lớp màng Cr………………………… 37 Phản ứng nhiệt phân polyvinhil-Fêrơce…………………………… 37 Hình 2.15 Hình 2.16 Quy trình cơng nghệ quang khắc tiếp xúc…………………… Hình 2.17 Sơ đồ máy phủ lớp cảm quang theo phương pháp quay ly tâm Hình 2.18 Đồ thị phân bố chiều dầy lớp cảm quang……………………… Hình 2.19 Cấu tạo khn quang khắc tia Rơntghen………………… Hình 2.20 Sơ đồ nguyên lý hệ thống quang khắc chùm điện tử… 38 39 40 45 46 Chương Hình 3.1 Bản vẽ thiết kế thân thước mặt nạ với T = 0.04……… Hình 3.2 Hình ảnh tổng thể khn làm thân thước mặt nạ……… Hình 3.3 Hình ảnh bề mặt in khuôn thân thước mặt nạ…… Hình 3.4 Kết đo khn thân thước mặt nạ………………… Hình 3.5 Các dụng cụ dùng làm đế……………………………… Hình 3.6 Quy trình cơng nghệ làm thân thước mặt nạ……………… Hình 3.7 Thiết bị phủ cảm quang……………………………………… 59 Hình 3.8 Thiết bị chiếu sáng PEM800………………………………… Hình 3.9 Hình ảnh tổng thể thân thước mặt nạ………………… 59 Hình 3.10 Hình ảnh bề mặt khn ……………………………………… Hình 3.11 Hình ảnh bề mặt thân thước………………………………… Hình 3.12 Kết đo kích thước vạch khn (Mask) thân thước Hình 3.13 Hình ảnh bề mặt thân thước……………………………… Hình 3.14 Hình ảnh bề mặt mặt nạ cửa sổ………………………… Hình 3.15 Kết đo khn thân thước mặt nạ………………… 53 54 55 56 57 58 60 61 61 62 62 63 63 Chương Hình 4.1 Hình 4.2 Hình 4.3 Hình 4.4 Hình 4.5 Hình 4.6 Hình 4.7 Hình 4.8 Hình 4.9 Hình 4.10 Hình 4.11 Hình 4.12 Hình 4.13 Hình4.14 Sơ đồ cấu trúc thước kính theo phương pháp chiếu thn Sơ đồ mạch điện phát-thu nhận xử lý sơ tín hiệu……… Dạng tín hiệu sau xử lý sơ bộ………………… Sơ đồ khối mạch điện thu nhận xử lý tín hiệu………… Sơ mạch logic xác định chiều dịch chuyển thân thước Sơ đồ mạch logic đếm 1/4 xung ………………… ………… Đếm 1/4 xung vi xử lý……………………….…….…… Sơ đồ mạch điện đếm xung phương pháp sử dụng vi xử lý Sơ đồ mạch đếm xung cách kết hợp đếm logic vi xử lý Sơ đồ ghép nối vi xử lý với máy tính………………………… Hình ảnh đầu đọc quang điện……………………………….… Hình ảnh mạch điện thu nhận xử lý sơ tín hiệu……….… Hệ thống mạch thu nhận tín hiệu đánh giá thước chế tạo… Hình ảnh tín hiệu mạch điện thu nhận xử lý ……… 66 67 68 68 69 70 70 71 72 74 75 76 76 77 MỞ ĐẦU Thế kỷ 21, nhu cầu người nghiên cứu khoa học, cơng nghiệp, phục vụ đời sống chăm sóc sức khỏe người… ngày đa dạng phức tạp; địi hỏi thiết bị máy móc ngày tinh xảo, thuận tiện cho người sử dụng có độ xác cao Để đáp ứng nhu cầu cơng nghệ khí buộc phải phát triển mạnh mẽ kết hợp với tiến ngành vi điện tử, điều khiển tự động đo lường khí Ngày đa số máy công cụ đại điều khiển theo chương trình số Đây điều kiện kỹ thuật để thực dự án Tự động hóa linh hoạt, máy cơng cụ điều khiển số riêng lẻ (CNC – Machine tools) hay trung tâm gia công điều khiển số (CNC engineering Center) Trong hệ điều khiển số, cụm vi sử lý, cụm ngoại vi tương thích phần mềm điều khiển thiếu hệ điều khiển số (Computered Nummerial Control) Khi gia cơng chi tiết khí đạt độ xác cao bề mặt định hình phức tạp, khơng thể khơng sử dụng thiết bị gia cơng xác máy công cụ điều khiển số, trung tâm gia cơng Cơng tác đảm bảo độ xác cho q trình gia cơng thực qua hệ thống xác định vị trí đầu dao, bàn máy máy CNC hay trung tâm gia công Các đại lượng cần xác định đoạn đường chuyển động thẳng góc chuyển động quay có điều chỉnh, với độ xác theo u cầu Một thiết bị đo lường đại thiếu phục vụ cho q trình gia cơng chi tiết phức tạp máy đo tọa độ (Coodinate Measuring Machine – CMM), với khả đo rộng, tốc độ đo cao, dễ dàng chuyển giao thông số phục vụ cho trình thiết kế ngược giúp giảm thiểu thời gian thiết kế chế tạo thử Ngoài ra, hệ thống đo lường dịch chuyển sử dụng rộng rãi Robot cấu thiết bị vi khí MEMS Để xác định đoạn đường (theo tọa độ tuyệt đối tương đối) đảm bảo độ xác đo lường điều khiển vị trí, máy đo tọa độ CMM máy công cụ điều khiển số CNC, hệ thống đo dịch chuyển thẳng linh hồn hệ thống Mỗi phương dịch chuyển thẳng cần thước đo với độ phân giải độ xác phù hợp Ngồi ra, nghiên cứu khoa học thiết bị điều khiển tự động khác có yêu cầu xác định, điều khiển vị trí vật thể phận máy cần sử dụng thiết bị đo Thực tế máy CNC CMM thường gồm hệ thống đo với nhiều thước Tuy nhiên giá thành thước đo độ dài cao so với kinh tế kỹ thuật nước ta Điều hạn chế phát triển hệ thống đo lường điều khiển tự động lĩnh vực ưu tiên phát triển nước ta Trong máy đo tọa độ (CMM) máy gia cơng điều khiển chương trình số (CNC) cơng nghiệp chế tạo khí nói chung đạt độ xác gia cơng đến micrơmet nhỏ nữa, địi hỏi hệ thống đo lường dịch chuyển đảm bảo độ xác điều khiển tương ứng Ở nước phát triển, hệ thống đo lường dịch chuyển đo trường đại học kết hợp với viện nghiên cứu, chế tạo dụng cụ đo triển khai vào sản phẩm công nghiệp chế tạo khí từ năm 90 kỷ trước; điển hãng Mitutoyo - Nhật bản, Haidenhain, Zaiss CHLB Đức, Fagos – Tây ban nha Hiện số lượng thiết bị sử dụng cho nhu cầu tự động hóa nước ta lớn Tuy nhiên hệ thống đo nhập ngoại, giá thành cao so với điều kiện kinh tế nước ta (từ vài chục triệu đến hàng trăm triệu đồng), nên hạn chế việc sử dụng điều khiển tự động hóa thiết bị gia cơng Các sở nghiên cứu nước tiếp cận với vấn đề mức độ tìm hiểu, khảo sát Trong cơng Cơng nghiệp hóa, đại hóa đất nước, hệ thống đo lường dịch chuyển phận thiếu thiết bị CNC trục, trục; Hiện thiết bị nghiên cứu để chế tạo nước viện nghiên cứu trường Đại học có kế hoạch triển khai công nghiệp, luận văn đóng góp phần cho việc nội địa hóa thiết bị quan trọng Các nguyên lý chuyển đổi đo độ dài thước đo dịch chuyển độ dài điện tử là: điện cảm, điện dung, quang điện Tuy nhiên, thước đo loại sản phẩm tích hợp nhiều ngành cơng nghệ cao khí xác, quang học điện tử lĩnh vực chưa phát triển đủ mạnh nước ta Với khả có, Luận văn lựa chọn hướng nghiên cứu chế tạo thước khắc vạch quang điện tử có thân thước mặt nạ chế tạo phương pháp quang khắc Để hồn thành luận án này, tơi nhận nhiều giúp đỡ người hướng dẫn khoa học - Tiến sỹ Nguyễn Thị Phương Mai, thầy giáo mơn Cơ khí Chính xác Quang học Trường Đại học Bách khoa Hà nội Viện Itims Trường ĐHBK Hà nội Qua cho gửi lời cảm ơn chân thành đến thầy giáo hướng dẫn, thầy cô giáo môn, đồng nghiệp đặc biệt Tiến sỹ Nguyễn Văn Vinh, Kỹ sư Nguyễn Thành Hùng-ĐHBK HN, Kỹ sư Nguyễn Văn Toán – Viện Itims trực tiếp tơi q trình làm thực nghiệm chế tạo thân thước phần xử lý tín hiệu đo Do kiến thức thời gian hạn chế nên Luận văn chắn khơng tránh khỏi thiếu sót nhiều mặt Em mong góp ý thầy giáo để luận văn hồn thiện, giúp ích hiệu cho cơng việc thiết kế, chế tạo sản xuất thước kính điều kiện Việt nam CHƯƠNG I TỔNG QUAN VỀ THƯỚC KÍNH VÀ CÁC PHƯƠNG PHÁP CHẾ TẠO LƯỚI VẠCH TRÊN THÂN THƯỚC 1.1 Tổng quan thước kính Thước kính hệ thống đo sử dụng đầu đọc quang điện tử để đo khoảng dịch chuyển dài cấu chấp hành, kết đo lưu trữ hiển thị dạng số Hiện nay, thước kính phong phú đa dạng mẫu mã chủng loại Hình hình ảnh thước kính số hãng cung cấp có mặt Việt nam 10 Thước kính hãng Sony Thước kính hãng Renishow Thước kính hãng Mitutoyo Thước kính hãng Haidenhain Hình Hình ảnh số loại thước kính có mặt Việt nam 1.1.1 Một số ứng dụng thước kính Thước kính thiết bị đo dịch chuyển dài có độ xác cao thân thước làm từ thủy tinh có độ ổn định cao Vì vậy, thước kính đặc biệt sử dụng thiết bị địi hỏi độ xác cao 1.1.1.1 Ứng dụng thước kính máy đo tọa độ Ngày nay, máy đo tọa độ (CMM) trở nên quen thuộc với sở nghiên cứu sản xuất Hình 1.2 Máy đo tọa độ Mitutoyo 83 TI LIU THAM KHO [1] Trần Định Tường, Nguyễn Thị Phương Mai; Analize chemical bond and clarify wear of cutting tool coated sputtering TiN layer’, th Proceedings of the 47 Internationale Wissenschaftliches Kolloquium, Ilmenau, Germany, Sep 2002, p 479-481 [2] Nguyễn Thị Phương Mai, Chế tạo lớp phủ cứng ph-ơng pháp bốc bay chân không, Luận án Thạc sĩ, Trường ĐHBK Hà nội, 1998 [3] Ngô Diên Tập, Vi xử lý đo l-ờng điều khiển, NXB KHKT 1999 [4] Nguyến Văn Vinh, Nguyễn Tiến Thọ, Phạm Văn Hội Nghiên cứu thu nhận xư lý tÝn hiƯu giao thoa ®o l-êng chiỊu dài Laser Tạp chí KHCN số 42+43, 2003 [5] Nguyễn Văn Vinh, Nguyễn Đức Trung, Nguyễn Tiến Thọ, Phạm Văn Hội; Nâng cao độ phân giải đo kích th-ớc độ dài đo l-ờng khí Laser’, T¹p chÝ KHCN sè 44+45, 2003 [6] Nguyen Van Vinh, Nguyen Thi Phuong Mai, Le Quang Tra; “Using thin films for Glass encorders”; Oral speech; Proceeding 3rd Workshop on regional network formation for enhancing research and education on materials engineering; Penang, Malaysia; Aug 2005 [7] Nguyễn Văn Vinh, Nguyễn Thị Phương Mai; Nghiên cứu chế tạo thước khắc vạch quang điện đo dịch chuyển độ dài; Tuyển tập báo cáo khoa học, Hội nghị đo lường toàn quốc, Hà nội; 11-2005 [8] Nguyễn Văn Vinh, Nguyễn Thị Phương Mai, Lê Quang Trà; Nghiên cứu chế tạo thước đo độ dài góc sử dụng hệ điều khiển máy CNC CMM; Tuyển tập báo cáo khoa học, Hội nghị khoa học lần thứ 21, Đại học Bách khoa HN, 10-2006 [9] Pham Xuan Khai, Nguyen Thi Phuong Mai, Shou Fukami, Rie Tanabe and Yoshiro Ito; “MICROFABRICATION OF SKD11 WITH A FEMTOSECOND LASER” Tun tËp b¸o c¸o 84 khoa học, Hội nghị khoa học lần thứ 21, Đại học Bách khoa HN, 10-2006 [10] Tạ Duy Liêm; Hệ thống điều khiển số cho máy công cụ, ĐH Bách khoa HN 1998 [11] J Bosch; “Coordinate measuring machine and systems”; NewYork, 1998 PHỤ LỤC Chương trình đếm cho đếm kết hợp mạch logic mạch sử dụng vi xử lý ;dinh nghia cac digit DIGIT0 EQU R1 DIGIT1 EQU R2 DIGIT2 EQU R3 DIGIT3 EQU R4 DIGIT4 EQU R5 DIGIT5 EQU R6 DIGIT6 EQU R7 DIGIT0D EQU 20 DIGIT1D EQU 21 DIGIT2D EQU 22 DIGIT3D EQU 23 DIGIT4D EQU 24 DIGIT5D EQU 25 DIGIT6D EQU 26 COUT EQU TEM1 EQU 12 TEM2 EQU 13 SIGNALD BIT 7FH SIGNALA BIT 7EH OVER BIT 7DH ZEZO BIT 7CH MEMORY BIT 7BH MEMORY1 BIT 7AH DISSIGNAL BIT P0.4 DISDOT BIT P0.5 DELAY1 EQU TEM EQU 10 NUMBERDIS EQU 11 ;reset chuong trinh ORG JMP MAIN ORG 03H JMP FUNCUP ORG 13H JMP FUNCDOWN MAIN: MOV SP,#30H CALL INITINTERUP 85 CALL INITDIGIT LOOP: MOV TEM1,P1 MOV A,TEM1 ANL TEM1,#0FH SWAP A MOV TEM2,A ANL TEM2,#0FH JB SIGNALD,DISNUMBERD MOV A,TEM2 MOV B,#10 MUL AB MOV TEM2,A MOV A,#100 SUBB A,TEM2 MOV B,#10 DIV AB MOV DIGIT0,B MOV DIGIT1,A JMP BEGINDIS DISNUMBERD: MOV DIGIT0,TEM1 MOV DIGIT1,TEM2 BEGINDIS: CALL NHAN2 CALL DISPLAY JMP LOOP INITINTERUP: ;ham khoi tao cac ngat MOV IE,#00000101B ;cho phep ngat,timer0,int0,int1 MOV IP,#00000101B ;uu tien ngat SETB IT1 ;tac dong canh SETB IT0 SETB EA ;cho phep ngat RET INITDIGIT: MOV DIGIT0,#0 MOV DIGIT1,#0 MOV DIGIT2,#0 MOV DIGIT3,#0 MOV DIGIT4,#0 MOV DIGIT5,#0 MOV DIGIT6,#0 MOV NUMBERDIS,#3 SETB SIGNALD SETB SIGNALA CLR OVER SETB ZEZO RET FUNCUP: ;tien PUSH ACC PUSH PSW CALL DETECHZEZO JNB ZEZO,NOTDOZEZO SETB SIGNALD SETB SIGNALA NOTDOZEZO: JNB SIGNALD,NOTDUONG CALL UP CLR SIGNALA JMP ENDFUNCUP 86 NOTDUONG: CALL DOWN ENDFUNCUP: POP PSW POP ACC RETI FUNCDOWN: ;lui PUSH ACC PUSH PSW CALL DETECHLASTZEZO JNB ZEZO,NOTDOZEZO1 CLR SIGNALD SETB SIGNALA JMP ENDFUNCDOWN NOTDOZEZO1: JNB SIGNALA,NOTAM CALL UP JMP ENDFUNCDOWN NOTAM: CALL DOWN ENDFUNCDOWN: POP PSW POP ACC RETI NHAN: MOV A,TEM1 SWAP A RLC A ;>>10 MOV A,TEM1 RL A ANL A,#0FH RET NHAN2: ;NHAN MOV TEM1,DIGIT0 CALL NHAN MOV MEMORY,C MOV DIGIT0D,A MOV TEM1,DIGIT1 CALL NHAN MOV MEMORY1,C MOV C,MEMORY MOV B,#0 ADDC A,B MOV DIGIT1D,A MOV TEM1,DIGIT2 CALL NHAN MOV MEMORY,C MOV C,MEMORY1 MOV B,#0 ADDC A,B MOV DIGIT2D,A MOV TEM1,DIGIT3 CALL NHAN MOV MEMORY1,C MOV C,MEMORY MOV B,#0 ADDC A,B MOV DIGIT3D,A MOV TEM1,DIGIT4 CALL NHAN ;0 ;1 ;2 ;3 ;4 87 MOV MEMORY,C MOV C,MEMORY1 MOV B,#0 ADDC A,B MOV DIGIT4D,A MOV TEM1,DIGIT5 CALL NHAN MOV MEMORY1,C MOV C,MEMORY MOV B,#0 ADDC A,B MOV DIGIT5D,A MOV TEM1,DIGIT6 CALL NHAN MOV MEMORY1,C MOV C,MEMORY1 MOV B,#0 ADDC A,B MOV DIGIT6D,A ;5 ;6 RET DISPLAY: ;hien thi MOV R0,#0 MOV COUT,#10000000B CALL DETECHNUMBERDIS LOOPDISPLAY: MOV A,R0 CALL DECODE INC R0 MOV TEM,P0 ANL TEM,#0F0H ORL A,TEM MOV P2,#00H MOV P0,A MOV A,COUT RL A MOV P2,A ;DISPLAY DIGIT0-6 MOV COUT,A SETB DISDOT CJNE R0,#3,NOTDISDOT CLR DISDOT NOTDISDOT: CALL DELAY MOV A,R0 CJNE A,NUMBERDIS,LOOPDISPLAY JB SIGNALD,NOTDISSIGNAL CLR DISSIGNAL CALL DELAY JMP ENDDISPLAY NOTDISSIGNAL: SETB DISSIGNAL ENDDISPLAY: RET UP: ;tien kg dau CJNE DIGIT2,#9,NOTDIGIT29 MOV DIGIT2,#0 CJNE DIGIT3,#9,NOTDIGIT39 MOV DIGIT3,#0 CJNE DIGIT4,#9,NOTDIGIT49 MOV DIGIT4,#0 88 CJNE DIGIT5,#9,NOTDIGIT59 MOV DIGIT5,#0 CJNE DIGIT6,#9,NOTDIGIT69 MOV DIGIT6,#0 SETB OVER JMP ENDUP NOTDIGIT69: INC DIGIT6 JMP ENDUP NOTDIGIT59: INC DIGIT5 JMP ENDUP NOTDIGIT49: INC DIGIT4 JMP ENDUP NOTDIGIT39: INC DIGIT3 JMP ENDUP NOTDIGIT29: INC DIGIT2 JMP ENDUP ENDUP: RET DOWN: ;lui kg dau CJNE DIGIT2,#0,NOTMIN2 MOV DIGIT2,#9 CJNE DIGIT3,#0,NOTMIN3 MOV DIGIT3,#9 CJNE DIGIT4,#0,NOTMIN4 MOV DIGIT4,#9 CJNE DIGIT5,#0,NOTMIN5 MOV DIGIT5,#9 CJNE DIGIT6,#0,NOTMIN6 MOV DIGIT6,#9 JMP ENDDOWN NOTMIN6: DEC DIGIT6 JMP ENDDOWN NOTMIN5: DEC DIGIT5 JMP ENDDOWN NOTMIN4: DEC DIGIT4 JMP ENDDOWN NOTMIN3: DEC DIGIT3 JMP ENDDOWN NOTMIN2: DEC DIGIT2 JMP ENDDOWN ENDDOWN: RET DETECHZEZO: CLR ZEZO JNB SIGNALA,NOTLASTZEZO1 MOV A,#0 CALL DETECHZEZO1 NOTLASTZEZO1: RET DETECHZEZO1: ORL A,DIGIT2 89 ORL A,DIGIT3 ORL A,DIGIT4 ORL A,DIGIT5 ORL A,DIGIT6 CJNE A,#0,NOFOUND SETB ZEZO JMP ENDDETECHZEZO NOFOUND: CLR ZEZO JMP ENDDETECHZEZO ENDDETECHZEZO: RET DETECHLASTZEZO: CLR ZEZO JNB SIGNALD,NOTLASTZEZO MOV A,#0 CALL DETECHZEZO1 NOTLASTZEZO: RET DECODE: CJNE A,#0,NOTDISPLAY0 MOV A,DIGIT0D JMP ENDDECODE NOTDISPLAY0: CJNE A,#1,NOTDISPLAY1 MOV A,DIGIT1D JMP ENDDECODE NOTDISPLAY1: CJNE A,#2,NOTDISPLAY2 MOV A,DIGIT2D JMP ENDDECODE NOTDISPLAY2: CJNE A,#3,NOTDISPLAY3 MOV A,DIGIT3D JMP ENDDECODE NOTDISPLAY3: CJNE A,#4,NOTDISPLAY4 MOV A,DIGIT4D JMP ENDDECODE NOTDISPLAY4: CJNE A,#5,NOTDISPLAY5 MOV A,DIGIT5D JMP ENDDECODE NOTDISPLAY5: CJNE A,#6,NOTDISPLAY6 MOV A,DIGIT6D JMP ENDDECODE NOTDISPLAY6: ENDDECODE: RET DELAY: MOV DELAY1,#255 LOOPDELAY: NOP NOP DJNZ DELAY1,LOOPDELAY RET DETECHNUMBERDIS: MOV NUMBERDIS,#7 MOV A,DIGIT6D 90 CJNE A,#0,ENDDETECHDIS DEC NUMBERDIS MOV A,DIGIT5D CJNE A,#0,ENDDETECHDIS DEC NUMBERDIS MOV A,DIGIT4D CJNE A,#0,ENDDETECHDIS DEC NUMBERDIS MOV A,DIGIT3D CJNE A,#0,ENDDETECHDIS DEC NUMBERDIS ENDDETECHDIS: RET END Phần mềm hiển thị thiết bị đo chế tạo #include //P1.0 bit dk led dau unsigned int xpst; unsigned char NoLed=0; sbit int0=P3^2; sbit int1=P3^3; sbit xor0=P3^4; sbit xor1=P3^5; void init_interrupt(void); void init_pro(void); void main() { init_pro(); init_interrupt(); xpst=10000; P1_0=0; while (1) { } } void init_pro() { TMOD=0x01; TH0=0xEF; TL0=0x18; TR0=1; } //Timer0 mode 16bit // void init_interrupt() { IE=0x07; //0000.0111 Enable INT0, INT1, Timer0 Interrupt IP=0x05; //0000.0101 INT1, INT0 high priority IT1=1; //Falling_Edge INT1 IT0=1; //Falling_Edge INT0 if (int0==0) xor0=0; if (int1==0) xor1=0; EA=1; } void Int0_Isr() interrupt using { xor0=~xor0; 91 if (xor0==xor1)//down { if(xpst==0) xpst=9999; else xpst ; } else //up { if (xpst==19999) xpst=10000; else xpst++; } } void Int1_Isr() interrupt using { xor1=~xor1; if (xor0!=xor1)//down { if(xpst==0) xpst=9999; else xpst ; } else//up { if (xpst==19999) xpst=10000; else xpst++; } } void Timer0_int(void) interrupt using { unsigned char temp; unsigned long int x; unsigned char dk[]={0x01,0x02,0x04,0x08}; unsigned char led[4]={0,0,0,0}; unsigned char code decode[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//ko hien dau phay unsigned char code decode1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};//co hien dau phay TF0=0; if (xpst9999) x=x%10000; led[0]=x%10; led[1]=(x/10)%10; led[2]=(x/100)%10; led[3]=x/1000; if (NoLed==3) NoLed=0; else NoLed++; if (NoLed==3) P0=decode1[led[3]]; else P0=decode[led[NoLed]]; temp=255-dk[NoLed]; P2=temp; TH0=0xEF; TL0=0x18; // TR0=1; 92 Chương trình VB giao tiếp máy tính thiết bị hiệu chỉnh tín hiệu đồng thời có khả ghi nhận xử lý kết đo thước chế tạo Public Const TableCols = Public Const TableRows = 129 Public StdScaleX As Integer Public StdScaleY As Integer Public z(1 To 100, To 2) As Single Public Click As Integer Public LastRow As Integer Public Sub BackGround(Grid As Integer) Dim i As Integer Dim j As Single Dim TempX As Integer Dim TempY As Integer frmMain.Picture1.BackColor = &H0 frmMain.Picture1.AutoRedraw = True TempX = Int(frmMain.Picture1.Width / Grid) TempY = Int(frmMain.Picture1.Height / TempX) frmMain.Picture1.ScaleMode = frmMain.Picture1.Scale (0, -frmMain.Picture1.Height)-(frmMain.Picture1.Width, 0) frmMain.Picture1.Cls frmMain.Picture1.ForeColor = &HFF& frmMain.Picture1.Line (-30, -30)-(frmMain.Picture1.Width, -30) frmMain.Picture1.Line (30, 0)-(30, -frmMain.Picture1.Height) frmMain.Picture1.ForeColor = &H4F00 For i = To Grid frmMain.Picture1.Line (i * TempX, 0)-(i * TempX, -frmMain.Picture1.Height) Next i 'frmMain.Picture1.Line (0, 0)-(frmMain.Picture1.Width, -frmMain.Picture1.Height) For i = To Int(TempY) frmMain.Picture1.Line (0, -i * TempX)-(frmMain.Picture1.Width, -i * TempX) Next i '=================================================== frmMain.Picture2.BackColor = &H0 frmMain.Picture2.AutoRedraw = True TempX = Int(frmMain.Picture2.Width / Grid) TempY = Int(frmMain.Picture2.Height / TempX) frmMain.Picture2.ScaleMode = frmMain.Picture2.Scale (0, -frmMain.Picture2.Height)-(frmMain.Picture2.Width, 0) frmMain.Picture2.Cls frmMain.Picture2.ForeColor = &HFF& frmMain.Picture2.Line (-30, -30)-(frmMain.Picture2.Width, -30) frmMain.Picture2.Line (30, 0)-(30, -frmMain.Picture2.Height) frmMain.Picture2.ForeColor = &H4F00 For i = To Grid frmMain.Picture2.Line (i * TempX, 0)-(i * TempX, -frmMain.Picture2.Height) Next i 'frmMain.Picture2.Line (0, 0)-(frmMain.Picture2.Width, -frmMain.Picture2.Height) For i = To Int(TempY) frmMain.Picture2.Line (0, -i * TempX)-(frmMain.Picture2.Width, -i * TempX) Next i End Sub Public Sub InitTable() With frmMain.MSComm1 CommPort = Settings = "19200,N,8,1" InputLen = PortOpen = True End With 93 frmMain.msgData.ScrollTrack = True frmMain.msgData.Rows = TableRows frmMain.msgData.Cols = TableCols frmMain.msgData.ColWidth(0) = 500 For i = To TableCols - With frmMain.msgData TextMatrix(0, i) = i Col = i: Row = CellAlignment = Font = Tahoma End With Next i For i = To TableRows - With frmMain.msgData TextMatrix(i, 0) = i Col = 0: Row = i CellAlignment = Font = Tahoma End With Next i frmMain.msgData.Col = TableCols - 1: frmMain.msgData.Row = TableRows - End Sub Public Sub InitParameters() frmMain.txtInterval.Text = 50 frmMain.txtGrid.Text = 20 frmMain.txtX.Text = frmMain.txtY.Text = frmMain.optChanel1 = True End Sub Public Sub WriteData(Ro As Integer, Co As Integer, Value As String, Form As Boolean) 'form=true dang so, =false dang chu If Form = True Then frmMain.msgData.TextMatrix(Ro, Co) = Format(Val(Value), "0.00") Else frmMain.msgData.TextMatrix(Ro, Co) = Value End If End Sub Public Function Read(Options As String) As String frmMain.MSComm1.InBufferCount = frmMain.MSComm1.Output = Chr("&H" + Options) delay (2) Read = frmMain.MSComm1.Input 'Doc gia tri tu ADC 'MsgBox frmMain.MSComm1.Input 'gia tri doc ve gom hai ky tu, ky tu thu nhat la ch1, thu hai la ch2 End Function Public Sub delay(ms As Single) Dim Start Dim Check Start = Timer Do Until Check >= Start + ms * 0.01 Check = Timer DoEvents Loop End Sub Public Sub Draw() Dim i As Integer StdScaleX = Int(frmMain.Picture1.Width / 99) StdScaleY = -Int(frmMain.Picture1.Height / 255) frmMain.Picture1.Cls frmMain.Picture2.Cls BackGround (Val(frmMain.txtGrid.Text)) 94 frmMain.Picture1.ForeColor = &HFF00& frmMain.Picture2.ForeColor = &HFF00& 'For i = To 100 'z(i, 1) = 50 'z(i, 2) = 255 'Next i For i = To 99 If frmMain.optChanel1.Value = True And frmMain.chkBoth.Value = Then frmMain.Picture1.Line (StdScaleX * (i - 1) + 30, StdScaleY * z(i, 1))-(StdScaleX * i + 30, StdScaleY * z(i + 1, 1)) End If 'Doc kenh If frmMain.optChanel2.Value = True And frmMain.chkBoth.Value = Then frmMain.Picture2.Line (StdScaleX * (i - 1) + 30, StdScaleY * z(i, 2))-(StdScaleX * i + 30, StdScaleY * z(i + 1, 2)) End If 'Doc ca hai If frmMain.chkBoth.Value = Then frmMain.Picture1.Line (StdScaleX * (i - 1) + 30, StdScaleY * z(i, 1))-(StdScaleX * i + 30, StdScaleY * z(i + 1, 1)) frmMain.Picture2.Line (StdScaleX * (i - 1) + 30, StdScaleY * z(i, 2))-(StdScaleX * i + 30, StdScaleY * z(i + 1, 2)) End If Next i End Sub Private Sub chkBoth_Click() If chkBoth.Value = Then optChanel1.Enabled = False optChanel2.Enabled = False Else optChanel1.Enabled = True optChanel2.Enabled = True End If End Sub Private Sub cmdExit_Click() Unload Me End End Sub Private Sub cmdSave_Click() Dim i As Integer Dim temp As String Dim Path As String Dim s As String Dim FileNum As Integer Me.dlgSave.CancelError = True On Error GoTo DoNothing dlgSave.DialogTitle = "Save as " dlgSave.Filter = "All Files (*.*)|*.*|Text files (*.txt)|*.txt|" dlgSave.FilterIndex = Me.dlgSave.ShowSave Path = Me.dlgSave.FileName FileNum = FreeFile If optChanel1.Value = True And chkBoth.Value = Then Me.msgData.Row = Me.msgData.Col = Me.msgData.ColSel = Me.msgData.RowSel = LastRow temp = ">>>>>CHANEL 1CHANEL 2BOTH OF CHANELS

Ngày đăng: 02/06/2022, 13:20

Xem thêm:

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN