Lịch sử phát triển của vi điều khiển PIC pot

66 810 4
Lịch sử phát triển của vi điều khiển PIC pot

Đ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

z  ĐỀ TÀI BÁO CÁO VI ĐIỀU KHIỂN NÂNG CAO KHOA ĐIỆN TỬ CÔNG NGHỆ ĐH HÀ NỘI [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 1 BÁO CÁO VĐK NÂNG CAO I.Lịch sử phát triển của vi điều khiển PIC PIC (Programmable Interlligent Computer) là một sản phNm của hãng General Intruments đặt cho dòng sản phNm đầu tiên của họ là PIC 1605. Vào thập kỷ 70 của thế kỷ 20, General Intruments và Honeywell kết hợp sản xuất ra bộ vi xử lý 16 bit CP1600. Đây là bộ vi xử lý khá mạnh vào thời điểm đó nhưng lại hạn chế về hoạt động vào/ra. PIC 1650 được sản xuất để hỗ trợ vi xử lý CP 1600 trong các máy tính sử dụng bộ vi xử lý này. PIC 1650 hoạt động với tập lệnh đơn giản nằm trong ROM. Vào thời điểm đó chưa có khái niệm về RISC(Reduced Intructions Set Code), tuy nhiên PIC 1650 thực sự là một bộ vi điều khiển được thiết kế theo kiểu kiến trúc RISC. Tập lệnh của PIC 1650 vơi khoảng 30 lệnh và độ dài của mỗi lệnh là 14 bit. Mỗi lệnh được PIC 1650 thực hiện trong 1 chu kỳ máy(4 chu kỳ của bộ dao động). Năm 1985 General Intruments bán bộ phận sản xuất vi điện tử của họ và chủ sở hữu mới hủy bỏ hầu hết các dự án liên quan( do các dự án lúc trước đó đã lỗi thời). Năm 1989 Microchip Technology tiếp tục phát triển PIC, bắt đầu bằng việc thêm bộ nhớ EEPROM để tạo thành một bộ điều khiển vào ra khả trình. Tiếp đến là tích hợp các tính năng như ngắt, ADC( Analog Digital Convertr) … để tạo thành cá bộ vi điều khiển( Micro Controller). Đến năm 1992 Microchip Technology đã cho ra đời 6 loại chip với 3 dòng khác nhau: - Dòng chip có độ dài mã lệnh bằng 12 bit gồm 4 chip PIC 15C5x. Các chip này có từ 12 đến 28 chân vào/ra. - Dòng chip độ dài mã lệnh băng 14 bit là PIC 16C71. Bộ vi điều khiển này đã được tích hợp thêm hai tài nguyên là ngắt ADC. - Dòng chip độ dài mã lệnh bằng 16 bit là PIC 17C41, tuy nhiên dòng chip này không được chú trọng phát triển vào thời điểm đó. Cùng thời gian này hàng loạt các công cụ hỗ trợ cũng được các công ty khác nhau cho ra đời. Điển hình là PICMASTER emulator, PIC Pro II programmer và cả trình dịch C( C Compiler). Các công cụ này cùng với việc thay bộ nhớ OTP (one – time programmable parts) bằng bộ nhớ EEP (Electically Erasable Parts) đã mang đến rắt nhiều tiện lợi cho người lập trình, dụ như: người lập trình có thể nạp chương trình mà không cần gỡ chip ra khỏi mạch. PIC 16C84 là bộ vi điều khiển đầu tiên có bộ nhớ kiểu EEP. Không lâu sau đó Microchip Technology tiếp tục đưa vào bộ vi điều khiển với mã lệnh dài 14 bit PIC16F877 tính năng gỡ rối(Flash debugging). Tính năng này cho phép [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 2 BÁO CÁO VĐK NÂNG CAO người lập trình có thể kiểm soát từng thanh ghi, từng câu lệnh trong chương trình. Nhờ những cải tiến liên tiếp, PIC16F87 trở thành bộ vi điều khiển bán chạy nhất vào thời điểm đó( năm 1995 đến 1998). Đến năm 2000, Microchip Technology tái phát triển lại dòng chip có độ dài mã lệnh bằng 16bit đã có trước đó 8 năm. Đại diện cho dòng chip này là PIC18F4520 với tốc độ mã lệnh bằng 16bit đã có trước đó 8 năm. Đại diện cho dòng chip này là PIC18F452 với tốc độ , dung lượng bộ nhớ được cải thiện và khá nhiều tính năng được bổ sung như các bộ định thời(timer), truyền thông nối tiếp…Dòng vi điều khiển PIC 8 bit đã dẫn đầu số lượng bộ bán ra mỗi năm liên tục từ năm 2002 đến nay. Trước nhu cầu về tốc độ xử lý cũng như các tính năng đặc biệt khác, Microchip Technology tiếp tục cho ra đời các dòng vi điều khiển tiên tiến hơn như: PIC24, PIC33, dsPIC Ngày nay đã có đến hàng chục dòng PIC với hàng trăm loại chip khác nhau. Tại Việt Nam cũng như trên thế giới, họ vi điều khiển này được sử dụng khá rộng rãi. Điều này tạo nhiều thuận lợi trong quá trình tìm hiểu và phát triển các ứng dụng như: số lượng tài liệu, số lượng các ứng dụng mở đã phát triển thành công, dễ dàng trao đổi, học tập, dễ dàng tìm được sự chỉ dẫn khi gặp khó khăn [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 3 BÁO CÁO VĐK NÂNG CAO II. Kiến trúc phần cứng của vi điều khiển PIC 2.1. Sơ đồ khối Hình 2.1: Sơ đồ khối của PIC 18F4520 Các khối chính trên PIC 18F4520 bao gồm: • CPU: Tần số tối đa 40MHz, kiến trúc Havard, được sản xuất bằng công nghệ nano Watt. • Bộ nhớ: [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 4 BÁO CÁO VĐK NÂNG CAO  Bộ nhớ chương trình FLASH: 32K  RAM: 1536 bytes  Bộ nhớ dữ liệu EEPROM: 256 bytes • Cổng vào ra: A,B,C,D,E  Cổng A: RA0-RA7  Cổng B: RB0-RB7  Cổng C: RC0-RC7  Cổng D: RD0-RD7  Cổng E: RE0-RE3 • Định thời/đếm: 4 bộ (Timer2: 8bit; Timer0,1,3: 16 bit) • PWM: 2 bộ (CCP1:RC2; CCP2:RC1) • Truyền thông nối tiếp L2 module: MSSP và EUSART Module MSSP gồm 2 module: SPI(Serial Peripheral Interface) và IC (Intergrated Circuit) • ADC: 13 kênh ADC với độ phân giải 10bit 2.2.Sơ đồ chân Hình 2.2: Sơ đồ chân PIC 18F4520 dạng TQFP [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 5 BÁO CÁO VĐK NÂNG CAO Hình 2.3: Sơ đồ chân PIC 18F4520 dạng DIP Tên chân Chân số Loại chân Loại bộ nhớ đệm Mô tả PDI P QF N TQFP MCLR/VPP/RE3 MCLR VPP RE3 1 18 18 I P I ST ST Master clear(đầu vào)hoặc lập trình điện áp đầu vào Master clear(Reset)đầu vào,chân này hoạt động ở mức thấp, thiết lập lại cho thiết bị. Lập trình điện áp đầu vào Đầu vào số OSC1/CLK1/RA7 13 32 30 Đầu vào của dao động tinh thể và dao động đồng hồ bên [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 6 BÁO CÁO VĐK NÂNG CAO OSC1 CLK1 RA7 I I I/O ST CMO S TTL ngoài Đầu vào của dao động tinh thể hoặc đầu vào dao động đồng hồ bên ngoài. Bộ nhớ đệm ST khi cấu hình chế độ RC tương tự khác Đầu vào của nguồn xung clock ngoài. Luôn gắn liền với chức năng của chân, OSC1(xem chân OSC1/CLK1; OSC2/CLK0 Chân vào/ra OSC2/CLK0/RA6 OSC2 CLK0 14 33 31 O O _ _ Đầu vào dao động tinh thể hoặc dao động đồng hồ bên ngoài Đầu ra dao động tinh thể, liên kết tinh thể hoặc cộng hưởng trong chế độ dao động tinh thể Trong chế độ RC, OSC2,chân đầu ra [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 7 BÁO CÁO VĐK NÂNG CAO RA6 I/O TTL CLK0 có ¼ tần số củaOSC1& biểu thị tỉ lệ chu kì lệnh Chân vào/ra RA0/AN0 RA0 AN0 RA1/AN1 RA1 AN1 RA2/AN2/VREF- /CVREF RA2 AN2 VREF- CVREF RA3/AN3/VREF+ RA3 AN3 VREF+ 2 3 4 5 19 20 21 22 19 20 21 22 I/O I I/O I I/O I I O I/O I I TTL Analo g TTL Analo g TTL Analo g Analo g Analo g PORTA là cổng vào ra 2 chiều Vào/ra số Vào/ra số Đầu vào tương tự 1 Vào/ra số Đầu vào tương tự 2 A/D đầu vào tham chiếu điện áp (mức thấp) So sánh đầu ra điện dáp tham chiếu Vào/ra số Đầu vào tương tự 3 Đầu vào tham chiếu điện áp (mức cao) [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 8 BÁO CÁO VĐK NÂNG CAO RA4/T0CKI/ C1OUT RA4 C1OUT RA5/AN4/SS/HLVD IN C2OUT RA5 AN4 SS HLVDIN C2OUT RA6 RA7 6 7 23 24 23 24 I/O O I/O I I I O TTL Analo g Analo g ST _ TTL Analo g TTL Analo g _ Đầu vào xung clock bên ngoài So sánh đầu ra 1 Vào/ra số Đầu vào tương tự 4 SPI chọn đầu vào Dò tìm điện áp đầu vào mức cao/thấp So sánh ngõ ra 2 Xem chân OSC2/CLK0/RA6 Xem chân OSC1/CLK1/RA7 [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 9 BÁO CÁO VĐK NÂNG CAO RB0/INT0/FLT0/AN 12 RB0 INT0 FLT0 AN12 RB1/INT1/AN10 RB1 INT1 AN10 RB2/INT2/AN8 RB2 INT2 AN8 RB3/AN9/CCP2 RB3 AN9 CCP2 (1) RB4/KBI0/AN11 RB4 33 34 35 36 37 9 10 11 12 14 8 9 10 11 14 I/O I I I I/O I I I/O I I I/O I I/O I/O I TTL ST ST Analo g TTL ST Analo g TTL ST Analo g TTL Analo g ST PORTB là cổng vào/ra 2 chiều. Vào/ra số Ngắt ngoài 0 PWM lỗi đầu vào cho nâng cao CCP1 Đầu vào tương tự 12 Vào/ra số Ngắt ngoài 1 Đầu vào tương tự 10 Vào/ra số Ngắt ngoài 2 Đầu vào tương tự 8 Vào/ra số Đầu vào tương tự 9 Đầu vào 2/so sánh đầu ra 2/PWM đầu ra Vào/ra số Chân thay đổi ngắt [...]... dữ liệu vào ra của cổng A LATA: là thanh ghi chốt dữ liệu đầu ra của cổng A TRISTB: là thanh ghi điều khiển hướng vào(hoặc ra) của cổng A ADCON1: là thanh ghi điều khiển A/D, thiết lập các đầu vào lá số hay tương tự(được sử dụng để cấu hình các chân AN0 đến AN 4của cổng A) CMCON: là thanh ghi điều khiển bộ so sánh (xem phần so sánh) CVRCON: là thanh ghi điều khiển điện áp tham chiếu của bộ so sánh(... đến cổng D: PORTD: là thanh ghi chứa dữ liệu vào/ra của cổng D LATD: là thanh ghi chốt dữ liệu vào/ra của cổng D TRISD: là thanh ghi điều khiển hướn vào (hoặc ra) của cổng D TRISE: là thanh ghi hướng dữ liệu của cổng E nhưng có thên chức năng điều khiển giao tiếp sông của cổng D(xem thêm phần giao tiếp song song) CCP1CON: là thanh ghi điều khiển của chế độ PWM, Compare (xem phần tương ứng) 3.6 Cổng... toán hạng và phải sử dụng BSR hoặc truy cập Bank để tìm thanh ghi đích của chúng Hình 2.11 Tổ chức bộ nhớ dữ liệu RAM trên PIC 18F4520 KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 22 BÁO CÁO VĐK NÂNG CAO [Type the document title] 2.5.2.2 Truy cập Bank Trong khi vi c sử dụng BSR với một địa chỉ 8 bit cho phép người sử dụng có thể xử lý toàn bộ phạm vi của bộ nhớ dữ liệu Điều đó đồng nghĩa với vi c người sử dụng luôn luôn... Page 26 BÁO CÁO VĐK NÂNG CAO [Type the document title] III Hoạt động vào ra và cấu hình phần cứng của vi điều khiển PIC 18F4520 3.1 Cấu trúc các chân vào/ra của PIC 18F4520 PIC 18F4520 có 5 cổng vào/ra là PORTA, B, D,E Các chân được thiết lập thành các chức năng khác nhau phụ thuộc vào các thanh ghi điều khiển: • Thanh PORT là thanh ghi dữ liệu được định địa chỉ theo byte và theo bit • Thanh ghi LAT... những thanh ghi điều khiển 2.5.1 Tổ chức bộ nhớ chương trình Vi điều khiển PIC1 8 thực hiện một bộ đếm chương trình có độ dài 21-Bit có khoảng trống là 2Mbyte.Truy cập tới vị trí giữa bộ nhớ và 2-Mbyte địa chỉ thì tất cả các giá trị trả về sẽ là “0” (sử dụng lệnh NOP) KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 19 BÁO CÁO VĐK NÂNG CAO [Type the document title] PIC1 8F240 và PIC1 8F4420 từng có 16Kbytes của bộ nhớ Flash... ngoại vi Các thanh ghi phục vụ reset và ngắt sẽ được nói chi tiết mục của chúng, còn các thanh ghi trạng thái của ALU được nói trong phần này Thanh ghi liên quan đến hoạt động của thiết bị có chức năng ngoại vi được nói trong chương các thiết bị ngoại vi SFR có thể có trong các thiết bị ngoại vi có chức năng điều khiển Unused chưa được định nghĩa nếu đọc sẽ bằng ‘0’ Hình 2.12.Phân bố địa chỉ của các... NÂNG CAO [Type the document title] PORTE: chỉ sử dụng các bit RE0:RE2 để chứa dữ liệu vào/ra LATE: chỉ sử dụng các bít 0:2 đẻ chốt dữ liệu vào/ra trên các chân RE0:RE2 TRISE: chỉ sử dụng các bít TRISE0:TRISE2 để điều khiển hướng vào ( hoặc ra) cho 3 chân tương ứng Các bit khác của thanh ghi này dùng cho chế độ giao tiếp song song ADCON1: thanh ghi điều khiển của bộ A/D 3.7 Giao tiếp song song (PSP – Paralell... CAO [Type the document title] Hình 3.3 Giản đồ xung ghi dữ liệu vào vi điều khiển qua PSP Khi PSP nhận thành công một bytes cờ PSPIE(cờ ngắt) và cờ IBF(cờ báo nhận thành công 1 byte) được đặt bằng 1, dữ liệu dược đặt vào bộ đệm chờ để CPU đọc Hình 3.4 Giản đồ xung đọc dữ liệu từ vi điều khiển qua PSP Khi bắt đầu đọc dữ liệu từ vi điều khiển bit OBF (báo có 1 byte ở bộ đếm chờ đọ) được xóa, kết thúc quá... the document title] PORTB: là thanh ghi chứa dữ liệu vào/ra của cổng B LATB:là thanh ghi chốt dữ liệu đầu ra của cổng B TRISTB: là thanh ghi điều khiển hướng vào(hoặc ra) của cổng B INTCON, INTCON2, INTCON3:là các thanh ghi điều khiển hoạt động ngắt( xem phần ngắt) ADCON1: là thanh ghi điều khiển A/D, thiết lập đầu vào là số hay tương tự 3.4 Cổng C Cổng C là cổng 2 chiều 8 bit, gồm có 8 chân được kí... 128byte đầu tiên của bộ nhớ (00H-7Fh) và 128byte cuối cùng của bộ nhớ(80h-FFh) tại ô 15 Nửa dưới là “Access RAM” và có GPRs Phần trên của nó chứa các SFRs Hai vùng này được đặt cạch nhau trong Access Bank và có thể được gửi đi theo một địa chỉ 8 bits ( hình 5-5) Bank Access được sử dụng bởi một tập lệnh của Pic bao gồm các bit Ram Access (sử dụng ‘a’ làm tham số) Khi ‘a’ = 1 câu lệnh sử dụng BSR và địa . các dòng vi điều khiển tiên tiến hơn như: PIC2 4, PIC3 3, dsPIC Ngày nay đã có đến hàng chục dòng PIC với hàng trăm loại chip khác nhau. Tại Vi t Nam cũng như trên thế giới, họ vi điều khiển này. VI ĐIỀU KHIỂN NÂNG CAO KHOA ĐIỆN TỬ CÔNG NGHỆ ĐH HÀ NỘI [Type the document title] KHOA ĐIỆN TỬ ĐHCN HÀ NỘI Page 1 BÁO CÁO VĐK NÂNG CAO I .Lịch sử phát triển của vi điều. chip ra khỏi mạch. PIC 16C84 là bộ vi điều khiển đầu tiên có bộ nhớ kiểu EEP. Không lâu sau đó Microchip Technology tiếp tục đưa vào bộ vi điều khiển với mã lệnh dài 14 bit PIC1 6F877 tính năng

Ngày đăng: 27/06/2014, 01:21

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