Đề tài Mạch led xoay

Để hiểu khái niệm về bộ vi điều khiển, ta có thể làm phép so sánh nó với bộ vi xử lý công dụng chung như sau: Ta biết rằng, các bộ vi xử lý công dụng chung như họ Intel x86 (8086, 80286, 80386, 80486 và Pentium) hoặc họ Motorola 680x0(6800, 68010, 68020, 68030, 68040 vv.) không có RAM, ROM và không có các cổng ra vào trên chip. Với lý do đó mà chúng được gọi là các bộ vi xử lý công dụng chung. Một nhà thiết kế hệ thống sử dụng một bộ vi xử lý công dụng chung sẽ phải bổ sung thêm RAM, ROM, các cổng vào ra và các bộ định thời ngoài để làm cho chúng hoạt động được. Mặc dù việc bổ xung các RAM, ROM, các cổng vào ra sẽ làm cho hệ thống cồng kềnh lên nhưng nó lại có ưu điểm khi sử dụng các bộ vi xử lý này là rất linh hoạt. Chẳng hạn như người thiết kế có thể quyết định về số lượng RAM, ROM, và các cổng vào ra cần thiết sao cho phù hợp với khả năng, mục đích sử dụng của hệ thống. Điều này không thể có đối với các bộ vi điều khiển. Bởi vì, một bộ vi điều khiển đã có một CPU (một bộ vi xử lý) cùng với một số lượng RAM, ROM, các cổng vào ra và một bộ định thời trên cùng một chíp. Hay nói cách khác là bộ vi xử lý, RAM, ROM, các cổng vào ra và một bộ định thời cùng được nhúng trên một chip. Do vậy người thiết kế không thể bổ sung thêm bộ nhớ ngoài, số các cổng vào ra hoặc bộ định thời cho nó. Với số lượng RAM, ROM và số các cổng vào ra cố định như vậy là một mặt hạn chế (kém linh hoạt) xong nó lại thật sự lý tưởng đối với những ứng dụng mang tính chuyên biệt, tối ưu về giá thành, tối ưu về không gian.

docx15 trang | Chia sẻ: lvbuiluyen | Ngày: 24/10/2013 | Lượt xem: 5914 | Lượt tải: 16download
Bạn đang xem nội dung tài liệu Đề tài Mạch led xoay, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌCKHOA HỌC TỰ NHIÊN KHOAĐIỆN TỬ - VIỄN THÔNG Năm học 2012-2013 ĐỀ TÀI: MẠCH LED XOAY Giảng viên hướng dẫn :Cao Trần Bảo Thương Sinh viên thực hiện : 1. Đặng Nguyễn Hải Duy 1020032 2. Nguyễn Hùng 1020082 3. Nguyễn Hữu Nghĩa 1020124 MỤC LỤC Lời mở đầu Giới thiệu bộ vi điều khiển 8 bít Ngày nay, các bộ vi điều khiển đang có ứng dụng ngày càng rộng rãi trong các lĩnh vực kỹ thuật và đời sống xã hội, đặc biệt là trong kỹ thuật tự động hoá và điều khiển từ xa. Giờ đây với nhu cầu chuyên dụng hoá, tối ưu (thời gian, không gian, giá thành), bảo mật, tính chủ động trong công việc... ngày càng đòi hỏi khắt khe. Việc đặt ra công nghệ mới trong lĩnh vực chế tạo mạch điện tử để đáp ứng những yêu cầu trên là hoàn toàn cấp thiết mang tính thực tế cao. Khái niệm về bộ vi điều khiển Để hiểu khái niệm về bộ vi điều khiển, ta có thể làm phép so sánh nó với bộ vi xử lý công dụng chung như sau: Ta biết rằng, các bộ vi xử lý công dụng chung như họ Intel x86 (8086, 80286, 80386, 80486 và Pentium) hoặc họ Motorola 680x0(6800, 68010, 68020, 68030, 68040 vv...) không có RAM, ROM và không có các cổng ra vào trên chip... Với lý do đó mà chúng được gọi là các bộ vi xử lý công dụng chung. Một nhà thiết kế hệ thống sử dụng một bộ vi xử lý công dụng chung sẽ phải bổ sung thêm RAM, ROM, các cổng vào ra và các bộ định thời ngoài để làm cho chúng hoạt động được. Mặc dù việc bổ xung các RAM, ROM, các cổng vào ra sẽ làm cho hệ thống cồng kềnh lên nhưng nó lại có ưu điểm khi sử dụng các bộ vi xử lý này là rất linh hoạt. Chẳng hạn như người thiết kế có thể quyết định về số lượng RAM, ROM, và các cổng vào ra cần thiết sao cho phù hợp với khả năng, mục đích sử dụng của hệ thống. Điều này không thể có đối với các bộ vi điều khiển. Bởi vì, một bộ vi điều khiển đã có một CPU (một bộ vi xử lý) cùng với một số lượng RAM, ROM, các cổng vào ra và một bộ định thời trên cùng một chíp. Hay nói cách khác là bộ vi xử lý, RAM, ROM, các cổng vào ra và một bộ định thời cùng được nhúng trên một chip. Do vậy người thiết kế không thể bổ sung thêm bộ nhớ ngoài, số các cổng vào ra hoặc bộ định thời cho nó. Với số lượng RAM, ROM và số các cổng vào ra cố định như vậy là một mặt hạn chế (kém linh hoạt) xong nó lại thật sự lý tưởng đối với những ứng dụng mang tính chuyên biệt, tối ưu về giá thành, tối ưu về không gian... Những yêu cầu để lựa chọn một bộ vi điều khiển là: Đáp ứng nhu cầu tính toán của bài toán một cách hiệu quả về mặt giá thành và đầy đủ chức năng có thể nhìn thấy được, (khả dĩ). Có sẵn các công cụ phát triển phần mềm chẳng hạn như các trình biên dịch trình hợp ngữ và gỡ rối. Nguồn các bộ vi điều khiển có sẵn nhiều và tin cậy. Các tiêu chuẩn lựa chọn một bộ vi điều khiển: Tiêu chuẩn đầu tiên và trước hết trong lựa chọn một bộ vi điều khiển là nó phải đáp ứng nhu cầu bài toán về mặt công suất tính toán, giá thành và hiệu quả. Trong khi phân tích các nhu cầu của một dự án dựa trên bộ vi điều khiển, chúng ta trước hết phải biết là bộ vi điều khiển nào là 8 bít, 16 bít hay 32 bít có thể đáp ứng tốt nhất nhu cầu tính toán của bài toán một cách hiệu quả nhất. • Những tiêu chuẩn được đưa ra để cân nhắc là: - Tốc độ: Tốc độ lớn nhất mà bộ vi điều khiển hỗ trợ là bao nhiêu. - Kiểu đóng vỏ: Đó là kiểu 40 chân DIP hay QFP hay là kiểu đóng vỏ khác. - Công suất tiêu thụ: Điều này đặc biệt khắt khe đối với những sản phẩm dùng pin, ắc quy. - Dung lượng bộ nhớ RAM và ROM trên chíp. - Số chân vào – ra, bộ định thời, số ngắt trên chíp. - Khả năng dễ dàng nâng cấp cho hiệu suất cao hoặc giảm công suất tiêu thụ. - Giá thành cho một đơn vị: Điều này quan trọng quyết định giá thành cuối cùng của sản phẩm mà một bộ vi điều khiển được sử dụng. Với 1 số lý do trên, nhóm quyết định chọn chip PIC16F887 của hãng Microchip vì - Đã tìm hiểu chip này từ lâu, ổn định, tốc độ cao, các tập lệnh đơn giản, dễ sử dụng. Phần mềm viết code dễ sử dụng. Cơ sở lý thuyết của mạch: Sự lưu ảnh của mắt: Sau khi ánh sang kính thích trên võng mạc tắt, phải mất một thời gian cỡ 0.1s võng mạc mới hồi phục lại như cũ. Trong thời gian đó, cảm giác ánh sang chưa bị mất và người quan sát vẫn còn thấy hình ảnh của vật. Đó là sự lưu ảnh của mắt. Hiện tượng này được sử dụng trong điện ảnh. Để tạo cảnh chuyển động, ta chỉ cần chụp cảnh đó liên tiếp với tần số tồi thiểu là 24 hình/s. sau đó ta phát lại với tốc độ tương tự. Khi đó, hiện tượng lưu ảnh sẽ làm mắt người thấy được hình ảnh chuyển động liên tục. Ứng dụng sự lưu ảnh của mắt vào đề tài: Mạch LED Xoay ứng dụng hiện tượng lưu ảnh của mắt. Với 8 LED, ta có thể tạo hình ảnh tương đương 1 ma trận LED 8x60. Động cơ quay sẽ quét LED thành một ma trận với tốc độ đủ cao thỏa điều kiện lưu ảnh của mắt. Ảnh được xuất ra bằngcách xuất từng cột LED, tương tự như phương pháp quét ma trận. Nghĩa là tại 1 thời điểm, dãy LED sẽ hiển thị 1 cột tương ứng với hình ảnh được lưu trữ trong 1 mảng. Tại mỗi thời điểm (cỡ vài ms), 1 cột của ma trận LED sẽ xuất ra. Do hiện tượng lưu ảnh của mắt nên ta sẽ thấy được toàn bộ hình ảnh cần xuất. Các linh kiện khác sử dụng trong mạch: a b c d e Hình 1: Các linh kiện sử dụng trong mạch LED Bảng đồng Tụ điện Điện trở Động cơ điện Mô tả hệ thống : Nguồn cấp Nguồn 12V Nguồn 12V lấy từ adapter để cung cấp cho động cơ hoạt động. Nguồn 6V: Lấy từ 2 viên pin 3V để cung cấp cho LED và cho vi điều khiển hoạt động ổn định. Vi điều khiển PIC 16F887: Hình 2: Sơ đồ chân vi điều khiển 16F887 Một số đặc tính của vi điều khiển PIC16F887: Sử dụng công nghệ tích hợp cao RISC CPU. Truy cập bộ nhớ bằng địa chỉ trực tiếp hoặc gián tiếp. Tốc độ hoạt động: Xung đồng hồ vào là DC-20MHz. Chu kì lệnh thực hiện trong 200ns. Program memory : 14 KB CPU Speed : 5 MIPS RAM : 368 bytes Data EFPROM : 256 bytes Timer : 2x8bit, 1x16bit Nhiệt độ hoạt động : -40 – 125oC Điện thế hoạt động: 2 – 5.5 V Nguồn sử dụng : 25 mA Công suất tiêu thụ thấp : <0.6mA với 5V, 6MHz; 20µA với 3V, 32kHz) Cấu trúc PIC 16F887: Hình 3: Cấu trúc PIC 16F887 Bộ dao động của PIC 16F887: Clock hệ thống của 16F887 có thể được chon từ 2 nguồn dao động nội hoặc ngoại nhờ bộ chọn kênh MUX. Bộ MUX được điều khiển bởi các bit FOSC 2:0 và bit SCS 0. Nếu SCS = 1, clock hệ thông được chọn từ bộ dao động nội, ngược lại, SCS = 0, clock được chọn từu bộ dao động ngoại. Hình 4: Sơ đồ bộ dao động của PIC 16F887 Bộ dao động nội:gồm 2 bộ dao động HFINTOSC 8MHz và LFINTOSC 31kHx. Clock 8MHz của bộ HFINTOSC được chia thành các tần số 8MHz, 4MHz, 2MHz, 1MHz, 500kHz, 250kHz, 125kHz nhờ bộ phận chia tần số postscaler. Các bit IRCF 2:0 điều khiển bộ MUX chọn kênh cho INTOSC. Bộ dao động ngoại: cần được kết nối với các bộ lọc tại các chân OSC1, OSC2. Bộ dao động ngoại được hoạt động ở chế độ HS. Bộ dao động bằng thạch anh hoạt động ổn định hơn so với dùng dao động nội. Trong đề tài, dao động được chọn từ nguồn clock nội 12M Các port I/O: PIC 16F887 có tất cả 35 chân I/O có thể sử dụng với mục đích thông thường. Tùy theo từng thiết bị ngoại vi mà một số chân có thể được sử dụng ở chức năng GPIO. 35 chân GPIO được chia thành 5 Port: Port A: 8 chân Port B: 8 chân Port C: 8 chân Port D: 8 chân Port E: 3 chân Mạch sử dụng 8 chân I/O (PortC) dùng để điều khiển 8 LED, và 2 chân (PortD) để điều khiển 2 LED trang trí. Ngắt Trên chíp có nhiều loại ngắt, ngắt ưu tiên nhất reset. Ngoài ra còn có ngắt ngoài RB0, ngắt timer… Các chân của PortB cũng được cấu hình nhập xuất bằng thanh ghi TRISB và dữ liệu nằm ở thanh ghi PortB. Tất cả các chân của PortB đều có thể cấu hình thành chân ngắt interrupt-on-change thông qua các bit điều khiển của thanh ghi IOCB 7:0. Với mỗi chân được cấu hình ngắt on-change, giá trị mới nhận được so sánh nới giá trị trước đó lưu trữ trong latch ở lần đọc trước để xác định bit nào thay đổi. Bất kì chân nào có sự thay đổi sẽ bật cờ ngắt RBIF lên 1 trong các thanh ghi INTCON. Tiến trình xử lý ngắt có thể thực hiện bằng 2 cách: Đọc hoặc ghi lên PortB. Xóa cờ ngắt RBIF. Hình 5: Sơ đồ ngắt on –change PORTB LED hiển thị: Mạch gồm 10 LED xếp thành hang dọc (2 LED xanh ở PortD, 8 LED đỏ ở PortC). Hình 6: Sơ đồ nguyên lý board LED Cảm biến hồng ngoại: Nguyên lý: Khi LED phát không dẫn không có ánh sang tới LED thu nên LED thu không dẫn, ngõ ra xuống mức thấp và ngược lại, khi có ánh sang từ LED phát, ngõ ra lên mức cao. Ngõ ra được nối với chân RB0 của vi điều khiển. Hình 7: Sơ đồ thu phát hồng ngoại Hình 8: Mạch phát hồng ngoại Hình 9: Mạch Thu hồng ngoại Động cơ: Động cơ được sử dụng là quạt tải nhiệt DC 12V, được cấp nguồn từ adapter 12Vdc. Có 1 bộ truyền động gồm 2 bulong nhựa dài gắn động cơ và mạch điện lại với nhau. Toàn bộ được gắn lên trên 1 tấm gỗ vuông, có tác dụng cân bằng và làm giá đỡ. Hình 9: Động cơ và bộ truyền động Hình 10: Động cơ và bộ truyền động Sơ đồ của mạch LED xoay: Sơ đồ mạch và layout được vẽ bằng phần mềm ORCAD. Hình 11: Sơ đồ tổng thể của mạch Hình 12: Sơ đồ mạch in Tổng kết Hướng phát triển. Hiện nay mạch khá đơn giản, chỉ có 10 LED nên không được đẹp. Từ đó, ta phát triển lên thành vài chục led, có thể biến nó thành chiếc đồng hồ kim, hoặc có thể vẽ ra 1 hình tùy ý như hình địa cầu…Có thế tạo thành mạch gắn lên bánh xe các loại như xe đạp, xe máy, xe ô tô để trang trí… Thuận lợi và khó khăn. Thuận lợi: đã biết được lập trình vi điều khiển từ trước, có nhiều phần mềm hỗ trợ trong quá trình làm mạch. Các thành viên tích cực làm việc, mỗi người một việc. Khó khăn: mạch phải trải qua nhiều phiên bản mới được nên tốn nhiều thời gian trong việc vẽ mạch in…, chưa tìm ra nguyên nhân tại sao ngắt ngoài trong chip không hoạt động. Chưa giải quyết được phần cấp nguồn ngoài mà không dùng pin Nguồn tham khảo: Tài liệu: PIC16F882/883/884/886/887 Data Sheet Phần mềm: MPLAP IDE v8.86, Code Optimizing C Compiler, LCD Font Maker,Orcad… Web site: google.com, dientuvietnam.net, picvietnam.com,….