Chuong 1 Hệ thống vi xử lý và vi điều khiển

0 0 0
Chuong 1 Hệ thống vi xử lý và vi điều khiển

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

Thông tin tài liệu

✓Giới thiệu học phần ✓Khảo sát sơ đồ chân vi điều khiển ✓Phần mềm lập trình và mô phỏng ✓Sơ đồ cấu trúc của vi điều khiển ✓Khảo sát sơ đồ chân vi điều khiển ✓Tổ chức bộ nhớ thanh ghi ✓Phần mềm lập trình và mô phỏng

TRƯỜNG ĐẠI HỌC PHENIKAA KHOA ĐIỆN ĐIỆN TỬ KỸ THUẬT VI XỬ LÝ VÀ VI ĐIỀU KHIỂN Chương 1: Hệ thống vi xử lý vi điều khiển GIẢNG VIÊN: ThS ĐÀO TÔ HIỆU Hà Nội, 1/2022 NỘI DUNG ✓Giới thiệu học phần ✓Khảo sát sơ đồ chân vi điều khiển ✓Phần mềm lập trình mơ ✓Sơ đồ cấu trúc vi điều khiển ✓Khảo sát sơ đồ chân vi điều khiển ✓Tổ chức nhớ ghi ✓Phần mềm lập trình mơ GIỚI THIỆU HỌC PHẦN Mơ tả chung học phần - Vai trị chức vi xử lý, hệ thống vi xử lý - Lịch sử phát triển hệ vi xử lý, thông số để đánh giá khả vi xử lý - Cấu trúc vai trò thành phần sơ đồ khối vi xử lý bit, nguyên lý hoạt động vi xử lý bit; - Lịch sử phát triển vi điều khiển, ưu nhược điểm sử dụng vi điều khiển - Cấu trúc bên bên vi điều khiển bit - Chức thiết bị ngoại vi: timer/counter, ngắt, truyền liệu vi điều khiển, ngơn ngữ C để lập trình cho vi điều khiển, mạch ứng dụng vi điều khiển GIỚI THIỆU HỌC PHẦN Mục tiêu • Kiến thức lập trình thiết kế hệ thống vi xử lý vi điều khiển • Vận dụng thiết kế, tính tốn, lập mơ hình quản lý dự án điện tử nhỏ GIỚI THIỆU HỌC PHẦN Chuẩn đầu • Phân tích cấu trúc vi điều khiển ngoại vi tích hợp vi điều khiển PIC 16F887 • Triển khai lập trình với linh kiện led đơn, nút nhấn, led đoạn, LCD sử dụng vi điều khiển PIC 16F887 • Tổ chức nhóm làm việc để thảo luận giải vấn đề liên quan đến lập trình vi điều khiển PIC 16F887 GIỚI THIỆU HỌC PHẦN Thành phần Chuyên cần ĐQT Đánh giá kỳ TKTHP Đánh giá cuối kỳ Trọng số (%) Bài đánh giá Hình thức đánh giá 5% Điểm danh - Điểm danh 5% - Phát biểu, Tham gia hoạt thảo luận động lớp lớp 10% B1 Bài kiểm tra tiết - Tự luận/trắc nghiệm/báo cáo 20% B2 Báo cáo thực hành - Báo cáo 60% KTHP Thi kết thúc học phần - Bài tập lớn/ Tiểu luận GIỚI THIỆU HỌC PHẦN Quy định chung điều kiện thi - Đọc tài liệu chuẩn bị cho buổi học trước dự lớp - Hoàn thành tập giao - Chuẩn bị nội dung thảo luận học phần - Sinh viên phải dự lớp đầy đủ, đảm bảo tối thiểu 80% buổi học lý thuyết lớp 100% buổi học thực hành - Thực báo cáo làm tập đầy đủ KIẾN TRÚC BỘ VI XỬ LÝ - Vi xử lý - microprocessor (viết tắt µP hay uP) linh kiện điện tử chế tạo từ tranzito thu nhỏ tích hợp lên vi mạch tích hợp đơn - Vi xử lý máy tính nhỏ CPU (Central Processing Unit) sử dụng để tính tốn, thực phép toán logic, kiểm soát hệ thống lưu trữ liệu Vi xử lý xử lý liệu đầu vào/đầu thiết bị ngoại vi đưa kết trở lại để chúng hoạt động - Vi xử lý có dịng 4bit-64bit Hiện dịng vi xử lý thơng dụng từ bit trở lên - Vi xử lý hoạt động cần có chương trình điều khiển mạch logic từ vi xử lý xử lý liệu cần thiết theo yêu cầu HỆ THỐNG VI XỬ LÝ BỘ NHỚ Bộ nhớ chính: ROM, RAM 10 Bộ nhớ lưu trữ: Bằng từ, USB, đĩa mềm BỘ NHỚ Cấu trúc RAM 64x4 11 MỘT SỐ CHUẨN GIAO TIẾP •Vi điều khiển hoạt động độc lập, tương với thiết bị ngoại vi ADC, chân IO, chuẩn giao tiếp I2C, SPI… vi xử lý tiếp nhận thơng tin, phân tích điều khiển qua bus liệu •Vi điều khiển tích hợp vi xử lý nhiều thành phần khác nhớ, ngoại vi, định thời,… Đối với vi xử lý, để hoạt động chúng cần có nhớ RAM, ổ cứng,… định thời RTC… 12 MỘT SỐ LOẠI VI XỬ LÝ, VI ĐIỀU KHIỂN + Họ vi điều khiển AMCC (tập đoàn Applied Micro Circuits Corporation) + Họ vi điều khiển Atmel (8051, Atmel AT91, AT90, Tiny & Mega – AVR…) + Họ vi điều khiển Cypress MicroSystems (PSoC) + Họ vi điều khiển Freescale Semiconductor (Motorola) + Họ vi điều khiển Fujitsu( F²MC Family (8/16 bit), FR Family (32 bit), FR-V Family (32 bit RISC) + Họ vi điều khiển Intel + Họ vi điều khiển Microchip (PIC) + Họ vi điều khiển National Semiconductor (COP8, CR16) + Họ vi điều khiển STMicroelectronics (ST 62, ST7STM8, STM32 (Cortex-Mx) + Họ vi điều khiển Philips Semiconductors 13 ỨNG DỤNG CỦA VI XỬ LÝ VÀ VI ĐIỀU KHIỂN - Xây dựng não trung tâm hệ thống tự động - Ứng dụng mục đích đặc biệt bao gồm kiểm sốt, giao tiếp, thiết bị đo đạc, tự động hóa, thơng tin liên lạc - Xây dựng hệ thống điện tử có tính mở dễ dàng tiếp cận - Vi điều khiển thuộc họ PIC họ 8051… dùng ứng dụng hệ thống nhúng nhỏ hệ thống điều khiển tín hiệu giao thơng loại hệ thống robot 14 PROGRAMABLE INTELLIGENT COMPUTER (PIC) + Kiến trúc RISC (Reduced Instructions Set Computer) + ISP flash 100,000 lần + Ngơn ngữ lập trình C + Phần mềm lập trình: CCS, MikroC + Hỗ trợ chuẩn truyền thông: I2C, SPI, UART… + PIC 8-bit: PIC10, PIC12, PIC14, PIC16, PIC17, PIC18 + PIC 16-bit: PIC24, dsPIC30, dsPIC33F + PIC 32-bit: PIC32 15 Pic16F887 (8 bit) GIỚI THIỆU VỀ PIC 16 CẤU TRÚC VI ĐIỀU KHIỂN PIC 16F887 17 CẤU TRÚC VI ĐIỀU KHIỂN PIC 16F887 18 THÔNG SỐ VI ĐIỀU KHIỂN PIC 16F887 + Bộ dao động nội sai số 1% + Tần số dao động nội 31kHz – 8Mhz, dao động ngoại lên đến 20MhZ + Chu kỳ lệnh: 5MIPS + Tầm nhiệt độ chuẩn công nghiệp + Dãy điện áp hoạt động 2-5.5V + timer: bit 16 bit + Truyền thông: UART, SPI, I2C, SPI + Bộ nhớ lập trình: 14KB + RAM: 368B + EEP ROM: 256B 19 U1 14 13 33 34 35 36 37 38 39 40 RE3/MCLR/VPP RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RA0/AN0/ULPWU/C12IN0RC2/P1A/CCP1 RA1/AN1/C12IN1RC3/SCK/SCL RA2/AN2/VREF-/CVREF/C2IN+ RC4/SDI/SDA RA3/AN3/VREF+/C1IN+ RC5/SDO RA4/T0CKI/C1OUT RC6/TX/CK RA5/AN4/SS/C2OUT RC7/RX/DT RA6/OSC2/CLKOUT RA7/OSC1/CLKIN RD0 RD1 RB0/AN12/INT RD2 RB1/AN10/C12IN3RD3 RB2/AN8 RD4 RB3/AN9/PGM/C12IN2RD5/P1B RB4/AN11 RD6/P1C RB5/AN13/T1G RD7/P1D RB6/ICSPCLK RB7/ICSPDAT RE0/AN5 RE1/AN6 RE2/AN7 PIC16F887 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 10 THÔNG SỐ VI ĐIỀU KHIỂN PIC 16F887 + Có 35 chân I/O song song + Mỗi ngõ giao tiếp tối đa 25mA tích hợp trở kéo lên dương nguồn + Bộ ngắt tích hợp + chân so sánh tương tự + so sánh điện áp tương tự + Bộ chuyển đổi ADC 14 kênh + Ngõ vào RS mặc định kéo lên nguồn + Bộ nhớ Flash R/W 100000 lần + Bộ nhớ EEPROM cho R/W 1,000,000 lần + Cho phép đọc/ghi nhớ chương trình mạch hoạt động 20 U1 14 13 33 34 35 36 37 38 39 40 RE3/MCLR/VPP RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RA0/AN0/ULPWU/C12IN0RC2/P1A/CCP1 RA1/AN1/C12IN1RC3/SCK/SCL RA2/AN2/VREF-/CVREF/C2IN+ RC4/SDI/SDA RA3/AN3/VREF+/C1IN+ RC5/SDO RA4/T0CKI/C1OUT RC6/TX/CK RA5/AN4/SS/C2OUT RC7/RX/DT RA6/OSC2/CLKOUT RA7/OSC1/CLKIN RD0 RD1 RB0/AN12/INT RD2 RB1/AN10/C12IN3RD3 RB2/AN8 RD4 RB3/AN9/PGM/C12IN2RD5/P1B RB4/AN11 RD6/P1C RB5/AN13/T1G RD7/P1D RB6/ICSPCLK RB7/ICSPDAT RE0/AN5 RE1/AN6 RE2/AN7 PIC16F887 15 16 17 18 23 24 25 26 19 20 21 22 27 28 29 30 10 SƠ ĐỒ CHÂN VI ĐIỀU KHIỂN PIC 16F887 MCLR/Vpp/RE3 MCLR is used during programming, mostly connected to programmer like PicKit or 3rd pin of PORTE, RESET 10 11 12 RA0/AN0 RA1/AN1 RA2/AN2/VrefRA3/AN3/Vref+ RA4/T0CKI/C1out RA5/AN4/SS/C2out RE0/RD/AN5 RE1/WR/AN6 RE2/CS/AN7 Vdd Vss Analog pin or 0th pin of PORTA Analog pin or 1st pin of PORTA Analog pin or 2nd pin of PORTA Analog pin or 3rd pin of PORTA 4th pin of PORTA Analog pin or 5th pin of PORTA Analog pin or 0th pin of PORTE Analog pin or 1st pin of PORTE Analog pin or 2nd pin of PORTE Power (+5V) GND 13 RA7/OSC1/CLKI External Oscillator/clock input pin or 7th pin of PORTA 14 RA6/OSC2/CLKO External Oscillator/clock output pin or 6th pin of PORTA 15 16 17 18 19 20 0th pin of PORT C 1st pin of PORT C or Timer/PWM pin 2nd pin of POCTC or Timer/PWM pin 3rd pin of PORT C 0th pin of PORTD 1st pin of PORTD RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RD0 RD1 21 SƠ ĐỒ CHÂN VI ĐIỀU KHIỂN PIC 16F887 21 22 23 24 RD2 RD3 RC4/SDI/SDA RC5/SDO 2nd pin of PORTD 3rd pin of PORTD 4th pin of PORTC or Serial Data in pin 5th pin of PORTC or Serial Data Out pin 25 RC6/Tx/CK 6th pin of PORTC or Transmitter pin of Microcontroller 26 RC7/Rx/DT 7th pin of PORTC or Receiver pin of Microcontroller 27 28 29 30 31 32 33 34 35 4th pin of PORTD 5th pin of PORTD 6th pin of PORTD 7th pin of PORTD GND Power (+5V) 0th pin of PORTB or External Interrupt pin Analog pin 10 or 1st pin of PORTB Analog pin or 2nd pin of PORTB RD4 RD5/P1B RD6/P1C RD7/P1D Vss Vdd RB0/INT RB1/AN10 RB2 /AN8 36 RB3/PGM/AN9 Analog pin or 3rd pin of PORTB or connected to programmer 37 38 39 40 Analog pin 11 or 4th pin of PORTB Analog pin 13 or 5th pin of PORTB 6th pin of PORTB or connected to programmer 7th pin of PORTB or connected to programmer RB4/AN11 RB5/AN13 RB6/PGC RB7/PGD 22 PHẦN MỀM LẬP TRÌNH VÀ MƠ PHỎNG CCS: https://drive.google.com/drive/folders/1GXCTmeZ50W2qmbec_a4NcvRqnb9xOBy?usp=sharing 23 PHẦN MỀM LẬP TRÌNH VÀ MƠ PHỎNG Mikro C: https://drive.google.com/drive/folders/1GXCTmeZ50W2qmbec_a4NcvRqnb9xOBy?usp=sharing 24 PHẦN MỀM LẬP TRÌNH VÀ MƠ PHỎNG Proteus https://drive.google.com/drive/folders/1GXCTmeZ50W2qmbec_a4NcvRqnb9xOBy?usp=sharing 25 TỔ CHỨC BỘ NHỚ VÀ THANH GHI Ở chương ta khảo sát nhớ bên trong, cách tổ chức nhớ hay kiến trúc nhớ chức ghi 26 GIỚI THIỆU TỔ CHỨC BỘ NHỚ PIC - Tổ chức nhớ PIC: + Bộ nhớ chương trình (program memory) + Bộ nhớ liệu (data memory) + Bộ nhớ EEPROM 27 KIẾN TRÚC BỘ NHỚ - PIC tổ chức nhớ theo kiến trúc Harvard phần cứng theo RISC (Reduced instruction set Computer) - Bộ nhớ chương trình nhớ liệu tách riêng tập CPU làm việc trực tiếp với liệu, tập lệnh kiến trúc Havard tối ưu -> kích thước dịng lệnh dòng PIC16 14 bit => PIC vượt trội so với loại VDK bit khác tốc độ hiệu 28 TỔ CHỨC BỘ NHỚ Bộ nhớ chương trình - Khơng gian nhờ từ 0000H – 1FFFH - Thanh ghi đếm chương trình PC có size 13 bit quản lý 8192 nhớ (tương đương với 8K words) - 8K ô nhớ chia làm page (2K words/ page), nhớ có khả lưu 14 bit liệu - Khi PIC bị reset ghi PC có giá trị 0000H PIC bắt đầu địa - Khi xảy ngắt thực chương trình từ địa 0004H 29 TỔ CHỨC BỘ NHỚ Bộ nhớ chương trình Dung lượng nhớ ngăn xếp có nhớ từ stack 1-8 Bộ nhớ chương trình có chức lưu trữ chương trình lập trình Chương trình sau viết xong máy tính, dịch số nhị phân nạp 30 TỔ CHỨC BỘ NHỚ Mã lệnh 14 bit - VDK bit: + Bộ nhớ chương trình tổ chức theo đơn vị byte (mỗi ô nhớ1byte) => CPU đọc cần byte: byte mã lệnh, byte liệu + CPU đọc mã lệnh để thực CPU thực lần đọc mã lệnh liệu => VDK bit cần chu kỳ máy để đọc (1byte /1 chu kỳ máy) - PIC: + Mỗi nhớ chương trình lưu trữ nhiều bit gồm mã lệnh liệu + CPU thực lần đọc mã lệnh liệu + Tập lệnh PIC rút gọn 14 bit gồm bit mã lệnh + bit liệu 31 TỔ CHỨC BỘ NHỚ Bộ nhớ liệu - Bộ nhớ liệu gồm bank (128bytes/1 bank): ghi đặc biệt ô nhớ lưu trữ liệu - Tồn nhớ nhớ liệu gọi file ghi - Các ghi có chức đặc biệt nằm vùng địa thấp - Các ô nhớ không thực chức đặc biệt nằm vùng địa bên ghi có chức đặc biệt 32 KIẾN TRÚC BỘ NHỚ Bộ nhớ liệu Thanh ghi trạng thái (Status Register): 03H, 83H, 103H, 183H Có hai cách truy xuất nhớ liệu: - Truy xuất trực tiếp: Các lệnh phép truy xuất bank, muốn truy xuất ô nhớ hay ghi nằm bank khác phải đổi bank Có bít chọn bank RP1 RP0 nằm ghi trạng thái - Truy xuất gián tiếp: Bit IRP quy định cho phép truy xuất bank: banks 0, (000h-0FFh) bank 2, (100h-1FFh) 33 TỔ CHỨC BỘ NHỚ Bộ nhớ liệu Thanh ghi trạng thái (Status Register): 03H, 83H, 103H, 83H 34 TỔ CHỨC BỘ NHỚ Bộ nhớ liệu Thanh ghi trạng thái (Status Register): 03H, 83H, 103H, 83H 35 TỔ CHỨC BỘ NHỚ Bộ nhớ EEPROM Bộ nhớ lưu trữ liệu có kiểu: - PROM(programable read-only memory) chip nhớ mà liệu viết lần - EPROM (Eraseble programable read-only memory) dạng đặc biệt PROM bị xóa sử dụng tia cực tím (khi xóa lập trình lại) - EEPROM (Electriclally Eraseble programable read-only memory) tương tự EPROM thay xóa EPROM EEPROM dùng tín hiệu điện để xóa liệu PIC16F873A 128B, PIC16F874A 128B, PIC16F876A 256B, PIC16F877A 256B 36 TỔ CHỨC BỘ NHỚ Bộ nhớ EEPROM - 256B tương đương 256 vị trí nhớ liệu địa 2100h - Định dạng để lưu trữ nhớ liệu byte liệu cho vị trí địa - Hàm viết liệu data vào địa addr: write_eeprom(addr,data); - hàm đọc liệu địa addr: read_eeprom(addr); - Ứng dụng dự án cần lưu trữ trạng thái hoạt động liệu cấu hình quan trọng 37 KIT THỰC HÀNH PIC 16F887a 38 KIT THỰC HÀNH PIC 16F887a 39

Ngày đăng: 03/08/2023, 10:38

Từ khóa liên quan

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

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

Tài liệu liên quan