Thông báo

Tất cả đồ án đều đã qua kiểm duyệt kỹ của chính Thầy/ Cô chuyên ngành kỹ thuật để xứng đáng là một trong những website đồ án thuộc khối ngành kỹ thuật uy tín & chất lượng.

Đảm bảo hoàn tiền 100% và huỷ đồ án khỏi hệ thống với những đồ án kém chất lượng.

THIẾT KẾ MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG

mã tài liệu 300600600025
nguồn huongdandoan.com
đánh giá 5.0
mô tả ĐỒ ÁN TỐT NGHIỆP MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG, TÌM HIỂU NGÔN NGỮ LẬP TRÌNH DELPHI, TÌM HIỂU CẤU TRÚC VI ĐIỀU KHIỂN 8051...., KÈM TÀI LIỆU TIẾNG ANH THAM KHẢO
giá 200,000 VNĐ
download đồ án

NỘI DUNG ĐỒ ÁN

THIẾT KẾ MẠCH QUANG BÁO DÙNG  ĐỒ ÁN TỐT NGHIỆP MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG, TÌM HIỂU NGÔN NGỮ LẬP TRÌNH DELPHI, TÌM HIỂU CẤU TRÚC VI ĐIỀU KHIỂN 8051

Sự phát triển như vũ bảo của Khoa học - Kỹ thuật ngày nay đã có tác động rất lớn đến đời sống của con người .Những thành tựu của Khoa học – Kỹ thuật nói chung và của Ngành điện tử nói riêng đã tạo ra nhiều trang thiết bị hiện đại. Mỗi thiết bị có những tính năng riêng, ưu điểm riêng. Nhưng đều có chung một mục đích là phục vụ cho nhu cầu của con người .

Trong những năm gần đây với những thay đổi rất lớn của khoa học công nghệ, thì việc thích nghi cũng như đáp ứng những yêu cầu của con người là hết sức cần thiết. Trước đây, để thiết kế một board mạch điện thì chúng ta phải gặp nhiều khó khăn từ ý tưởng thiết kế cho đến thi công; không kể khi có sự thay đổi thì chúng ta phải sửa lại đôi khi còn phải làm lại cái mới, điều này gây cho ta tổn thất về nhiều mặt. Thế nhưng, khi vi mạch số lập trình ra đời thì vấn đề này đã được khắc phục. Với vi mạch số lập trình ta có thể tạo ra mạch điện một cách nhanh gọn và việc tái sử dụng cũng rất nhanh chóng, không những thế khả năng bảo mật công nghệ cũng rất cao. Với những ưu điểm như vậy, chắc chắn vi mạch số lập trình sẽ phát triển nhanh chóng và hiện nay ở nước ta đã có rất nhiều tập thể và cá nhân quan tâm và nghiên cứu đến chúng. Đề tài mà nhóm chọn “ MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG  ”, cũng để thử nghiệm và ứng dụng sức mạnh của CPLD . Đề tài này sẽ là tài liệu cần thiết cho các bạn quan tâm đến vi mạch số lập trình đồng thời cũng là cơ hội để nhóm có thể tìm hiểu sâu hơn để có thể  ứng dụng của vi mạch số lập trình nhiều hơn nữa vào thực tiễn. Hiên nay, trên thị trường lao động cũng có rất nhiều công ty tuyển dụng về mảng đề tài này và đặc biệt môn vi mạch số lập trình cũng đã được nhiều trường đưa vào giảng dạy. Như vậy, với những động thái đó thì vi mạch số lập trình sẽ trở nên gần gũi với các bạn sinh viên kỹ thuật hơn và ngày sẽ có nhiều ứng dụng mới của vi mạch số lập trình trong xã hội.

TÓM TẮT ĐỒ ÁN TỐT NGHIỆP

Cuốn báo cáo đề tài được trình bày theo cấu trúc như sau :

Phần A. GIỚI THIỆU.

Phần giới thiệu nêu ra nhiệm vụ đồ án tốt nghiệp, phân công cán bộ hướng dẫn và phản biện, lời cảm ơn, mục lục của đồ án.

Phần B. NỘI DUNG.

Phần nội dung được chia thành  11 chương như sau :

Chương 1. DẪN NHẬP

  • Trong chương này, nhóm thực hiện đề tài giới thiệu một cách khái quát về đề tài mà nhóm tiến hành nghiên cứu : Đặt vấn đề, Ý nghĩa khoa học và thực tiễn của đề tài, Phương pháp nghiên cứu, Kế hoạch nghiên cứu.

Chương 2. CƠ SỞ LÝ LUẬN

  • Chương 2 trình bày lý thuyết về: Lý thuyết về truyền thông nối tiếp, Lý thuyết về quang báo….

Chương 3.   TÌM HIỂU NGÔN NGỮ LẬP TRÌNH DELPHI

  • Trong chương này tìm hiểu một số thuộc tính của Delphi , nhóm lệnh và cách viết chương trình đơn giản.

Chương 4. TÌM HIỂU CẤU TRÚC VI ĐIỀU KHIỂN 8051

  • Trong chương này trình bày các lý thuyết về: Cấu trúc Vi điều khiển 8051, Truyền thông nối tiếp, Vi điều khiển giao tiếp với bộ nhớ ngoài, Sơ lược tập lệnh vi điều khiển 8051.

Chương 5. GIỚI THIỆU BỘ NHỚ BÁN DẪN

  • Trong chương này trình bày các lý thuyết về: Các thông số quan trọng của bộ nhớ bán dẫn, Hoạt động đọc và ghi cho bộ nhớ, Bộ nhớ chỉ đọc ROM, Bộ nhớ truy xuất ngẫu nhiên RAM, Giới thiệu SRAM62256.

Chương 6. TỔNG QUAN VỀ PLD VÀ NGÔN NGỮ LẬP TRÌNH VHDL

  • Chương này trình bày lý thuyết về: Lịch sử phát triển của vi mạch số lập trình, Giải thích PLD là gì?Các thiết bị logic khả trình, Khảo sát vi mạch số lập trình XC95144XL, Ngôn ngữ lập trình VHDL.

Chương 7. THIẾT KẾ PHẦN CỨNG

  • Chương này trình bày lý thuyết về: Sơ đồ khối thiết kế, Khối nguồn, Khối giao tiếp với máy tính, Khối vi điều khiển-Bộ nhớ lưu trữ dữ liệu, Thiết kế khối CPLD, Thiết kế khối công suất, Thiết kế khối nhận dữ liệu nối tiếp ra song song, Thiết kế bảng Led ma trận.

Chương 8. THIẾT KẾ PHẦN MỀM

  • Chương này trình bày lý thuyết về: Chương trình xử lý và truyền dữ liệu từ máy tính.
  •  Chương trình nhận dữ liệu của Vi điều khiển để đưa ra bộ nhớ ngoài.
  • Chương trình lấy và xuất dữ liệu ra led ma cho CPLD.

Chương 9. THI CÔNG

  • Chương 8 trình bày các phương án thi công phần cứng cũng như phần mềm hệ thống.

Chương 10. KẾT QUẢ NGHIÊN CỨU, KẾT LUẬN VÀ ĐỊNH HƯỚNG PHÁT TRIỂN

  • Chương này trình bày về: Kết quả nghiên cứu, Kết luận, Đề nghị và định hướng phát triển đề tài.

Phần C. PHỤ LỤC – TÀI LIỆU THAM KHẢO.

PHỤ LỤC

Phần phụ lục trình bày mã nguồn chương trình DELPHI, mã nguồn chương trình Vi điều khiển, mã nguồn chương trình VHDL.

TÀI LIỆU THAM KHẢO

Những tài liệu trong nước, ngoài nước cũng như tài liệu tải về từ Internet. Đây là nguồn tài liệu đóng vai trò quan trọng trong việc hoàn thành đề tài.

MỤC LỤC

Trang

Phần A            Giới thiệu................................................................................................. i

Trang bìa......................................................................................................................... ii

Trang phân công cán bộ hướng dẫn và phản biện.................................................... iii

Nhiệm vụ đồ án tốt nghiệp........................................................................................... iv

Trang nhận xét của giáo viên hướng dẫn.................................................................... v

Trang nhận xét của giáo viên phản biện.................................................................... vi

Lời nói đầu……………………………………………………………………….vii

Lời cảm ơn                                                                                                                    viii

Tóm tắt đồ án tốt nghiệp…………………………………………………………ix

Mục lục                                                                                                                             x

Liệt kê bảng                                                                                                                     xi

Liệt kê hình                                                                                                                     xi

Phần B            Nội dung.................................................................................................. 1

Chương 1       Dẫn nhập................................................................................................. 2

  1. Đặt vấn đề................................................................................................................. 2
  2. Ý nghĩa khoa học và thực tiễn của đề tài............................................................. 3
  3. Phương pháp nghiên cứu........................................................................................ 3

1.4 Lập kế hoạch nghiên cứu.................................................................................... 3-4

Chương 2       Cơ sở lý luận........................................................................................... 5

2.1 Truyền thông nối tiếp........................................................................................ 5-12

2.2  Quang báo........................................................................................................ 12-17

Chương 3  Tìm hiểu ngôn ngữ lập trình DELPHI.................................................... 18

3.1 Giới thiệu một số ngôn ngữ lập trình.................................................................. 18

3.2 Cài đặt- khởi động Delphi- component........................................................ 18-22

3.3 Các kiểu dữ liệu-khai báo hằng ,biến, mảng................................................ 22-23

3.4 Các kiểu chuỗi,các hàm xử lí chuỗi.............................................................. 23-27

3.5 Các toán tử- các lệnh trong Delphi............................................................... 27-31

3.6 Form và đối tượng button của Delphi........................................................... 31-36

3.7 Khảo sát đối tượng label và edit của Delphi................................................ 36-37

3.8 Khảo sát các hàm chuyển đổi........................................................................ 37-39

Chương 4    Tìm hiểu cấu trúc của vi điều khiển (VĐK) 8051............................. 40

4.1       Cấu trúc VĐK 8051q................................................................................ 40-51                                                                                

4.2       Truyền thông nối tiếp................................................................................ 51-54

4.3      Vi điều khiển giao tiếp với bộ nhớ ngoài................................................ 54-56

4.4       Sơ lược về tập lệnh của VĐK................................................................... 56-58

Chương 5       Giới thiệu bộ nhớ bán dẫn.................................................................. 59

5.1 Các thông số quan trọng của bộ nhớ bán dẫn.................................................... 59

5.2       Hoạt động đọc và ghi cho bộ nhớ............................................................ 59-60

5.3       Bộ nhớ chỉ đọc ROM................................................................................. 60-61

5.4       Bộ nhớ truy xuất ngẫu nhiên RAM.......................................................... 61-62

5.5      Giới thiệu SRAM 62256............................................................................ 62-64

Chương 6       Tổng quan về PLD và ngôn ngữ lập trình VHDL............................ 65

6.1     Lịch sử vi mạch số lập trình...................................................................... 65-68

6.2     PLD có nghĩa là gì:............................................................................................ 68

6.3      Các thiết bị logic khả trình........................................................................ 68-70

6.4      Khảo sát vi mạch số lập trình XC95144XL............................................ 70-82

6.5      Ngôn ngữ lập trình VHDL……………………………………………82-90

6.6      Một số định nghĩa trong VHDL……………………………………  90-106

6.7     Các phép toán dùng trong VHDL.......................................................... 106-108

6.8     Các kiểu dữ liệu dùng trong VHDL...................................................... 108-113

6.9     Các thuộc tính hàm................................................................................. 113-115

6.10    Chương trình con và gói dữ liệu.......................................................... 115-118

6.11    Cấu hình cho các phần tử trong VHDL.............................................. 118-120

Chương 7       Thiết kế phần cứng............................................................................ 121

7.1        Sơ đồ khối thiết kế........................................................................................ 121

7.2        Khối nguồn............................................................................................ 122-123

7.3        Thiết kế khối giao tiếp với máy tính.................................................. 123-124

7.4        Thiết kế khối VĐK, bộ nhớ lưu trữ dữ liệu....................................... 124-126

7.5        Thiết kế khối CLPD.............................................................................. 126-127

7.6        Thiết kế khối công suất........................................................................ 127-133

7.7        Thiết kế bảng led ma trận.................................................................... 133-136

Chương 8       Thiết kế phần mềm............................................................................ 137

8.1      Xây dựng giao diện người dùng........................................................... 137-138

8.2      Chương trình xử lý và truyền dữ liệu từ máy tính............................. 138-140

8.3      Chương trình nhận dữ liệu của vi điều khiển..................................... 141-143

8.4      Chương trình của CPLD........................................................................ 143-146

Chương 9       Thi công.............................................................................................. 147

9.1        Thi công phần cứng...................................................................................... 147

9.2        Sơ đồ mạch............................................................................................ 147-148

9.3        Thi công phần mềm điều khiển.......................................................... 148-189

9.4        Kiểm tra các yêu cầu của hệ thống............................................................. 149

9.5        Sản phẩm sau khi hoàn tất........................................................................... 149

Chương 10     Kết quả nghiên cứu, Kết luận và Định hướng phát triển............. 150

10.1    Kết quả nghiên cứu........................................................................................ 150

10.2      Kết luận......................................................................................................... 150

10.3     Đề nghị........................................................................................................... 150

10.4      Định hướng phát triển.................................................................................. 151

Phần C            Phụ lục và tài liệu tham khảo.......................................................... 152

Phụ lục A : Mã nguồn chương trình trên máy tính........................................ 153-169

Phụ lục B : Mã nguồn nhận dữ liệu của vi  điều khiển......................................... 170

Phụ lục C : Mã nguồn chương trình đọc dữ liệu cho CPLD......................... 171-177

Tài liệu tham khảo............................................................................................. 178-179

Liệt kê bảNG                                                                               

Bảng 2.1: So sánh các chuẩn giao tiếp………………………………………….5

Bàng 2.2: Chức năng của các chân của RS232…………………………………8

Bàng 2.3: Kiểm tra LRC……………………………………………………….12

Bảng 4.1: Chức năng của các chân ở port 3..................................................... …..41

Bảng 4.2: Trạng thái thanh ghi trong 89S51 say khi reset hệ thống................. ..42

Bảng 4.3: Thanh ghi PSW..................................................................................... …46

Bàng 4.4: Lựa chọn các bank thanh ghi………………………………………..47

Bảng 4.5: Tên, chức năng, địa chỉ của các thanh ghi liên quan dến timer....... ..47

Bảng 4.6: Thanh ghi chọn kiểu làm việc cho timer, counter............................. ..47

Bàng 4.7: Chọn kiểu làm việc của các Timer…………………………………..48

Bảng 4.8: Chức năng các bít của thanh ghi TCON....................................... ……48

Bàng 4.9: Hoạt động từng bit trong thanh ghi cho phép ngắt IE……………….49

Bàng 4.10: Hoạt động của từng bit trong thanh ghi IP…………………………50

Bàng 4.11: Các vector ngắt……………………………………………………..50

Bảng 4.12: Thanh ghi SCON.................................................................................... 51

Bảng 4.13: Thiết lập tốc độ baud............................................................................. 52

Bảng 5.1: Các loại EPROM thông dụng………………………………………..61

Bảng 6.1: Các vi mạch số lập trình trong họ XC95144XL.................................. 72

Bảng 6.2: Các kiểu đóng vỏ và số chân I/O của họ XC9500XL……………….73

Bảng 6.3: Mô tả chân của XC95144XL.................................................................. 82

Bảng 6.4: Các phép toán số học………………………………………………..106

Bảng 6.5: Các phép toán logic………………………………………………….107

Bảng 6.6: Các phép toán so sánh……………………………………………….107

Bảng 6.7: Các phép toán dịch và xoay………………………………………….107

Bảng 6.8: So sánh sự khác biệt giữa Variable và Signal………………………..109

Bảng 6.9: Thuộc tính giá trị loại dữ liệu………………………………………...112

Bảng 6.10: Bảng thuộc tính Type……………………………………………….113

Bảng 6.11: Thuộc tính đối với mảng……………………………………………113

Bảng 6.12: Thuộc tính có chức năng Signal…………………………………….113

Bảng 6.13: Các thuộc tính đối với Signal……………………………………….114

Bảng 6.14: Các thuộc tính Range……………………………………………….115

Bảng 7.1: Các IC chuyên dụng trong giao tếp RS232........................................ ….124

Liệt kê hình

Hình 2.1: Truyền nối tiếp đồng bộ……………………………………………………6

Hình 2.2: Truyền nối tiếp bất đồng bộ……………………………………………......7

Hình 2.3:  Cổng RS232 9 chân………………………………………………………..8

Hình 2.4:  Cổng RS232 25 chân……………………………………………………….8

Hình 2.5:  Dòng dữ liệu trên cổng RS232 với tốc độ 9600 baud…………………........9

Hình 2.6:  Sơ đồ khối hệ thống quang báo…………………………………………....12

Hình 3.1:  Thành phần Menu trong Delphi…………………………………………...18

Hình 3.2:  Thành phần thuộc tính và sự kiện trong Delphi…………………………...19

Hình 3.3:  Thành phần Form………………………………………………………….19

Hình 3.4:  Thành phần biênsoạn……………………………………………………...20

Hình 3.5:  Chọn mục option………………………………………………………….21

Hình 3.6:  Chọn mục package………………………………………………………...22

Hình 3.7:  Add thêm thành phần Component………………………………………...23

Hình 3.8:  Thành phần Delphi………………………………………………………..32

Hình 3.9: Thuộc tính của Form………………………………………………………32

Hình 3.10: Thay đổi thuộc tính………………………………………………………34

Hình 3.11:  Khảo sát đối tượng trên Button………………………………………….34

Hình 3.12:  Khảo sát đối tượng trên Button………………………………………….35

Hình 3.13:  Khảo sát đối tượng trên Button………………………………………….35

Hình 3.14: Giao diện chạy chương trình……………………………………………..36

Hình 3.15:  Thành phần Label………………………………………………………..36

Hình 3.16:  Thành phần Edit…………………………………………………………37

Hình 4.1:  Sơ đồ chân 89S51…………………………………………………………40

Hình 4.2:  Sơ đồ khối bên trong vi điều khiển……………………………………….43

Hình 4.3:  Cấu trúc Ram của vi điều khiển…………………………………………..44

Hình 4.4:  Thiết lập tốc độ Baud……………………………………………………..52

Hình 4.5:  Hoạt động ngắt……………………………………………………………53

Hình 4.6:  Chọn cờ ngắt………………………………………………………………54

Hình 4.7:  Sơ đồ kết nối vi điều khiển với EPROM………………………………….54

Hình 4.8:  Sơ đồ kết nối vi điều khiển với RAM…………………………………….55

Hình 4.9:  Giãn đồ xung khi truy xuất bộ nhớ ngoài…………………………………56

Hình 5.1:  Tổ chức bộ nhớ bán dẫn…………………………………………………..59

Hình 5.2:  Hoạt động đọc dữ liệu…………………………………………………….60

Hình 5.3:  Hoạt động ghi dữ liệu cho Ram…………………………………………...60

Hình 5.4:  Sơ đồ chân SRAM 62256…………………………………………………62

Hình 5.5:  Sơ đồ khối của SRAM 62256……………………………………………..63

Hình 5.6:  Chu kỳ đọc dữ liệu………………………………………………………. 63

Hình 5.7:  Chu kỳ ghi dữ liệu……………………………………………………….. 64

Hình 6.1:  Hình dáng của PAL……………………………………………………….69

Hình 6.2:  Hình dạng của GAL………………………………………………………69

Hình 6.3:  Sơ đồ cấu trúc của XC9500XL…………………………………………...72

Hình 6.4:  Sơ đồ khối khối I/O……………………………………………………….74

Hình 6.5:  Khối ma trận chuyển mạch kết nối nhanh………………………………...75

Hình 6.6:  Khối chức năng……………………………………………………………77

Hình 6.7:  Hình Macrocell……………………………………………………………77

Hình 6.8:  Sơ đồ khối PTA…………………………………………………………...78

Hình 6.9:  Khối hệ thống lập trình bên trong………………………………………...78

Hình 6.10: Hình dạng thực tế của XC95144XL……………………………………...80

Hình 6.11:  Sơ đồ chân của XC95144XL…………………………………………….81

Hình 6.12:   Lưu đồ thực hiện If…EndIf…………………………………………….98

Hình 6.13:  Lưu đồ thực hiện Case…………………………………………………100

Hình 6.14:  Lưu đồ lệnh While…Loop……………………………………………..101

Hình 6.15:  Lưu đồ giải thuật For…Loop…………………………………………..102

Hình 7.1:  Sơ đồ khối hệ thống……………………………………………………...121

Hình 7.2:  Sơ đồ khối khối nguồn…………………………………………………...122

Hình 7.3:  Sơ đồ nguyên lý khối nguồn……………………………………………..122

Hình 7.4:  Khối giao tiếp náy tính 1………………………………………………...123

Hình 7.5:  Khối giao tiếp náy tính 2………………………………………………...124

Hình 7.6:  Sơ đồ kết nối giữa khối giao tiếp với vi điều khiển và SRAM…………..125

Hình 7.7:  Sơ đồ kết nối RAM với CPLD…………………………………………..127

Hình 7.8:  Biểu diễn dòng trung bình qua LED…………………………………….127

Hình 7.9:  Biểu diễn dòng tức thời qua LED……………………………………….129

Hình 7.10:  Sơ đồ kết nối 6B595 với khối công suất hàng…………………………129

Hình 7.11:  Sơ đồ chức năng của 74HC164………………………………………...130

Hình 7.12:  Giãn đồ dạng song hoạt động của 74HC164…………………………...130

Hình 7.13:  Sơ đồ thanh ghi dịch 6B595……………………………………………130

Hình 7.14:  Giãn đồ dạng sóng 6B595……………………………………………...131

Hình 7.15:  Cấu tạo bên trong 6B595……………………………………………….131

Hình 7.16:  Sơ đồ kết nối 6B595 với khối công suất cột……………………………132

Hình 7.17:  Sơ đồ khối Led ma trận………………………………………………...133

Hình 7.18:  Sơ đồ nguyên lý của khối Led ma trận………………………………....134

Hình 7.19:  Hình dáng Led ma trận 8x8……………………………….....................135

Hình 7.20:  Cấu tạo bên trong của Led ma trận 8x8…………………………….......135

Hình 8.1:  Giao diện Delphi ………………………………………………………..138

Hình 8.2:  Giao diện hiển thị trên máy tính…………………………………………140

Hình 8.3:  Lưu đồ chương trình nhận dữ liệu từ máy tính………………………….142

Hình 8.4:  Lưu đồ chương trình chính khối điều khiển……………………………..143

Hình 8.5:  Lưu đồ chương trình xử lý 32 byte dữ liệu……………………. ……….144

Hình 8.6:  Lưu đồ chương trình tạo xung Clk………………………………………145

Hình 8.7:  Lưu đồ chương trình tạo xung nhịp……………………………………...145

Hình 9.1:  Sơ đồ toàn mạch…………………………………………………………148

Hình 9.2:  Giao diện phần mềm điều khiển…………………………………………149

Chương 1: DẪN NHẬP

1.1 Đặt vấn đề

1.1.1 Tình hình phát triển

Ngày nay, ở những nước có nền công nghệ kỹ thuật phát triển thì đối với các kỹ sư điện tử việc sử dụng các vi mạch số lập trình đã không còn xa lạ nữa. Do có nhiều người quan tâm và nghiên cứu, tìm hiểu nên có nhiều tài liệu về vi mạch số lập trình được viết. Chúng được cung cấp trên sách báo, trên mạng... Điều này, tạo điều kiện thuận lợi cho người học dễ dàng tiếp cận vi mạch số lập trình. Thế nhưng ở nước ta, vi mạch số lập trình còn rất là mới mẽ , không được biết đến nhiều lắm và cũng không có nhiều người quan tâm . Do còn khá mới nên tài liệu về vi mạch số lập trình bằng tiếng Việt tuy có nhưng rất ít chủ yếu là tiếng Anh. Tuy nhiên, điều đáng mừng là hiện nay cũng đã có nhiều người quan tâm đến nó và đặc biệt là một số trường cũng đã mạnh dạn đưa môn học này vào giảng dạy nhưng vẫn còn ở khía cạnh tìm hiểu.

1.1.2 Lý do chọn đề tài :

Kể từ năm 2004 trở đi trường ta áp dụng kế hoạch đào tạo sinh viên theo hướng công nghệ. Để hưởng ứng chủ trương đó, Khoa Điện tử đã đưa vào giảng dạy rất nhiều môn mới trong đó có môn vi mạch số lập trình CPLD. Để chuẩn bị cho việc giảng dạy được tốt thì vấn đề biên soạn tài liệu cũng như bài tập thực hành cho các sinh viên thí nghiệm là hết sức cần thiết. Hiện nay, bất cứ trong lĩnh vực nào cũng có sự trợ giúp của công nghệ điện tử, đặc biệt là lĩnh vực quảng cáo. Khi đi đến đâu, ta cũng thấy các bảng hiệu quảng cáo rực rỡ nhiều màu sắc, với các dòng chữ cuộn qua cuộn lại các câu chào mừng khách, thông báo…được làm bằng các led ma trận cỡ lớn. Nói chung, các bảng quang báo là rất nhiều, rất thông dụng và rất hữu ích….

Bên cạnh, với sự ra đời của các thiết bị số khả trình có tốc độ hoạt động cao. Nó có thể ứng dụng trong các dự án lớn với không gian nhỏ, gọn.

Là những sinh viên đang được đào tạo trong môi trường đại học. Trong quá trình học tập không có điều kiện tiếp xúc nhiều với các bảng quang báo. Với mong muốn được nâng cao sự hiểu biết, nhóm thực hiện đề tài đã quyết định chọn  “MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG ” làm đề tài tốt nghiệp

1.1.3 Đối tượng và phạm vi nghiên cứu :

Đối tượng: nghiên cứu thi công mạch quang báo điều khiển bằng vi mạch số khả trình có giao tiếp với máy tính.

Phạm vi nghiên cứu: thi công bảng quang báo với giới hạn sau:

  • Màu hiển thị: có thể màu xanh hoặc màu đỏ
  • Hiệu ứng: cuộn trái hoặc cuộn phải
  • Hiển thị với thông điệp với Font mong muốn
  • Có thể hiển thị hình ảnh do người dùng tạo ra.

Thời gian thực hiện đề tài chỉ vỏn vẹn trong 6 tuần, nên nhóm cũng chỉ thực hiện ở khía cạnh tìm hiểu và tiến hành thực hiện một số vấn đề sau:

  1. Tìm hiểu vi mạch số lập trình được XC95144XL
  2. Thi công Mạch quang báo dùng CPLD XC95144XL gồm các khối như:

+ Khối nguồn

+ Khối Trung tâm XC95144XL

+ Khối giao tiếp với máy tính

+ Khối Vi điều khiển

+ Khối SRAM

+ Khối Led Matrận

1.1.4 Mục đích nghiên cứu

Để thực hiện đề tài này, nhóm đã tiến hành nghiên cứu các vấn đề sau :

 

  • Tìm hiểu  về vi mạch số lập trình
  • Cũng cố kiến thức về môn vi mạch đã học
  • Mở rộng thêm về ứng dụng của vi mạch số lập trình
  • Tìm hiểu phần mềm ISE Webpack, Modelsim XE III, và ngôn ngữ VHDL để lập trình cho IC
  • Nghiên cứu truyền và nhận dữ liệu bằng ngôn ngữ DELPHI qua cổng COM RS232
  • Nghiên cứu truyền và nhận dữ liệu của vi điều khiển 8051
  • Nghiên cứu các IC nhớ RAM
  • Nghiên cứu lập trình cho CPLD bằng VHDL
  • Nghiên cứu nguyên lý làm việc của bảng quang báo
  • Cuối cùng là để giải quyết và hoàn thành công việc mà mình đã đặt ra

1.2. Ý nghĩa khoa học và thực tiễn của đề tài

  • Ý nghĩa khoa học:Đề tài nhằm nghiên cứu vi mạch lập trình số CPLD, sự kết hợp giữa một hệ thống bao gồm máy tính, vi điều khiển, bộ nhớ và CPLD để điều khiển bảng quang báo.
  • Ý nghĩa thực tiễn: thực hiện với một bảng quang báo có kích thước lớn, tốc độ nhanh nhằm phục vụ cho các yêu cầu thực tiễn.

1.3. Phương pháp nghiên cứu

Nhóm thực hiện đề tài tiến hành nghiên cứu theo phương pháp sau:

  • Bước 1: Nghiên cứu vẽ sơ đồ khối tổng quát cho hệ thống.
  • Bước 2: Nghiên cứu tài liệu liên quan nhằm tìm ra phương pháp thực hiện các khối theo yêu cầu.
  • Bước 3: Kết nối hệ thống.
  • Bước 4: Kiểm tra chỉnh sửa lại hệ thống.

1.4. Lập kế hoạch nghiên cứu

Để thực hiện bất kì công việc gì mà chúng ta không lên một kế hoạch cụ thể cho những gì mà  ta sẽ làm để giải quyết những vấn đề đặt ra thì công việc đó rất khó thực hiện thành công được. Có thể nói, kế hoạch là một hệ thống trong đó được quy định trước về các biện pháp, dự kiến các trình tự tiến hành và thời gian hoàn thành công việc. Với ý nghĩa quan trọng của kế hoạch, do đó để giải quyết đề tài này thì nhóm đã lập cho mình kế hoạch để tiến hành thực hiện như sau:

  • Tuần 1: Chọn đề tài, chính xác hoá đề tài, lập đề cương đồng thời thu thập dữ liệu và tài liệu tham khảo cần thiết
  • Tuần 2: Tiến hành dịch tài liệu và tìm hiểu ngôn ngữ lập trình DELPHI, ngôn ngữ lập trình VHDL, và phần mểm ISE Webpack V8.1.
  • Tuần 3: Tiến hành ráp thực hành thí nghiệm trên Testboard
  • Tuần 4: Vẽ sơ đồ nguyên lý, sơ đồ mạch in, đặt mạch, ráp mạch và tiến hành kiểm tra mạch
  • Tuần 5: Xây dựng chương trình giao tiếp máy tính qua cổng COM RS232 bằng ngôn ngữ DELPHI, chương trình nạp cho vi điều khiển, chương trình điều khiển cho XC95144XL bằng ngôn ngữ VHDL…
  • Tuần 6: Kiểm tra, chỉnh sửa nội dung để in ấn và nộp đồ án.

Chương2: CƠ SỞ LÍ LUẬN

2.1. Truyền thông nối tiếp

Máy tính ngày càng trở nên không thể thiếu trong nhiều hoạt động của xã hội loài người. Hầu như ở đâu và bất cứ khi nào cũng có thể gặp máy tính. Với xu thế và tính tiện lợi của nó. Nhóm thực hiện đề tài đã ứng dụng giao tiếp máy tính để điều khiển bảng quang báo. Trong chương hai, nhóm tiến hành tìm hiểu các chuẩn giao tiếp với máy tính để tìm ra phương pháp thực hiện tối ưu và thích hợp.

Giao tiếp với máy tính có thể thực hiện thông qua:

  • Giao tiếp song song qua cổng máy in
  • Giao tiếp song song qua Slot Card
  • Giao tiếp nối tiếp qua chuẩn RS232
  • Giao tiếp nối tiếp qua chuẩn USB…

2.1.1 So sánh các chuẩn giao tiếp

Bảng 2.1: So sánh các chuẩn giao tiếp

Chuẩn giao tiếp

Chuẩn truyền thông

Số thiết bị (tối đa)

Khoảng cách truyền (tối đa, feet)

Tốc độ truyền (tối đa, bits/s)

RS232

Nối tiếp bất đồng bộ

2

50-100

20k-115k

RS485

Nối tiếp bất đồng bộ

32

4000

10M

IrDA

Nối tiếp bất đồng bộ

2

6

115k

Microwire

Nối tiếp đồng bộ

8

10

2.1M

I2C

Nối tiếp đồng bộ

40

18

400k

USB

Nối tiếp bất đồng bộ

127

16

12M

Firewire

Nối tiếp

64

15

400M

IEEE-488

Song song

15

60

1M

Ethernet

Nối tiếp

1024

1600

10M

MIDI

Nối tiếp

2

15

31.5k

Cổng máy in

Song song

2-8

10-30

1M

Để giao tiếp giữa hai máy tính với nhau hoặc máy tính với thiết bị bên ngoài, có thể sử dụng các cổng tồn tại sẵn như RS232…hoặc có thể thêm vào.

Cổng RS232 thông dụng hơn tất cả các chuẩn giao tiếp còn lại, nó tồn tại trên tất cả các máy tính, khoảng cách truyền xa. RS485 cũng có chi phí thấp, dễ dàng thêm vào hệ thống, thậm chí nó hỗ trợ khoảng cách truyền xa hơn và tốc độ truyền cao hơn RS232

Truyền qua IrDA có thể thực hiện định dạng truyền như RS232, nhưng dữ liệu truyền đi chỉ trong khoảng cách ngắn và không được tiện lợi.

MIDI (Musical Instrument Digital Interface) được dùng để truyền các tín hiệu của nhạc cụ, các thiết bị điều khiển trong nhà hát.

Microwire, SPI và chuẩn I2C là chuẩn giao tiếp đồng bộ nối tiếp, được sử dụng cho những liên kết có khoảng cách ngắn. Nhiều họ vi điều khiển cũng có tích hợp giao diện này.

USB (Universal Serial Bus) và Firewire là những chuẩn giao tiếp mới, thông minh có thể dùng để kết nối các máy tính lại với nhau hoặc kết nối máy tính với các thiết bị ngoại vi khác. USB được dự đoán sẽ thay thế các chuẩn giao tiếp nối tiếp và song song.

Ethernet dùng cho giao tiếp trong mạng máy tính. Nó có tốc độ cao nhưng yêu cầu phần cứng và phần mềm phức tạp.

Truyền dữ liệu có thể truyền nối tiếp hoặc truyền song song. Truyền song song có tốc độ truyền cao hơn do cùng một lúc các bit được truyền một lần. Tuy nhiên trong các ứng dụng có khoảng cách truyền xa, nó tỏ ra không kinh tế do hao tốn nhiều dây liên kết.

Do tính thông dụng, khoảng cách truyền, tốc độ truyền của RS232 phù hợp với các yêu cầu của đồ án nên nhóm thực hiện đề tài chọn truyền thông qua cổng RS232.

2.1.2 Các định dạng và giao thức truyền nối tiếp

Khi truyền thông nối tiếp giữa hai máy tính hay giữa máy tính với các thiết bị ngoại vi, cần phải thực hiện theo một quy luật riêng. Điều này làm cho các gói dữ liệu truyền được đến nơi cần truyền, máy tính có thể hiểu đựơc các thông điệp mà nó đã nhận. Truyền nối tiếp gồm truyền đồng bộ và bất đồng bộ.

2.1.2.1 Truyền nối tiếp đồng bộ

Trong truyền đồng bộ, tất cả các thiết bị phải sử dụng chung một xung clk. Tất cả các bit được truyền đồng bộ với xung clk, đồng bộ với cạnh lên hoặc cạnh xuống tùy hệ thống. Truyền đồng bộ sử dụng một bit Start và một bit Stop để đánh dấu byte được truyền.

Truyền đồng bộ hay được sử dụng trong các liên kết có khoảng cách ngắn dưới 15 feet. Với các khoảng cách truyền xa, nó khó thực hiện do cần xung clk chung, mà với các đường dây dài thì xung clk sẽ bị nhiễu gây ra hiện tượng không đồng bộ.

    2.1.2.2 Truyền nối tiếp bất đồng bộ.

Trong truyền nối tiếp bất đồng bộ, không cần xung clk chung, mỗi thiết bị có một xung clk riêng. Tần số hai xung clk này phải tương thích với nhau. Nếu không sẽ gây ra hiện tượng mất dữ liệu Khi truyền một byte, cần đóng gói các byte đó lại bởi bit Start và Stop. Mặc dù truyền dị bộ có nhiều định dạng khác nhau nhưng dạng thông dụng và phổ biến nhất là 1 bit Start, 8 bit dữ liệu và 1 bit Stop. Khi truyền, các bit có trọng số thấp luôn luôn được truyền trước.

2.1.3 Cấu trúc của cổng nối tiếp

2.1.3.1 Hình dáng và đường tín hiệu :

Cổng nối tiếp RS-232 là giao diện phổ biến nhất hiện nay. Người ta dung máy tính PC còn gọi các cổng này là COM 1, còn COM 2 để tự do cho các ứng dụng khác. Giống như cổng máy in, cổng nối tiếp RS-232 cũng được sử dụng một cách rất thuận tiện cho mục đích truyền thông, đo lường và điều khiển…

Việc truyền dữ liệu qua cổng RS-232 được tiến hành theo cách nối tiếp, nghĩa là các bit dữ liệu được gửi đi nối tiếp nhau trên một đường dẫn. Trước hết, loại truyền này có khả năng dùng cho những khoảng cách lớn hơn, bởi vì các khả năng gây nhiễu là nhỏ đáng kể hơn khi dùng một cổng song song. Việc dùng cổng song song có một nhược điểm đáng kể là cáp truyền dùng quá nhiều sợi, và vì vậy rất đắt tiền. Hơn nữa, mức tín hiệu nằm trong khoảng 0-5V đã tỏ ra không thích ứng với khoảng cách lớn.

Cổng nối tiếp RS-232 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ứ 3 không thể tham gia vào cuộc trao đổi thông tin này.

Cổng RS232 gồm có cổng 9 chân và 25 chân, hình dạng và các đường tín hiệu như sau:

........................................................................................

Hình 2.5 : Dòng dữ liệu trên cổng RS232 với tốc độ 9600 baud.

Còn một vấn đề nữa là khuôn mẫu (Format) truyền dữ liệu cần phải được thiết lập như nhau cả ở bên gửi cũng như ở bên nhận. Các thông số truyền có thể được thiết lập trên máy PC bằng các câu lệnh trên  (còn gọi là trong) DOS. Ngay cả trên Windows cũng có những chương trình riêng để sử dụng. Khi đó các thông số truyền dữ liệu như: tốc độ baud, số bit dữ liệu, số bit dừng, bit chẵn lẻ (parity) có thể được thiết lập một cách rất đơn giản.

2.1.3.2 Cấu trúc bên trong của RS232

Cổng nối tiếp (COM=communication) là một phần của máy tính cá nhân. Nó được điều khiển bởi một bộ truyền nối tiếp bất đồng bộ đa năng UART (Universal Asynorous Receiver Transmitter).

Đầu tiên trong các máy tính của IBM, thanh ghi điều khiển cổng nối tiếp là UART 8250 có tốc độ lên tới 57600 bps. Ngày nay, các UART 16450 hay 16550 có tốc độ lên  tới 115200bps. Ngoài ra, UART này có thêm bộ đệm thu và phát 16 byte theo dạng FIFOs (Firt-in, fist-out). Nhưng đây chưa phải thanh UART có tốc độ cao nhất, một số máy tính mới hơn tồn tại UART ST16C50A có bộ đêm 32 byte và tốc độ lên tới 1.5Mbps, bao gồm luôn cả giao tiếp về hồng ngoại.

Các UART trong máy tính hỗ trợ cả truyền song công và bán song công. Khi truyền, các byte dữ liệu  được chuyển từ song song sang nối tiếp, còn khi nhận được chuyển từ nối tiếp sang song song.

2.1.3.3 Đặc tính về điện của RS232

Mức điện áp logic của RS232 là khoảng -15V đến +15V. Các đường dữ liệu sử dụng mức logic âm: logic 1 có điện thế -15V đến -5V trong khi logic 0 có tầm điện áp từ +5V đến +15V. Tuy nhiên, các đường điều khiển sử dụng mức logic dương ngoại trừ đường dữ liệu (TxD và RxD).

2.1.3.4 Kết nối với Modem rỗng

Mặc dù chuẩn RS232 được định nghĩa để kết nối giữa Modem và thiết bị đầu cuối nhưng cũng có thể để kết nối thiết bị đầu cuối với nhau mà không cần Modem, kết nối như vậy gọi là kết nối Modem rỗng. Trong kết nối này, các đường TxD và RxD phải được nối chéo cho nhau.

2.1.4 Các phương pháp tránh làm mất dữ liệu khi truyền nối tiếp

Khi truyền và nhận dữ liệu, để tránh làm mất dữ liệu này, cần phải có phương pháp để bảo đảm dữ liệu truyền đã được nhận đúng. Gồm các phương pháp sau

2.1.4.1 Dùng các tín hiệu bắt tay (Handshaking)

Khi dùng các tín hiệu bắt tay, bộ truyền có thể xác định khi nào cần truyền dữ liệu, và bộ thu có thể xác định được khi nào nó sẵn sàng nhận dữ liệu. Điều này được thực hiện theo các giao thức hay quy luât khác nhau.

Hình thức thông dụng nhất là bắt tay bởi phần cứng, bộ thu đưa một đường tín hiệu lên mức cao khi nó sẵn sàng nhận dữ liệu, và bộ truyền chờ tín hiệu này trước khi truyền. Bộ truyền có thể đưa đường tín hiệu này xuống thấp bất cứ lúc nào, thậm chí ngay giữa phiên truyền.. Yêu cầu bộ truyền phải dò tìm để ngừng quá trình truyền và chờ để thực hiện truyền tiếp cho đến khi hết khối dữ liệu. Một số kết nối khác lại bắt tay bởi phần mềm, bằng cách gửi một mã (code) để xác định nó sẵn sàng nhận, và gửi một mã (code) khác để ngừng.

2.1.4.2 Dùng bộ đệm (Buffer)

Bộ đệm là phương pháp khác để bảo toàn dữ liệu,nó giúp bộ thu chắc chắn rằng dữ liệu không bị mất khi truyền. Bộ đệm cũng hữu ích cho phía truyền dữ liệu khi sử dụng lưu trữ dữ liệu để truyền đi.

Bộ đệm có thể là phần cứng, phần mềm hoặc cả hai. Cổng nối tiếp trên tất cả các máy tính có bộ đệm 16byte tích hợp trong thanh ghi UART.Về phía thu, điều này có nghĩa là UART có thể lưu trữ đến 16 byte trước khi phần mềm đọc chúng.  Ở phía truyền, UART có thể lưu trữ đến 16 byte rồi sau đó lấy từng bit truyền đi, phương pháp truyền thế nào  tùy thuộc vào giao thức được chọn.

Trong trường hợp bộ đệm phần cứng không đủ lớn, máy tính có thể sử dụng bộ đệm bằng phần mềm, các bộ đệm này có kích thước thay đổi được.

2.1.4.3 Dò vòng và ngắt (Polling and Interupts)

Các sự kiện xảy ra tại Port nối tiếp bao gồm gửi và nhận dữ liệu, thay đổi các tín hiệu bắt tay, gửi và nhận thông điệp báo lỗi. Có hai cách để ứng dụng cho việc tạo ra và dò tim các sự kiện đó.

Cách thứ nhất là chương trình tự động chuyển đến thực hiện khi có một sự kiện xảy ra. Các ứng dụng này hồi đáp nhanh và tự động đến hoạt động của Port mà không có thời gian rỗi (hao phí).

Hoạt động theo hình thức nêu trên được gọi là event-driven (điều khiển sự kiện) bởi vì một sự kiện bên ngoài có thể tác động vào bất cứ lúc nào và kích hoạt chương trình đến nhánh thích hợp.

Cách thứ hai được thực hiện theo phương thức hỏi vòng (polling), bằng cách kiểm tra Port theo từng chu kỳ để phát hiện sự kiện đã xảy ra. Phương thức này không phụ thuộc vào ngắt về phần cứng. Tần số hỏi vòng nhanh chậm phụ thuộc vào kích thước bộ đệm và dữ liệu yêu cầu. Ví dụ nếu thiết bị có bộ đệm 16 byte và tần số hỏi vòng là 1lần /s. Vậy trong 1s, nó có thể nhận nhiều hơn 16byte, do đó bộ đệm bị tràn và dữ liệu bị mất.

 

2.1.4.4 Gửi một ACK

Có một số liên kết không cần có sự phản hồi (responding), nó thường được dùng cho phía thu nhận dữ liệu nhằm mục đích báo cho phía phát biết một thông điệp đã được gửi đi mặc dù không có một thông tin nào được trả về. Các ACK (acknowledgments) đặc biệt hữu ích trong truyền thông mạng. Nó được định nghĩa như một byte để xác nhận rằng bộ thu hay bộ phát đã nhận được thông điệp.

Khi truyền dữ liệu tới một thiết bị không có bộ đệm ngõ vào hay bộ đệm ngõ vào nhỏ, bộ truyền gửi một ACK để chắc chắn rằng bộ nhận rỗi trước khi truyền khối dữ liệu. Khi bộ nhận phát hiện ra ACK, nó gửi lại một ACK để báo cho bộ phát biết đã sẵn sàng nhận dữ liệu.

2.1.4.5 Kiểm tra lỗi (Error-Checking)

Bộ nhận có thể kiểm tra gói dữ liệu nhận có đúng với nơi truyền không bằng cách gửi khối dữ liệu lập lại hoặc đính kèm các byte kiểm tra lỗi.

Cách đơn giản nhất là gửi lập lại, mỗi byte được gửi hai lần. Bộ thu so sánh xem giữa hai lần đó dữ liệu có giống nhau hay không. Dĩ nhiên là cách này làm giảm hiệu suất truyền và chỉ ứng dụng cho các thông điệp kích thước nhỏ.

Cách thường sử dụng là thêm vào một byte kiểm tra lỗi. Phía thu sẽ so sánh theo chuẩn xác định trước để biết dữ liệu nhận được có đúng hay không.

Kiểm tra chẵn lẽ (Pinary):

Tùy theo kiểm tra lẽ hay chẵn mà phía phát thêm vào bit 0 hay bit 1 để truyền đi. Phía thu đếm số bit 1 có được trong byte đã nhận để kiểm tra. Cách này đơn giản nhưng xác suất phát hiện lỗi thấp.

Kiểm tra theo mã LRC (longitudinal redundancy check):

Phương pháp chung hình thành ký tự kiểm tra khối là dùng kiểm tra bit chẵn lẽ theo chiều dọc, đôi khi là chiều ngang.

 

Bảng 2.3: Kiểm tra LRC

Ký tự

A

B

C

D

E

F

G

BCC

 

 

 

ASCII

1

0

1

0

1

0

1

0

0

1

1

0

0

1

1

0

0

0

0

1

1

1

1

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

1

1

1

1

1

1

VRC

0

0

1

0

1

1

0

1

 

 

Do dữ liệu kiểm tra cả chiều ngang và chiều dọc nên xác suất không phát hiện được lỗi ít hơn phương pháp kiểm tra chẵn lẽ. Tuy nhiên nếu lỗi xảy ra cả chiều ngang và chiều dọc ở một vị trí thì phương pháp này cũng không thể phát hiện lỗi.

Phương pháp dùng mã CRC:

Phương pháp này dời các bit dữ liệu sang trái và chia cho một số nhị phân định trước. Số dư phép chia nhị phân là mã CRC. Bên thu thực hiện phép toán tương tự và so sánh với dữ liệu nhận được để phát hiện lỗi.

2.2Quang báo

2.2.1. Khái niệm

Quang báo là thiết bị thông tin văn bản. Sơ đồ khối cơ bản quang báo gồm 3 đơn vị chính như hình vẽ sau đây:

Hình 2.6. Sơ đồ khối hệ thống quang báo

Thông tin cần hiển thị quang báo được đưa vào hệ thống quang báo từ đơn vị nhập thông tin. Đơn vị này có thể là bàn phím, máy tính, bộ nhớ ngoài….Đơn vị nhập thông tin có nhiệm vụ biến đổi thông tin dưới dạng số và cung cấp cho hệ thống vi xử lý.

Đơn vị xử lý có thể là KIT vi điều khiển, máy tính hay kết hợp vi điều khiển với máy tính, CPLD. Đơn vị xử lý thông tin quy định chế độ hiển thị của quang báo. Đơn vị hiển thị là LED matrận. Đồng thời có thể là một bảng quang báo với đơn vị hiển thị là các bóng đèn đốt tim hay là các bóng đèn Neon.

2.2.2. Phân loại quang báo

Quang báo có thể chia làm các loại như sau dựa trên cơ sở là đơn vị nhập thông tin và đơn vị xử lý thông tin :

Loại quang báo mà nội dung hiển thị được ghi chết trong ROM. Đơn vị xử lý của quang báo này dễ dàng nhận thấy là khi t5hay đổi nội dung cần hiển thị thì phải nạp lại ROM, rất bất tiện, không kinh tế.

Quang báo có giao tiếp với bàn phím: Loại này dùng một bàn phím để nhập thông tin hiển thị. Đơn vị xử lý là KIT vi điều khiển, máy tính có ngõ giao tiếp với bàn phím hoặc là CPLD. Quang báo loại này cho phép thay đổi nội dung hiển thị tương đối thuận lợi.

Quang báo giao tiếp với máy tính: Đây là loại quang báo được điều khiển bằng máy vi tính nên chế độ hiển thị rất đa dạng và phong phú. Thông thường quang báo loại này được thiết kế truy xuất từng điểm (chế độ graphic). Với sự phát triển của phần mềm hiện nay vừa điều khiển vừa làm công việc khác.

Quang báo kết hợp giữa KIT vi điều khiển và máy tính : Loại quang báo này đa dạng hơn, chúng vừa có thể làm việc độc lập, vừa kết hợp với nhau, có tính lưu trữ (KIT vi điều khiển), có thể kiểm tra nội dung cần hiển thị một cách dễ dàng (màn hình máy vi tính), nội dung hiển thị chính xác.

2.2.3. Phương pháp Multiplex điều khiển LED ma trận

Để điều khiển LED ma trận cần có mạch chốt dữ liệu, xuất dữ liệu, các mạch này kết hợp chặt chẽ với nhau. Số mạch chốt tỷ lệ với số lượng LED.

Với một ma trận hiển thị số lượng LED khá lớn kéo theo số mạch chốt nhiều dẫn đến phần hiển thị quang báo trở nên phức tạp, cồng kềnh, khó kết nối, khó vẽ mạch in, không có tính kinh tế.

Phương pháp MULTIPLEX cho phép ta điều khiển LED ma trận với số lượng đường dây và mạch in giảm đáng kể.

Theo phương pháp này tại mỗi thời điểm chỉ có duy nhất một LED sáng. Các LED phát sáng theo tần số đủ nhanh để mắt người có cảm giác là LED sáng liên tục nhờ hiện tượng lưu ảnh trên võng mạc của mắt, nhưng chú ý làm sao cho các LED sáng rõ và không có cảm giác rung.

Do LED được cấp dòng phát sáng trong thời gian ngắn, nên để LED thấy rõ, biên độ dòng xung phải lớn hơn nhiều lần so với dòng DC trung bình qua LED. Với chế độ làm việc biên độ dòng khá lớn, LED có thể bị hư nếu thời gian quá lâu. Vì vậy các ma trận LED phải được bảo vệ thích hợp tránh hư hỏng.

Phương pháp MULTIPLEX được dùng trong phương pháp truyền dữ liệu nối tiếp hay song song, được chia làm hai loại thường dùng : quét hàng hay quét cột trên bảng LED. Việc chọn hàng hay cột cần có một mạch chọn lệnh, để chọn hàng hay chọn cột thích hợp.

+ Về phần cứng gồm mạch dao động và mạch giải mã cho các cột hay hàng.

+ Dùng phần mềm để xử lý chọn cột hay hàng. Tần số quét quy định bằng phần mềm.

2.2.4. Bộ hiển thị

Trong một hệ thống vi xử lý, bộ hiển đóng vai trò hết sức quan trọng, nó là nơi dùng để giao tiếp giữa máy và người sử dụng. Từ màn hình hiển thị người sử dụng có thể quan sát, cảm nhận được quá trình làm việc của hệ thống. Khi người sử dụng muốn viết một chương trình nào trên mạch KIT sau khi dữ liệu đưa vào, nhờ có màn hình hiển thị mà ta có thể kiểm tra lại dữ liệu nhập vào đã đúng hay chưa.

Hiện nay trên thị trường có nhiều loại màn hình hiển thị như hiển thị bằng màn hình VIDEO, bằng LED ma trận, bằng LED 7 đoạn hay 14 đoạn có cấu trúc đơn giản và dễ sử dụng. Thật ra dù là loại LED gì đi nữa thì cấu tạo của chúng cũng từ nhiều phần tử LED rời qua công nghệ sản xuất chúng có những hình thù khác nhau.

Và như ta đã biết nguyên lý hoạt động của Diode phát quang là sẽ phát sáng khi có dòng điện chạy qua cỡ (5-30mA). Do đó có thể chỉ thị được :

+Tín hiệu 1: Khi có dòng điện chạy qua Diode sáng.

+Tín hiệu 0: Khi không có dòng điện chạy qua, Diode tắt.

2.2.5. Hiển thị LED

LED là một thuật ngữ quen thuộc ngày nay nhưng ta nên lướt qua sự phát triễn và ứng dụng của dụng cụ này :

Silicon carbide là vật liệu đầu tiên được ghi nhận phát ra ánh sáng. Năm 1940 người ta nhận thấy miền sáng là tiếp xúc P-N. Những công trình trước năm 1950 đã báo cáo là sự phát sáng có từ nhiều vật liệu dùng các Diode bán dẫn kim loại tiếp xúc điểm : GaP, GaAs, GaSb,InP và Ge, Si. Rồi đi đến bước kế tiếp dùng bán dẫn hỗn hợp (compound semiconductor) để có được ánh ra nhiều hơn.

Các ứng dụng của LED như dùng để chỉ thị, hiển thị, làm nguồn sáng trong các máy in Lazer và quan trọng hơn là các LED được sử dụng rộng rãi trong các hệ thống thông tin dựa vào quang sợi.

Sự lựa chọn vật liệu quyết định màu của ánh sáng phát ra. Với các chỉ thị và bộ hiển thị thì cần có các LED phát ánh sáng thấy được, trái lại với thông tin quang sợi thì cần có mất mát thấp, tán xạ thấp trong sợi và khả dụng các bộ phát hiện thích hợp.

LED được coi là một trong các nguồn quang điện tử phổ biến nhất. Nó không đắt tiền, tiêu thụ ít công suất và dễ dàng thích hợp cho các mạch điện tử.

2.2.6. Cơ sở quét LED

Chẳng hạn muốn bật sáng điểm LED có tọa độ (4,3) ta chỉ việc tích cực hàng thứ 4 cột thứ 3 (LED hàng : Anode chung – Cột : Cathode chung). Như vậy hàng tích cực 1, cột tích cực 0, đồng thời cũng phải có một điện trở hạn dòng nối ở cột hay hàng nếu không sẽ gây hỏng LED.

Giả sử muốn hiển thị chữ B thì bật tất cả các điểm LED như sau :

..................................................................

Ngoài ra, còn có các IC chuyên dụng khác sử dụng cho mục đích này được liệt kê  trong bảng sau:

Bảng 7.1: Các IC chuyên dụng cho giao tiếp RS232

Nhà sản xuất

Linh kiện

Đặc trưng

Maxim Semiconductor

MAX232

Vcc=5V, C=1uF, tốc độ 120kbps

National Semiconductor

DS14C232

Maxim Semiconductor

MAX232A

Tụ C=0.1uF

National Semiconductor

DS14C202

Maxim Semiconductor

MAX220

22kbps

Linear Technology

LT1180A

200kbps

Maxim Semiconductor

MAX212A

 

Maxim Semiconductor

MAX232E

 

Linear Technology

LT1137A

 

National Semiconductor

DS14C88

Bốn bộ điều khiển, nguồn đôi

Maxim Semiconductor

MAX218

Vcc=5V

 

So sánh hai phương pháp:

  • Về độ phức tạp: phương pháp (1)  nhiều linh kiện hơn do yêu cầu các tụ bên ngoài.
  • Về giá thành: phương pháp (2) tốn chi phí cao hơn
  • Về mức độ thông dụng: phương pháp (1) được sử dụng nhiều hơn

Từ đó, nhóm thực hiện đề tài chọn phương pháp (1) để thực hiện giao tiếp giữa máy tính và mạch bên ngoài.

7.3 Thiết kế  khối vi điều khiển, bộ nhớ lưu trữ dữ liệu

Yêu cầu:

  • Dùng vi điều khiển 89S52 để truyền và nhận dữ liệu từ máy tính.
  • Bộ nhớ có khả năng lưu trữ dung lượng lớn
  • Bộ nhớ có thể giao tiếp trực tiếp (đọc, ghi) từ vi điều khiển 89S52 và CPLD XC95144.
  • Bộ nhớ có khả năng hoạt động với tốc độ cao.

THIẾT KẾ MẠCH QUANG BÁO DÙNG CPLD XC95144XL LÝ THUYẾT VÀ THI CÔNG

.............................................

TÀI LIỆU THAM KHẢO

 

[1]. Nguyễn Đình Phú

Vi điều khiển, lý thuyết và thực hành, trường ĐHSPKT Tp.Hồ Chí Minh, năm 2006.

[2].Tống Văn On, Lê Tiến Thường

Truyền dữ liệu sử dụng vi mạch LSI, trường ĐH Bách khoa Tp.Hồ Chí Minh, năm 1999, trang 63-71,165-175

[3]. Jan Axelson

Serial Port Complete, Lakeview Research, 2000, trang 25-90

[4]. Douglas L.Perry

VHDL Programming by Example. Nhà xuất bản McGrawHill, 2002

[5]. Nguyễn Thế Cường, 10.000 Tranzito quốc tế, Viện khoa học Việt nam, năm 1991.

[6]. Metamor User's Guide

[7]. Ngô Diên Tập

Đo lường và điều khiển bằng máy tính,nhà xuất bản khoa học và kỹ thuật, năm 2000.

[8]. Ngô Diên Tập

Lập trình ghép nối máy tính trong Windows, nhà xuất bản khoa học và kỹ thuật, năm 2000.

[9]. Dr. Hossam Eldin Mostafa

Getting Started with Reconfigurable Logic (CPLDs and FPGAs)

Alexandria University, Faculty of Engineering, Alexandria, Egypt

[10]. McGraw.Hill.

VHDL .Programming.by.Example.

[11]. Peter J. Ashenden

The VHDL Cookbook

Dept. Computer Science University of Adelaide South Australia

[12]. Introduction to WebPACK 8.1

Using Xilinx WebPACK Software to Create FPGA Designs for the XSA Board

[13]. ISE In-Depth Tutorial

[14]. Tài liệu tham khảo trên Web

www.xilinx.com

www.cs.ucf.edu/~ahossam/

Close