intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

BÁO CÁO BÀI TẬP MÔN : THIẾT KẾ MẠCH ĐIỆN BẰNG MÁY TÍNH

Chia sẻ: Nhung Cam Nhung | Ngày: | Loại File: DOC | Số trang:14

366
lượt xem
115
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Báo cáo đề tài: Thiết kế chuông báo lớp học. Chức năng của khối RTC: Khối này thực chất là một chíp thời gian thực(Real Time Clock), được sử dụng với ý nghĩa thời gian tuyệt đối mà con người đang sử dụng.Nó có pin cấp riêng , như vậy nếu như mất nguồn điện thì RTC vẫn có thể hoạt động bình thường và chính xác theo thời gian đã được thiết lập ban đầu . Trong sơ đồ này nó sẽ đảm nhiệm chức năng cấp time chính xác cho vi điều khiển xử lý các công việc mà người sử dụng yêu cầu....

Chủ đề:
Lưu

Nội dung Text: BÁO CÁO BÀI TẬP MÔN : THIẾT KẾ MẠCH ĐIỆN BẰNG MÁY TÍNH

  1. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN BÁO CÁO BÀI TẬP MÔN : THIẾT KẾ MẠCH ĐIỆN BẰNG MÁY TÍNH ĐỀ TÀI: Thiết kế chuông báo lớp học Giáo Viên HD : ThS Vũ Chiến Thắng Sinh viên thực hiện : 1. Nguyễn Thị Cẩm Nhung 2. Bàn Thị Trang 3. Hoàng Thị Phúc 4. Nguyễn Hồng Trang Thái Nguyên ngày 16 tháng 10 năm 2010 Đề tài : Thiết kế hệ thống chuông báo lớp học Thiết kế mạch điện bằng máy tính Page 1  
  2. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 Giáo viên hướng dẫn : Vũ Chiến Thắng Danh sách nhóm thực hiện STT Họ và tên Phân Công Nhiệm vụ 1 Nguyễn Thị Cẩm Nhung Hoàn thiện code chương trình , mô phỏng ,phân tích và kiểm tra các module. Phối hợp cùng các thành viên hoàn thành báo cáo đề tài . 2 Bàn Thị Trang Tìm hiểu và lập trình ghép nối LCD với vi điều khiển 3 Nguyễn Hồng Trang Tìm hiểu thuật toán điều khiển loa, và giao tiếp phím bấm với vi điều khiển 4 Hoàng Thị Phúc Tìm hiểu DS1307 và giao tiếp với vi điều khiển MỤC LỤC Thiết kế mạch điện bằng máy tính Page 2
  3. G áo vi ên hướng dẫn : TS Vũ Chiến Thắng i 12/4/2010 1. Khối lượng công việc:.......................................4 1.1. Lập trình giao tiếp RTC với vi điều khiển 89c51..........4 1.2. Lập trình ghép nối LCD với vi điều khiển 89c51...........4 1.3. Lập trình ghép nối phím bấm với vi điều khiển 89c51......4 1.4. Lập trình ghép nối Loa với vi điều khiển 89c51...........4 2. Mô tả sản phẩm :............................................4 2.1. Sơ đồ khối :......................................4 2.2. chức năng các khối: ..............................4 2.2.1. Chức năng của khối RTC:.........................4 2.2.2. Chức năng của khối điều chỉnh :..................5 2.2.3. Khối âm thanh ...................................5 2.2.4. Khối hiển thị....................................5 2.2.5. khối xử lý (vi điều khiển 89c51)................5 2.3. Sơ đồ nguyên lý : ........................................6 3. Kết luận....................................................8 4. Phụ lục ....................................................9 4.1 . Code chương trình và giải thích các câu lệnh :..........9 4.2. Mã cho LCD:.............................................13 4.3.Tài liệu tham khảo & công cụ lập trình thiết kế mạch :...14 4.3.1.Tài liệu tham khảo :.............................14 4.3.2.Công cụ lập trình :.............................14 4.3.3. Trang web tham khảo :...........................14 Thi ết kế mạch điện bằng máy tính Page 3
  4. G áo vi ên hướng dẫn : TS Vũ Chiến Thắng i 12/4/2010 1. Khối lượng công việc: 1.1. Lập trình giao tiếp RTC với vi điều khiển 89c51 1.2. Lập trình ghép nối LCD với vi điều khiển 89c51 1.3. Lập trình ghép nối phím bấm với vi điều khiển 89c51 1.4. Lập trình ghép nối Loa với vi điều khiển 89c51 2. Mô tả sản phẩm : 2.1. Sơ đồ khối : 2.2. chức năng các khối: 2.2.1. Chức năng của khối RTC: Khối này thực chất là một chíp thời gian thực(Real Time Clock), được sử dụng với ý nghĩa thời gian tuyệt đối mà con người đang sử dụng.Nó có pin cấp riêng , như vậy nếu như mất nguồn điện thì RTC vẫn có thể hoạt động bình thường và chính xác theo thời gian đã được thiết lập ban đầu . Trong sơ đồ này nó sẽ đảm nhiệm chức năng cấp time chính xác cho vi điều khiển xử lý các công việc mà người sử dụng yêu cầu. Thi ết kế mạch điện bằng máy tính Page 4
  5. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 2.2.2. Chức năng của khối điều chỉnh : Chức năng của khối này là sử dụng ngắt của 89c51 để yêu cầu việc điều chỉnh time theo ý của người sử dụng , cài đặt time ban đầu cho đồng hồ thời gian thực RTC. Tác động bởi các phím bấm (BUTTON). 2.2.3. Khối âm thanh Khối này gồm có transistor thông dòng cho loa kêu khi có mức điện áp thay đổi liên tục ở chân ra của vi điều khiển . 2.2.4. Khối hiển thị Khối này thực chất là LCD 16x2 để hiển thị time và các thông tin mà lập trình viên cần hiển thị . 2.2.5. khối xử lý (vi điều khiển 89c51) Vi điều khiển 89C51 là trung tâm xử lý các thông tin của mạch. Cụ thể là : • AT89C51 đảm nhiệm việc đọc thời gian từ DS1307, chuyển đổi dữ liệu qua lại giữa RTC với LCD để có thể hiển thị lên LCD , đông thời cập nhật time từ DS1307 • Điều khiển LCD • Kiểm tra phím bấm • Điều khiển loa Nói tóm lại là, VĐK làm nhiệm vụ đọc time trên DS1307 sau đó nó kiểm tra xem ngắt được tác động hay không? nếu có thì điều chỉnh time, hiển thị time lên LCD , kiểm tra xem giờ hiện tại có bằng giờ báo chuông hay không ? nếu có thì gọi chương trình điều khiển chuông kêu ! Thiết kế mạch điện bằng máy tính Page 5
  6. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 2.3. Sơ đồ nguyên lý : 2.4. Nguyên lý hoạt động: Khi đã đảm bảo cấp nguồn cho các mạch ổn định , mạch sẽ hoạt đông như sau: Ban đầu khi khởi động nó sẽ thực hiện việc đọc dữ liêu treeb DS1307 và hiển thị ngày giờ hiện tại lên LCD. Kế tiếp nếu có ngắt gọi đến tức tác động vào phím KEY_TIME để điều chỉnh thời gian (Tăng-INC_KEY button, Giảm-DEC_KEY button) cho RTC , khi đó vi điều khiển sẽ điều khiển việc tăng hay giảm time (ngày , tháng , năm , thứ , giờ , phút ), theo ý muốn của người sử dụng, bằng cách nhấn phím INC_KEY hoặc phím DEC_KEY. Set xong thì Thiết kế mạch điện bằng máy tính Page 6
  7. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 LCD sẽ trở về màn hình lúc trước và hiển thị thời gian theo time đa cài đặt và hoạt động. Trong quá trình time hiện tại được hiển thị trên LCD mà ta thấy thì vi điều khiển luôn thực hiển kiểm tra (lặp lại việc kiểm tra ) time hiện tại xem xem có trùng với mốc thời gian vào tiết học hay kết thúc tiết học hay không ? Nếu có , thì nhảy tới chương trình báo chuông và đổ chuông báo , thời gian chuông dài hay ngắn có thể thay đổi trên code, là do người lập trình thiết lập, thiết lập mốc thời gian theo ý muốn. Tức là, cứ thỏa mãn điều kiện time hiện tại bằng với time hẹn trước sẽ có chuông reo. 2.5. Lưu đồ thuật toán điều khiển : Thiết kế mạch điện bằng máy tính Page 7
  8. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 3. Kết luận Đề tài đã nghiên cứu đã hoàn thành bao gồm : nguyên tắc hoạt động của mạch, sơ đồ khối và chức năng từng khối được sử dụng, sơ đồ nguyên lý. Thiết kế mang tính thực tiễn cao, có thể đưa vào thi công làm mạch thật chứ không chỉ dừng lại ở mức độ mô phỏng.Có thể dựa vào đề tài này để phát triển thêm các ứng dụng thực tế khác như: Thiết kế mạch điện bằng máy tính Page 8
  9. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 Đồng hồ số có chuông báo thức , có thể thay khối âm thanh bằng một IC chuyên dụng (thu âm ) , và khi đó ta có thể thay những tiếng chuông nhạt nhẽo bằng những bản nhạc yêu thích chẳng hạn…. Do thời gian có hạn , mặc dù nhóm đã hết sức cố gắng để hoàn thành với kết quả tốt nhất , song cũng không thể tránh khỏi những vấp váp , thiếu xót trong thiết kế.Vì vậy nhóm xin chân thành lắng nghe những đóng góp từ phía giáo viên và các bạn trong lớp để thiết kế được hoàn thiện và thực tế hơn.Nhóm xin chân thành cảm ơn! 4. Phụ lục 4.1 . Code chương trình và giải thích các câu lệnh : //====Các thư viện sử dụng trong chương trình ========= /*--------------------------at89c51.h-------------------------*/ /*----------------------------RTC.h---------------------------*/ /*----------------------------LCD.h---------------------------*/ /*----------------------------intrins.h--------------------------*/ /*----------------------------port.h-----------------------------*/ //====Các file tự định nghĩa ,được sử dụng trong chương trình /*------------------LCD.c---------------------------*/ /*------------------RTC.c----------------------------*/ /*-------------------port.c----------------------------*/ //=================main () ----trong thu file project.c ========= #include "ports.h" #include "lcd.h" #include "rtc.h" /*============================================== */ /*= DE TAI : Thiet ke he thong chuong bao lop hoc =*/ Thiết kế mạch điện bằng máy tính Page 9
  10. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 /*= GVHD : Ths Thay Vu Chien Thang =*/ /*= Nhóm Thuc Hien : =*/ /*= 1. Nguyen Thi Cam Nhung =*/ /*= 2. Bàn Thi Trang =*/ /*= 3. Hoang Thi Phuc =*/ /*= 4. Nguyen Hong Trang =*/ /*=-----------------------------------------------------------------------------=*/ /*============================================*/ /*=======Khai bao bien ========*/ bit flag=0,aon=0,aoff=0; void main() { alarm_port=0; LCD_INI(); //khoi tao cho LCD rtc_check();//kiêm tra RTC disp_intro();//hien thi time len LCD ENABLE_INT//cho phep ngat wrt_cmd(0x1);//xoa man hinh LCD wrt_cmd(0x1); start_rtc();//dieu kien START cho RTC send_adr(0xd0);//dia chi ghi cho RTC send_adr(0x00);//gui dia chi bat dau start_rtc(); send_adr(0xd1);//gui dia chi doc RTC recv_data();//nhan du lieu tu vi dieu khien Thiết kế mạch điện bằng máy tính Page 10
  11. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 while(1) { start_rtc(); send_adr(0xd0); send_adr(0x00); start_rtc(); send_adr(0xd1); recv_data(); disp_rtc(); if(_testbit_(flag)) //kiem tra co ngat { DISABLE_INT //cam ngat rtc_set(); //goi chuong trinh set cho rtc ENABLE_INT //cho phep ngat flag=0; //xoa co ngat } aon=1;//dieu kien de luon so sanh time hen voi time hien tai if(aon) check_alarm(); // kiem tra if(aoff) //bao chuong ring_alarm(); } } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ****chuong trinh phuc vu ngat ngoai 0 **** Thiết kế mạch điện bằng máy tính Page 11
  12. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ void set_flag() interrupt 0 //chuong trinh ngat cho rtc_set { flag=1; } /*========================THE_END====================*/ Thiết kế mạch điện bằng máy tính Page 12
  13. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 4.2. Mã cho LCD: Thiết kế mạch điện bằng máy tính Page 13
  14. Giáo viên hướng dẫn : TS Vũ Chiến Thắng 12/4/2010 4.3.Tài liệu tham khảo & công cụ lập trình thiết kế mạch : 4.3.1.Tài liệu tham khảo : • Cấu trúc-lập trình –Ghép nối và ứng dụng vi điều khiển_TS Nguyễn Mạnh Giang • Giáo trình 8051_DKS • Giáo trình họ vi điều khiển 8051_Tống Văn On • Vi điều khiển với lập trình C_Ngô Diên Tập 4.3.2.Công cụ lập trình : • Phần mềm Keil C 8.05 • proteus 7.01 4.3.3. Trang web tham khảo : http://www.keil.com/forum/8186/ http://vagam.dieukhien.net/ http://vidieukhien.net/ http://www.8051projects.net/forum-t7082-0.html Thiết kế mạch điện bằng máy tính Page 14
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
8=>2