TÌM HIỂU VI XỬ LÝ MICROCHIP PIC 16F877A
KIẾN TRÚC MÁY TÍNH TÌM HIỂU VI XỬ LÝ MICROCHIP PIC 16F877A Thực hiện: Nhóm 4 Tổng quan về vi điều khiển PIC Vi điều khiển PIC16F877A Nội dung Instrument đặt tên cho vi điều khiển đầu tiên của họ: PIC1650 được thiết kế để dùng làm các thiết bị ngoại vi cho vi điều khiển CP1600. !"#$%&''$()* $#+ ,) !!- ./ 0)) 1/&"/($ ' &) ◦ 2&) !'# +3&&$%&4- ◦ */0*5( - ◦ #6! 75' /&) &/&/&'6&- ◦ 8/&"$&/ "6(/()($(''9$)$(&'&) 7!/(&)khiển 8501- ./ 0)) 1/&"/($ ' &) ◦ 2&!& &4'9$(%(:&) !$%&'"$ & * /&-! &6&%& 0*++ )* '*'$( &- ◦ ;$&/3%&$" <6()+&':'*''/'& 6&+:&'$%+$ % ($('&- ◦ *'7 5&' ) :)'*'75!/$$%&' * - ./ 0)) =(>' ◦ ./ '$('6'$(' $%&'(((>'2) ◦ ?)&'*'%/&%('$%+)/&%($3&:@'# 'A /&>'! <6(' /&%(:>5/('/&<$ B' ) 6(/ ./ 0)) C$ B&'%'(:/&'D&' ) "3 /E<''- ./ 0)) 4/$36&+' ◦ 4/$36&+'6(&-4/$36&+'6(6('#18FG:'*'/ $36& +'6('%/:G" ':"': ◦ 4','#/&"/(/$36&+$%&'* '$ G"':1G"': ./ 0)) 1&'&' ◦ # "$ &'*'&'& $%&'''6(% " <6(1' '$ ;.FH.8@;:1 8FG IJ:18FG 1K:HL1F.M ◦ # A'*'" 6 ! &') *'/0'$%+ 18FG- ◦ I," 6 '7/(!'#$(&$%&''6(' '*') : !*6(')$%5& 6( #50*+" 6 - ./ 0)) 1&'&' ◦ ,'#6(&'&$%&'( (') NI1: OFHPQKF)1P@;G:QRHLES:@)"T ◦ *'&'& '#$ % : :'# $&5(*:) & /&'&3+$%&'- ◦ .!'*'&'& '# $%&' &'()"/() $%&'/3%&: /3&'& '6$%&'"$ &)%(/&'$%+&7'%&- ./ 0)) [...]...Phần 2 Vi điều khiển PIC1 6F877A Vi điềều khiềển PIC1 6F877A Mổợt vài thổng sổứ cuểa PIC1 6F877A ◦ Đầy là vi điềều khiềển thuổợc hoợ PIC1 6Fxxx vợứi tầợp lềợnh gổềm 35 lềợnh Mổễi lềợnh có đổợ dài 14bit và đềều đượợc thược thi trong mổợt chu kì xung clock Tổức đổợ hoaợt đổợng... chượng trình 8Kx14bit, bổợ nhợứ dưễ liềợu 368x8 byte RAM và bổợ nhợứ dưễ liềợu EEPROM vợứi dung lượợn g 256x8 byte Sổứ PORT I/O là 5 vợứi 33 pin I/O Vi điềều khiềển PIC1 6F877A Mổợt vài thổng sổứ cuểa PIC1 6F877A ◦ Bền caợnh đó là mổợt vài đắợc tính khác cuểa vi điềều khiềển như: Bổợ nhợứ flash vợứi khaể nắng ghi xóa đượợc 100.000 lầền Bổợ nhợứ EEPROM vợứi khaể nắng ghi xóa đượợc 1.000.000... của CPU tại địa chỉ 2007h, chỉ có thể truy xuất trong quá trình lập trình cho vi điều khiển Tập lệnh của vi điều khiển PIC Vài nét sơ lược về tập lệnh của vi điều khiển PIC Tập lệnh của vi điều khiển PIC Vài nét sơ lược về tập lệnh Pic là vi điều khiển có tập lệnh rút gọn RISC, gồm 35 lệnh và được chia làm 3 nhóm cơ bản: 1 2 Nhóm lệnh thao tác trên byte 3 Nhóm lệnh thao tác trên bit Nhóm lệnh... thiết bị ngoại vi hay các vi điều khiển khác PSP(Parallel slave port) Cổng giao tiếp song song, thông qua PORTD và PORTE Chịu sự điề khiển của thiết bị ngoài qua các pin của PORTE Dữ liệu được đọc/ghi thông qua PORTD Một số đặc tính của CPU Các bit lựa chọn đặc tính của CPU tại địa chỉ 2007h, chỉ có thể truy xuất trong quá trình lập trình cho vi điều khiển Tập lệnh của vi điều khiển PIC Vài nét... trình Chềứ đổợ sleep Có thềể hoaợt đổợng vợứi nhiềều daợng Oscillator (bổợ dao đổợng) khác nhau Sợ đổề khổứi Vi điềều khiềển PIC1 6F877A Tổể chưức bổợ nhợứ: ◦ ◦ Bổợ nhợứ chượng trình Bổợ nhợứ dưễ liềợu Sợ đổề bổợ nhợứ chượng trình Sơ đồ bộ nhớ dữ liệu Các cổng nhập xuất Là phương tiện để vi điều khiển tương tác với bên ngoài và thực hiện chức năng chính của nó Một số chân còn có chức năng khác... lệnh (tiếp) Nhóm lệnh điều khiển chỉ có 1 tham số duy nhất là k để mô tả tác động của vi điều khiển Mỗi lệnh được vi điều khiển thực thi xong trong vòng 1 chu kỳ lệnh Lệnh làm thay đổi giá trị bộ đếm chương trình cần 2 chu kỳ lệnh Chu kỳ lệnh gồm 4 xung clock của oscillator Tầợp lềợn h cuểa vi điềều khiềển PIC 1 2 Lềợnh ADDLW ◦ ◦ ◦ Cú pháp: ADDLW k (0-255) Tác duợng: cổợng giá triợ k vào thanh... thanh ghi f (d=1) ◦ Bit traợng thái: Z Tập lệnh của vi điều khiển PIC (tiếp) 5 Lệnh BCF ◦ ◦ ◦ 6 Cú pháp: BCF f,b (f: 0-127, b: 0-7) Tác dụng: xóa bit b trong thanh ghi f về giá trị 0 Bit trạng thái: không có Lệnh BSF ◦ ◦ ◦ Cú pháp: BSF f,b (f: 0-127, b: 0-7) Tác dụng: set bit b trong thanh ghi f Bit trạng thái: không có Tập lệnh của vi điều khiển PIC (tiếp) 7 Lệnh BTFSS ◦ ◦ Cú pháp: BTFSS f,b (f: 0-127,... của vi điều khiển PIC (tiếp) 9 Lệnh CALL ◦ ◦ Cú pháp: CALL k (0-2047) Tác dụng: gọi một chương trình con Trước hết, địa chỉ quay trở về từ chương trình con (PC+1) được cất vào Stack, giá trị mới được đưa vào bộ đếm gồm 11bit của biến k và 2bit PCLATH ◦ 10 Bit trạng thái: không có Lệnh CLRF ◦ ◦ ◦ Cú pháp: CLRF f (f:0-127) Tác dụng: xóa thanh ghi f và bit Z được set Bit trạng thái: Z Tập lệnh của vi. .. Serial Port) Ngõ ra của bộ ADC, bộ so sánh PORTB ◦ Liên quan đến ngắt ngoại vi và bộ Timer0 PORTC ◦ Chứa chân chức năng của bộ so sánh, bộ Timer1, bộ PWM, các chuẩn giao tiếp nối tiếp PORTD ◦ Cổng xuất dữ liệu của chuẩn giao tiếp PSP PORTE ◦ Chứa chân điều khiển của chuẩn PSP Timer0, Timer1, Timer2 Bộ định thời, bộ đếm của vi điều khiển Timer0: Bộ đếm, bộ định thời 8 bit, lưu trong thanh ghi... thanh ghi W Bit traợng thái: C,DC,Z Lềợnh ADDWF ◦ ◦ ◦ Cú pháp: ADDLW f,d Tác duợng: cổợng 2 giá triợ thanh ghi W và f Kềứt quaể chưứa vào W(d=0) và f(d=1) Bit traợng thái: C,DC,Z Tầợp lềợn h cuểa vi điềều khiềển PIC (tiềứp ) 3 4 Lềợnh ANDLW ◦ ◦ ◦ Cú pháp: ANDLW k (0-255) Tác duợng: thược hiềợn phép toán AND giưễa thanh ghi W và giá triợ k Kềứt quaể chưứa trong thanh ghi W Bit traợng thái: Z Lềợnh ANDWF . KIẾN TRÚC MÁY TÍNH TÌM HIỂU VI XỬ LÝ MICROCHIP PIC 16F877A Thực hiện: Nhóm 4 Tổng quan về vi điều khiển PIC Vi điều khiển PIC1 6F877A Nội dung Instrument. dung Instrument đặt tên cho vi điều khiển đầu tiên của họ: PIC1 650 được thiết kế để dùng làm các thiết bị ngoại vi cho vi điều khiển CP1600. !"#$%&''$()*. &)%(/&'$%+&7'%&- ./ 0)) Vi điều khiển PIC1 6F877A Phần 2 1/&)/"/(' QRUVWWF ◦ 6! )