Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 66 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
66
Dung lượng
663,06 KB
Nội dung
Lời Cảm Ơn Luận văn tốt nghiệp đánh dấu kết thúc trình đào tạo giảng đường đại học, đồng thời mở chân trời mới, hành trang giúp em bước vào đời Để đạt kết ngày hơm nay, ngồi phấn đấu thân công ơn sinh thành, dưỡng dục cha mẹ công ơn dạy dỗ Thầy cô, quan tâm giúp đỡ bè bạn Nhân dịp em xin chân thành cảm ơn thầy trường Tơn Đức Thắng nói chung Thầy cô môn Điều Khiển Tự Động nói riêng truyền đạt kiến thức cho em suốt thời gian học tập trường Đặc biệt em xin cảm ơn Thầy Huỳnh Thái Hoàng tận tình hướng dẫn , bảo tạo điều kiện giúp em hoàn thành tốt luận văn tốt nghiệp -1- MỤC LỤC PHAÀN I: I. II. LÝ THUYẾT 6 BÀN PHÍM 6 1. Mơ Tả Chung 6 2. Kết nối 7 3. Truyền thông máy tính bàn phím 7 4. Bộ mã bàn phím 9 LED: 9 III. Giới thiệu khái quát họ IC MCS-51™ 11 1. Giới thiệu AT89C52 12 2. Những đặc trưng AT89C52 13 IV. IC 74HC595 13 V. GIỚI THIỆU M48T59 17 PHAÀN II: 19 I. II. THIẾT KẾ MỞ ĐẦU 19 1. Sơ đồ khối hệ thống 19 2. Chức khối: 19 PHẦN CỨNG: 20 1. Phương án thiết kế : 20 2. Tính Toán cho khối hiển thị 21 3. Mạch điều khiển trung tâm 22 4. Mạch điều khiển hàng: 23 5. Mạch xuất liệu cho cột 25 6. Sơ đồ kết nối ma trận LED: 26 III. PHẦN MỀM 1. Giao tiếp với khối hiển thị 27 2. Bảng Mã ASCII 31 3. Giao tiếp với bàn phím 32 4. Lưu đồ giải thuật 35 PHAÀN III: I. 27 TỔNG KẾT 36 KẾT QUẢ THỰC HIỆN 36 -2- 1. Kết quả: 36 Ưu nhược điểm: 36 II. HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI: 36 III. KẾT LUẬN: 36 PHẦN IV: PHỤ LỤC 38 PHỤ LỤC 1: CHƯƠNG TRÌNH HỢP NGỮ CỦA THIẾT KẾ 38 PHỤ LỤC 2: TÀI LIỆU THAM KHẢO 66 -3- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG MỞ ĐẦU Trong sống ngày nay, với khoa học đại ngày phát triển mạnh mẽ, ngành công nghiệp mạng, ngành điều khiển tự động… với xã hội ngày văn minh đại, ai muốn tất có sống phải hoàn hảo hơn, đại Và nhu cầu tự động ngày nhiều, đòi hỏi phải thật nhanh xác… Một nhu cầu thiết yếu người phải cần đến phương tiện thơng tin đại chúng từ báo chí, đài phát thanh, tivi, internet… Quang báo điện tử đóng góp phần khơng nhỏ vào sống Nó thể tính ưu hình thức Với Led đơn dùng báo nguồn, báo trạng thái linh kiện điện tử Với Led ma trận, LCD thơng báo dịng thơng tin thời tiết, báo giờ, báo giao thông, quảng cáo… Được đặt nơi công cộng dành cho bảng có kích thước lớn, bảng có kích thước nhỏ dùng xe hơi, máy bay, tàu thuỷ, đồ chơi trẻ em … Trong số thiết bị điện tử nước sử dụng thường có mạch, loại linh kiện quang điện tử : LED, LCD, quang trở, photodiode, LED hồng ngoại, ghép quang… Chúng ta cần biết rõ chế hoạt động chúng không để sửa chữa máy móc bị hư hỏng mà để thiết kế mạch điện tử dùng lĩnh vực thông tin liên lạc, tự động hố, đo đạc… Có nhiều cách để làm quang báo như: dùng IC rời, dùng EPROM, dùng vi xử lý dùng máy tính để điều khiển mạch Nếu dùng IC rời ta sữ dụng IC giải đa hợp ( Demultiplexer ) kết hợp với Diode dể làm thành mạch Rom Chương trình cho loại Rom tạo cách xếp vị trí diode ma trận, cần thay đổi chương trình phải thay đổi lại vị trí diode (thay đổi phần cứng) Dung lượng nhớ kiểu thay đổi theo kích thước mạch, kích thước lớn dung lượng lớn.Vì muốn đủ nhớ để chạy quang báo thông thường kích thước mạch lớn giá thành đội lên cao Khi có vi xử lý tham gia vào mạch quang báo có nhiều chức hơn, với kit vi xử lý điều khiển quang báo ta thay đổi chương trình hiển thị cách dể dàng cách nhập chương trình vào RAM (thay đổi chương trình kit khơng cần phải -4- GVHD: TS HUỲNH THÁI HỒNG SVTH:NGUYỄN VĂN CHUNG tháo IC nhớ đem nạp chương trình EPROM) Do vi xử lý có nhiều chức nên việc thay đổi màu cho bảng đèn thực cách dễ dàng Hơn thiết kế quang báo vi xử lý ta có nhiều lựa chọn giao tiếp ( giao tiếp máy tính, giao tiếp bàn phím…) nhằm tạo thuận lợi cho người dùng cần thay đổi nội dung hiễn thị Vì có nhiều tính ưu việt nên ngày để thiết kế quang báo người ta thường lựa chọn giải pháp dùng chip vi xử lý Tuy nhiên để thiết kế cho có hiệu lựa chọn kiểu giao tiếp phù hợp vấn đề đặt Nếu chọn giải pháp dùng giao tiếp với máy tính quang báo có số ưu định việt thay đổi nội dung, nội dung hiển thị xem trước thông qua phần mềm giao tiếp nên thuận lợi cho người sữ dụng Tuy nhiên việc thiết kế phần mềm cho quang báo giao tiếp với máy tính địi hỏi phải có thời gian, quang báo có hiệu ứng phức tạp phần mềm phức tạp muốn xem trước hiệu ứng trước cho hiển thị quang báo thật Hơn cần thay đổi nội dung bắt buột phải có máy tính, điều tương đối bất tiện Khi dùng giải pháp giao tiếp với quang báo trực tiếp từ bàn phím máy tính có tính tiện dụng cao như: Các ký tự nhập thể trực tiếp hình quang báo giúp ta thấy kết muốn hiển thị Bàn phím gọn, nhẹ nên dể chuyển đến bảng quang báo lớn cần thay đổi nội dung… Đề tài thiết kế quang báo hiển thị tiếng việt có giao tiếp bàn phím mục tiêu để giải vấn đề Luận văn trình bày thiết kế mạch quang báo ứng dụng họ vi điều khiển 8051 dùng bàn phím máy tính để soạn thảo nội dung hiển thị Nội luận văn gồm phần : Phần 1: Nguyên lý hoạt động bàn phím máy tính linh kiện Phần 2: Mô tả nguyên lý hoạt động mạch quang báo phần tính tốn cho phần cứng Phần 3: Là kết trình thực hướng phát triển Đề tài Mặc dù giành nhiều thời gian cố gắng, song không tránh khỏi thiếu sót Rất mong nhận ý kiến đóng góp để cải tiến hồn thiện sản phẩm -5- GVHD: TS HUỲNH THÁI HỒNG PHẦN I: I SVTH:NGUYỄN VĂN CHUNG LÝ THUYẾT BÀN PHÍM Mơ Tả Chung Bàn phím AT gồm có ma trận phím dùng chip vi xử lý để tạo mã cho bàn phím (phổ biến 8048,8049) Mỗi phím ấn định mã để điều khiển bàn phím phát xác xảy cho phím Mã bàn phím gồm có hai loại mã phím nhấn mã phím thả a Mã phím nhấn Khi phím nhấn Bộ điều khiển bàn phím gửi mã phím tới máy tính Ví dụ: Khi nhấn phím ‘A’ bàn phím điều khiển bàn phím gửi mã phím ‘A’ (1CH) tới máy tính Nếu phím phím mở rộng điều khiển bàn phím gửi gửi thêm byte E0h để báo phím mở rộng, sau mã phím b Mã phím nhả Khi phím nhấn nhả điều khiển bàn phím gửi liên tiếp byte tới máy tính ,byte đầu [ F0H ] để báo mã phím thả byte thứ mã phím Ví dụ: Nhấn phím ‘A’ điều khiển bàn phím gửi mã phím nhấn 1CH Khi phím ‘A’ nhả điều khiển bàn phím gửi byte tới máy tính byte đầu [ F0H ] byte thứ [ 1CH] -6- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Kết nối Bàn phím giao tiếp với máy tính theo kiểu nối tiếp dây tín hiệu, dây truyền data dây thứ day truyền xung đồng H - Sơ đồ chân đầu nối bàn phím Truyền thơng máy tính bàn phím Bộ điều khiển bàn phím truyền liệu tới máy tính ngược lại Máy tính có quyền ưu tiên hàng đầu việc điều khiển, máy tính gửi liệu tới điều khiển bàn phím lúc Việc truyền nhận gồm chuỗi 11 bit, bít đọc cạnh xuống xung clock Start bit (0), bit liệu , bit Parity, va stop bit a Bàn phím truyền liệu : Bộ điều khiển bàn phím phép truyền liệu tới máy tính hai đường liệu xung clock đồng mức cao Nếu máy tính giữ đường xung clock mức thấp khơng có liệu điều khiển bàn phím gửi tới xung clock trở lại mức cao Khi đường liệu mức thấp có nghĩa điều khiển bàn phím chuẩn bị nhận liệu từ máy tính -7- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG H - Bàn phím truyền liệu b Bàn phím nhận liệu từ máy tính : Để truyền liệu từ máy tính sang điều khiển bàn phím bắt đầu giữ xung clock bàn phím mức thấp để vơ hiệu hố bàn phím Sau kéo tín hiệu đường liệu bàn phím xuống mức cho phép bàn phím hoạt động trở lại cách cho xung clock mức cao, để yêu cầu điều khiển bàn phím chuẩn bị nhận liệu Sau điều khiển bàn phím tạo xung clock có cạnh xuống xung clock, điều khiển bàn phím đọc bit đầu liệu nhận đủ bit điều khiển bàn phím trở lại trạng thái (idle) điều khiển bàn phím kiểm tra liệu vừa nhận Nếu liệu khơng có lỗi điều khiển bàn phím truyền ACK để báo cho máy tính liệu vừa nhận khơng bị lỗi Ngược lại liệu bị lỗi bàn phím gửi lệnh FE để yêu cầu máy tính truyền lại liệu vừa Sau kết thúc trình truyền nhận liệu, điều khiển bàn phím trở lại trạng thái Idle H – Bàn phím nhận liệu từ máy tính -8- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Bộ mã bàn phím H – mã bàn phím II LED: LED linh kiện phổ thơng quang điện tử LED cho lợi điểm như: tần số hoạt động cao, thể tích nhỏ, cơng suất tiêu hao bé, không rút điện mạnh bắt đầu hoạt động (như bóng đèn rút điện 10 lần nhiều lúc cháy) LED khơng cần kính lọc mà cho màu sắc ( đỏ, xanh, vàng .) Sự phát sinh ánh sáng LED dựa nguyên lý khác với bóng đèn điện -9- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Ma trận LED có nhiều loại có kích thước khác Có nhiều màu xanh, đỏ, vàng Có hai cách để có ma trận LED là: ráp LED rời lại với mua ma trận LED tích hợp sẵn vào vỏ Khi ráp LED rời lại thành ma trận giá thành có rẻ lại khơng thẩm mỹ độ sáng khơng đồng nhìn góc nhìn khác nhau, độ sáng LED không giống không đạt tiêu chuẩn tối ưu kỹ thuật Mạch điện phức tạp có q nhiều chân linh kiện đưa ngồi Khi sử dụng ma trận LED tích hợp sẵn ta khắc phục tất khuyết điểm thẩm mỹ kỹ thuật ma trận dùng LED rời Độ sáng đồng cho tất LED (điều có tính chất tương đối ta khó phân biệt khác mắt thường), LED sáng góc nhìn, đạt tiêu chuẩn yêu cầu kỹ thuật tích hợp vào vỏ nên đường mạch bên LED vẽ với độ xác cao, số lượng chân đưa ngồi nhiều so với ma trận dùng LED rời Ngoài ra, để hiển thị bảng đèn lớn ta dùng bóng đèn tim nung ráp lại thành ma trận H Ma trận LED 8x8 hai màu xanh-đỏ -10- GVHD: TS HUỲNH THÁI HOÀNG Mov SVTH:NGUYỄN VĂN CHUNG KB_STATS, a Ret ;************************************* ; InitKeyb: reset keyboard ;************************************* InitKeyb: Mov KB_TEMP, #0 Mov KB_OK, #0 Mov r1, #0xFF Acall Write_Keyb Acall Check_Keyb Acall CheckACK Jnc InitKeyb Mov KB_OK, #1 Mov KB_STATS, #2; Num Lock ON ;************************************* ; Keyb_LEDs: gửi byte trạng thái LEDs ;************************************* Keyb_LEDs: Mov r1, #0xED ; command Set LEDs Acall Write_Keyb Acall Check_Keyb Acall CheckACK Jnc KeybErr Mov r1, KB_STATS acall Write_Keyb ;send state LEDs Acall Check_Keyb Acall CheckACK KeybErr: Ret ; -; Zero2One: Wait clock line to -52- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG ; Zero2One: Jnb KEYB_CLOCK, $ Jb KEYB_CLOCK, $ Mov c, KEYB_DATA Rrc a Ret ; ;Check_Keyb : kiểm tra phím có gửi liệu ? ;KB_DATA = ASCII ;KB_SCAN = scan code ; -Check_Keyb: Setb KEYB_DATA Setb KEYB_CLOCK; CLOCK & DATA high = Idle Mov r0, #50 CheckAgain: Jnb KEYB_CLOCK, KeyHit Djnz r0, CheckAgain Sjmp KeyEnd KeyHit: Jnb KEYB_DATA, KeyHit2 KeyEnd: Clr KEYB_CLOCK clr c ; disable keyb Ret KeyHit2: Mov r0, #8 ; bits clr a KeyHit3: Acall Zero2One Djnz r0, KeyHit3 -53- GVHD: TS HUỲNH THÁI HOÀNG Mov r1, a Clr a Acall Zero2One ; Parity bit Acall Zero2One ; Stop bit SVTH:NGUYỄN VĂN CHUNG ; Acc.7 = stop, acc.6 = parity clr KEYB_CLOCK Mov a, KB_TEMP Jz NoIgnore Dec KB_TEMP Sjmp ChkKbEnd NoIgnore: Mov KB_SCAN, r1 cjne r1, #0xFA, NoKbACK Orl KB_STATS, #ACK Sjmp ChkKbEnd NoKbACK: Cjne r1,#KB_PAUSE, NoKbPause Mov KB_TEMP, #7 Mov a, KB_OK Cpl acc.6 Mov KB_OK, a Sjmp ChkKbEnd NoKbPause: Cjne r1, #KB_EXT, NoKbExt Orl KB_OK, #EXTENDED Sjmp ChkKbEnd NoKbExt: Cjne r1, #KB_REL, NoRelease Orl KB_STATS, #RELEASE Sjmp ChkKbEnd NoRelease: ; Test Num lock cjne r1, #KB_NUML, NoNumLock -54- GVHD: TS HUỲNH THÁI HOÀNG Mov a, KB_STATS Jnb acc.7, ChkKbEnd Cpl acc.1 Clr acc.7 Mov KB_STATS, a SVTH:NGUYỄN VĂN CHUNG Acall Keyb_LEDs Sjmp ChkKbEnd NoNumLock: Cjne r1, #KB_CAPS, NoCapsLock mov a, KB_STATS Jnb acc.7, ChkKbEnd Cpl acc.2 Clr acc.7 Mov KB_STATS, a ; Test Caps lock Acall Keyb_LEDs Sjmp ChkKbEnd NoCapsLock: ; Test Scroll lock cjne r1, #KB_SCROLL, NoScrollLock Mov a, KB_STATS Jnb acc.7, ChkKbEnd Cpl acc.0 Clr acc.7 Mov KB_STATS, a Acall Keyb_LEDs ChkKbEnd: CLR C Ret NoScrollLock: ; Test L & R shifts, if pressed then set bit, else clear on release cjne r1, #KB_LSHIFT, NoShift1 ShiftOK: -55- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Mov a, KB_STATS Jbc acc.7, ShiftRel Setb acc.3 ; not release, Set SHIFT bit Sjmp ShiftEnd ShiftRel: Clr acc.3 ; release, Clear SHIFT bit ShiftEnd: Mov KB_STATS, a Sjmp ChkKbEnd NoShift1: Cjne r1, #KB_RSHIFT, NoShift Sjmp ShiftOK NoShift: Cjne r1, #KB_CTRL, NoCtrl Mov a, KB_STATS Jbc acc.7, CtrlRel Setb acc.5 ; not release, Set CTRL bit Sjmp CtrlEnd CtrlRel: Clr acc.5 ; release, Clear SHIFT bit CtrlEnd: Mov KB_STATS, a Sjmp ChkKbEnd NoCtrl: Cjne r1, #KB_ALT, NoAlt Mov a, KB_STATS Jbc acc.7, AltRel Setb acc.6 ; not release, Set ALT bit Sjmp AltEnd AltRel: Clr acc.6 ; release, Clear ALT bit AltEnd: -56- GVHD: TS HUỲNH THÁI HOÀNG Mov SVTH:NGUYỄN VĂN CHUNG KB_STATS, a Sjmp ChkKbEnd NoAlt: Mov a, KB_STATS ; test key Release Jnb acc.7, NoRel2 Clr acc.7 ; if release > clear mov KB_STATS, a; rel bit on KB_STATS Clr c ret NoRel2: Mov a, KB_OK ; test key Extend Jnb acc.7, KbChars Clr acc.7 ; if Extended > clear mov KB_OK, a Clr c ; EXT bit on KB_OK ; and nothing ret KbChars: Mov dptr, #KbScanCodes Mov a, KB_STATS Jnb acc.2, TestShift Jb acc.3, KbChkOK Mov a, r1 movc a, @a+dptr Mov r0, a Subb a, #97 Jc KbChkOK Mov a, r0 subb a, #123 Jnc KbChkOK Mov dptr, #KbScanCodes2 ; if (a to z) & Caps > KbScanCodes2 Sjmp KbChkOK TestShift: Jnb acc.3, KbChkOK -57- GVHD: TS HUỲNH THÁI HOÀNG Mov dptr, #KbScanCodes2 SVTH:NGUYỄN VĂN CHUNG ; with shift KbScanCodes2 KbChkOK: Mov a, r1 movc a, @a+dptr Mov KB_DATA, a Setb c ret ;************************************* ; Zero2One2: ;************************************* Zero2One2: Jnb KEYB_CLOCK, $ Jb KEYB_CLOCK, $ Ret ;************************************* ; Write_Keyb: ;************************************* Write_Keyb: Mov r0, #8 ; bits to receive clr KEYB_CLOCK Mov r7, #0 ; delay ; break Keyboard _WKwait: Djnz r7, _WKwait Clr KEYB_DATA Setb KEYB_CLOCK Acall Zero2One2 Mov a, r1 ; Start Bit ; Data Bits TxData: Rrc a Mov KEYB_DATA, c acall Zero2One2 Djnz r0, TxData -58- GVHD: TS HUỲNH THÁI HOÀNG Mov a, r1 Mov c, psw.0 Cpl c Mov KEYB_DATA, c SVTH:NGUYỄN VĂN CHUNG ; tính parity bit ; ki?M l? Acall Zero2One2 Setb KEYB_DATA Acall Zero2One2 Acall Zero2One2 Mov c, KEYB_DATA ; get ACK bit Clr KEYB_CLOCK ; stop keyboard ret CHARACTER: DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, FFH DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ; PS ; space DB 0, 0, 0, 0, 24, 24, 24, 24, 24, 24, 24, 24, 0, 24, 24, DB 0, 0, 0, 0, 108,108,36, 36, 0, 0, 0, 0, 0, 0, 0, ;! ;" DB 0, 0, 0, 0, 40, 40, 40, 254,40, 40, 40, 254,40, 40, 40, ; # DB 0, 0, 0, 0, 40, 40, 124,170,168,124,42, 170,124,40, 40, DB 0, 0, 0, 0, 96, 145,146,100,8, 16, 38, 73, 137,6, 0, ;% DB 0, 0, 0, 0, 24, 36, 36, 24, 120,136,132,133,130,133,120,0 DB 0, 0, 0, 0, 112,112,16, 16, 0, 0, 0, 0, 0, 0, 0, ;$ ;& ;' DB 0, 0, 0, 0, 4, 8, 16, 16, 16, 16, 16, 16, 16, 8, 4, ; ( DB 0, 0, 0, 0, 16, 8, 4, 4, 4, 4, 4, 4, 4, 8, 16, ;) DB 0, 0, 0, 0, 0, 16, 146,84, 56, 254,56,84, 146,16, 0, ;* DB 0, 0, 0, 0, 0, 0, 16, 16, 16, 254,16, 16, 16, 0, 0, ;+ DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 56, 8, ;, DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 254,0, 0, 0, 0, 0, ;- DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 24, ; DB 0, 0, 0, 0, 4, 4, 8, 8, 16, 16, 32, 32, 64, 64, 0, ;/ DB 0, 0, 0, 0, 124,130,130,134,138,146,162,194,130,124,0, DB 0, 0, 0, 0, 8, 24, 40, 72, 8, 8, 8, 8, 8, 8, 0, ;1 DB 0, 0, 0, 0, 124,130,2, 2, 12, 16, 32, 64, 128,254,0, -59- ;2 ;0 GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG DB 0, 0, 0, 0, 124,130,2, 2, 60, 2, 2, 2, 130,124,0, ; DB 0, 0, 0, 0, 2, 6, 10, 18, 34, 66, 130,255,2, 2, 0, ; DB 0, 0, 0, 0, 126,64, 128,128,252,2, 2, 130,130,124,0, ;5 DB 0, 0, 0, 0, 124,130,128,128,188,194,130,130,130,124,0, DB 0, 0, 0, 0, 254,130,2, 6, 4, 12, 8, 8, 16, 16, 0, ;6 ;7 DB 0, 0, 0, 0, 124,130,130,130,124,130,130,130,130,124,0, DB 0, 0, 0, 0, 124,130,130,130,126,2, 2, 2, 130,124,0, DB 0, 0, 0, 0, 0, 0, 24, 24, 0, 0, 24, 24, 0, 0, 0, ;: DB 0, 0, 0, 0, 0, 0, 24, 24, 0, 0, 24, 24, 8, 8, 0, ;; DB 0, 0, 0, 0, 2, 4, 8, 16, 32, 64, 32, 16, 8, 4, 2, ;< DB 0, 0, 0, 0, 0, 0, 0, 126,0, 0, 126,0, 0, 0, 0, ;= ;8 ;9 DB 0, 0, 0, 0, 64, 32, 16, 8, 4, 2, 4, 8, 16, 32, 64, ; > DB 0, 0, 0, 0, 60, 66, 66, 2, 4, 8, 16, 16, 16, 0, 16, ;? DB 0, 0, 0, 0, 60, 66, 129,149,173,165,173,146,128,65, 62, DB 0, 0, 0, 0, 16, 40, 40, 40, 40, 68, 68, 124,130,130,0, ;@ ;A DB 0, 0, 0, 0, 252,130,130,130,252,130,130,130,130,252,0, ;B DB 0, 0, 0, 0, 124,130,130,128,128,128,128,130,130,124,0, ;C DB 0, 0, 0, 0, 252,66, 66, 66, 66, 66, 66, 66, 66, 252,0, ;D DB 0, 0, 0, 0, 254,130,128,128,128,248,128,128,130,254,0, ;E DB 0, 0, 0, 0, 254,130,128,128,128,248,128,128,128,128,0, ;F DB 0, 0, 0, 0, 120,132,132,128,128,128,158,132,132,120,0, ;G DB 0, 0, 0, 0, 130,130,130,130,130,254,130,130,130,130,0, ;H DB 0, 0, 0, 0, 254,16, 16, 16, 16, 16, 16, 16, 16, 254,0, ;I DB 0, 0, 0, 0, 0, 254,16, 16, 16, 16, 16, 16, 16, 16, 16, 224 ;J DB 0, 0, 0, 0, 130,132,136,144,160,192,160,144,136,134,0, ;K DB 0, 0, 0, 0, 128,128,128,128,128,128,128,128,130,254,0, ;L DB 0, 0, 0, 0, 130,198,198,170,170,146,146,130,130,130,0, ;M DB 0, 0, 0, 0, 194,162,162,162,146,146,146,138,138,134,0, ;N DB 0, 0, 0, 0, 56, 68, 130,130,130,130,130,130,68, 56, 0, ; O DB 0, 0, 0, 0, 252,66, 66, 66, 66, 252,64, 64, 64, 224,0, ;P DB 0, 0, 0, 0, 56, 68, 130,130,130,130,130,138,68, 58, 0, ;Q DB 0, 0, 0, 0, 252,66, 66, 66, 66, 252,96, 80, 72, 70, 0, -60- ;R GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG DB 0, 0, 0, 0, 124,130,130,128,124,2, 2, 130,130,124,0, ;S DB 0, 0, 0, 0, 254,146,16, 16, 16, 16, 16, 16, 16, 56, 0, ;T DB 0, 0, 0, 0, 130,130,130,130,130,130,130,134,138,115,0, DB 0, 0, 0, 0, 130,130,130,68,68,68,40,40,40,16,0,0 ;V DB 0, 0, 0, 0, 130,130,146,146,170,170,170,198,198,130,0, DB 0, 0, 0, 0, 130,68, 68, 40, 56, 56, 40, 68, 68, 130,0, ;X DB 0, 0, 0, 0, 130,130,68, 68, 40, 56, 16, 16, 16, 16, 0, ;Y DB 0,0,0,0,254,2,6,12,24,48,96,192,128,254,0,0 ;U ;W ;Z DB 0, 0, 0, 0, 28, 16, 16, 16, 16, 16, 16, 16, 16, 16, 28, ;[ DB 0, 0, 0, 0, 64, 64, 32, 32, 16, 16, 8, 8, 4, 4, 0, ; \ DB 0, 0, 0, 0, 28, 4, 4, 4, 4, 4, 4, 4, 4, 4, 28, ;] DB 0, 0, 16, 40, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ;^ DB 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 126,0, ;_ DB 0, 0, 0, 0, 32, 16, 8, 0, 0, 0, 0, 0, 0, 0, 0, ;` DB 0, 0, 0, 0, 0, 0, 0, 124,130,2, 122,134,130,123,0, ;a DB 0, 0, 0, 128,128,128,128,188,194,130,130,130,194,188,0, 0; b DB 0, 0, 0, 0, 0, 0, 0, 124,130,128,128,128,130,124,0, ;c DB 0, 0, 0, 2, 2, 2, 2, 122,134,130,130,130,134,123,0, ;d DB 0, 0, 0, 0, 0, 0, 0, 124,130,130,254,128,130,124,0, ;e DB 0, 0, 0, 12, 16, 16, 16, 124,16, 16, 16, 16, 16, 16, 0, ;f DB 0, 0, 0, 0, 0, 0, 0, 124,130,130,130,126,2, 2, 124,0 ;g DB 0, 0, 0, 128,128,128,128,184,196,132,132,132,132,132,0, DB 0, 0, 0, 0, 0, 32, 0, 32, 32, 32, 32, 32, 34, 28, 0, ;i DB 0, 0, 0, 0, 0, 0, 16, 0, 16, 16, 16, 16, 16, 16, 96, ;j ;h DB 0, 0, 0, 128,128,128,128,132,152,160,192,160,152,132,0, ;k DB 0, 0, 0, 128,128,128,128,128,128,128,128,128,132,120,0, ;l DB 0, 0, 0, 0, 0, 0, 0, 172,210,146,146,146,146,146,0, ;m DB 0, 0, 0, 0, 0, 0, 0, 220,98, 66, 66, 66, 66, 67, 0, ;n DB 0, 0, 0, 0, 0, 0, 0, 48, 72, 132,132,132,72, 48, 0, ;o DB 0, 0, 0, 0, 0, 0, 0, 92, 98, 66, 66, 98, 92, 64, 64, ;p DB 0, 0, 0, 0, 0, 0, 0, 58, 70, 66, 66, 70, 58, 2, 2, ;q DB 0, 0, 0, 0, 0, 0, 0, 92, 96, 64, 64, 64, 64, 64, 0, ;r -61- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG DB 0, 0, 0, 0, 0, 0, 0, 60, 66, 64, 60, 2, 66, 60, 0, ;s DB 0, 0, 0, 0, 32, 32, 32, 248,32, 32, 32, 32, 34, 28, 0, ;t DB 0, 0, 0, 0, 0, 0, 0, 132,132,132,132,132,140,118,0, ;u DB 0, 0, 0, 0, 0, 0, 0, 130,130,68, 68, 40, 16, 16, 0, ;v DB 0, 0, 0, 0, 0, 0, 0, 130,146,170,170,198,198,130,0, ;w DB 0, 0, 0, 0, 0, 0, 0, 130,68, 40, 16, 40, 68, 130,0, ;x DB 0, 0, 0, 0, 0, 0, 0, 66, 66, 66, 70, 58, 2, 2, 60, ;y DB 0, 0, 0, 0, 0, 0, 0, 124,4, 8, 16, 32, 64, 124,0, ;z Db 0, 0, 0, 0, 24, 32, 32, 32, 32, 64, 32, 32, 32, 32, 24, ;{ DB 0, 0, 0, 0, 0, 16, 16, 16, 16, 0, 0, 16, 16, 16, 16, ;| DB 0, 0, 0, 0, 48, 8, 8, 8, 8, 4, 8, 8, 8, 8, 48, ;} DB 0, 0, 0, 0, 0, 0, 98, 146, 140, 0, 0, 0, 0, 0, ;~ KbScanCodes: ;? , F9,? , F5, F4, F1, F2, F12,? , F10, F8, F6, F4, TAB, ~ Db 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, '`' ;? ,? ,Lalt,Lshf,? ,Lctr, Q,!,? ,? ,? , Z, S, A, W, @ Db 0, 0, 0, 0, 0, 0, 'q', '1', 0, 0, 0, 'z', 's', 'a', 'w', '2' ;? ,? , C, X, D, E, $, #,? ,? , " ", V, F, T, R Db 0, 0, 'c', 'x', 'd', 'e', '4', '3', 0, 0, ' ', 'v', 'f', 't', 'r' ; %,? ,? , N, B, H, G, Y, ^,? ,? ,? , M, J, U, & Db '5', 0, 0, 'n', 'b', 'h', 'g', 'y', '6', 0, 0, 0, 'm', 'j', 'u', '7' ; *,? ,? , ,?, L,:, P Db '8', 0, 0, ',', 'k', 'i', 'o', '0', '9', 0, 0, '.', '/', 'l', ';', 'p' ; _,? ,? ,? , ",? , {, +,? ,? ,Caps,Rshf,Entr, },? , | Db '-', 0, 0, 0, ''', 0, '[', '=', 0, 0, 0, 0, 1, ']', 0, 92 ;? ,? ,? ,? ,? ,? ,? ,? ,BkSp,? ,? , 1,? , 4, 7,? ,? ,? , Db 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, '1', 0, '4', '7', 0, 0, 0, '0' ;., 2, 5, 6, 8, ESC,Numl, F11, +, 3, -, *, 9, Scrl Db '.', '2', '5', '6', '8', 1, 0, 1, '+', '3', '-', '*', '9', ;? ,? ,? ,? , F7 -62- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Db 0, 0, 0, 0, KbScanCodes2: Db 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, '~' Db 0, 0, 0, 0, 0, 0, 'Q','!', 0, 0, 0, 'Z','S','A','W', '@' Db 0, 0, 'C','X','D','E','$','#', 0, 0, ' ','V','F','T','R' Db '%', 0, 0, 'N','B','H','G','Y','^', 0, 0, 0, 'M','J','U', '&' Db '*', 0, 0, '','?','L',':', 'P' Db '_', 0, 0, 0, '"', 0, '{','+', 0, 0, 0, 0, 1, '}', 0, '|' Db 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, '1', 0, '4','7', 0, 0, 0, '0' Db '.','2','5','6','8', 1, 0, 1, '+','3','-','*','9', Db 0, 0, 0, 0, End_Mess Bit 20h.0 Charl Equ 48 Charh Equ 49 Row Equ 50 Rowh Equ 51 Rowl Equ 52 Wrote Equ 53 Line Equ 54 Nchar Equ 55 M Equ 56 Kb_Ok Equ 57 Kb_Data Equ 58 Kb_Stats Equ 59 Kb_Scan Equ 60 Kb_Temp Equ 61 Len_String Equ 62 Interval Equ 63 Pointer Equ 64 Dau Equ 65 N Equ 66 Mode Equ 67; Rom Ram -63- GVHD: TS HUỲNH THÁI HOÀNG Buffer Equ 68 Tempmess Equ Speed Equ Message1 Equ SVTH:NGUYỄN VĂN CHUNG F00h 1000h Keyb_Data Bit P3.2 ; At Keyboard Data Keyb_Clock Bit P3.3 ; At Keyboard Clock Col Bit P1.0 Clkc Bit P1.1 Red Bit P1.4 Clkr Bit P1.5 Clear Bit P1.6 En Bit P1.7 Kb_Lshift Equ 12h Kb_Rshift Equ 59h Kb_Ctrl Equ 14h Kb_Alt Equ 11h Kb_Caps Equ 58h Kb_Scroll Equ 7eh Kb_Numl Equ 77h Kb_Tab Equ 0dh Kb_Rel Equ F0h Kb_Ext Equ E0h Kb_Pause Equ E1h Bsp Equ 66h ; Flags (Bit Of [Kb_Stats]) Caps Equ 01h; Bit Numl Equ 02h; Bit Scroll Equ 04h; Bit Shift Equ 08h; Bit Ack Equ 10h; Bit Ctrl Equ 20h; Bit Alt Equ 40h; Bit -64- GVHD: TS HUỲNH THÁI HOÀNG Release Equ SVTH:NGUYỄN VĂN CHUNG 80h; Bit ; Flags (Kb_Ok) Paused Equ 40h Extended Equ 80h End -65- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG PHỤ LỤC : TÀI LIỆU THAM KHẢO ĐIỀU KHIỂN VÀ GHÉP NỐI CÁC THIẾT BỊ NGOẠI VI Trần Bá Thái _ NXB KHKT Hà Nội _ 1984 GIÁO TRÌNH HỢP NGỮ Đại Học Mở Bán Công TPHCM _ 1995 KỸ THUẬT VI XỬ LÝ Văn Thế Minh _ NXB GD _ 1997 HỌ VI ĐIỀU KHIỂN 8051 Tống Văn Ơn LINH KIỆN QUANG ĐIỆN TỬ Dương Minh Trí ĐIỆN TỬ CƠNG SUẤT Võ Minh Chính -66- ... CHUNG Ma trận LED hai loại catot chung anode chung hình nên trước ráp vào mạch cần dùng VOM kiểm tra trước xem có LED bị hư khơng phải gắn thứ tự chân H – Sơ đồ chân ma trận LED loại anode chung. .. MCS-51 Intel Siemens, Advanced Micro Devices, Fujitsu, Philips, Atmel… Các IC họ MCS-51 có đặc trưng chung sau: Port I/O bit -11- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Giao tiếp nối... SVTH:NGUYỄN VĂN CHUNG H 19 – Chữ thường -33- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG H 20 – Bảng mã chuyển mã phím sang mã ASCII -34- GVHD: TS HUỲNH THÁI HOÀNG SVTH:NGUYỄN VĂN CHUNG Lưu đồ