Trong thời gian theo học tại trường Đại Học Công Nghiệp TPHCM lớp NCDT1A nói chung và nhóm sinh viên chúng em nói riêng được theo học và tìm hiểu cơ bản về các môn học trong hệ thống toàn bộ giáo trình môn học của nhà trường bao gồm các môn đại cương và các môn liên quan đến chuyên ngành Điện Tử Công Nghiệp.
Trong khoảng thời gian gần ba năm học, chúng em đã gắng bó với trường, với khoa, theo học và hoàn thành tất cả các môn học mà khoa đã đề ra để làm hành trang kiến thức chuyên ngành riêng mình trước khi ra trường.
Qua gần sáu học kì theo học, nhờ sự giúp đỡ, hỗ trợ của các thầy cô giáo là giảng viên của các khoa trong trường dạy cho chúng em các môn đại cương và đặc biệt là các thầy cô giáo giảng viên khoa Công Nghệ Điện Tử đã tận tình chỉ dạy, hướng dẫn chung em học tập và tìm hiểu rất nhiều kiến thức liên quan đến chuyên ngành điện tử của mình. Tuy nhiên, để cho thấy được thành quả của mình, dưới sự chỉ đạo của nhà trường và khoa Công Nghệ Điện Tử, các sinh viên phải làm các bài tập lớn để vận dụng các kiến thức lý thuyết đã học vào thực tế. Để đáp ứng yêu cầu đó, em nói riêng và các bạn trong lớp NCDT1A nói chung đã tiến hành học tập, tìm hiểu và nghiên cứu để hoàn thành bài báo cáo đồ án 2 là một đồ án môn học.
Qua môn học đồ án 2 này, sinh viên chúng em xin chân thành cảm ơn các thầy cô giáo giảng viên các khoa đã chỉ dạy cho chúng em các môn đại cương, các thầy cô giáo giảng viên khoa Công Nghệ Điện Tử đã hướng dẫn, chỉ dạy cho chúng em các kiến thức liên quan đến chuyên ngành Điện Tử Công Nghiệp. Đặc biệt là thầy Trần Nguyên Bảo Trân đã tận tình hướng dẫn cho sinh viên chúng em hoàn thành tốt các mô hình thực hành của đề tài mạch quang báo hiển thị chữ tiếng việt có dấu dùng led ma trận và bài báo cáo về môn học đồ án 2 này.
Đây cũng không phải là lần đầu tiên chúng em được làm bài báo cáo của một mô hình đồ án môn học, nhưng là lần đầu tiên chúng em được tự nghiên cứu, tìm hiểu và nêu lên ý kiến của mình qua kết quả nghiên cứu tìm hiểu được, nên không thể tránh khỏi những thiếu sót nhất định. Rất mong được ý kiến đóng góp chân thành của các thầy cô giáo giảng viên trong khoa Công Nghệ Điện Tử và các bạn sinh viên trong lớp để sinh viên chúng em hoàn thiện hơn công việc học tập, tìm hiểu, nghiên cứu trong môn học chuyên ngành của mình nhằm nâng cao kiến thức chuyên ngành và đáp ứng được yêu cầu của môn học cũng như đáp ứng nhu cầu tuyển dụng của thị trường lao động hiện nay trước khi ra trường.
39 trang |
Chia sẻ: lvcdongnoi | Lượt xem: 2878 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đồ án Mạch quang báo hiển thị chữ tiếng Việt có dấu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Lời cảm tạ
Đến giờ phút này đã được gần ba năm học kể từ cái ngày chúng em là những học sinh của các trường trung học phổ thông từ trong cả nước bước chân vào cổng trường Đại Học Công Nghiệp TPHCM này, đặc biệt là Khoa Công Nghệ Điện Tử, là nơi chúng em đã chọn để trao dồi một ngành nghề trong tương lai cho riêng mình đó là chuyên ngành điện tử công nghiệp.
Trong thời gian theo học tại trường Đại Học Công Nghiệp TPHCM lớp NCDT1A nói chung và nhóm sinh viên chúng em nói riêng được theo học và tìm hiểu cơ bản về các môn học trong hệ thống toàn bộ giáo trình môn học của nhà trường bao gồm các môn đại cương và các môn liên quan đến chuyên ngành Điện Tử Công Nghiệp.
Trong khoảng thời gian gần ba năm học, chúng em đã gắng bó với trường, với khoa, theo học và hoàn thành tất cả các môn học mà khoa đã đề ra để làm hành trang kiến thức chuyên ngành riêng mình trước khi ra trường.
Qua gần sáu học kì theo học, nhờ sự giúp đỡ, hỗ trợ của các thầy cô giáo là giảng viên của các khoa trong trường dạy cho chúng em các môn đại cương và đặc biệt là các thầy cô giáo giảng viên khoa Công Nghệ Điện Tử đã tận tình chỉ dạy, hướng dẫn chung em học tập và tìm hiểu rất nhiều kiến thức liên quan đến chuyên ngành điện tử của mình. Tuy nhiên, để cho thấy được thành quả của mình, dưới sự chỉ đạo của nhà trường và khoa Công Nghệ Điện Tử, các sinh viên phải làm các bài tập lớn để vận dụng các kiến thức lý thuyết đã học vào thực tế. Để đáp ứng yêu cầu đó, em nói riêng và các bạn trong lớp NCDT1A nói chung đã tiến hành học tập, tìm hiểu và nghiên cứu để hoàn thành bài báo cáo đồ án 2 là một đồ án môn học.
Qua môn học đồ án 2 này, sinh viên chúng em xin chân thành cảm ơn các thầy cô giáo giảng viên các khoa đã chỉ dạy cho chúng em các môn đại cương, các thầy cô giáo giảng viên khoa Công Nghệ Điện Tử đã hướng dẫn, chỉ dạy cho chúng em các kiến thức liên quan đến chuyên ngành Điện Tử Công Nghiệp. Đặc biệt là thầy Trần Nguyên Bảo Trân đã tận tình hướng dẫn cho sinh viên chúng em hoàn thành tốt các mô hình thực hành của đề tài mạch quang báo hiển thị chữ tiếng việt có dấu dùng led ma trận và bài báo cáo về môn học đồ án 2 này.
Đây cũng không phải là lần đầu tiên chúng em được làm bài báo cáo của một mô hình đồ án môn học, nhưng là lần đầu tiên chúng em được tự nghiên cứu, tìm hiểu và nêu lên ý kiến của mình qua kết quả nghiên cứu tìm hiểu được, nên không thể tránh khỏi những thiếu sót nhất định. Rất mong được ý kiến đóng góp chân thành của các thầy cô giáo giảng viên trong khoa Công Nghệ Điện Tử và các bạn sinh viên trong lớp để sinh viên chúng em hoàn thiện hơn công việc học tập, tìm hiểu, nghiên cứu trong môn học chuyên ngành của mình nhằm nâng cao kiến thức chuyên ngành và đáp ứng được yêu cầu của môn học cũng như đáp ứng nhu cầu tuyển dụng của thị trường lao động hiện nay trước khi ra trường.
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Chữ ký của giáo viên
NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
Chữ ký của giáo viên
Mục Lục
Trang
Lời giới thiệu______________________________________________6
Phần 1: Phần mở đầu_______________________________________7
1. Lý do chọn đề tài_________________________________________7
2.Mục đích, yêu cầu_________________________________________7
2.1.Mục đích_______________________________________________7
2.2.Yêu cầu_________________________________________________7
3.Đối tượng nghiên cứu_______________________________________7
4.Phương pháp nghiên cứu_____________________________________8
5.Phạm vi nghiên cứu_________________________________________8
6.Kết quả nghiên cứu_________________________________________8
Phần 2: Phần nội dung_______________________________________9
1.Giới thiệu về họ vi điều khiển AT89C51________________________9
1.1.Giới thiệu về cấu trúc phần cứng họ MCS-51____________________9
1.2.Khối điều khiển trung tâm ( CPU ) :________________________________9
1.3.Đơn vị xử lý trung tâm______________________________________10
1.4.Các chân của chip 89C51:__________________________________11
1.4.1. Sơ đồ khối và chức năng các khối của chip 89C51:_____________11
1.4.2. Chức năng các chân của chip 89C51________________________12
1.4.3.Sơ đồ chân của chip 89C51________________________________12
2.Giới thiệu về các IC cơ bản trong mạch_________________________16
2.1.Giới thiệu về IC ULN2803_________________________________16
a) IC ULN2803_____________________________________________16
b) Vài chỉ số kĩ thuật của IC ULN2803___________________________17
2.2.Giới thiệu về IC 74HC154___________________________________19
2.2.1.Sơ đồ chân IC74HC154____________________________________19
2.2.2.Sơ đồ bên trong ic 74HC154_________________________________20
2.2.3. Bảng chức năng của 74HC154_______________________________21
2.2.4.Nguyên tắc hoạt động của IC 74HC154:________________________21
3.Giới thiệu về led ma trận______________________________________21
4. Sơ đồ khối của mạch quang báo :______________________________23
5. Chức năng của từng khối :____________________________________24
5.1.Khối vi điều khiển:_________________________________________24
5.2.Khối phân kênh :___________________________________________24
5.3.Khối ghép nối______________________________________________25
5.4.Khối Led Matrix : __________________________________________26
6.Nguyên lý hoạt động:__________________________________________26
6.1. Sơ đồ nguyên lý toàn mạch____________________________________26
6.2.Khối Led Matrix:____________________________________________26
6.3.Khối vi điều khiển:___________________________________________27
6.4.Khối phân kênh:_____________________________________________27
6.5. Khối ghép nối______________________________________________29
7.Lưu đồ giải thuật và chương trình:_________________________________30
7.1. Lưu đồ giải thuật____________________________________________30
7.2.Chương trình chính___________________________________________31
Lời kết________________________________________________________34
Tài liệu tham khảo_______________________________________________36
Ngày nay cùng với sự phát triển của nhân loại. Từ thế kỉ XIX trở lại đây đã nổ ra rất nhiều cuộc cách mạng khoa học kĩ thuật. Đánh dấu sự phát triển của một nền văn minh mới, nến văn minh của khoa học trí tuệ nhân tạo ra đời. Thuật ngữ trí tuệ nhân tạo không còn gì xa lạ với mọi người. Hàng loạt các robot thông minh ra đời và rất nhiều sản phẩm của công nghệ này được ứng dụng vào thực tế cuộc sống hàng ngày. Tất cả chúng ta là sản phẩm, thành tựu của công nghệ Vi Điện Tử, Vi Điều Khiển. Từ việc tìm ra tính chất của vật liệu bán dẫn và công nghệ đóng gói Chip mà ngày nay chúng ta được thừa hưởng những thành tựu công nghệ vượt bậc như ngày nay. Từ việc đóng gói Chip mm cho tới um cho tới ngày nay thì chúng ta không còn xa lạ với các thế hệ loại Chip này. Cho tới nay người ta đã phát triển công nghệ mới là công nghệ nano được tích hợp trong các thế hệ như ngày nay, đặc biệt là IC sử dụng trong vi điều khiển, vi xử lý…
Khái niệm vi điều khiển đã trở thành quen thuộc với nhiều người, bởi vì sự phát triển của ngành Điện Tử đã có ảnh hưởng rất lớn đến nền kinh tế toàn cầu. Có người đã nêu lên ý tưởng gọi nền kinh tế của thời đại chúng ta là “nền kinh tế kỹ thuật số”, “số hóa” đã gần như vượt khỏi ranh giới của thuật ngữ kỹ thuật. Số hóa đang là xu hướng phát triển tất yếu của nhiều lĩnh vực kỹ thuật và kinh tế khác nhau, không chỉ trong lĩnh vực thông tin liên lạc và tin học. Ngày nay, kỹ thuật số, vi điều khiển đã và đang thâm nhập mạnh mẽ vào kỹ thuật điện tử, điều khiển tự động, truyền thanh truyền hình, y tế, nông nghiệp … và ngay cả trong các dụng cụ sinh hoạt gia đình.
Ngay từ những ngày đầu khai sinh, kỹ thuật số nói riêng, vi điều khiển nói chung và ngành điện tử đã tạo ra nhiều bước đột phá mới mẽ cho các ngành kinh tế khác mà còn đảm bảo được yêu cầu của người dùng cả về chất lượng và dịch vụ. Vì vậy, kiến thức về kỹ thuật số, vi điều khiển là không thể thiếu đối với mỗi sinh viên, nhất là sinh viên ngành điện tử.
Trong quá trình học tập tại trường với những giáo án, giáo trình các môn học trong chuyên ngành Điện Tử Công Nghiệp do khoa Công Nghệ Điện Tử giảng dạy trong đó có các môn học chuyên ngành quan trọng liên quan đến kỹ thuật số và công nghệ tích hợp IC là môn học: Điện Tử Số, Vi Điều Khiển, tuy nhiên để nâng cao sự hiểu biết sâu rộng cho người học cũng như nắm bắt những công nghệ hiện đại, các giảng viên đứng lớp đã có những phương pháp dạy rất khoa học là cho sinh viên tự tìm hiểu, nghiên cứu các tài liệu bên ngoài giáo trình học đặc biệt là các tài liệu tham khảo bằng tiếng Anh, thong qua việc thảo luận trên lớp, làm các bài báo cáo, làm tiểu luận, làm các bài báo cáo thực hành, trong đó có bài báo cáo của Đồ Án 1, Đồ Án 2, qua viện tìm hiểu và nghiên cứu các IC số, các Vi Điều Khiển thông dụng đang được phát triển và ứng dụng rộng rãi trong thực tế.
Để góp phần tạo nền tảng ban đầu cho việc học tập, tìm hiểu kĩ thuật số, vi điều khiển và góp phần nâng cao kiến thức chuyên ngành trong quá trình học tập tại trường và đáp ứng được kiến thức cơ bản trước khi ra trường, nhóm sinh viên chúng em xin đề nghị thực hiện đề tài trong môn học đồ án 2 là: Khảo sát mạch quang báo hiển thị chữ tiếng việt có dấu dùng led ma trận.
PHẦN I: PHẦN MỞ ĐẦU
1. Lý do chọn đề tài
Điện – Điện tử là một trong những lĩnh vực rất phát triển và đánh giá được tốc độ phát triển về kinh tế cũng như khoa học kĩ thuật của một đất nước. Việc phát triển, chế tạo các lọai Chip, các lọai IC tích hợp thông dụng, có ứng dụng nhiều trong thực tế có vai trò to lớn trong quá trình phát triển khoa học kĩ thuật liên quan đến kĩ thuật điện – điện tử - tự động hóa. Ở Việt Nam công nghệ chế tạo các lọai Chip vi điều khiển, các công nghệ tích hợp IC chưa được chú trọng phát triển, phần lớn còn ứng dụng và phụ thuộc nhiều vào các công nghệ tiên tiến của các nước phát triển như: Mỹ, Nhật Bản … đặc biệt là tập đoàn điện tử khổng lồ Intel…
Vì vậy việc học tập, tìm hiểu nghiên cứu lại những công nghệ phát triển của các nước bạn có ý nghĩa đặc biệt quan trọng đối với người học và đóng vai trò không nhỏ trong quá trình phát triển nền giáo dục của nước nhà.
2. Mục đích, yêu cầu
2.1.Mục đích
Ngày nay khoa học kĩ thuật và công nghệ ngày càng phát triển như vũ bảo, vì vậy việc đưa các môn học chuyên nghành vào trong giáo trình môn học, đặc biệt là môn kĩ thuật số, vi điều khiển… Cho các sinh viên ngành điện tử, đặc biết là chuyên ngành điện tử công nghiệp là điều đặc biệt quan trọng, tuy nhiên một phần do điều kiện của người dạy và người học nên việc đưa hết tài liệu trong quá trình học là không đáp ứng được nhu cầu nên việc tự tìm hiểu, tự nghiên cứu các tài liệu bên ngoài là điều rất cần thiết để nâng cao kiến thức cho người học nhằm theo kịp công nghệ khoa học kĩ thuật tiên tiến của các nước trên thế giới và góp phần vào bồi dưỡng kiến thức cho sinh viên trước khi ra trường nhằm đáp ứng được nhu cầu tuyển dụng của thị trường lao động hiện tại và tương lai góp phần to lớn trong việc phát triển nền kinh tế nói chung và phát triển chuyên ngành Điện Tử - Tự Động Hóa nói riêng của nước nhà.
2.2. Yêu cầu
Qua môn học đồ án 2 sinh viên cần nắm vững kiến thức cơ bản của môn học chuyên ngành trong giáo trình đào tạo của nhà trường, đồng thời biết và nắm rõ kiến thức cơ bản về sơ đồ khối, các đặc tính, chức năng và nguyên lý họat động của các linh kiện cơ bản của chuyên ngành điện tử như: Điện trờ, tụ điện, cuộn cảm, relay … đặc biệt là Ic sử dụng rộng rãi trong vi xử lý, điều khiển tự động. Bên cạnh đó là các phần mềm giúp ích trong việc thiết kế mạch như orcad, protues, TopView ….
3. Đối tượng nghiên cứu
Đối tượng nghiên cứu của Đồ Án 2 nói riêng và các môn học chuyên ngành trong hệ thống Điện – Điện Tử nói chung là các sinh viên theo học, tìm hiểu và nghiên cứu trong lĩnh vực Điện tử, đồng thời là tất cả những người yêu thích chuyên ngành Điện Tử - Tự Động Hóa, vì đây là môn học cơ bản làm nền tảng, trang bị kiến thức cho người học để có thể tự tìm hiểu, nghiên cứu các tài liệu học tập cho các môn học tiếp theo, đồng thời cũng cố kiến thức các môn học đã được học trong thời gian theo học tại trường.
4. Phương pháp nghiên cứu
Phương pháp nghiên cứu đề tài của môn học Đồ Án 2: Khảo sát mạch quang báo dùng led ma trận chủ yếu bằng logic thực nghiệm. Vì môn học có tính chất lý thuyết, và liên quan mật thiết đến thực tế nên việc tìm kiếm tài liệu tiếng việt liên quan đến đề tài là rất khó khăn nên quá trình hòan thành môn học đồ án 2 chủ yếu bằng văn bản dịch Anh – Việt của em thông qua sự giúp đỡ của google.
5. Phạm vi nghiên cứu
Đề tài môn học đồ án 2 được tiến hành, nghiên cứu chủ yếu ở nhà và thư viện trường đại học công nghiệp TPHCM. Việc tiến hành văn bản được tiến hành ở quán net, bài báo cáo được tiến hành trong khoảng thời gian từ 1-5-2010 đến 25-5-2010, trong khỏang thời gian đó em đã thảo luận , tham khảo ý kiến của thầy cô bạn bè đồng thời tìm kiếm tài liệu, mô phỏng mạch trên phần mềm.
6. Kết quả nghiên cứu
Sau một thời gian tiến hành nghiên cứu, tìm hiểu về môn học điện tử số và môn học Vi Điều Khiển nói chung, các môn học trong chuyên ngành Điện Tử Công Nghiệp nói riêng. Khảo sát mạch quang báo hiển thị chữ trên Led ma trận đã giúp em nắm được các khái niệm cơ bản của các linh kiện, đặc tính, chức năng và nguyên lý họat động của các linh kiện, hiểu được sơ đồ khối, chương trình điều khiển vi xử lý và hiểu hơn vai trò môn học trong hệ thống môn học, nhằm trao dồi kiến thức để chúng em hoàn thành tốt môn học. Qua đó trang bị kiến thức cơ bản để có thể tự học tập và cũng là hành trang em mang theo khi ra trường
PHẦN II: PHẦN NỘI DUNG
1.Giới thiệu về họ vi điều khiển AT89C51
AT89C51 là phiên bản có Rom nằm trên Chip là bộ nhớ Flash. Phiên bản này rất thích hợp cho các ứng dụng nhanh vì bộ nhớ Flash có thể xóa được dữ liệu chỉ trong vài giây (chứ không phải 20 giây như 8751). Dĩ nhiên là để dung AT89C51 cần có một bộ đốt ROM hỗ trợ bộ nhớ Flash, xong lại không cần bộ xóa, bộ nhớ Flash được xóa bằng bộ đốt PROM. Để tiện sử dụng, hiện nay hang Atmel đang nghiên cứu một phiên bản mới của AT89C51 có thể lập trình qua cổng COM của máy tính và như vậy sẽ không cần bộ đốt PROM
1.1.Giới thiệu về cấu trúc phần cứng họ MCS-51
Đặc điểm và chức năng hoạt động của họ IC MCS-51 hoàn toàn tương tự nhau. Ở đây giới thiệu IC AT89C51 là một IC điều khiển do hang intel của Mỹ sản xuất, chúng có những đặc điểm như sau:
4KB EFROM bên trong
128 byte RAM nội
4 Port xuất nhập I/O 8 bit
Giao tiếp nối tiếp
64 KB cùng nhớ mã ngoài
64 KB vùng nhớ dữ liệu ngoài
Xử lý bit (hoạt động trên Bit đơn)
210 vị trí có thể định vị Bit
4 us cho hoạt động nhân, hoạt động chia
1.2.Khối điều khiển trung tâm ( CPU ) :
Sơ đồ khối của một hệ vi xử lý:
Định nghĩa hệ vi xử lý:
Khả năng được lập trình để thao tác trên các dữ liệu mà không cần sự can thiệp của con người.
Khả năng lưu trữ và phục hồi dữ liệu.
Tổng quát hệ vi xử lý gồm:
Hình 2.1: Sơ đồ khối vi xử lý
Phần cứng (hardware): các thiết bị ngoại vi để giao tiếp với con người.
Phần mềm (software):chương trình để xử lý dữ liệu.
CPU (Central Processing Unit): đơn vị xử lý trung tâm.
RAM (Random Access Memory): bộ nhớ truy xuất ngẫu nhiên.
Rom (Read Only Memory): bộ nhớ chỉ đọc.
Interface Circuitry: mạch điện giao tiếp.
Peripheral Devices (Input): các thiết bị ngoại vi (thiết bị nhập)
Peripheral Devices (Output): các thiết bị ngoại vi (thiết bị xuất).
Addressbus: bus địa chỉ.
Data bus: bus dữ liệu.
Control bus: bus điều khiển.
1.3.Đơn vị xử lý trung tâm:
CPU đóng vai trò chủ đạo trong hệ vi xử lý, nó quảnlý tất cả các hoạt động của hệ và thựchiện tất cả các thao tác trên dữ liệu.
CPU là một vi mạch điện tử có độ tích hợp ca. Khi hoạt động CPU đọc mã lệnh được ghi dưới dạng cácbit 0 và bit 1 từ bộ nhớ, sau đó nó sẽ thực hiện giải mã các lệnh này thành các dãy xung điều khiển tương ứng với các thao táctrong lệnhđể điều khiển cáckhối khác thực hiện từng bước các thao tác đóvà từ đó tạo ra các xung điều khiển cho toàn hệ.
IR/IP (Instruction Register/Intruction Pointer): thanh ghi lệnh/con trỏ lệnh.
PC (Program Counter): bộ đếm chươngtrình.
Instruction decode and control unit: đơn vị giải mã lệnh và điều khiển.
ALU (arithmetic and Logic Unit): đơn vị số học và logic.
Registers: Các thanh ghi.
Khi hoạt động CPU sẽ thực hiện liên tục 2 thao tác: tìm nạp lệnh và giãi mã - thực hiện lệnh.
Thao tác tìm nạp lệnh:
Nội dung của thanh ghi PC đượcCPU đưa lên bus địa chỉ.
Tín hiệu điều khiển đọc (Read) chuyển sang trạng thái tích cực.
Mã lệnh (Opcode) từ bộ nhớ được đưa lên bus dữ liệu.
Nội dung của thanh ghi PC tăng lên một đơn vị để chuẩn bị tìm nạp lệnh kế tiếp từ bộ nhớ.
Thao tác giải mã - thực hiện lệnh:
Mã lệnh từ thanh ghi IR được đưa vào đơn vị giải mã lệnh và điều khiển.
Đơn vị giải mã lệnh và điều khiển sẽ thực hiện giải mã opcode và tạo ra các tín hiệu để điều khhiển việc xuất nhập dữ liệu giữ ALU và cácthanh ghi.
Căn cứ trên các tín hiệu điều khiển này, ALU thực hịên các thao tác đã được xác định.
Một chuỗi các lệnh (Opcode) kết hợp lại với nhau để thực hiện một công việc có nghĩa được gọi là chương trình (Program) hay phần mềm.
Bộ nhớ bán dẫn là một khác rất quan trọng của hệ vi xử lý, các chương trình và dữ liệu đều được lưu giữ trong bộ nhớ.
Bộ nhớ bán dẫn trong hệ vi xử lý gồm:
ROM: bộ nhớ chương trình _ lưu giữ chương trình điều khiển hoạt động của toàn hệ thống.
RAM: bộ nhớ dữ liệu _ lưu giữ dữ liệu, một phần chương trình điều khiển hệ thống, các ứng dụng và kết quả tính toán.
Sơ lược về cấu trúc và phân loại ROM – RAM:
ROM (Read Only Memory): bộ nhớ chỉ đọc
RAM (Random Access Memory): bộ nhớ truy xuất ngẫu nhiên (bộ nhớ ghi đọc)
1.4.Các chân của chip 89C51:
1.4.1. Sơ đồ khối và chức năng các khối của chip 89C51:
CPU (Central Processing Unit): Đơn vị xử lý trung tâm tính toán và điều khiển quá trình hoạt động của hệ thống.
OSC (Oscillator): Mạch dao động _ tạo tín hiệu xung clock cung cấp cho các khối trong chip hoạt động.
Interrupt control: Điều khiển ngắt _ nhận tín hiệu ngắt từ bean ngoài (INT0\, INT1\), từ bộ định thời (TIMER0, TIMER1) và từ cổng nối tiếp (SERIAL PORT), lần lượt đưa các tín hiệu ngắt này đến CPU để xử lý.
Other registers: Các thanh ghi khác _ lưu trữ dữ liệu của các port xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình hoạt động của hệ thống.
RAM (Random Access Memory): Bộ nhớ dữ liệu trong chip lưu trữ các dữ liệu.
ROM (Read Only Memory): Bộ nhớ chương trình trong chip lưu trữ chương trình hoạt động của chip.
I/O ports (In/Out ports): Các port xuất/nhập _ điều khiển việc xuất nhập dữ liệu dưới dạng song song giữa trong và ngoài chip thông qua các port P0, P1, P2, P3.
Serial port: Port nối tiếp _ điều khiển việc xuất nhập dữ liệu dưới dạng nối tiếp giữa trong và ngoài chip thông qua các chân TxD, RxD.
Timer 0, Timer 1: Bộ định thời 0, 1 _ dùng để định thời gian hoặc đếm sự kiện (đếm xung) thông qua các chân T0, T1.
Bus control: Điều khiển bus _ điều khiển hoạt động của hệ thống bus và việc di chuyển thông tin trên hệ thống bus.
Bus system: Hệ thống bus _ liên kết các khối trong chip lại với nhau.
1.4.2. Chức năng các chân của chip 89C51
Chip 89C51 :gồm 40 chân
2 chân nguồn cấp điện (VCC, VSS)
32 chân xuất/nhập
6 chân chức năng (EA, ALE, PSEN, XTAL1, XTAL2, RST)
Port xuất/nhập 8 bit (P0.0 – P0.7)
Port xuất/nhập 8 bit (P1.0 – P1.7)
Port xuất/nhập 8 bit (P2.0 – P2.7)
Port xuất/nhập 8 bit (P3.0 – P3.7)
1.4.3.Sơ đồ chân của chip 89C51
Hình 2.2: Sơ đồ chân vi xử lý
Port 0:
- Port 0 (P0.0 – P0.7) có số chân từ 32 – 39.
- Port 0 có hai chức năng:
• Port xuất nhập dữ liệu (P0.0 - P0.7) không sử dụng bộ nhớ ngoài.
• Bus địa chỉ byte thấp và bus dữ liệu đa hợp (AD0 – AD7) có sử dụng bộ nhớ ngoài.
+ Lưu ý: Khi Port 0 đóng vai trò là port xuất nhập dữ liệu thì phải sử dụng các điện trở kéo lên bên ngoài.
- Khi lập trình cho ROM trong chip thì Port 0 đóng vai trò là ngõ vào của dữ liệu (D0 -> D7)
Port 1:
- Port 1 (P1.0 – P1.7) có số chân từ 1 – 8.
- Port 1 có một chức năng:
• Port xuất nhập dữ liệu (P1.0 – P1.7) _ sử dụng hoặc không sử dụng bộ nhớ ngoài.
- Khi lập trình cho ROM trong chip thì Port 1 đóng vai trò là ngõ vào của địa chỉ byte thấp (A0 – A7)
Port 2:
- Port 2 (P2.0 – P2.7) có số chân từ 21 – 28.
- Port 2 có hai chức năng:
• Port xuất nhập dữ liệu (P2.0 – P2.7) _ không sử dụng bộ nhớ ngoài.
• Bus địa chỉ byte cao (A8 – A15) _ có sử dụng bộ nhớ ngoài.
- Khi lập trình cho ROM trong chip thì Port 2 đóng vai trò là ngõ vào của địa chỉ byte cao (A8 – A11) và các tín hiệu điều khiển
Port 3:
- Port 3 (P3.0 – P3.7) có số chân từ 10 – 17.
- Port 0 có hai chức năng:
• Port xuất nhập dữ liệu (P3.0 – P3.7) _ không sử dụng bộ nhớ ngoài hoặc các chức năng đặc biệt.
• Các tín hiệu điều khiển _ có sử dụng bộ nhớ ngoài hoặc các chức năng đặc biệt.
- Khi lập trình cho ROM trong chip thì Port 3 đóng vai trò là ngõ vào của các tín hiệu điều khiển
Chức năng của các chân Port3:
Bit
Tên
Địa chỉ bit
Chức năng
P3.0
RxD
B0H
Chân nhận dữ liệu của port nối tiếp
P3.1
TxD
B1H
Chân phát dữ liệu của port nối tiếp
P3.2
INT0\
B2H
Ngõ vào ngắt ngoài 0
P3.3
INT1\
B3H
Ngõ vào ngắt ngoài 1
P3.4
T0
B4H
Ngõ vào của bộ định thời đếm 0
P3.5
T1
B5H
Ngõ vào của bộ định thời đếm 1
P3.6
WR\
B6H
Điều khiển ghi bộ nhớ dữ liệu Ram ngoài
P3.7
RD\
B7H
Điều khiển đọc bộ nhớ dữ liệu Ram ngoài
Chân PSEN\:
- PSEN (Program Store Enable): cho phép bộ nhớ chương trình, chân số 29.
- Chức năng:
• Là tín hiệu cho phép truy xuất (đọc) bộ nhớ chương trình (ROM) ngoài.
• Là tín hiệu xuất, tích cực mức thấp.
PSEN\ = 0 _ trong thời gian CPU tìm-nạp lệnh từ ROM ngoài.
PSEN\ = 1 _ CPU sử dụng ROM trong (không sử dụng ROM ngoài).
- Khi sử dụng bộ nhớ chương trình bên ngoài, chân PSEN\ thường được nối với chân OE\ của ROM ngoài để cho phép CPU đọc mã lệnh từ ROM ngoài.
Chân ALE:
- ALE (Address Latch Enable): cho phép chốt địa chỉ, chân số 30.
- Chức năng:
• Là tín hiệu cho phép chốt địa chỉ để thực hiện việc giải đa hợp cho bus địa chỉ byte thấp và bus dữ liệu đa hợp
(AD0 – AD7).
• Là tín hiệu xuất, tích cực mức cao.
ALE = 0 _ trong thời gian bus AD0 – AD7 đóng vai trò là bus D0 – D7.
ALE = 1 _ trong thời gian bus AD0 – AD7 đóng vai trò là bus A0 – A7.
- Khi lập trình cho ROM trong chip thì chân ALE đóng vai trò là ngõ vào của xung lập trình (PGM\)
Khi lệnh lấy dữ liệu từ RAM ngoài (MOVX) được thực hiện thì 1 xung ALE bị bỏ qua
Chân EA\:
- EA (External Access): truy xuất ngoài, chân số 31.
- Chức năng:
• Là tín hiệu cho phép truy xuất (sử dụng) bộ nhớ chương trình (ROM) ngoài.
• Là tín hiệu nhập, tích cực mức thấp.
EA\ = 0 _ Chip 89C51 sử dụng chương trình của ROM ngoài.
EA\ = 1 _ Chip 89C51 sử dụng chương trình của ROM trong.
- Khi lập trình cho ROM trong chip thì chân EA đóng vai trò là ngõ vào của điện áp lập trình (Vpp = 12V/89xx, 21V/80xx,87xx)
+ Lưu ý: Chân EA\ luôn luôn phải được nối lên Vcc (sử dụng chương trình của ROM trong) hoặc xuống Vss (sử dụng chương trình của ROM ngoài).
Chân XTAL1, XTAL2:
- XTAL (Crystal): tinh thể thạch anh, chân số 18-19.
- Chức năng:
• Dùng để nối với thạch anh hoặc mạch dao động tạo xung clock bên ngoài, cung cấp tín hiệu xung clock cho chip hoạt động.
• XTAL1 _ ngõ vào mạch tạo xung clock trong chip.
• XTAL2 _ ngõ ra mạch tạo xung clock trong chip.
Chân RST:
- RST (Reset): thiết lập lại, chân số 9.
- Chức năng:
• Là tín hiệu cho phép thiết lặp (đặt) lại trạng thái ban đầu cho hệ thống.
• Là tín hiệu nhập, tích cực mức cao.
RST = 0 _ Chip 89C51 hoạt động bình thường.
RST = 1 _ Chip 89C51 được thiết lặp lại trạng thái ban đầu.
Chân Vcc, GND:
- Vcc, GND: nguồn cấp điện, chân số 40-20.
- Chức năng:
• Cung cấp nguồn điện cho chip 89V51 hoạt động.
• Vcc = +5V ± 10%.
• GND = 0V.
Tổ chức bộ nhớ
- Bộ vi xử lý có không gian bộ nhớ chung cho dữ liệu vàchương trình
- Chương trình và dữ liệu nằm chung trên RAM.
- Bộ vi điều khiển có không gian bộ nhớ riêng cho dữ liệu vàchương trình.
- Chương trình và dữ liệu nằm riêng trên ROM và RAM.
Tổ chức bộ nhớ của chip 89C51:
Hình 2.3: Không gian bộ nhớ của chip 89C51
2.Giới thiệu về các IC cơ bản trong mạch
2.1.Giới thiệu về IC ULN2803
IC ULN2803
Đây là IC gồm 8 transistor NPN ghép Darlington gắn mạch điện tử trong dãy này của chuổi là một bộ lý tưởng để giao tiếp với mạch điện dạng số mức logic thấp như: TTL, CMOS hoặc PMOS/NMOS
ULN2803 được thiết kế để phù hợp với chuẩn TTL
Hình 2.4: Ic ULN2803 và sơ đồ chân
Vài chỉ số kĩ thuật của IC ULN2803
Dòng điện ngõ vào khoảng 0,93mA – 1,35mA
Điện áp ngõ vào khoảng 2,4V – 3V
Chân 1 – 8: Ngõ và dữ liệu
Chân 11 – 18: Ngõ ra dữ liệu
Chân 9: Nối Mass
Chân 10: Nối Vcc
Trong thực tế IC này có nhiều ứng dụng đòi hỏi công suất lớn. Trong mạch này em sử dụng ULN 2803 AG nhằm đệm đảo dữ liệu xuất ra từ Port 3 của Vi xử lý nhằm nâng dòng
Biểu đồ kiểm tra của ULN2803
Hình 2.5: Cấu trúc ULN2803
2.2.Giới thiệu về IC 74HC154
IC 74HC154 là loại IC dùng để giải mã ,giải đa hợp với các tính năng chính:
Giải đa hợp có 16 đường ngõ ra
Giải mã nhị phân 4 bit đầu vào thành 16 đường ngõ ra tương ứng
Hai ngõ vào cho phép khóa hoặc mở rộng
Hình 2.6: sơ đồ chân IC 74HC154
2.2.1.Sơ đồ chân IC 74HC154
Chức năng các chân của IC 74HC154:
Chân 24,12(VCC,GND):dùng cấp nguuồn cho IC hoạt động .
Chân 18,19 (G1,G2):các ngõ vào cho phép IC hoạt động,trong một thời điểm chỉ có 1 IC hoạt động, IC bị cấm hoạt động thì tất cả ngõ ra đều ở mức logic cao (bất chấp ngõ vào ở trạng thái nào).
Chân 23,22,21,20 (A,B,C,D):các ngõ vào quy định trạng thái ngõ ra
Chân 1-11,13-15 (O0-O15):các ngõ ra của IC
Tuỳ thuộc vào trạng thái của các đường địa chỉ mà ta có ngõ ra tương ứng, khi cả hai ngõ vào G1,G2 ở mức logic thấp thì IC hoạt động bình thường, tại một thời điểm chỉ có một ngõ ra ở mức logíc thấp, tất cả các ngõ còn lại đều ở mức logic cao.
2.2.2.Sơ đồ bên trong ic 74HC154
Hình 2.7: Cấu trúc bên trong 74HC154
2.2.3. Bảng chức năng của 74HC154
H: HIGH Voltage Level (điện áp mức cao)
L: LOW Voltage Level (điện áp mức thấp)
x: Don’t care (bất chấp ngõ vào)
Hình 2.8: Bảng sự thật của 74HC154
2.2.4.Nguyên tắc hoạt động của IC 74HC154:
Dựa vào bảng trạng thái ta thấy: Chỉ cần chân G1,G2 ỏ trạng thái cấm ( không cho phép IC hoạt động) thì tất cả ngõ ra của IC 74HC154 đều ở mức logic cao bất chấp trạng thái ở các chân địa chỉ (A,B,C,D). Chẳng hạn như khi chân G1 ở mức logic cao thì tất cả các ngõ ra của IC đều ở mức logic cao bất chấp trạng thái của các chân còn lại như G2,A,B,C,D. Và khi chân G2 ở mức cao thì cũng tương tự như thế.
Khi các đương địa chỉ vào từ 00H_07H thì mức logic thấp duy nhất ở ngõ ra sẽ di chuyển từ ngõ ra(O0_O7).
3.Giới thiệu về led ma trận
Led ma trận gồm các led phát quang được bố trí thành hàng và cột trong một vỏ. Các tín hiệu điều khiển cột được nối với Cathode của tất cả các led trên cùng một cột. Các tín hiệu điều khiển hàng cũng được nối với Anode của tất cả các led trên cùng một hàng như hình vẽ sau:
Hình 2.9: Led ma trận một màu
Hình 2.10: Led ma trận đa màu
Khi có một tín hiệu điều khiển ở cột và hàng, các chân Anode của các Led trên hàng tương ứng được cấp điện áp cao, đồng thời các chân Cathode các Led trên cột được cấp điện áp thấp. Tuy nhiên lúc đó chỉ có một Led sang, vì nó có đồng thời điện thế cao trên Anode và điện thế thấp trên Cathode. Như vậy, khi có một tín hiệu điều khiển hàng và cột, thì tại một thời điểm chỉ có duy nhất một Led tại chỗ gặp nhau của hàng và cột là sáng.
Các bảng quang báo với số lượng Led lớn hơn cũng được kết nối theo cấu trúc như vậy.
Trong trường hớp ta muốn cho sáng đồng thời một số Led rời rạc trên ma trận, để hiển thị một kí tự nào đó, nếu trong hiển thị tĩnh ta cấp áp cao cho Anode và áp thấp cho Cathode, cho các Led tương ứng mà ta muốn sáng. Nhưng khi đó một số Led ta không mong muốn sáng cũng sẽ sáng, miễn là nó nằm tại vị trí gặp nhau của các cột và hàng mà ta cấp nguồn. Vì vậy trong điều khiển Led ma trận ta không thể sử dụng phương pháp hiển thị tĩnh mà phải sử dụng phương pháp quét (hiển thị động), có nghĩa là ta phải tiến hành cấp tín hiệu điều khiển theo dạng xung quét trên các hàng và cột có Led cần hiển thị. Để đảm bảo cho mắt nhìn thấy Led không bị nháy, thì tầng số quét nhỏ nhất cho mỗi chu kì đi hết các cột là 20Hz (50ms). Trong lập trình vi điều khiển cho Led ma trận bằng vi xử lý ta cũng phải sử dụng phương pháp quét Led như vậy.
Ma trận Led có thể là loại chỉ hiển thị được một màu hoặc hiển thị được hai màu trên một điểm, khi đó Led có số chân ra tương ứng:
+ Đối với Led ma trận 8x8 hiển thị một màu, thì số chân ra là 16, trong đó 8 chân dùng để điều khiển hàng và 8 chân còn lại đề điều khiển cột.
+ Đối với loại 8x8 có hai màu thì số chân ra của Led là 24 chân, trong đó 8 chân dùng để điều khiển hàng chung cho cả hai màu, 16 chân còn lại thì 8 chân dùng để điều khiển cột của màu thứ nhất và 8 chân còn lại dùng để điều khiển màu thứ hai.
4. Sơ đồ khối của mạch quang báo :
KHỐI VI ĐIỀU KHIỂN
KHỐI GHÉP NỐI
(HIỂN THỊ HÀNG)
NGUỒN
(5V)
KHỐI PHÂN KÊNH
(QUÉT CỘT)
KHỐI HIỂN THỊ
BẢNG LED MA TRẬN
Hình 2.11: Sơ đồ khối của mạch
5. Chức năng của từng khối :
5.1.Khối vi điều khiển:
Hình 2.12: Khối vi điều khiển
IC 89C51 là khối điều khiển trung tâm ,khối này chứa chương trình thực thi. Có 4 port trong đó: Port 0 và Port 2 dùng để xuất dữ liệu đồng thời qua khối đảo để hiển thị hàng cho Led ma trận, Port 1 để xuất dữ liệu nhị phân 4 bit cho hai IC 74HC154 trong khối phân kênh. Port 3 em chỉ sử dụng hai chân P3.0 và P3.1 để điều khiển hai IC 74HC154
5.2.Khối phân kênh :
Hình 2.13: Khối Phân kênh
Khối phân kênh em dùng 2 IC 74HC154 dùng điều khiển hoạt động của 8 led ma trận. Việc dùng IC 74HC154 làm giảm bớt việc phải tốn Port ở khối CPU do IC này phân kênh 4 è 16 ( 2 IC sẽ được 32 đường điều khiển ).
5.3.Khối ghép nối
Hình 2.14: Khối ghép nối
Khối ghép nối em dùng IC ULN2803 và transistor để điều khiển hiển thị hàng, tại một thời điểm khi điều khiển hàng thì em xuất đồng thời port 0 và port 2 ra khối ghép nối đề hiển thị cho Led ma trận
5.4.Khối Led Matrix :
Hình 2.15: bảng ma trận 16x32
Khối led matrix với 8 led dùng để hiện được chữ có dấu.
Các Led ma được thiết kế theo kiểu hàng nối chung được nối với Port 0 và Port 2 để hiển thị ký tự, còn các cột đuợc nối riêng vào 2 IC 74HC154 để cấp tín hiệu quét
6.Nguyên lý hoạt động:
6.1. Sơ đồ nguyên lý toàn mạch
Hình 2.16: Sơ đồ nguyên lý ma trận 16x32
6.2.Khối Led Matrix:
Loại Led ma trận sử dụng là Led 24 chân gồm 8 hàng và 8 cột. Ma trận Led có 2 màu chính là xanh và đỏ, ngoài ra còn có 1 màu phụ là màu cam khi kết hợp 2 màu trên lại. Mỗi điểm Led trên ma trận có cấu tạo gồm 2 Led xanh và đỏ ghép lại theo nguyên tắc Anode chung còn Cathode để riêng.
Sự kết hợp các mức logic cao/thấp thích hợp trên các hàng và cột theo một quy luật nhất định mà ta sẽ có hình ảnh như mong muốn.
Phương pháp điều khiển: Đầu tiên ta cấp tín hiệu đầu tiên ra 16 hàng của led ma trận đó là mã nhị phân tương ứng một phần chữ mà ta muốn hiển thị ra đồng lọat 16 hàng. Sau đó ta quét cột 1 bằng cách điều khiển cột đầu tiên ở mức logic 0 tương ứng các Cathode của cột đầu tiên ở mức logic 0.
Kế tiếp ta cấp tín hiệu mã nhị phân của một phần chữ tiếp theo ra tất cả hàng sau đó quét cột thứ 2 bằng cách điều khiển cột 2 về mức logic 0 tất cả cột còn lại mức logic 1
Quá trình cứ diễn ra một cách tuần tự và liên tục như vậy và do hiện tượng lưu ảnh của mắt mà ta thấy được các Led dường như sáng cùng một lúc để tạo ra hình ảnh mong muốn trên Led ma trận
Các ngõ vào điều khiển cột đều sử dụng mức thấp để điều khiển.
6.3.Khối vi điều khiển:
Ở đây ta dùng con 89C51, có 40 chân,gồm 4 Port dùng xuất nhập dữ liệu, mỗi Port 8 chân; 2 chân nguồn 20 mass và 40 Vcc; 2 chân gắn thạch anh (chân 18,19);1 chân reset chân 9;chân 29 là chân cho phép bộ nhớ chương trình; chân 30 là chân chốt địa chỉ và cuối cùng chân 31 là chân cho phép truy xuất ngoài.
Để reset chíp ta dùng nút nhấn . Trong mạch,chúng ta có thể reset tự động bằng tụ hoặc reset bằng tay bởi nút nhấn.
Các Port để điều khiển:
Port 0 và Port 2 để điều khiển hàng Led ma trận
Port 1 và 2 chân P3.0, P3.1 để điều khiển IC 74HC154 quét cột
6.4.Khối phân kênh:
Hình 2.17: Sơ đồ khối phân kênh
Khối phân kênh em dùng hai IC 74HC154 dùng điều khiển hoạt động của 8 led ma trận. Việc dùng IC 74HC154 làm giảm bớt việc phải tốn Port ở khối CPU do IC này phân kênh 4 è 16 ( 2 IC sẽ được 32 đường điều khiển ).
Nguyên lý hoạt động của khối phân kênh : Dùng 8 bit ở Port 1 để điều khiển. Trong đó:
4 bit P1.4, P1.5, P1.6, P1.7 dùng để điều khiển ngõ vào của IC 74HC154 thứ nhất.
Và 4 bit còn lại P1.0, P1.1, P1.2, P1.3 dùng để điều khiển ngõ vào của IC 74HC154 thứ hai
Còn 2 bit P3.0 và P3.1 điều khiển cho phép IC bắt đầu quét cột hoặc không quét ngòai ra còn được dùng để chống lem.
Khi bit P3.0 ở mức 0 thì IC1 sẽ hoạt động điều khiển 4 Led ma trận đầu tiên và bit P3.1 ở mức 0 thì IC2 sẽ họat động điều khiển 4 Led ma trận kế tiếp
Hình 2.18: Bảng trạng thái IC74HC154
H: High Voltage Level
L: Low Voltage Level
X: Don’t Care
6.5. Khối ghép nối
Khối ghép nối được dùng để kết nối giữa khối vi điều khiển và khối led ma trận, ngoài ra còn giúp nâng dòng thêm cho led ma trận vì dòng vi xử lý xuất ra led ko đủ nên ta phải dùng thêm khối ghép nối
Khối ghép nối em đảo mức logic 2 lần nhằm mục đích điều khiển led ma trận sáng bằng mức logic 1 cho phù hợp với lúc thiết kế mạch
Transistor A1015 hoạt động ở chế độ đóng ngắt nên giá trị Rb em tính giá trị như sau:
Đối với Led ma trận thì Led sáng bình thường khi chúng ta hiển thị tĩnh cần dòng ~~20mA cho một con Led ma trận. Nhưng ở đây khi xuất ra Led ma trận chúng ta dùng phương pháp hiển thị động (quét Led) nên dòng đưa qua Led phải cao hơn gấp nhiều lần, và dòng đó dao động từ 40 đến 80 mA
Đó cũng chính là dòng Ic cần cho Led sáng
Đối với transistor hoạt động ở trạng thái bảo hòa thì Beta nằm trong khoảng 50 đến 60
Ta có Ic = Ib x beta => Ib = Ic/beta
=>Ib = 50/60 = 0.83
Rb ta tính như sau: Rb = (Vcc – Vbe – Vout)/ Ib
Với Vcc = 5v
Vbe ~~0.7v
Vout là điện áp ngõ ra vi điều khiển ở mức thấp, Vout = 0.45mA
= > Rb = (5 – 0.7 – 0.45) / 0.83 = 4,6 (KOhm)
= > Ta chọn giá trị gần đúng cho điện trở là 4700 (Ohm)
7.Lưu đồ giải thuật và chương trình:
7.1. Lưu đồ giải thuật
Bắt đầu
S
S
Đ
Đ
Kiểm tra tất cả dữ liệu
(xuất hết chưa)
Tăng 2 kí tự tiếp theo
Nạp các mã lệnh vào DPTR
Kiểm tra quét xong chưa
Gọi chương trình con quét led
Nạp thời gian lưu ảnh
Khởi tạo các giá trị ban đầu
Hình 2.19: Lưu đồ giải thuật
7.2.Chương trình chính
$MOD51
ORG 00H
MAIN:
SETB P3.0
SETB P3.1
MOV DPTR,#CODE1
BATDAU:
MOV R0,#4
VONG:
LCALL SANGCHINH
DJNZ R0,VONG
INC DPTR
INC DPTR
MOV A,DPL
MOV R5,DPH
CJNE R5,#HIGH(CODE1+1230),BATDAU
CJNE A,#LOW(CODE1+1230),BATDAU
LJMP MAIN
SANGCHINH:
PUSH DPL
PUSH DPH
MOV R1,#00H
MOV R2,#00H
MOV R6,#00H
SCAN:
MOV R3,#00H
MOV A,R3
MOVC A,@A+DPTR
MOV P0,A
INC R3
MOV A,R3
MOVC A,@A+DPTR
MOV P2,A
MOV P1,R1
CLR P3.0
LCALL DELAY
SETB P3.0
INC R1
INC DPTR
INC DPTR
CJNE R1,#10H,SCAN
SCAN2:
MOV R3,#00H
MOV A,R3
MOVC A,@A+DPTR
MOV P0,A
INC R3
MOV A,R3
MOVC A,@A+DPTR
MOV P2,A
MOV P1,R6
CLR P3.1
LCALL DELAY
SETB P3.1
INC R2
MOV A,R2
SWAP A
MOV R6,A
INC DPTR
INC DPTR
CJNE R2,#10H,SCAN2
POP DPH
POP DPL
RET
DELAY:
PUSH 05H
PUSH 04H
PUSH 03H
MOV R4,#3
DELAY1:
MOV R5,#200
DELAY2:
DJNZ R5,DELAY2
DJNZ R4,DELAY1
POP 03H
POP 04H
POP 05H
RET
CODE1:
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0C0H,3H,0E0H,7H,0D0H,0BH,0E0H,7H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0E0H,7H,0D0H,0BH,0E0H,7H,0C0H,3H ;mui ten
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0H,0H,10H,0H,10H,0H,0F0H,1FH,0F0H,1FH,10H,0H,10H,0H,0H,0H,0C0H,1FH,0C0H,1FH,0H,1H,0C0H,1H,0C0H,1H,0H,0H,0C0H,0FH,0C0H,1FH,0H,10H,0H,10H,0H,8H,0C0H,1FH,0C0H,1FH,40H,0H,60H,0H ;Tru
DB 80H,0FH,0C8H,1FH,58H,10H,50H,10H,40H,10H,0C0H,1FH,0C0H,0FH,30H,0H,0C0H,1FH,0C0H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,80H,4FH,0C0H,9FH,40H,90H,40H,90H,40H,88H,0C0H,0FFH,0C0H,7FH,0H,0H,0H,0H,0H,0H,0H,0H ;ong
DB 0H,1H,0F0H,1FH,0F0H,1FH,10H,11H,10H,11H,10H,10H,30H,18H,0E0H,0FH,0C0H,7H,0H,0H,00H,0CH,80H,1EH,40H,12H,40H,0D2H,40H,0D2H,0C0H,1FH,80H,1FH,0H,0H,0C0H,1FH,0C0H,1FH,0H,0H,0H,0H,0H,0H,0H,0H,00H,00H ;Dai
DB 0F0H,1FH,0F0H,1FH,0H,1H,0H,1H,0H,1H,0H,1H,0F0H,1FH,0F0H,1FH,0H,0H,80H,0FH,0C0H,1FH,40H,10H,40H,0D0H,40H,0D0H,0C0H,1FH,80H,0FH,0H,0H,80H,0FH,0C0H,1FH,40H,10H,40H,10H,40H,10H,80H,8H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H ;Hoc
DB 0E0H,0FH,0F0H,1FH,10H,10H,10H,10H,10H,10H,10H,10H,60H,0CH,0H,0H,80H,0FH,0D0H,1FH,58H,10H,48H,10H,58H,10H,0D0H,1FH,80H,0FH,0H,0H,0C0H,1FH,0C0H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H ;Con
DB 80H,4FH,0C0H,9FH,40H,90H,40H,90H,40H,88H,0C0H,0FFH,0C0H,7FH,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0F0H,1FH,30H,0H,0F0H,0H,0C0H,3H,00H,0FH,0H,1CH,0F0H,1FH,0H,0H ;g N
DB 80H,4FH,0C0H,9FH,40H,90H,40H,90H,40H,88H,0C0H,0FFH,0C0H,7FH,0H,0H, 0F8H,1FH,0F8H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,0D8H,1FH,0D8H,1FH,0H,0H,80H,0FH,0D0H,1FH,58H,12H,48H,0D2H,58H,0D2H,0D0H,13H,80H,0BH,0H,0H ;ghie
DB 0C0H,0FFH,0C0H,0FFH,80H,10H,40H,10H,40H,10H,0C0H,1FH,80H,0FH,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,10H,0H,10H,0H,0F0H,1FH,0F0H,1FH,10H,0H,10H,0H,0H,0H ;p T
DB 0F0H,1FH,0F0H,1FH,10H,2H,10H,2H,10H,2H,0F0H,3H,0E0H,1H,0H,0H,0F0H,1FH,0F0H,1FH,0H,1H,0H,1H,0H,1H,0H,1H,0F0H,1FH,0F0H,1FH,0H,0H,0E0H,0FH,0F0H,1FH,10H,10H,10H,10H,10H,10H,10H,10H,60H,0CH,0H,0H ;phc
DB 0F0H,1FH,30H,0H,0F0H,0H,0C0H,3H,00H,0FH,0H,3H,0C0H,0H,30H,0H,0F0H,1FH,0F0H,1FH,0H,0H
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0C0H,3H,0E0H,7H,0D0H,0BH,0E0H,7H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0C0H,3H,0E0H,7H,0D0H,0BH,0E0H,7H,0C0H,3H
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0H,0H,0F0H,1FH,0F0H,1FH,80H,3H,0C0H,6H,60H,0CH,30H,18H,10H,10H,0H,0H,0F8H,1FH,0F8H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,80H,0FH,0C0H,1FH,40H,10H,40H,10H,40H,10H,0C0H,1FH,80H,0FH ;Kho
DB 0H,0H,00H,0CH,80H,1EH,40H,12H,40H,12H,40H,12H,0C0H,1FH,80H,1FH,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0E0H,0FH,0F0H,1FH,10H,10H,10H,10H,10H,10H,10H,10H,60H,0CH ;a C
DB 0H,0H,80H,0FH,0D0H,1FH,58H,10H,48H,10H,58H,10H,0D0H,1FH,80H,0FH,0H,0H,0C0H,1FH,0C0H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,80H,4FH,0C0H,9FH,40H,90H,40H,90H,40H,88H,0C0H,0FFH,0C0H,7FH ;ong
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0F0H,1FH,30H,0H,0F0H,0H,0C0H,3H,00H,0FH,0H,1CH,0F0H,1FH,0H,0H,80H,4FH,0C0H,9FH,40H,90H,40H,90H,40H,88H,0C0H,0FFH,0C0H,7FH ;ng
DB 0H,0H,0F0H,1FH,0F0H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,80H,0FH,0D0H,1FH,58H,12H,48H,0D2H,58H,0D2H,0D0H,13H,80H,0BH,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H ;he
DB 0H,1H,0F0H,1FH,0F0H,1FH,10H,11H,10H,11H,10H,10H,30H,18H,0E0H,0FH,0C0H,7H,0H,0H,0D8H,1FH,0D8H,1FH,0H,0H,80H,0FH,0D0H,1FH,58H,12H,48H,0D2H,58H,0D2H,0D0H,13H,80H,0BH ;Die
DB 0H,0H,0C0H,1FH,0C0H,1FH,80H,0H,40H,0H,40H,0H,0C0H,1FH,80H,1FH,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,10H,0H,10H,0H,0F0H,1FH,0F0H,1FH,10H,0H,10H,0H ;n T
DB 00H,00H,0C0H,0FH,0C0H,1FH,4H,10H,14H,10H,0CH,8H,0C0H,1FH,0C0H,1FH,40H,0H,70H,0H
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
DB 0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H,0H
END
Cách tạo chữ có dấu và quét Led ma trận trong Mạch Quang Báo
Phần mềm hỗ trợ em trong việc tạo font chữ và lấy code là Matrix Ver 1.0
Giao diện như sau:
Trong đó sơ đồ chân nối với vi xử lý để hiển thị 16 hàng được hiển thị tuần tự từ trên xuống được đánh số như sau:
Hàng 1 được P0.0 điều khiển – Hàng 8 được P0.7 điều khiển
Hàng 9 được P2.0 điều khiển – Hàng 16 được P2.7 điều khiển
Trong đó cột sẽ được quét lần lượt từ trái sang phải bởi hai IC 74HC154
Cách tạo mã và quét Led ma trận sẽ được tính như sau: Giả sử ta thiết kế chữ “Học” để tạo ra mã Hex và xuất ra Led ma trận thì ban đầu ta sẽ tít vào những ô mà ta muốn tích cực để tạo chữ.
Và mã Hex tương ứng cho đoạn chữ trên là:
DB
0F0H,1FH,0F0H,1FH,0H,1H,0H,1H,0H,1H,0H,1H,0F0H,1FH,0F0H,1FH,0H,0H,80H,0FH,0C0H,1FH,40H,10H,40H,0D0H,40H,0D0H,0C0H,1FH,80H,0FH,0H,0H,80H,0FH,0C0H,1FH,40H,10H,40H,10H,40H,10H,80H,8H,0H,0H
Sau khi có mã Hex ta sẽ lần lượt hiển thị ra 16 hàng vì một byte chỉ có 8 bít nên ta sẽ xuất một lần ra hai byte, tương ứng khi tăng độ lệch vùng dữ liệu ta sẽ tăng hai lần và khi kiểm tra ta sẽ kiểm tra byte chẵn.
Cách quét, ta sẽ lần lượt xuất ra và quét như sau: Đầu tiên ta sẽ xuất hai mã Hex ra hàng sau đó quét cột 1 (cột 1 lúc này sẽ mức logic 0, còn lại mức logíc 1) như thế sẽ chỉ có cột đầu tiên sẽ sáng
Cặp mã Hex tương ứng lúc này sẽ là 0F0H và 01FH
Kế tiếp ta sẽ chống lem sau đó hiển thị tiếp cột thứ hai (cột 1 lúc này sẽ về mức logic 1, và cột 2 sẽ mức logic 0)
Cặp mã Hex tương ứng lúc này sẽ là 0F0H và 01FH
Sau đó ta sẽ chống lem và hiển thị tiếp cột thứ ba
Cặp mã Hex tương ứng lúc này là 000H,001H
Quy trình sẽ diễn ra liên tục như vậy cho đến khi ta xuất đến hết chữ mà ta mong muốn. Quét Led ma trận nhanh nhưng do sự lưu ảnh của mắt ta sẽ có cảm giác như tất cả đèn Led đều sáng liên tục
Sau khi đã xuất hoàn tất chữ “Học” ta sẽ thoát chương trình scanmatrix và tăng DPTR lên hai độ lệch và tiếp tục kiểm tra
Nếu chưa đủ dữ liệu cần kiểm tra thì sẽ quay lại và xuất ra tiếp
Và kế đến sẽ là:
Cứ như vậy em sẽ hiển thị được chữ cần xuất ra bảng quang báo
Cách tạo chữ có dấu
Trong cách tạo chữ có dấu sẽ tùy vào mỗi người và các font chữ khác nhau ở đây trong mạch của em em sử dụng font chữ Time New Roma để tạo chữ
Các âm như a e i u y o em sẽ cân chỉnh nằm trong khoảng từ hàng thứ 7 đến hàng thứ 13. Như vậy em sẽ còn hàng 15 và 16 để tạo dấu nặng và các hàng trên để tạo dấu mũ và các dấu sắc
LỜI KẾT
--- µ ---
Ngày nay khi bước vào một hiệu sách, bạn có thể biết được hiệu sách đó bán các loại sách gì, có loại sách mà mình cần mua hay không … nhờ vào bảng đèn quang báo bắt mắt đặt trước cửa hiệu. Hoặc khi vào sân bay bạn biết được giờ giấc các chuyến bay, các thong báo ngắn của phi trường… cũng nhờ vào các bảng đèn quang báo. Đôi khi đi ngoài đường phố lúc về đêm, bạn sẽ thấy được các bảng quang báo lớn hơn với các hình ảnh cử động như Coca Cola, các logo sản phẩm xuất hiện theo nhiều kiểu (tràn từ trên xuống và từ dưới lên, lan dần từ trái qua phải, phải sang trái…)
Quang báo ngày nay đã được đưa vào sử dụng rất nhiều trong các lĩnh vực khác nhau như: Giới thiệu sản phẩm, thông báo tin tức (thay cho các bảng quảng cáo bằng giấy), sử dụng trong việc trang trí bảng chào trong các khách sạn, các dịp lễ hội lớn, sử dụng trên bảng điểm trên thị trường chứng khoán, các chỉ số giá vàng, giá USD …
Quang báo ngày nay được sử dụng, ứng dụng rộng rãi và to lớn trong cuộc sống sinh hoạt hàng ngày của chúng ta và trong công nghiệp.
Lời đầu tiên em xin chân thành gửi lời cảm ơn đến toàn thể các thầy cô giảng viên khoa Điện tử đã gắn bó với em trong suốt quá trình học tập tại trường Đại Học Công Nghiệp Thành Phố Hồ Chí Minh. Cảm ơn các thầy cô đã truyền dạy lại cho em những kiến thức chuyên môn cũng như kiến thức về thực tế cuộc sống để sau này em tự tin vững bước trong công việc.
Đồ án 2 chúng em thực hiện dựa vào những kiến thức cơ bản và kiến thức chuyên sâu của bộ môn Vi Xử Lý, để hoàn thành được đồ án 2 này em xin gửi lời cảm ơn đến các thầy đã hướng dẫn cho em bộ môn Lý thuyết và thực Hành Vi Xử Lý, cảm ơn thầy Trần Nguyên Bảo Trân là giáo viên hướng dẫn đồ án của em đã tận tình hướng dẫn cho em các bước thực hiện đồ án cho hoàn thiện.
Vì kiến thức của em còn hạn chế cho nên trong quá trình thực hiện và bảo vệ đồ án không thể tránh khỏi những sai sót, kính mong các thầy bỏ qua và chỉ bảo thêm cho em để em có thể hoàn thiện hơn những kiến thức chuyên sâu bộ môn vi xử lý.
Thời gian học ba năm chỉ mới đây thôi nhưng giờ đã gần kề ngày tốt nghiệp, Em không biết nói gì hơn lời chúc tất cả các thầy cô luôn luôn dồi dào sức khỏe, để hoàn thành tốt công việc, luôn thành công và đạt được những gì mình mong muốn.
Em xin chân thành cảm ơn!
Tài liệu tham khảo
Giáo trình điện tử số - Bộ môn Điện Tử Công Nghiệp – Khoa công Nghệ Điện Tử - Trường Đại Học Công Nghiệp TPHCM
Giáo trình Vi Xử Lý - Bộ môn Điện Tử Công Nghiệp – Khoa công Nghệ Điện Tử - Trường Đại Học Công Nghiệp TPHCM