1. Mục tiêu: Sau khi hoàn thành modul này, người học có khả năng Sử dụng được ngôn ngữ lập trình C cho vi điều khiển ( các kiểu dữ liệu, các phép toán xử lý dữ liệu, cấu trúc chương trình, mảng dư liệu, hàm.) Viết được các chương trình giải quyết các bài toán ứng dụng trong thực tế: Led đơn, Led 7 thanh, LCD, động cơ bước, động cơ DC.Modul này giúp người học phát triển năng lực: Tư duy lập trình, sử dụng nhiều ngôn ngữ lập trình khác nhau Có khả năng làm việc độc lập và làm việc theo nhóm. 2. Điều kiện tiên quyết:Đã học các modul: Nhập môn tin học(đã bao gồm cơ bản về ngôn ngữ lập trình C), vi điều khiển, điện tử căn bản. 3. Mô tả modul:Modul này cung cấp cho sinh viên các kiến thức:Ôn lại về ngôn ngữ C theo chuẩn ANSI Ôn lại về vi điều khiển AT89C51 KeilC cho vi điều khiển AT89C51Các Seminar về lập trình C cho Vi điều khiển
BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC SPKT HƯNG YÊN Độc lập – Tự do – Hạnh phúc CHƯƠNG TRÌNH TRÌNH ĐỘ ĐẠI HỌC NGÀNH: CÔNG NGHỆ KỸ THUẬT ĐIỆN –ĐIỆN TỬ ĐỀ CƯƠNG CHI TIẾT Tên Modul: Lập trình C ứng dụng Mã số: EE12-2 Số tín chỉ: 2 Trình độ: Cho sinh viên năm thứ 3 Biên soạn: GIANG HỒNG BẮC, NGUYỄN TIẾN DŨNG, VŨ HỒNG SƠN Phiên bản: 20090208 1. Mục tiêu: Sau khi hoàn thành modul này, người học có khả năng - Sử dụng được ngôn ngữ lập trình C cho vi điều khiển ( các kiểu dữ liệu, các phép toán xử lý dữ liệu, cấu trúc chương trình, mảng dư liệu, hàm.) - Viết được các chương trình giải quyết các bài toán ứng dụng trong thực tế: Led đơn, Led 7 thanh, LCD, động cơ bước, động cơ DC. Modul này giúp người học phát triển năng lực: - Tư duy lập trình, sử dụng nhiều ngôn ngữ lập trình khác nhau - Có khả năng làm việc độc lập và làm việc theo nhóm. 2. Điều kiện tiên quyết: Đã học các modul: Nhập môn tin học(đã bao gồm cơ bản về ngôn ngữ lập trình C), vi điều khiển, điện tử căn bản. 3. Mô tả modul: Modul này cung cấp cho sinh viên các kiến thức: - Ôn lại về ngôn ngữ C theo chuẩn ANSI - Ôn lại về vi điều khiển AT89C51 - KeilC cho vi điều khiển AT89C51 - Các Seminar về lập trình C cho Vi điều khiển 1 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 4. Nội dung modul TT Chủ đề Nội dung Tài liệu chương 1: Ôn lại về ngôn ngữ C theo chuẩn ANSI ( 3 tiết+6 giờ tự nghiên cứu) 2.1 Cấu trúc cơ bản của một chương trình C 2.2 Các yếu tố cơ bản của ngôn ngữ C - ANSI 2.3 Biểu thức và Các phép toán 2.4 Toán tử điều khiển chương trình 2.5 Hàm, lập trình hướng hàm - Bài giảng ngôn ngữ lập trình C - Nhập môn ngôn ngữ lập trình C Nguyễn Thanh Thủy – NXB KHKT chương 2: Ôn lại về vi điều khiển AT89C51 ( 3 tiết+6 giờ tự nghiên cứu) 2.1. Sơ đồ chân tín hiệu của 80C51/AT89C51. 2.2. Sơ đồ khối 2.3. Các thanh ghi chức năng đặc biệt. 2.4. Khối tạo thời gian và bộ đếm Nhắc lại về Vi (Timer/Counter). điều khiển 2.5. Bộ nhớ chương trình và bộ nhớ dữ liệu nội - Bài giảng vi điều khiểnĐặng Văn Khanh – Trường ĐHSPKT hưng Yên - Họ vi điều khiển 8051 – Tống Văn On Phương pháp Giáo viên Thời gian Thuyết trình, trực quan kết hợp giải thích, thảo luận nhóm, tự nghiên cứu theo hướng dẫn. Chu Giang Sơn, Giang Hồng Bắc Học lý thuyết và bài tập dẫn dắt: 3 Tự học: 6 Đàm thoại nêu vấn đề, trực quan và giải thích, Bài tập tình huống. Chu Giang Sơn, Giang Hồng Bắc Học lý thuyết và bài tập dẫn dắt: 12 Tự học: 24 Lý thuyết: Ngôn ngữ lập trình C II 1 2 Nhắc lại về ngôn ngữ C theo chuẩn ANSI trú. 2.6.Nguyên lý truyền tin nối tiếp của AT89C51. 2.7. Cơ chế ngắt trong On-chip AT89C51. 2 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 TT Chủ đề Nội dung Chương 3 C cho vi điều khiển 8051 (12 Tiết + 24 h tự nghiên cứu) 3.1 Keil C cho vi điều khiển 3 Lập trình C cho vi diều khiển AT89C51 3.2 Project 1 Led đơn 3.3 Project 2 dãy 8 Led đơn 3.4 Project 3 điều khiển Led 7 thanh Tài liệu - Bài giảng ngôn ngữ lập trình C Cho vi điều khiển - Tệp chợ giúp của chương trình Keil C - Nhập môn ngôn ngữ lập trình C Nguyễn Thanh Thủy – NXB KHKT Phương pháp Giáo viên Thời gian Diễn giảng, đàm thoại nêu vấn đề, các bài tập tình huống Chu Giang Sơn, Giang Hồng Bắc Học lý thuyết và bài tập dẫn dắt: 5 Tự học: 10 3.5 Phím nhấn 3.6 Ghép nối với LCD 3.7 Điều khiển động cơ DC 3.8 Ghép nối Matrix Led Thực hành : Ngôn ngữ lập trình C II 1.Bài thực hành về 1 Led đơn, dãy 16 Led đơn 2. Bài thực hành điều khiển Led 7 thanh, phím nhấn 4 3.Bài thực hành về Ghép nối với LCD - Bài giảng, tuyển tập bài tập, bài thực hành ngôn ngữ lập trình C Cho vi điều khiển - Tệp chợ giúp của chương trình Keil C Chu Giang Sơn, Giang Hồng Bắc Hướng dẫn theo phiếu bài tập Thí nghiệm: 24h Tự nghiên cứu: 30h 4. Bài thưc hành về động cơ DC, Matrix Led 3 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 5. Tài liệu 1. Nhập môn ngôn ngữ lập trình C Nguyễn Thanh Thủy – NXB KHKT 2 Bài giảng ngôn ngữ lập trình C Cho vi điều khiển 3 Tệp chợ giúp của chương trình Keil C 4.Brian W.Kerninghan vµ Dennis M.Ritchie –The C programming langguage 6. Học liệu: - Giáo trình chính, Sách tham khảo, máy tính, Projector, phấn bảng. - Phòng thí nghiệm và các thiết bị thí nghiệm. 7. Đánh giá: - Thi giữa học kỳ + thực hành : 30% - Thi cuối học kỳ: 70% 4 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 8. Kế hoạch học tập: 8.1 Tiến độ thực hiện: Lý thuyết: 3 tiết/tuần. Thí nghiệm: [( 6h/ca) * 4 ca] 8.2 Thời gian Lý thuyết Trên lớp (tiết) 18 (học: 16; kiểm tra: 2) Thực tập, Thí nghiệm Trên lớp (giờ) Tự học (giờ) 24 30 Tự học (giờ) 30 Tổng cộng Trên lớp: 18 tiết + 24 giờTH; Tự học: 60 giờ 8.3 Kế hoạch chi tiết Bài Nội dung Mục tiêu Hoạt động giáo viên TG (tiết) Hoạt động sinh viên TG (giờ) Điều kiện thực hiện Tín chỉ 1: Lập trình ngôn ngữ C/C++ 1 chương 1: Ôn lại về ngôn ngữ C theo chuẩn ANSI ( 3 tiết+6 giờ tự nghiên cứu) 2.1 Cấu trúc cơ bản của một chương trình C 2.2 Các yếu tố cơ bản của ngôn ngữ C - ANSI 2.3 Biểu thức và Các phép toán 2.4 Toán tử điều khiển chương trình 2.5 Hàm, lập trình hướng hàm Sinh viên được nhắc lại với các khái niệm cơ bản về giải thuật, cấu trúc dữ liệu, chương trình dịch, các phép toán, hàm. - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. - Kết luận 3 - Đọc giáo trình và tài liệu tham khảo - Phản hồi kết quả - Rút ra quy luật 6 Phòng học lý thuyết, máy chiếu Projector 5 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 2 chương 2: Ôn lại về vi điều khiển AT89C51 ( 3 tiết+6 giờ tự nghiên cứu) 2.1. Sơ đồ chân tín hiệu của 80C51/AT89C51. 2.2. Sơ đồ khối 2.3. Các thanh ghi chức năng đặc biệt. 2.4. Khối tạo thời gian và bộ đếm (Timer/Counter). 2.5. Bộ nhớ chương trình và bộ nhớ dữ liệu nội Sinh viên được ôn lại các kiến thức về phần cứng Vi điều khiển: Vào ra, bộ nhớ, timer, ngắt. - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. - Kết luận 3 - Đọc giáo trình - Đàm thoại, trao đổi thông tin - Phản hồi kết quả 6 trú. Phòng học lý thuyết, máy chiếu Projector 2.6.Nguyên lý truyền tin nối tiếp của AT89C51. 3 2.7. Cơ chế ngắt trong On-chip AT89C51. Chương 3 C cho vi điều khiển 8051 3.1 Keil C cho vi điều khiển 3.1.1 Những kiểu dữ liệu riêng của C51 3.1.2 Hàm với phần định nghĩa mở rộng. 3.2 Project 1 Led đơn 3.2.1 Mạch và nguyên ly hoạt động 3.2.2 Lập trình Sinh viên sử dụng các phép toán xử lý số liệu để viết chương trình giải quyết các bài toán ứng dụng thực tế Sinh viên lập trình được cho Led đơn, dãy các Led 3.3 Project 2 dãy 8 Led đơn 3.3.1 Nguyên lí hoạt động - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. - Kết luận 3 - Đọc giáo trình và tài liệu tham khảo - Đàm thoại, trao đổi thông tin - Ghi chép, làm bài tập 6 Phòng học lý thuyết, máy chiếu Projector - Phản hồi kết quả 6 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 3.3.2 Lập trình 3.3.3 Ðiều khiển ra cả cổng 3.4 Project 3 điều khiển Led 7 thanh 3.4.1 Hình dạng và cấu tạo 3.4.2 Nguyên lí hoạt động 3.4.3 Lập trình 4 3.5 Phím nhấn 3.5.1 Ðếm số lần phím bấm giới hạn từ 0 đến 9 hiển thị ra led 7 thanh. 3.5.1.1Nguyên lí hoạt động: 3.5.1.2 Lập trình 3.5.2 Ðọc ma trận phím - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. Sinh viên lập trình được cho Led 7 thanh, phím nhấn - Kết luận Sinh viên biết cách tổ chức chương trình thành các hàm, thư viện 3.5.2.1 Nguyên lí quét phím 3.5.2.2 Lập trình 5 Sinh viên kết hợp các phép toán thao tác trên dữ liệu kết hợp với các cấu trúc điều khiển và vòng lặp để viết các chương trình 3.6 Ghép nối với LCD 3.6.1 Nguyên lý hoạt động của LCD 3.6.2 Mã (Hex) Lệnh đến thanh ghi của LCD 3.6.3 Lập trình 3 - Đọc giáo trình và tài liệu tham khảo - Đàm thoại, trao đổi thông tin - Ghi chép, làm bài tập 6 Phòng học lý thuyết, máy chiếu Projector 6 Phòng học lý thuyết, máy chiếu Projector - Phản hồi kết quả - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. Sinh viên lập trình được cho ma trận phím, LCD - Kết luận 3 - Đọc giáo trình và tài liệu tham khảo - Đàm thoại, trao đổi thông tin - Ghi chép, làm bài tập 7 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 3.7 Điều khiển động cơ DC Sinh viên biết cách tổ chức chương trình thành các hàm, thư viện 3.7.1 Mạch nguyên ly 3.7.2 Lập trình 3.8 Ghép nối Matrix Led 3.8.1 Sơ đồ cấu tạo 6 3.8.2 Sơ đồ kết nối Matrix Led 8x8 3.8.3 Nguyên lí hoạt động Sinh viên lập trình được cho ma trận Led, động cơ DC - Hướng dẫn - Trao đổi thông tin - Đánh gía kết quả cá nhân, nhóm. - Kết luận 3 - Đọc giáo trình và tài liệu tham khảo - Đàm thoại, trao đổi thông tin - Ghi chép, làm bài tập 6 Phòng học lý thuyết, máy chiếu Projector 3.8.4 Lập trình Tín chỉ 2: Thực hành trên phòng máy 1.Bài thực hành về 1 Led đơn, dãy 16 Led đơn 2. Bài thực hành điều khiển Led 7 thanh, phím nhấn 10 3.Bài thực hành về Ghép nối với LCD 4. Bài thưc hành về động cơ DC, Matrix Led Sinh viên sử dụng máy tính , chương trình dịch để viết các chương trình từ đơn giản đến phức tạp - Phát phiếu bài tập, hướng dẫn - Phân nhóm thực tập, thí nghiệm - Trao đổi thông tin - Đánh gía, nhận xét kết quả cá nhân, nhóm. 24h - Thực hiện thí nghiệm theo phiếu hướng dẫn - Trao đổi thông tin giữa các nhóm - Hoàn thành báo cáo thí nghiệm 30h Phòng học thí nghiệm có máy tính, Projector, 8 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 9 Khoa Điện - Điện tử.(EE12-2) Hưng Yên, 05/2008 Khoa Điện - Điện tử.(IE01-3) Hưng Yên, 01/2009 16