TÌM HIỂU và ỨNG DỤNG của VI điều KHIỂN DSPIC33FJ12MC202

72 42 0
TÌM HIỂU và ỨNG DỤNG của VI điều KHIỂN DSPIC33FJ12MC202

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN ***** BÁO CÁO ĐỒ ÁN TÌM HIỂU VÀ ỨNG DỤNG CỦA VI ĐIỀU KHIỂN DSPIC33FJ12MC202 Nhóm sinh viên thực hiện: Trần Quang Thái MSSV: 20153360 Mông Văn Sắp MSSV: 20153163 Giảng viên hướng dẫn: TS Vũ Vân Hà Hà Nội, tháng 12, năm 2018 Mục lục LỜI MỞ ĐẦU .3 Phần I: TỔNG QUAN ĐỀ TÀI .5 Lý chọn đề tài: Mục đích: Đối tượng nghiên cứu: .5 Phạm vi nghiên cứu: Phần 2: NỘI DUNG Chương 1: Tổng quan Họ vđk dsPic33 vđk DsPic33FJ12MC202 Họ VĐK DsPic Trình dịch DsPic33FJ12MC202 Chương 2: DsPic33FJ12MC202 module 11 Cấu hình thạch anh 11 Các cổng vào I/O 13 Ngắt .15 Bộ đếm, định thời 16 4.1 Bộ định thời/bộ đếm (Timer/Counter) 16 4.2 Bộ định thời/bộ đếm dspic33fj12mc202 17 OutputCompare 25 5.1 Đặc điểm chung 25 5.2 Các ghi liên quan .27 5.3 Trạng thái chân đầu 29 5.4 Cụ thể chế độ thường sử dụng PWM mode (OCM =110) .29 UART, SPI, I2C 32 6.1 UART 32 6.2 SPI .35 6.3 I2C .38 ADC 40 7.1 Đặc điểm chung 41 7.2 Các ghi liên quan .42 Chương 3: Ứng dụng lập trình mơ với ngoại vi 48 Mở rộng ngõ với 74HC595 48 Giao tiếp với bàn phím ma trận 50 2.1 Kỹ thuật quét phím 50 2.2 Kỹ thuật đảo dây 52 Giao tiếp led đoạn 54 Giao tiếp Lcd 16x2 qua PCF8574 .58 Giao tiếp EEPROM25LC256 qua SPI 61 Giao tiếp với led Matrix 66 Phần 3: KẾT LUẬN 70 Báo cáo đồ án GVHD: TS Vũ Vân Hà LỜI MỞ ĐẦU Ngày đại đa số lĩnh vực sản xuất, điều khiển, giám sát, đo lường… trang bị hệ thống tự động hóa Một số vi mạch sử dụng kỹ thuật vi điều khiển Nhờ tính ưu việt vi điều khiển như: khả lập trình phù hợp với thiết kế nhỏ lớn cũ giao tiếp với thiết bị ngoại vi máy tính đem lại hồn hảo, độ xác tính mềm dẻo cao thơng qua giao tiếp người máy Vi điều khiển quản lý điều khiển hoạt động hệ thống qua phần mềm, nhờ mà ta mở rộng thay đổi hoạt động cách dễ dàng cách thay đổi số thơng số chương trình Vi điều khiển hoạt động theo chương trình nạp sẵn, đọc tín hiệu từ bên ngồi đưa vào sau lưu trữ xử lý Trên sở đưa thơng báo, tín hiệu điều khiển thiết bị bên ngồi hoạt động theo thông số yêu cầu hệ thống Ngồi ra, vi điều khiển có mặt sản phẩm công nghiệp tiêu dùng như: lò vi ba, lò sưởi, máy giặt, hệ thống đèn giao thông… nhiều thiết bị công nghiệp khác Vậy đồ án lần chúng em định chọn đề tài tìm hiểu dịng vi điều DsPIC cụ thể DsPIC33fj12mc202 để hiểu cấu tạo, nguyên lý hoạt động va ứng dụng vi điều điều khiển cụ thể Đồ án gồm phần: Lời nói đầu Phần I: Tổng quan đề tài Phần II: Nội dung Chương 1: Tổng quan Họ vđk dsPic33 vđk DsPic33FJ12MC202 Chương 2: DsPic33FJ12MC202 module Báo cáo đồ án GVHD: TS Vũ Vân Hà Chương 3: Ứng dụng lập trình mơ với ngoại vi Phần III: Kết luận Tài liệu tham khảo Chúng em xin cảm ơn thầy Vũ Vân Hà hướng dẫn cho phép chúng em thực đề tài đồ án Với khoảng thời gian có hạn kiến thức cịn hạn chế nên q trình tìm hiểu cịn nhiều thiết sót mong thầy nhận xét góp ý để kiến thức chúng em hoàn thiện hơn! Chúng em xin chân thành cảm ơn! Báo cáo đồ án GVHD: TS Vũ Vân Hà Phần I: TỔNG QUAN ĐỀ TÀI Lý chọn đề tài: Ngày khoa học CN phát triển nhu cầu người ngày cao Việc nghiên cứu khoa học ngày đầu tư để đáp ứng nhu cầu đó, ngành cơng nghệ kỹ thuật điện tử có phát triển vượt bậc đưa khoa học vào kỷ nguyên Kỹ thuật vi xử lý vi điều khiển ứng dụng lớn khoa học kỹ thuật vào sống phục vụ trực tiếp cho người Ví dụ: Lập trình cho vi xử lý vi điều khiển điều khiển mạch đèn giao thông, hệ thống quản lý mạng, thiết bị điện tử dân dụng… Ở nhóm ngành Điện tử dân dụng hay thiết bị lập trình nhúng vi xử lý vi điều khiển thâm nhập nhiều vào lĩnh vực Để trang bị kiến thức vi xử lí bắt đầu với vi điều khiển có module ngoại vi bản, hiểu cấu trúc phần cứng, lập trình ghi tảng để tiếp cận với cấu trúc vi điều khiển phức tạp có khả mạnh mẽ Do chúng em chọn vi điều khiển họ DsPic33 dòng vi điều khiển phù hợp với nghiên cứu sinh viên ứng dụng nhiều công nghiệp sống Mục đích: Hiểu cấu trúc họ vi điều khiển DsPic33 nói chung vi điều khiển dsPic33fj12mc202 nói riêng Biết cách lập trình dsPic phần mềm MpLAP Microchip, giao tiếp vi điều khiển với ngoại vi Báo cáo đồ án GVHD: TS Vũ Vân Hà Đối tượng nghiên cứu: Vi điều khiển DsPic33FJ12MC202 Phần mềm MpLAB IDE Phạm vi nghiên cứu: Phạm vi đề tài dừng mức tìm hiểu mơ phần mềm hỗ trợ, Hiểu phần có kiến thức tảng để áp dụng vào thực tế sau Báo cáo đồ án GVHD: TS Vũ Vân Hà Phần 2: NỘI DUNG Chương 1: Tổng quan Họ vđk dsPic33 vđk DsPic33FJ12MC202 Họ VĐK DsPic Họ VĐK PIC dsPic hãng Microchip chế tạo sản xuât với công nghệ đại, phù hợp cho ứng dụng đơn giản đến phức tạp Đặc biệt ngồi ngơn ngữ lập trình assembly MCU khác, người dùng lập trình PIC ngôn ngữ C quen thuộc thông qua phần mềm hỗ trợ Cơ dsPIC, xét riêng phần vi điều khiển, dsPIC giống PIC24, vi điều khiển 16-bit, dựa kiến trúc Harvard sửa đổi, với tập lệnh rút gọn (như dsPIC PIC24 thuộc loại RISC: Reduced Instruction Set Computer) dsPIC gồm có hai dịng: dsPIC30F dsPIC33F DsPIC họ vi điều khiển số (Digital Signal Controller) 16-bit Sự khác biệt dsPIC so với vi điều khiển khác dsPIC tích hợp cơng cụ xử lý tín hiệu số Tuy đời (từ năm 2005) dsPIC nhanh chóng chiếm thị phần lớn thị trường chip giới Việt Nam chip dsPIC có tốc độ xử lý cao, phiến tích hợp module chức phù hợp với nhiều ứng dụng khác nhau, đồng thời giá thành dsPIC tương đối thấp Những yếu tố cho phép thực dự án dsPIC hiệu Trình dịch Ngơn ngữ lập trình cho dsPIC có hai loại ngơn ngữ ASM ngơn ngữ C Lập trình ASM cho phép tạo mã gọn nhẹ, tốc độ thực thi nhanh Tuy nhiên, nhược điểm ngôn ngữ ASM trình bày phức tạp, khó khăn cho việc thực giải thuật tính tốn người lập trình khơng chun Trong ngơn ngữ C với cấu trúc rõ ràng, khả module hóa cao, thực thuật toán cách trực quan sáng sủa thực trở thành ngôn ngữ lý tưởng cho lập trình hệ nhúng Báo cáo đồ án GVHD: TS Vũ Vân Hà Hiện trình biên dịch sử dụng ngôn ngữ C cho dsPIC nhiều hãng cung cấp, MikroC MikroElectronika, MPLAB C30 Microchip, CCS CCS Inc Ngồi hai ngơn ngữ ASM C trên, lập trình tạo mã cho dsPIC cịn thực theo dạng sơ đồ khối chức thông qua thư viện Embedded Target for Microchip dsPIC MATLAB & SIMULINK Cũng giống thư viện Target for C6000/C2000, Target for Infi neon C166 MATLAB, thư viện Embedded Target for Microchip dsPIC cung cấp sơ đồ khối chức chip ADC, PWM, UART cho phép người lập trình sử dụng sơ đồ khối SIMULINK để thực nội dung lập trình cho dsPIC Trong trình biên dịch kể trên, MPLAB C30 trình biên dịch hãng Microchip cung cấp Với trình biên dịch MPLAB C30, người lập trình nắm vững tổ chức phần cứng phần mềm hệ nhúng dsPIC từ phát triển firmware riêng cho dự án sử dụng firmware hãng cung cấp DsPic33FJ12MC202 Đặc điểm chính: Hình 1.1: Xác minh sản phẩm Báo cáo đồ án GVHD: TS Vũ Vân Hà Thuộc dòng dsPic33  FJ: flash program memory 3.3V  MC2: motor control family  Bộ nhớ chương trình 12kB  02: pin count 28Pin  E: range -40° C to +125° C (Extended) Bảng 1.1: Các module dsPic33fj12mc202 Đặc trưng khác:  Tốc độ CPU tối đa: 40 MIPS  Dung lượng RAM: Kbytes  Phạm vi điện áp hoạt động: 3,0V đến 3,6V  Có 21 chân I/O  Điện áp chân đầu ra: từ 3,0V đến 3,6V (tối đa 5V chế độ open drain) Báo cáo đồ án GVHD: TS Vũ Vân Hà hiển thị số 1, ON led đoạn thứ nhất, lúc dòng điện qua led đoạn thứ nhất, làm cho led đoạn thứ hiển thị số 1, thời gian ON khoảng vài chục µs(1µs=1/10-6s) Kế tiếp xuất mã hiển thị led đoạn hiển thị số 5, OFF led đoạn thứ đồng thời ON led đoạn thứ 2, lúc có led đoạn thứ hai hiển thị hiển thị số Tiếp theo xuất mã hiển thị led đoạn thị số 4, OFF led đoạn thứ hai ON led thứ ba, lúc led đoạn thứ ba hiển thị số Cứ lặp lại trình liên tục Thời gian ON/OFF khoảng vài chục µs, thời điểm có led đoạn thị số nó, mắt người thấy led đoạn không sáng đứt quãng, mà sáng liên tục, led hiển thị số riêng Thực tương tự để mở rộng số lượng led đoạn cần sử dụng Để tiết kiệm chân vi điều khiển dùng IC giải mã 74HC138 để chọn led IC7447 để giải mã BCD Giao tiếp Lcd 16x2 qua PCF8574 Hình 3.6: sơ đồ chân lcd16x2 Chức chân LCD mô tả bảng 57 Báo cáo đồ án GVHD: TS Vũ Vân Hà Bảng 3.1: Mô tả chân LCD Vcc Vss chân nguồn +5V chân đất, VEE dùng để điều khiển độ tương phản LCD RS( Register Select)- Chọn ghi Có ghi quan trọng LCD Chân RS dùng để chọn ghi Nếu RS=0 ghi mã lệnh chọn, cho phép người dùng gửi lệnh chẳng hạn xóa hình, đưa trỏ đầu dịng, RS=1 ghi chọn cho phép người dùng gửi liệu cần hiển thị lên LCD 58 Báo cáo đồ án GVHD: TS Vũ Vân Hà Bảng 3.2: bảng mã lệnh thường dùng lcd16x2 R/W (Read-Write)- Chân đọc/ Ghi Chân vào đọc/ ghi cho phép người dùng đọc/ ghi thơng tin từ/lên LCD, R/W=0 đọc, cịn R/W=1 ghi E( Enable)-Chân cho phép Chân cho phép E LCD sử dụng để chốt thông tin có chân liệu Khi liệu cấp đến chân liệu xung mức cao xuống thấp áp lên chân để LCD chốt liệu chân liệu Xung phải rộng tối thiểu 450ns D0-D7: Đây chân liệu bit, dùng để gửi liệu lên LCD đọc nội dung ghi tring LCD Chân A,K để bật đèn Để hiển thị chữ số, mã ASCII chữ từ A đến Z, a đến z số từ đến gửi đến chân bật RS=1 Cũng có mã lệnh gửi đến LCD để xóa hình đưa trỏ đầu dòng nhấp nháy trỏ Cũng sử dụng RS=0 để kiểm tra bit cờ bận xem LCD sẵn sàng nhận thông tin chưa Khi R/W=1 RS=0 cờ bận D7 thực chức sau: Nếu D7=1( cờ bận =1) LCD bận cơng việc bên khơng nhận thơng tin nào, cịn D7=0 LCD sẵn sàng nhận thơng tin  Chương trình mơ đọc giá trị phím nhấn từ keypad hiển thị lên led lcd 59 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hình 3.7: Mơ vi điều khiển với ngoại vi Giao tiếp EEPROM25LC256 qua SPI IC EEPROM25LC256 Đặc tính kỹ thuật:  Max clock 10 MHz (tương thích với chuẩn giao tiếp SPI)  Cơng nghệ CMOS lượng thấp  Max Write Current: mA at 5.5V,  32,768 x 8-bit organization //256Kbits  64byte page  Số lần nạp xóa: 1,000,000  thời gian lưu trữ > 200 năm 60 Báo cáo đồ án GVHD: TS Vũ Vân Hà 25AA256/25LC256 (25XX256*) Bộ nhớ truy cập thông qua giao tiếp SPI Bảng 3.3: Bảng chức chân Bảng 3.4: Bảng tập lệnh giao tiếp với eeprom25Lc256 Hình 3.8: Giản đồ xung đọc byte 61 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hình 3.9: giản đồ xung ghi byte Hình 3.10: giản đồ xung ghi page Để ghi trước hết cần gửi lệnh WREN, gửi lệnh WRDI khơng ghi vào eeprom 62 Báo cáo đồ án GVHD: TS Vũ Vân Hà Các bước ghi vào byte:  Kéo CS xuống thấp gửi lệnh WREN kéo CS lên cao  Kéo CS xuống thâp gửi lệnh WRITE  Gửi byte địa cao  Gửi byte địa thấp  Gửi liệu  Kéo CS lên cao 63 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hàm read_write trình bày giao tiếp SPI với 74HC595 Các bước đọc byte  Kéo CS xuống thâp gửi lệnh READ  Gửi byte địa cao  Gửi byte địa thấp  Đọc liệu  Kéo CS lên cao 64 Báo cáo đồ án GVHD: TS Vũ Vân Hà Kết mô phỏng: giá trị 54 vào địa đọc hiển thị lên LCD 65 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hình 3.11: Mơ giao tiếp eeprom25lc256 Giao tiếp với led Matrix Cấu trúc nguyên lý cấp nguồn cho led ma trận Led ma trận bao gồm led đơn xếp thành hàng cột Các led đơn hàng nối chung anot (catot) cịn cột nối chung catot (anot) Do để led sáng ta phải cấp nguồn cho led sau : cấp mức cao (thấp) cho hàng mức thấp (cao) cho cột 66 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hình 3.12 Led ma trận chung anot Với cách xếp thời điểm ta hiển thị kí tự (với hàng cột) ma trận Do để hiển thị kí tự led ma trận ta phải lợi dụng tượng lưu ảnh võng mạc Ta phải hàng (cột) kí tự kiện thị led ma trận với tần số cao Trước tiên ta phải xác định mức logic cần cấp cho hàng (cột) led ma trận để hiển thị ký tự lưu giá trị logic lại Sau cần hiển thị ký tự ta đưa giá trị chân cấp nguồn cho hàng (cột) đồng thời cấp nguồn cho cột (hàng) tương ứng với Nguyên tắc tạo font chữ hiển thị Để cụ thể ta xét ví dụ hiển thị chữ R led ma trận 8x8 theo cách quét cột ma trận Do quét theo cột nên ta phải xác định mức logic cần cấp cho tất led cột Giả thiết led hàng mắc chung anot, led cột mắc chung catot Khi muốn led cột sáng ta phải cấp điện áp mức cao vào hàng tương ứng 67 Báo cáo đồ án GVHD: TS Vũ Vân Hà Bảng 3.5 Tạo font chữ cho ký tự Nhìn vào bảng ta thấy muốn hiển thị chữ R ta phải cấp nguồn cho led cột sau: Cột 5: L , H , H , L , L , L , H , L Cột 4: H , L , L , H , L , H , L , L Cột 3: H , L , L , H , H , L , L , L Cột 2: H , L , L , H , L , L , L , L Cột 1: H , H , H , H , H , H , H , L Các led cột khác cấp điện áp mức thấp Các giá trị cần lưu lại nhớ vi điều khiển để cần ta lấy Ta lưu giá trị thành byte nhớ theo trật tự từ hàng tới hàng hay ngược lại Ví dụ cột ta lưu theo thứ tự từ hàng tới lưu giá trị 0F8H cịn ngược lại 7FH Việc mã hóa font phụ thuộc vào cách cấp nguồn cho ma trận led Nếu ta cấp nguồn cho cột ma trận led sáng font chữ phải lưu giá trị logic mã hóa cách cập nguồn cho tất led cột Giả sử ta mã hóa font cột hàng ( cột mã hóa chữ cột tạo khoảng cách chữ kế tiếp) nêu nguyên tắc điều khiển led kí tự cần byte liệu để lưu VD: hiển thị số từ đến lên led matrix 8x8 68 Báo cáo đồ án GVHD: TS Vũ Vân Hà Hình 3.13: Mô led matrix8x8 69 Báo cáo đồ án GVHD: TS Vũ Vân Hà Phần 3: KẾT LUẬN Với toàn lỗ lực thân, tận tình hướng dẫn thầy giáo đặc biệt hướng dẫn trực tiếp thầy Vũ Vân Hà giúp chúng em hoàn thành đồ án thời hạn Mặc dù cịn nhiều thiếu sót trình độ hiểu biết, qua chúng em trình bày tồn hiểu biết khả tiếp cận thực tế Đối với chúng em đồ án nhiệm vụ mử thú vị Nhận đề tài kèm với bắt buộc sinh viên phải có đầu óc tổng hợp, đặc biệt tham khảo nhiều tài liệu Tuy cố gắng chắn khơng tránh khỏi hạn chế, thiếu sót sinh viên Qua đồ án chúng em mong bảo giúp đỡ thầy cô tồn thể bạn đọc để chúng em cố gắng tốt đề tài sau công việc sau Hướng phát triển đề tài:  Áp dụng vi điều khiển vào ứng dụng thực tế  Tiếp cận dòng vi điều khiển cao Em xin chân thành cảm ơn! 70 Báo cáo đồ án GVHD: TS Vũ Vân Hà Tài liệu tham khảo 1.Giáo trình vi mạch số Tác giả: Nguyễn Hữu Phương Kỹ thuật vi xử lý Tác giả: Văn Thế Minh Giáo trình điện tử - Kỹ thuật mạch điện tử Tác giả: Nguyễn hữu Phước Một số trang web: http://www.alldatasheet.com https://www.microchip.com/ 71 ... cấu trúc vi điều khiển phức tạp có khả mạnh mẽ Do chúng em chọn vi điều khiển họ DsPic33 dòng vi điều khiển phù hợp với nghiên cứu sinh vi? ?n ứng dụng nhiều cơng nghiệp sống Mục đích: Hiểu cấu... bị lập trình nhúng vi xử lý vi điều khiển thâm nhập nhiều vào lĩnh vực Để trang bị kiến thức vi xử lí bắt đầu với vi điều khiển có module ngoại vi bản, hiểu cấu trúc phần cứng, lập trình ghi... đại đa số lĩnh vực sản xuất, điều khiển, giám sát, đo lường… trang bị hệ thống tự động hóa Một số vi mạch sử dụng kỹ thuật vi điều khiển Nhờ tính ưu vi? ??t vi điều khiển như: khả lập trình phù

Ngày đăng: 03/05/2021, 04:42

Mục lục

  • LỜI MỞ ĐẦU

  • Phần I: TỔNG QUAN ĐỀ TÀI

    • 1. Lý do chọn đề tài:

    • 2. Mục đích:

    • 3. Đối tượng nghiên cứu:

    • 4. Phạm vi nghiên cứu:

    • Phần 2: NỘI DUNG

      • Chương 1: Tổng quan về Họ vđk dsPic33 và vđk DsPic33FJ12MC202

        • 1. Họ VĐK DsPic

        • 2 Trình dịch

        • 3. DsPic33FJ12MC202

        • Chương 2: DsPic33FJ12MC202 và các module cơ bản

          • 1. Cấu hình thạch anh

          • 2. Các cổng vào ra I/O

          • 3. Ngắt ngoài

          • 4. Bộ đếm, bộ định thời

            • 4.1 Bộ định thời/bộ đếm (Timer/Counter) là gì

            • 4.2 Bộ định thời/bộ đếm trong dspic33fj12mc202

            • 5. OutputCompare

              • 5.1 Đặc điểm chung

              • 5.2 Các thanh ghi liên quan

              • 5.3 Trạng thái chân đầu ra

              • 5.4 Cụ thể về chế độ thường sử dụng PWM mode (OCM =110)

              • 6. UART, SPI, I2C

                • 6.1 UART

                • 6.2 SPI

                • 6.3 I2C

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan