RISC( Reduced Instruction Set Computer)
Tập lệnh rút gọn
Các lệnh có kích cỡ 12, 14, 16 bit
CISC (Complex Instruction Set Computer)
Tập lệnh phức tạp : số lệnh lớn
Các lệnh có kích cỡ bội của 8 bit
30 trang |
Chia sẻ: maiphuongtt | Lượt xem: 2035 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Bài giảng về Vi điều khiển 8051, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Vi điều khiển 8051 NỘI DUNG KHÓA HỌC Bài 1: Tổng quan về 8051+NN Lập Trình Bài 2: Lập trình I/0 với Led đơn Bài 3: Điều khiển Led 7_SEG +Phím bấm Bài 4: Lập trình sử dụng LCD Bài 5: Ngắt ngoài của 8051(INT) Bài 6: Ngát Bô Định Thời (Timer) Bài 7: Bộ đếm của 8051 (Counter) Bài 8: Đk động cơ DC+Tổng Kết khoá học GIỚI THIỆU VỀ VI ĐIỀU KHIỂN 8051 Một số dòng thuộc họ 8051 AT89C51 AT89C52 AT89S51 AT89S52 AT89S53 ………… P89C51RA2xx P89V51RD, P89V51RC… GIỚI THIỆU VỀ VI ĐIỀU KHIỂN 8051 Bảng các đặc tính của 8051 Kiến trúc Von Neuman và kiến trúc Havard PIC , AVR có kiến trúc Havard , 8051 Neuman Tập lệnh trong kiến trúc Havard có thể được tối ưu tùy theo yêu cầu kiến trúc của vi điều khiển mà không phụ thuộc vào cấu trúc dữ liệu RISC và CISC RISC( Reduced Instruction Set Computer) Tập lệnh rút gọn Các lệnh có kích cỡ 12, 14, 16… bit CISC (Complex Instruction Set Computer) Tập lệnh phức tạp : số lệnh lớn Các lệnh có kích cỡ bội của 8 bit SƠ ĐỒ CHÂN SƠ ĐỒ MẠCH RESET MẠCH DAO ĐỘNG MẠCH VĐK ĐƠN GIẢN NHẤT Nguồn cho Chip Dùng IC LM7805 : Nguồn cho Chip Nguồn cho Chip Tạo nguồn 5V và -5V : Nguồn cho Chip Mạch Nạp ISP Sơ đồ nguyên lý: Mạch Nạp ISP Mạch Nạp ISP Giao diện chương trình nạp: Chi tiết xem thêm tai : NGÔN NGỮ LẬP TRÌNH C Đính kèm file : #include #include Khai báo các biến: unsigned char x,y; int z; long n=0; I.CẤU TRÚC TRƯƠNG TRÌNH NGÔN NGỮ LẬP TRÌNH C Khai báo và định nghĩa các hàm void Ham1(void) { …//các câu lệnh } void Ham2(unsigned char x) { …//các câu lệnh } NGÔN NGỮ LẬP TRÌNH C Hàm chính void main(void) { …//các câu lệnh } NGÔN NGỮ LẬP TRÌNH C II.CÁC LOẠI BIẾN TRONG C NGÔN NGỮ LẬP TRÌNH C CÁC BIẾN ĐƯỢC HỖ TRỢ THÊM BỞI TRÌNH BIÊN DỊCH NGÔN NGỮ LẬP TRÌNH C III.CÁC HÀM TRONG C: Có 2 loại hàm : Hàm trả lại giá trị Cấu trúc: Kiểugiatrịhamtrảlại Tênhàm (Biêntruyềnvàohàm) { // các câu lệnh } Ví dụ : unsigned char Cong(unsigned char x, unsigned char y { // các câu lệnh } NGÔN NGỮ LẬP TRÌNH C Hàm ko trả lại giá trị Cấu trúc: void Tênhàm (Biêntruyềnvàohàm) { // các câu lệnh } Ví dụ : void Cong(unsigned char x, unsigned char y) { // các câu lệnh } NGÔN NGỮ LẬP TRÌNH C Hàm có thể có biến truyền vào hoặc ko ví dụ: Hàm ko có biến truyền vào unsigned char Tênhàm (void) { // } Hàm có biến truyền vào void Tênhàm (unsigned char x) { // } NGÔN NGỮ LẬP TRÌNH C IV.CÁC TOÀN TỬ CƠ BẢN Phép gán: = VD: x=y; Phép cộng: + Phép trừ: - Phép nhân: * Phép chia: / Các toán tử logic: Bằnng : == And: && Or: || Not: ! Dịch trái : > NGÔN NGỮ LẬP TRÌNH C IV.CÁC CÂU LỆNH RẼ NHÁNH , KIỂM TRA HAY DÙNG Câu lệnh rẽ nhánh if : Cấu trúc : if (Điều kiện) {//nếu xảy ra điều kiện thì thực hiện khối lệnh} Câu lệnh rẽ nhánh switch : Cấu trúc : switch(Biến) { case giatrị 1: { // các lệnh break; } case giatrị 2: { // các lệnh break; } case giatrị 3: { // các lệnh break; } … case giatrị n: { // các lệnh break; } } NGÔN NGỮ LẬP TRÌNH C Câu lệnh rẽ nhánh for : Cấu trúc : for (i=0;i<100;i++) {//Khối lệnh} Câu lệnh rẽ nhánh while : Cấu trúc :while (BT) {//Khối lệnh} NGÔN NGỮ LẬP TRÌNH C #define : Dùng để định nghĩa. Ví dụ : #define dung 1 #define sai 0 V. BỘ TIỀN SẺ LÝ Ví dụ : sbit dung = 1 ; sbit led = P0^1 ; Cảm biến dò đường của robot THE END NGUYỄN NGỌC KIÊN_CTM7K48