Cổng Kết Nối - Glong Electronic

Xin Chào!

Đây là trang đang thử nghiệm và hoàn thiện nội dung, mong các bạn thông cảm

Mọi thắc mắc và góp ý xin gửi về mail: Nglongbs@gmail.com

Xin chân thành cảm ơn!


 
CLB ĐIỆN TỬ
Công khai group · 94 thành viên
Tham gia nhóm
 

CẤU TRÚC CHUNG CỦA MỘT CHƯƠNG TRÌNH LẬP TRÌNH CHO PIC BẰNG NGÔN NGỮ C



#include <18f4550.h> 	//Khai báo chỉ định đường dẫn cho trình biên dịch

#fuses nowdt, noprotect, hs, nowrt	//khai báo các thiết lập, cấu hình các cầu chì (Fuse) bên trong chip 
#use delay(clock=20000000)			//khai báo các tiền xử lý, cụ thể là tần số xung cho các hàm delay

void main()	//Khai báo bắt đầu của chương trình chính
{
	set_tris_a(0xf0);	//Khai báo đầu vào, đầu ra cho cổng A
	set_tris_b(0x0f);	//Khai báo đầu vào, đầu ra cho cổng B
while(1)	// vòng lặp white với giá trị so sánh là luôn luôn đúng (bằng 1) để quay vòng vĩnh viễn.
	{
	Output_low(Pin_A0); 
	Delay_ms(1000); 
	Output_high(Pin_A0); 
	Delay_ms(1000); 
	}
}
	

Các thành phần có trong một chương trình C viết cho PIC

1. Chú thích:

- Chú thích được sử dụng để làm rõ hoạt động của chương trình hoặc 1 câu lệnh, dòng chú thích được bỏ qua và không biên dịch bởi chương trình biên dịch CCS. Chú thích có hai loại đó là: Chú thích dài (chiếm nhiều dòng) và chú thích ngắn (Chỉ chiếm 1 dòng đơn). Chú thích ở đầu chương trình có thể mô tả ngắn gọn hoạt động của chương trình, cung cấp tên tác giả, tên tập tin chương trình, ngày giờ viết chương trình, danh sách phiên bảng , cũng những sửa đổi trong phiên bảng.

- Các dòng chú thích nên rõ ràng và súc tích giúp dễ dàng đọc hiểu bảo trì, cập nhật, nâng cấp chương trình.

- Chú thích dài bắt đầu với ký tự " /* " và kết thúc với ký tự " */ ".

- Chú thích ngắn bắt đầu với ký tự "//" và không cần ký tự kết thúc.

2. Chỉ thị tiền xử lý:

- Đầu tiên là các chỉ thị tiền xử lý : # . . . có nhiệm vụ báo cho CCS cần sử dụng những gì trong chương trình C như dùng VXL gì , có dùng giao tiếp PC không , ADC không , DELAY không , .

a. #include

Cú pháp: #include <filename>

- #include <18f4550.h> nói cho chương trình biên dịch biết để chèn file 18f4550.h như là một phần của chương trình, trong đó có định nghĩa thanh ghi , địa chỉ....,

+ dấu nhọn <18f4550.h> nói cho chương trình biên dịch biết file thư viện này nằm trong bộ thư viện của phần mềm.

+ dấu nháy đôi "18f4550.h" nói cho chương trình biên dịch biết file thư viện này nằm trong thư mục chứa file lập trình.

b. #fuses

- #fuses định nghĩa cấu hình các cầu chì (Fuse) bên trong chip.

c. #use

- #use ... nói cho trình biên dịch thực hiện các tiền xử lý trước khi chạy chương trình. như khai báo tần số xung clock 20 MHz cho hàm delay: #use delay(clock=20000000)

d. #BIT​

Cú pháp: #bit name=x.y

Tạo biến 1bit có tên là name đặt ở byte x vị trí y. Thường dùng để kiểm tra hoặc gán giá trị cho thanh ghi. Điểm khác so với dùng biến 1 bit từ khai báo int1 là: int1 tốn 1 bit bộ nhớ, còn #BIT thì không tốn thêm bộ nhớ do name chỉ danh định đại diện chi bit chỉ định ở biến x, thay đổi name (0/1) sẽ thay đổi giá trị tương ứng y -> thay đổi giá trị x.​


	#bit TMR1IF=0x0B.2; //tạo biến 1bit tên TMR1IF đặt ở byte có địa chỉ 0x0B ở vị trí thứ 2.​
	
e. #BYTE

Cú pháp: #byte name=x

- Gán tên biến name cho địa chỉ x. name thường trùng với tên thanh ghi có địa chỉ x


	#byte portB=0x06; //tạo biến 1byte tên port đặt ở byte có địa chỉ 0x06.​
	
f. #DEFINE

Cú pháp: #define name number/text​

- Dùng để khai báo một chuỗi hoặc số có tên là name


	#define constan 123456;​ //tạo 1 hằng số tên là "constan" có giá trị bằng "123456"
	

3. Chương trình chính - main():

- Chương trình trong ngôn ngữ C phải có ít nhất 1 hàm , tên là main(). Là điểm bắt đầu khi đoạn mã chương trình được thực thi. Là hàm đầu tiên được gọi khi chương trình bắt đầu. Có cấu trúc:


	void main()	//Khai báo bắt đầu của chương trình chính
	{
		//các lệnh trong chương trình chính
	}
	

4. chương trình con:

- Chương trình con được khai báo trước chương trình chính. Tức là nằm trên dòng void main()


	void ten_chuongtrinhcon( khai báo các biến đầu vào nếu có )	//Khai báo bắt đầu của chương trình con
	{
		//các lệnh trong chương trình con
	}
	

5. Thư viện:

- Hàm thư viện là những hàm đã được định nghĩa sẵn trong một thư viện nào đó, muốn sử dụng các hàm thư viện thì phải khai báo thư viện trước khi sử dụng bằng lệnh:


	#include <tên thư viện.h> // nếu thư viện nằm trong thư mục mặc định của phần mềm lập trình
	

	#include "tên thư viện.h" // nếu thư viện nằm trong thư mục chứa chương trình lập trình hiện hành.
	

Hi vọng sau bài học này các bạn có được chút thu hoạch cho mình.

Cám ơn và hẹn gặp lại!