GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 2 TUYEN BO BAN QUYEN Tài liệu này thuộc loại sách giáo trình nên các nguồn thông tin có thể được phép dùng nguyên bản hoặc trích dùng cho các mục đích về đào tạo và tham khảo. Mọi mục đích khác mang tính lệch lạc hoặc sử đụng với mục đích kinh doanh thiếu lành mạnh sẽ bị nghiêm cắm. LỜI GIỚI THIỆU Trong những thập niên cuối thế kỉ XX, từ sự ra đời của công nghệ bán dân, kĩ thuật điện tử đã có sự phát triển vượt bậc. Tiếp theo đó vi điều khiển ra đời và được sử dụng phố biến để điều khiến các thiết bị điện tử.
Để vi điều khiển hoạt động cân có chương trình kèm theo, các chương trình này điều khiển các mạch logic và từ đó vi điều khiển xử lý các đữ liệu cân thiết theo yêu câu. Chương trình là tập hợp các lệnh để xử lý dữ liệu thực hiện từng lệnh được lưu trữ trong bộ nhớ. Theo đó, giáo trình được biên soạn dựa trên chương trình môn học Cơ sở lập trình vỉ điều khiển dành cho hệ Cao đẳng chuyên ngành CNKT Điện tử truyền thông và Điện tử công nghiệp của trường Cao đẳng Công nghệ Thủ Đức. Giáo trình được sắp xếp gôm 7 chương với các nội dung chính như sau: —_ Giới thiệu tổng quan về các ngôn ngữ lập trình — Trình bày về ngôn ngữ lập trình C — Hướng dân người học cách nhập — xuất đữ liệu trong C —_ Giải thích các cấu trúc điều khiển — Néu cdc van dé co ban vé ham — Cách lập trình với mảng — Cách lập trình với chuỗi Giáo trình được biên soạn, tổng hợp từ những tài liệu về ngôn ngữ lập trình C cùng vốn kiến thức và kinh nghiệm thực tế giảng dạy của nhóm tác giả, đây cũng là lần đầu tiên biên soạn của nhóm tác giả về môn học này nên sẽ không tránh khỏi những thiếu sót, rất mong nhận được sự đóng góp ý kiến quí báu của Quy đồng nghiệp và bạn đọc.
Xin trân trọng và cảm ơn! Thủ Đức, ngày. năm 2021 Tham gia biên soạn 1. Van Quốc Kiệt 2. Trân Quốc Trung Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 3 MỤC LỤC A.
DANH MỤC CÁC VIẾT VIET TẮT. DANH MỤC BIEU BẢNG SỐ LIỆỆU. 6 CHUONG 1: TONG QUAN. Các khái HIỆM CƠ ĐỎẢIH.
Cấu trúc chung của một chương fFÌNÌh. Án To TT ch 0 ve 14 CHƯƠNG 2: NGÔN NGỮ LẬP TRÌNH C. Khái niIỆH CƠ ĐỞNH. Các thành phần cơ bản của ngôn ngữ C.
+ ¿ca Set EEESEEEEkEEErkrrkee 21 2. Kiểu dữ liệu và phép toán trong ngôn ngữ lập trình C. Các kiểu dữ liệu.--- «tt HH HH HH 23 2. Các phép toán SỐ HỌC.
-- HH HH TT 000 25 CHUONG 3: NHẬP — XUẤT DỮ LIỆU TRONG C. Cc ther vient CHUGN. CAC HAM tOGN NOC wicieececcccccccscsssscsssscssssssssssssssssssssssssssssssssssssesssssssssssssssssssssssssssssseaes 26 3. Cac ham nhéip xudt trong Corceeccccssssssvssscsssscevsssevsvsssessscscsvsvensavavsssesssassvsveneecavacess 27 `.
Đấu ra chuẩn trong C-+-T (€Oi). - «+ 5s Skk+Esk$EEEkEEEESEEEEEEEEEESEEEEEEEEEESErerkred 33 3. Đấu vào chuẩn trong C-++ (ŒỈH) .-- -sc+c xe cEteterrkekrksrsrsrerereersrsreeered 36 »“/,n,nne. 36 CHƯƠNG 4: CÁC CẤU TRÚC ĐIẾU KHIỂN .--5-57ccScccsreererreererrrred 39 Nô, TT.
Cấu trúc phân nhánh (cấu trúc lựa €QH|).00 40 Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 4 '»SNHM?,,. CG tric €18€ if cecececsccesssssssssssssssssssscscssssesssssscssessscsssasscsseavsesssassessssssesssasstaseaesess 43 4. CU tric if LONG cecccescscsssscscsscsssssscsssssscsssssscsssssscssssssssssssssscssscsssessssesessssesensesssens 45 4. LEnh SWitch icceccccccccscsssssvsececcccecccccccccccssssssescecccscccccesesssssssssecsececescecensensssssssseseseeees 47 4.
Cau tric switch. Cau tric switch. Câu lệnh đặc biét (break, CONINUC, ZOO). ClâU lỆHH: PCÍLIFTH.4, CGU TENN Ot 76 neee.
62 AS, BOL UGD.ccccccscccessccessccsssccssscecsscecsseecsscecssnecsenscseneceesseseaseceasessusecsusecsuaeceaeeeeaeeeseeeseeeesgs 63 CHUONG 5: CAC VAN DE CO BAN VE HAM u. KAA NiEML cece ccccesssccccccccssssccccccccsssscccccccccsssscecccccsssescecccsseseccescescsesscescccscscscesceeescsssees 65 F. Dirth Nghia WAM wirccccccccccccccssccccccsscccsccsssecsessssccssssssesessasseceessssecesseausecsesaeseseesesseeseeaas 66 F. SUP AUN VGN.
Bién todin CUC Va DIEN CUC DG veccececcscsscsssssesesscsesssessssssssscssscsscscscssessssseacacscscaeesees 72 5. Cách thức truyén tham 86 vrccccccscecsscssscsssssssscsssssscsssssscsssssssssssssssssscsssssssssssscsesesens 72 5. Truyén Dang tri ccccscscsssssssssssssssssssscsverssvsvscsssreacavsnsnsessvscsesseseasavansnsusasacseeneneneas 72 5. Truyền bằng Dien vcccecccscssssssessssssssscsssssscssscscsssssscsssasscsssacsesssassesssassessssssessaesen 74 5.
Dùng dẫn hướng #defINE vacceececesececsevssessessssssscscsssssssscsssssssssscsvssessasscssssavsssescsseseas 74 5. Câu lệnh F€fMY VÀ €XỈÍ. Mảng một ChiỄĂM. 55s se S3 SEEEEEE TT EEEEETETETEEEEEEEETETkTEEEEETerkrkreererererered 79 6.
Maing hai ChIQU 0/nnẺẼ080 66. 80 Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 5 Ni. KWAI HI ỆÌTH. - << 6k SE EEEEEEEEEEEEEESEEEEEKEKEEEHH TT TT 111111 111kg 85 7.
Các hàm xt I) CRUGi sececccscsssesesssesesvsvsssssssscscscsvscsescsvevensssavavacacavacscsusecenensesscasacaeas 86 7. TT TT TT TH TH TH TH TH HH HH gi 90 E. TÀI LIỆU THAM K HẢ O. PHỤ LỤC BẢNG MÃ A.- - 2 + Sẻ +k‡EEEk‡EEEEEEEEEEEEEEEEEEEEEEEErkkrkrrererrered 92 A.
DANH MUC CAC VIET VIET TAT BEL: Bell — chuéng. - char: Character - kiéu ki tu. - int: Integer - kiéu s6 nguyén. - J-P-O: Input- Process- Output, Ng6 vao — Xử lý — Ngõ ra.
- VD: vi du. Từ khóa Hàm, mảng, chuỗi, thuật giải, chương trình, lưu đô, ÿÝ, for, while, return, gofo B. DANH MUC BIEU BANG SO LIEU Bảng 1: Dạng lưu đô chương trinnh vecccccccccscscsssscsssvessssscscscsssssscsssssvssscscsseasssscssesessacaes Il ï;121/1-82060//s. DANH MỤC CÁC HÌNH Hình 1: Cửa số chương trình Microsoft Visuall C-++.
16 Hình 3: Chọn loại cửa số soan thảo cho pTOj€Cf.- - - set k+k+EEe+Eeketeesrexerereeree 17 [;0/1/5. 17 Hình 5: Chọn ngôn ngữ thd(O ÍÁC. 0 1t ch 18 Hình 6: Màn hình soạn thảo chương ẨrÌH. in gi ng nhu 18 Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 6 D.
PHẢN NỘI DUNG GIÁO TRÌNH HỌC PHẢN Tên học phan: CO SO LAP TRINH VI DIEU KHIEN Mã học phần: CNC111030 Vị trí, tính chất, ý nghĩa và vai trò của học phần: - VỊ trí: Học ở học kỳ 2 - Tính chất: + Nội dung học phần cung cấp cho sinh viên kiến thức cơ bản về các khái niệm cơ bản về ngôn ngữ lập trình, ngôn ngữ cấp thấp, cấp cao, các loại ngôn ngữ lập trình. Trình bày được các kiểu dữ liệu, các cấu trúc điều khiển, hàm, con trỏ, kiểu cấu trúc + Môn học hướng trọng tâm vào ngôn ngữ lập trình C là ngôn ngữ rất phố biến hiện nay. - Ý nghĩa và vai trò của môn học/mô đun: Trang bị kiến thức cơ sở ngành, là nền tảng cho sinh viên phát triển nghề nghiệp vững chắc. Mục tiêu của học phân: - Về kiến thức: + Trình bày được các khái niệm, các quy tắt lập trình và cầu trúc chung của một chương trình.
+ Trình bày được các khái niệm, các thành phần cơ bản trong ngôn ngữ C. + Trình bày được cách nhập - xuất dữ liệu trong ngôn ngữ C. + Trình bày được cấu trúc điều khiển trong ngôn ngữ C như: cấu trúc tuần tự, cầu trúc phân nhánh, cấu trúc lặp. + Trình bày được các vấn đề cơ bản về hàm trong ngôn ngữ C.
+ Trình bày được các vẫn đề cơ bản về mảng trong ngôn ngữ C như: Khái niệm mảng, cách khái báo mảng 1 chiều và mảng 2 chiêu. + Trình bày được các vấn đề cơ bản về chuỗi trong ngôn ngữ C như: khái niệm về chuỗi, truy xuất chuỗi và các hàm về chuỗi. - Về kỹ năng: + Viết được cấu trúc chung của một chương trình. Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 7 + Vận dụng được các thành phần cơ bản trong C để viết 1 chương trình đơn giản.
Lập trình được việc nhập — xuất đữ liệu trong ngôn ngữ C. + Vận dụng được các cấu trúc điều khiển để viết chương trình. + Vận dụng được các kiến thức về hàm để viết chương trình. + Vận dụng được kiến thức về mảng để viết chương trình.
+ Vận dụng được các kiến thức về chuỗi để viết chương trình. + ê năng lực tự chủ và trách nhiệm: “<< Kỹ năng thu thập, tra cứu, phân tích và xử lý thông tin để tiếp thu kiến thức tích + cực, chủ động. Kỹ năng thảo luận nhóm, thuyết trình và trả lời vẫn đáp linh hoạt, tự chủ, sáng + tạo và đúng yêu câu kiên thức của môn học. + Rèn luyện thái độ làm việc nghiêm túc, chủ động, tích cực.
Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 8 CHUONG 1: TONG QUAN Muc tiéu: % Kiến thức: Trình bày các khái niệm cơ bản vê ngôn ngữ lập trình, ngôn ngữ cấp thấp, cấp cao, các loại ngôn ngữ lập trình, một số quy tắc lập trình. Giải thích về cấu trúc chung của một chương trình và môi trường lập trình. * Kỹ năng: Phân biệt được các loại ngôn ngữ lập trình, viễt ra được cấu trúc chung của một chương trình. s* Thái độ: Có tác phong và thai độ nghiêm túc trong học tập.
Các khái niệm cơ bản + Thuat giai (Algorithm): Thuật toán là một dãy các thao tác xác định trên một đối tượng, sao cho sau khi thực hiện một số hữu hạn các bước thì đạt được mục tiêu. Ban chat của thuật giải: Thuật giải = Logic + Điều khiến Logic là phần khá quan trọng, nó trả lời câu hỏi "Thuật giải làm gì, giải quyết vẫn đề gì?", những yếu tô trong bài toán có quan hệ với nhau như thế nào v. Ở đây bao gồm những kiến thức chuyên môn mà ta phải biết để có thể tiến hành giải bài toán.1: Đề giải một bài toán tính diện tích hình cầu, mà ta không còn nhớ công thức tính hình cầu thì ta không thể viết chương trình cho máy để giải bài toán này được. Điều khiến là thành phân trả lời câu hỏi: giải thuật phải làm như thế nào?.
Chính là cách thức tiến hành áp dụng thành phân logic để giải quyết vẫn dé. + Chuong trinh (Program): Chương trình là một tập hợp các mô tả, các phát biểu, năm trong một hệ thống qui ước về ý nghĩa và thứ tự thực hiện, nhằm điều khiển máy tính làm việc. Chương trình = Thuật toán + Cấu trúc dữ liệu Các thuật toán và chương trình đều có cấu trúc dựa trên 3 cấu trúc điều khiển cơ bản: .„_ Tuân fự (Sequential): Các bước thực hiện tuần tự một cách chính xác từ trên xuống, mỗi bước chỉ thực hiện đúng một lần. « Chon loc (Selection): Chon 1 trong 2 hay nhiéu thao tac dé thuc hién.
« Lap lai (Repetition): Mét hay nhiều bước được thực hiện lặp lại một số lần. Để viết một chương trình trên máy tính, chúng ta cần làm theo các bước sau: Giảng viên biên soạn: Văn Quốc Kiệt — Trân Quốc Trung GIÁO TRÌNH CƠ SỞ LẬP TRÌNH VI ĐIỀU KHIỂN 9 Tìm, xây dựng thuật giải (trên giấy) —> viết chương trình trên máy —> dịch chương trình —> chạy và thử chương trình + Ngôn ngữ lập trình (Programming language) Ngôn ngữ lập trình là hệ thống các ký hiệu tuân theo các qui ước về ngữ pháp và ngữ nghĩa, dùng để xây dựng thành các chương trình cho máy tính. Một chương trình được viết bằng một ngôn ngữ lập trình cụ thể (ví dụ Pascal, C.