Lập trình hệ thống nhúng

33 853 1
Lập trình hệ thống nhúng

Đ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

Lập trình hệ thống nhúng

MƠN HỌC Lập trình hệ thống nhúng (Programming Embedded System) Mechatronics Dept http://www.ntu.edu.vn/ Ch01: Tổng quan n Hệ thố thống nhú nhúng n Một số số ngôn ngữ ngữ lập trì trình n Ngơn ngữ ngữ C n Lưu đồ đồ Hệ thống nhúng (embedded system) system) n n n Một hệ thố thống có khả khả tự tự trị trị đượ nhú nhúng vào mộ môi trườ trường hay mộ hệ thố thống mẹ mẹ Hệ thố thống nhú nhúng có có vai trị đả đảm nhậ nhận mộ phầ phần cơng việ việc cụ cụ thể thể hệ hệ thố thống mẹ mẹ Hệ thố thống nhú nhúng có thể hệ hệ thố thống phầ phần cứng có thể hệ hệ thố thống phầ phần mề mềm Hệ thống nhúng (embedded system) system) n Đặc điể điểm Các hệ hệ thố thống nhú nhúng đượ thiế thiết kế kế để để thự thực hiệ mộ số số nhiệ nhiệ m vụ vụ chuyên dụ dụng n Một hệ hệ thố thống nhú nhúng thườ thường không phả phải là khố khối riêng biệ biệt mà mà hệ hệ thố thống cá thiế thiết bị bị n Phầ Phần mề mề m đượ viế viết cho cá hệ hệ thố thống nhú nhúng đượ gọ gọi firmware và đượ lưu trữ trữ cá chip bộ nhớ nhớ chỉ đọc (read(read-only memory) hoặ bộ nhớ nhớ flash chứ không phả phải là mộ ổ đĩ đĩa n Hệ thống nhúng (embedded system) system) n n n n Giao diệ diện Kiế Kiến trú trúc CPU Thiế Thiết bị bị ngoạ ngoại vi … Ngôn ngữ lập trình n Ngơn ngữ ngữ lập trì trình phả phải thỏ thỏa mãn đượ hai điề điều kiệ kiện bả là: Nó phả phải dễ dễ hiể hiểu và dễ sử dụng đố đối vớ với ngườ người lậ lập trì trình, nh, để ngườ người có thể dùng nó giả giải quyế cá toá toán khác n Nó phả phải miêu tả tả cá cách đầ đầy đủ đủ rõ rà ràng cá tiế ), để tiến trì trình (process (process), để thể chạ chạy đượ cá máy tí tính khác n Ngơn ngữ lập trình (tiếp) n Ngôn ngữ ngữ máy - Machine languages n n Hợp ngữ ngữ - Assembly languages n n Ngôn ngữ ngữ nhấ củ má máy tí tính – CPU Sử dụng cá từ từ khó khóa tiế tiếng Anh cho cá lệ lệnh hay nhó nhó m lệ lệnh củ mã má máy Ngôn ngữ ngữ cấp cao - HighHigh-level languages n Pascal, C, C++, VB, VC, Java,… Java,… Ngôn ngữ C n Tại lạ lại chọ chọn C Từ khó khóa (khoả (khoảng 32 từ từ khó khóa) n Thơng dụ dụng (hầ (hầu hế hết code đề viế viết bằ C) n Tính ổn đị định (khơng (không thay đổ đổi nhiề nhiều lắ theo thờ thời gian) n Tốc độ độ thự thực thi nhanh n Là tả tảng nhiề nhiều ngôn ngữ ngữ khác ( Java, C++, awk, Perl) n Ngôn ngữ C (tiếp) n Từ khó khóa auto break case char continue default goto double if else int extern long float register for return short union static void struct volatile switch while typedef _cs _AH sizeof unsigne d _ds _AL _es _AX _ss _BH _CH _BP _CL _DI _CX _SI _DH _SP _BL _DL _BX _DX Flow chart • Start /Begin bắt đầu giải thuật Chỉ có điểm START Start • Dịng xử lý • Input / Output liệu xuất/nhập • Đặc tả thao tác xử lý hay tính tốn liệu No Điều kiện • Điều khiển rẽ nhánh Yes Giá trị xét phân nhánh • Phát biểu rẽ nhánh khác Trường hợp Stop Trường hợp i Khác • Stop/End kết thúc giải thuật Có thể có nhiều điểm STOP Flow chart (tiếp) Giải phương trình ax + b = Start Nhập a, b a=0 ? Yes No X=-b/a Yes b=0 ? No Khơng có nghiệm Vơ số nghiệm Stop Một chương trình C Khai báo thư viện #include Chú thích /* My first C program which prints Hello World */ Chương trình int main() { printf ("Hello World!\n"); return 0; } Lệnh Giá trị trả hàm Bắt đầu kết thúc khối lệnh Ch02: Kiểu liệu, biến n n n n n n Kiể Kiểu dữ liệ liệu Biế Biến và hằng, cá phé phép gá gán bả Kiể Kiểu số số nguyên Kiể Kiểu số số thự thực Kiể Kiểu Boolean Kiể Kiểu ký tự tự Kiểu liệu Cơ sở Kiểu số nguyên Kiểu số thực Kiểu ký tự Kiểu logic Tự định nghĩa Kiểu liệt kê Vô hướng Kiểu liệu Có cấu trúc Array Struct File Con trỏ Biến hằng, phép gán n Tên biến chuỗi kí tự liên tục gồm: Kí tự, chữ, số, dấu gạch Khi đặt tên biến, cần phải tuân theo quy định sau: n n n n Tên biến phải bắt đầu chữ dấu gạch Trong tên biến khơng có khoảng trống tên Không đặt tên biến trùng với từ khóa Ví du: n n n name_1, _name2, sample32… name 1, char, 34sample,… tên biến hợp lệ tên biến không hợp lệ Chú ý: n n Độ dài tối đa tên không giới hạn, nhiên có 31 ký tự có ý nghĩa Trong tên biến có phân biệt chữ hoa chữ thường Biến hằng, … (tiếp) n Khai bá báo biế biến: n Kiểu_dữ_liệu tên_các_biến; Kiểu_dữ_liệu: tên kiểu liệu biến cần khai báo n Tên_các_biến: Các biến có kiểu liệu khai báo cách liệt kê danh sách tên biến Các biến phân cách dấu phẩy (,), cuối danh sách biến cần khai báo dấu chấm phẩy n n Ví dụ char ten1, ten2; n int a, b, c; n Biến hằng, … (tiếp) n Khai bá báo hằ hằng: const Kiểu_dữ_liệu tên_các_hằng = giá_trị_hằng; n Ví dụ n const int he_so = 123; n const float gia_sp = 1,23; n Biến hằng, … (tiếp) n Phé Phép gá gán: Lệnh gán (assignment statement) dùng để gán giá trị biểu thức cho biến n tên_biến = biểu_thức; n Ví dụ: n a = 3; n t = b+2 n x = Tong(y, z); n Kiểu số nguyên Kiểu liệu Từ khóa Số byte Dải giá trị Character char -128 ÷ 127 Integer int -32768 ÷ 32767 Short integer short -32768 ÷ 32767 Long integer long -2147483648 ÷ 2147483647 Unsigned character unsigned char ÷ 255 Unsigned integer unsigned int ÷ 65535 Unsigned short integer unsigned short ÷ 65535 Unsigned long integer unsigned long ÷ 4294967295 Kiểu số nguyên (tiếp) Phé Phép toá toán Cộng Trừ Trừ Nhân Chia Lấy phầ phần dư Lấy phầ phần nguyên Tăng Giả Giảm Ký hiệ hiệu + * / % / ++ Ví d ụ x+y x–y x*y x/y x%y x/y x++ or ++x x or x x Sự hiệu chỉnh tính tốn n n n n Trong C cho phé phép sự trộ trộn lẫ lẫn cá toá toán hạ hạng thuộ thuộc cá kiể kiểu dữ liệ liệu khác Việ Việc chuyể chuyển đổ đổi dữ liệ liệu tự tự độ động có thể dữ liệ liệu quá trì trình chuyể chuyển đổ đổi Ưu tiên chuyể chuyển đổ đổi về kiể kiểu dữ liệ liệu số số nguyên chuẩ chuẩn Chuyể Chuyển đổ đổi cá ký tự tự số nguyên dự dựa vào bảng mã ASCII Ép kiểu n n n Chủ Chủ độ động việ việc chuyể chuyển đổ đổi, không bị bị dữ liệ liệu thự thực hiệ cá phé phép toá toán (kiể (kiểu_dữ u_dữ_liêu)(tố _liêu)(tốn_hạ n_hạng) Ví dụ int n, m; float tong; tong = (float)n / m; n tong = n/m; n Các hàm chuẩn số học n n Các hà hàm số số học nằ nằm thư việ viện “math.h” math.h” Một số số hàm int abs(int abs(int i); n double sin( sin(double d) d) n… n n Ví dụ sqrt(25) = 5; n floor (3.3) = 3; n… n ... thể hệ hệ thố thống mẹ mẹ Hệ thố thống nhú nhúng có thể hệ hệ thố thống phầ phần cứng có thể hệ hệ thố thống phầ phần mề mềm Hệ thống nhúng (embedded system) system) n Đặc điể điểm Các hệ hệ thố.. .Hệ thống nhúng (embedded system) system) n n n Một hệ thố thống có khả khả tự tự trị trị đượ nhú nhúng vào mộ môi trườ trường hay mộ hệ thố thống mẹ mẹ Hệ thố thống nhú nhúng có có... thống nhú nhúng đượ thiế thiết kế kế để để thự thực hiệ mộ số số nhiệ nhiệ m vụ vụ chuyên dụ dụng n Một hệ hệ thố thống nhú nhúng thườ thường không phả phải là khố khối riêng biệ biệt mà mà hệ

Ngày đăng: 28/03/2013, 09:13

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