GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051 - CHƯƠNG I
lượt xem 497
download
TÀI LIỆU THAM KHẢO VỀ LẬP TRÌNH VI ĐIỀU KHIỂN - GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051
Bình luận(1) Đăng nhập để gửi bình luận!
Nội dung Text: GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051 - CHƯƠNG I
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 CHƯƠNG 1: NGÔN NG C CHO H VI I U KHI N 8051 1.1.C u trúc m t chương trình: // ính kèm các file #include #include //Khai báo bi n toàn c c unsigned char x,y; int z; long n=0; //Khai báo và nh nghĩa các hàm void Hàm1(void) { … //Các câu l nh } void Hàm2(unsigned char x) { … //Các câu l nh } //Hàm chính b t bu c chương trình nào cũng ph i có void main(void) { … //Các câu l nh } Các câu l nh trong hàm chính có th có l i g i các hàm ã khai báo trên ho c không Khi có l i g i hàm nào thì chương trình nh y n hàm ó th c hi n hàm ó xong con tr l i quay v chương trình chính(hàm main) th c hi n ti p các hàm ho c câu l nh. Các câu l nh trong C k t thúc b ng d u “;” Các l i gi i thích ư c t trong d u: M u b ng “/*” k t thúc b ng “*/” N u l i gi i thích trên 1 dòng thì có th dùng d u: “//” Khi l p trình nên gi i thích các câu l nh kh i l nh làm gì v sau khi chương trình l n d s a l i. Biên so n: Nguy n Bá Thu n Page 1 of 6
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 2.2.Các lo i bi n trong C: D n g bi n S Bit S Byte Mi n giá tr -128 n +127 c ha r 8 1 0 n 255 unsigned char 8 1 -32,768 n +32,767 sh o r t 16 2 0 n 65,535 uns i g n e d sh o r t 16 2 -32,768 n +32,767 int 16 2 0 n 65,535 uns ig n e d int 16 2 -2,147,483,648 n+2,147,483,647 long 32 4 0 n 4,294,697,295 unsigned long 32 4 Khai báo bi n C u trúc : Ki u bi n Tên bi n V D: unsigned char x; Khi khai báo bi n có th gán luôn cho bi n giá tr ban u. VD : Thay vì: unsigned char x; x=0; Ta ch c n : unsigned char x=0; Có th khai báo nhi u bi n cùng m t ki u m t lúc V D: unsigned int x,y,z; N goài ra dùng cho vi i u khi n trình d ch chuyên d ng còn h tr các lo i bi n sau: D n g bi n S Bi t S Byt e Mi n gi á tr bit 1 0 0;1 sbit 1 0 0;1 0 n 255 sfr 8 1 sf16 16 2 0 n 65,535 N goài ra ,chúng ta có th nh nghĩa bi n ki u bít hay ki u SFR (special function register) Bit Kiemtra; Sfr P10=0x90; VD: Bit Kiemtra; Sfr P10=0x90; Biên so n: Nguy n Bá Thu n Page 2 of 6
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 Các SFR không c n ph i h c thu c ch c n bi t, và chúng ư c khai báo trong thư vi n A T89X51.H và AT89X52.H 2.3.Hàm trong C: H àm trong C có c u trúc như sau Có 2 lo i hàm H àm tr l i giá tr : C u trúc: Ki u giá tr hàm tr l ii Tên hàm (Bi n truy n vào hàm) { // Các l nh x lý ây } V D : unsigned char Cong(unsigned char x, unsigned char y) { // Các l nh x lý ây } H àm không tr l i giá tr C u trúc: void Tên hàm (Bi n truy n vào hàm) { // Các câu l nh x lý ây } V D: void Cong(unsigned char x, unsigned char y) { // Các câu l nh x lý ây } H àm có th truy n vào bi n ho c không VD H àm không có bi n truy n vào: unsigned char Tênhàm(void) { // Các câu l nh x lí ây } Biên so n: Nguy n Bá Thu n Page 3 of 6
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 H àm có bi n truy n vào: void Tênhàm(unsigned char x) { // Các câu l nh x lí ây } S bi n truy n vào tùy ý(mi n b nh ), ngăn cách b i d u “,” Ví d : V oid TênHàm(unsigned char x, unsigned char y, unsigned char z) { // Các câu l nh x lí ây } N goài ra riêng cho vi i u khi n ph n ph m Keil C còn có m t lo i hàm ó là hàm ng t: C u trúc: V oid Tênhàm(void) interrupt ngu nng t using băngthanhghi { } H àm ng t không ư c phép tr l i giá tr hay truy n tham bi n vào hàm. Tên hàm b t kì Interrupt là t khóa ch hàm ng t N gu n ng t t 0 t i 5 theo b ng vector ng t Interrupt Flag Vector Address System Reset RST 0000H External 0 IE 0 0003H Timer 0 TF 0 000BH External 1 IE 1 0013H Timer 1 TF 1 001BH Serial Port R1 or T1 0023H Timer 2 TF2 or EXF2 002BH Không tính ng t reset h th ng b t u m t ng t ngoài 0 Bă ng thanh ghi trên ram ch n t 0 n3 Biên so n: Nguy n Bá Thu n Page 4 of 6
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 2.4.Các toán t cơ b n: Phép gán: = VD: x=y; // x ph i là bi n y có th là bi n ho c giá tr nhưng ph i phù h p ki u Phép c ng: + Phép tr : - Phép nhân: * Phép chia: / Các toán t logic: B ng : == And: & & Or: || N ot: ! D ch trái: < < D ch Ph i: >> 2.5.Các c u trúc l nh r nhánh, ki m tra thư ng dùng: Câu l nh r nhánh if: C u trúc: if ( i uki n) { // Các câu l nh x lí } Gi i thích: Nu i uki n úng thì x lí các câu l nh bên trong còn sai thì nh y qua Câu l nh l a ch n switch: C u trúc: switch(Bi n) { case giatr 1: { // Các câu l nh break; } case giatr 2: { // Các câu l nh break; } case giatr 3: { // Các câu l nh break; } … case giatr n: { // Các câu l nh break; } } Gi i thích: tùy vào bi n có giatri1 thì th c hi n các câu l nh sau ó tương ng r i thoát kh i c u trúc nh l nh break. Câu l nh vòng l p xác nh for: C u trúc: for( n=m; nl), còn n là bi n Biên so n: Nguy n Bá Thu n Page 5 of 6
- I H C L C H NG GIÁO TRÌNH L P TRÌNH C CHO H VI I U KHI N 8051 Th c hi n l p các câu l nh (l-m) l n Câu l nh vòng l p không xác nh while: C u trúc: While( i u ki n ) { //Các câu l nh } Gi i thích: Th c hi n l p các câu l nh khi i u ki n úng, n u câu l nh sai thi thoát kh i vòng l p 2.6. B ti n x lý: #define : Dùng nh nghĩa. Ví d : #define dung 1 #define sai 0 có nghĩa là dung có giá tr b ng 1. Trong chương trình có th có o n code như sau: bit kiemtra if (bit==dung) { // Các câu l nh} if (bit==sai) { // Các câu l nh} Vi c này giúp l p trình d s a l i hơn Biên so n: Nguy n Bá Thu n Page 6 of 6
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Lập trình C cho vi điều khiển
88 p | 2004 | 976
-
Lập trình C cơ bản cho vi điều khiển
16 p | 1162 | 602
-
GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051 - CHƯƠNG 4
37 p | 801 | 431
-
GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051 - CHƯƠNG 2
10 p | 722 | 415
-
GIÁO TRÌNH LẬP TRÌNH C CHO HỌ VI ĐIỀU KHIỂN 8051 - CHƯƠNG 3
12 p | 701 | 411
-
Lập trình C cho vi xử lý 8051
18 p | 465 | 143
-
Chương II: Lập Trình Cho PIC Dùng PIC C Compiler
71 p | 653 | 132
-
Bài 2 GIỚI THIỆU VISUAL C++ VÀ LẬP TRÌNH ĐỒ HỌA 3D VỚI OPENGL
39 p | 733 | 113
-
Lập trình C cho họ vi điều khiển 8051
66 p | 321 | 110
-
Tài liệu hướng dẫn sử dụng phần mềm CCS
0 p | 331 | 99
-
Lập trình C cho vi xử lý cơ bản
16 p | 299 | 84
-
Giáo trình Lập trình vi điều khiển cơ bản (Nghề: Công nghệ kỹ thuật Điện-Điện tử - CĐ/TC) - Trường Cao đẳng nghề Đồng Tháp
175 p | 43 | 14
-
Giáo trình Lập trình cơ bản - CĐ Nghề Đắk Lắk
73 p | 40 | 9
-
Giáo trình Lắp đặt mạch điện máy công cụ (Nghề: Cơ điện tử - Trình độ: Cao đẳng) - CĐ Kỹ thuật Công nghệ Quy Nhơn
43 p | 17 | 7
-
Giáo trình Vi điều khiển PIC16F và ngôn ngữ lập trình Hi-Tech C: Phần 1 (Năm 2014)
78 p | 20 | 7
-
Giáo trình Lắp đặt, sửa chữa mạch điện máy công nghiệp (Nghề: Điện công nghiệp - Trình độ: Cao đẳng/Trung cấp) - CĐ Kỹ thuật Công nghệ Quy Nhơn
63 p | 13 | 6
-
Giáo trình Lập trình C (Nghề: Điện tử công nghiệp - Cao đẳng): Phần 1 - Trường CĐ nghề Việt Nam - Hàn Quốc thành phố Hà Nội
64 p | 33 | 5
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn