Hướng dẫn lập trình pic bằng ccs

Lập trình Pic là một phương pháp để viết mang đến vi điều khiển các khai báo Biến, lệnh C cơ bản, lệnh tầm nã xuất CCS

Mua linh phụ kiện điện tử tạiĐiện tử Nhật Tùng


Khóa học Vi tinh chỉnh và điều khiển có phí

*


Mục lục

1 Giới thiệu2 các kiểu dữ liệu lập trình Vi điều khiển2.1 Một vài ví dụ thay thể5 những lệnh C cơ bản lập trình Pic5.1 Lệnh if với else trong thiết kế pic5.4 Lệnh vòng lặp for trong thiết kế pic6 Lệnh truy nã xuất trong ứng dụng CCS

Giới thiệu

Lý do chọn lập trình Pic trên ngôn từ C

Ngôn ngữ thiết kế pic là một ngôn ngữ xây dựng được sử dụng phổ biến, là ngôn ngữ tạo mã hiệu quả, các bộ phận lập trình có kết cấu và một tập hợp nhiều mẫu mã các toán tử cùng được sử dụng không hề ít trong lập trình sẵn Vi điều khiển.Ngôn ngữ C một ngôn từ lập trình dễ dãi và hiệu quả, những ứng dụng có thể được giải quyết thuận lợi hơn và hiệu quả hơn bằng ngôn ngữ C so với các ngôn ngữ siêng biệt khác.

Bạn đang xem: Hướng dẫn lập trình pic bằng ccs

Phần hổ trợ của ngôn ngữ C

Khi lập trình bằng ngôn ngữ C thì các vấn đề phức hợp được giải quyết và xử lý một biện pháp nhanh chóng cùng gọn gàng, tuy nhiên không thể biết đúng đắn thời gian thực hiện các lệnh, mã sau thời điểm biên dịch thường chưa buổi tối ưu vì chưng trình biên dịch thường phải khởi tạo 1 công tác khung tổng quát để đáp ứng nhu cầu cho tất cả các dạng lập trình nên code biên dịch dài hơn, fan lập trình có thể không bắt buộc hiểu biết những về cấu trúc của vi điều khiển và tinh chỉnh hơn.Do có khá nhiều họ vi điều khiển của đa số hãng khác biệt nên các phần mềm lập trình Ccho vi điều khiển cũng không giống nhau, phần này chỉ trình diễn những kiến thức và kỹ năng lập trình C thông thường vàcơ bản nhất và tùy thuộc vào từng ứng dụng biên dịch mà chúng ta tìm phát âm thêm.Sau khi chấm dứt phần này đang giúp các bạn biết cấu trúc một chương trình, biết các lệnh C cơ bản để lập trình, biết khai báo các kiểu dữ liệu cho những biến, biết viết chương trình.

Các kiểu tài liệu lập trình Vi điều khiển

Đối với phần mềm CCS hoặc các phần mềm khác và những họ vi điều khiển và tinh chỉnh khác sẽ có cách khai báo dữ liệu tương đối giống nhau, nhưng đa số sẽ không giống nhau về số Bit của các kiểu dữ liệu.

Sau đây là bảng khai báo thay đổi của ứng dụng CCS thiết kế Pic.

KiểuKích cỡUnsigned (Không dấu)Signed (Có dấu)
int1 Số 1 bit = true giỏi false ( 0 hay 1)0 cho 1 Không có
int8Số nguyên 1 byte ( 8 bit)0 cho 255-128 đến 127 
int16Số nguyên 16 bit0 đến 65535 -32768 mang lại 32767 
int32Số nguyên 32 bit0 mang đến 4294967295 -2147483648 mang lại 2147483647 
float32Số thực 32 bit -1.5 x 1045 cho 3.4 x 1038

Lưu ý: 

Khi khai báo int1,int8,int16,int32 bọn họ sử dụng được vì chưng trong ứng dụng CCS vẫn được khái niệm trong tủ sách của từng con Pic ráng thể.

Ví dụ các các bạn mở tủ sách của Pic16F887 chúng ta chỉ câu hỏi khai báo

#include Sau đó chúng ta nhấn chuột phải mở lên. Kéo tới cái lệnh 24 mang đến 30 sẽ thấy được quan niệm như sau:

#if (!defined(__PCM__)||defined(__ISNT_CCS__))#define _bif #define int8 char #define int16 long#define int32 long long#define float32 float#define int1 char #endif

Một vài ba ví dụ vắt thể

Kiểu dữ liệu có dấu

Signed là kiểu tài liệu có dấu đề nghị giá trị sẽ có 1 nữa phần âm với 1 nữa phần dương.

Ví dụ: signed int8 dem; // trở nên đếm là 8bit, giá bán trị sẽ tiến hành tính như sau

Bit số 7 sẽ nguyên lý dấu. Nếu như là số “1” thì có dấu “-” còn lại 7 bit nên chỉ với 2^7 = 128 giá trị.

sẽ chạy tự (-128 về -1).

Bit số 7 sẽ quy định dấu. Giả dụ là số “0” thì sở hữu dấu “+” còn sót lại 7 bit nên chỉ còn 2^7 = 128 giá trị.

sẽ chạy từ bỏ (0 về 127).

Kiểu dữ liệu không dấu

Unsigned là hình dáng không dấu phải giá trị theo biến 

Ví dụ : trở nên 8bit thì 2^8 = 256 và sẽ tiến hành chạy từ bỏ 0 cho 255.

Có 4 cách khai báo xây dựng Pic

int1 tt; //biến tt là kiểu tài liệu 1bit chỉ có hai giá trị là 0 cùng 1.signed int8 dem //biến dem là hình trạng số nguyên cực hiếm 8bit và tất cả dấu.unsigned int8 tam // đổi thay tam là hình dạng số nguyên giá trị 8bit ko dấufloat doc //biến doc là kiểu dáng số thực tức bao gồm dấu , phía sau, VD: 1,12 và chỉ lấy được hai cực hiếm thập phân sống sau không lấy được không ít hơn.

Các toán tử trong thiết kế Pic

Toán tử gán (=). // sử dụng cho các toán gán quý giá như a=1;Toán tử số học (+, -, *, /, %). // áp dụng cho tính toán như các bài toán thông thườngToán tử gán phức tạp (+=, -=, *=, /=, %=, >>=, Toán tử tăng và giảm (++, –) // bí quyết ghi gọn gàng như a++ => a = a+1;Toán tử tình dục (==, !=, > , =, Toán tử xúc tích và ngắn gọn (!, && ,||) // thực hiện so sánh trong những cổng logic, tức nhiều điều kiện 1 lúcToán tử cách xử trí bit (&, |, ^, ~, >) // giám sát và đo lường logic số học và dịch dữ liệu

Các ví dụ như về toán tử các bạn xem trong file giáo trình sẽ chi tiết hơn.

Các lệnh C cơ phiên bản lập trình Pic

Lệnh if cùng else trong lập trình pic

Có 4 một số loại cơ bản sau:

1. Chỉ có điều kiện if

*

Lệnh này chỉ tiến hành lệnh C lúc đúng đk còn nếu như sau thì vứt qua hoàn thành lệnh đầu tiên.

2. Bao gồm if/else

*
Lưu đồ gia dụng lệnh if,else

Lệnh này kiểm tra điều kiện có đúng không, nếu như đúng thì tiến hành 1 cùng kết thúc, còn trái lại nếu không đúng thì chạy tiếp chương trình thực hiện hai với kết thúc.

3. Bao gồm if/else if

*
Lưu trang bị lệnh if, else if…

Lệnh này kiểm tra gồm đúng đk 1 đúng không, nếu đúng thì triển khai 1 sau đó xong xuôi lệnh, trường hợp sai tiếp tục kiểm tra đk 2 bao gồm đúng không, nếu đúng tiến hành 2 sau đó dứt còn trường hợp cả hai điều kiện đều không đúng thì kết thúc và không thực hiện gì cả.

4. Đầy đủ if/else if … else if /else

*
Lưu đồ vật lệnh if,else if,…,else if,else

Lệnh này kiểm tra đk 1 có đúng không, nếu đúng thì tiến hành 1 sau đó kết thúc, giả dụ sai thường xuyên kiểm tra đk 2 gồm đúng không, nếu như đúng thì thực hiện 2 sau đó kết thúc, trường hợp sai đánh giá đến điều kiện n+1, nếu như vẫn không đúng thì triển khai n sau đó xong dòng lệnh.

Xem thêm: Oskar Fischinger Là Ai - Oskar Fischinger'S 117Th Birthday

Có nhiều điều kiện chổ else if, và chương trình sẽ kiểm soát theo sản phẩm tự.

Lưu ý: Điều kiện if chỉ thực hiện 1 lần sau đó dứt dù đụn hay sai và sẽ không quay lại chương trình.

Lệnh lặp while trong thiết kế pic

*
Lưu thứ vòng lặp While

Lệnh while tiến hành theo chiều đúng, ví như chương trình không có điều kiện sai thì sẽ không có END sảy ra lúc này được gọi là vòng lặp tuần trả thường sử dụng là while(1) hoặc while(true). 

Lệnh lặp vày While() trong thiết kế pic

*
Lưu trang bị vòng lặp vì while

Lệnh vì while là triển khai trước rồi kiểm tra điều kiện sau, nếu đúng thì quay lại thực hiện tiếp vòng lặp cho khi đk sai thì ngừng chương trình.

Lệnh vòng lặp for trong thiết kế pic

*
Lưu đồ dùng vòng lặp FOR

Lệnh for thực hiện khi đúng điều kiện, ở ví dụ này ta rất có thể hiểu, 

n=0 là quý hiếm đầu của vòng lặp for 

n

n++ mỗi lần vòng lặp chạy sẽ tăng lên 1 đơn vị.

Số vòng lặp của for nhờ vào vào 3 nguyên tố trên.

Lưu ý: 

Nếu chúng ta sử dụng vòng phải đảm bảo được công tác không tiến hành gì không tính vòng lặp do khi vòng lặp chạy nó ko thể triển khai các lệnh khác.

Điều khiếu nại của vòng lặp nên chắt chắn sẽ có được một dịp nào đó chương trình dứt nếu không sẽ ảnh hưởng treo công tác không lối thoát.

Lệnh truy nã xuất trong phần mềm CCS

Ở đây tôi chỉ sử dụng những lệnh truy xuất đơn giản và dễ dàng nhất để hoàn toàn có thể viết được những bài toán.

Giúp cho tất cả những người học không cảm giác bị rối khi xử dụng.

Lệnh OUTPUT_LOW(pin)

Lệnh OUTPUT_LOW(pin): bao gồm chức năng cho 1 chân của port xuống tới mức 0.

Ví dụ: output_low(Pin_A0); // cho chân A0 xuống đến mức thấp;

Lệnh OUTPUT_HIGH(pin)

Lệnh OUTPUT_HIGH(pin): có chức năng cho một chân của port lên tới mức 1. 

Ví dụ: OUTPUT_HIGH(Pin_A0); //cho chân A0 lên mức cao.

Lệnh OUTPUT_BIT (pin, value)

Lệnh OUTPUT_BIT (pin, value): có tính năng xuất cực hiếm value ra 1 chân của port.

Ví dụ: OUTPUT_BIT(Pin_A0,1); //xuất bộc lộ mức cao mang lại chân A0.

Nếu value là 1 trong những thì tương tự OUTPUT_HIGH(PIN);

Nếu value là 0 thì giống OUTPUT_LOW(PIN); 

Để thuận tiện trong việc sử dụng người ta định nghĩa cho khách hàng giúp về tối ưu chương trình khi buộc phải thiết.

Lệnh OUTPUT_X(value):

Chức năng: có tác dụng xuất tài liệu 8 bit ra port X

Ví dụ: OURPUT_A(0x0f); // xuất biểu hiện 0000 1111 đến Port A.

Lệnh SET_TRIS_X(value)

Lệnh SET_TRIS_X(value): có tác dụng định thông số kỹ thuật cho port X .

Vì các chân vi tinh chỉnh và điều khiển có chức năng hai chiều là I/O yêu cầu phải giải pháp trước chiều cho vi điều khiển, phần lớn vi tinh chỉnh chỉ cách xử trí chân theo một chiều trên một thời hạn nhất định.

Ví dụ: SET_TRIS_A(0xf0); // định thông số kỹ thuật cho port A là 1111 0000 tức là từ chân A7 – A4 là tín hiệu lấn sân vào vi điều khiển, trường đoản cú chân A3 – A0 là biểu thị đi ra vi điều khiển.

Lệnh INPUT(pin)

Lệnh INPUT(pin): có chức năng đọc giá trị một chân của port gán mang đến biến.

Ví dụ: INPUT(PIN_A0); // đọc biểu lộ vào vi tinh chỉnh và điều khiển là nấc thấp giỏi mức cao.