CLB_KỸ THUẬT ĐIỆN _ĐIỆN TỬ
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

CLB_KỸ THUẬT ĐIỆN _ĐIỆN TỬ

TRƯỜNG ĐH QUY NHƠN
 
Trang ChínhTHẢO LUẬN CHUYÊTìm kiếmLatest imagesĐăng kýĐăng Nhập

 

 LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P1.

Go down 
Tác giảThông điệp
canhbuom




Tổng số bài gửi : 56
Điểm : 4940
Reputation : 0
Join date : 18/05/2011
Age : 34
Đến từ : quang ngai

LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P1. Empty
Bài gửiTiêu đề: LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P1.   LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P1. I_icon_minitimeMon Nov 07, 2011 12:30 am


L[size=12]ập trình C cho VXL - Cơ bản VAGAM - giotdang


Lập trình C cho VXL - Cơ bản

I.Giới thiệu

C là một ngôn ngữ khá mạnh và rất nhiều ngưòi dùng .Nếu nói số lệnh cơ bản của C thì không nhiều

. Nhưng đối với lập trình cho vxl , chúng ta chi cần biết số lượng lệnh không nhiều .

Đầu tiên bạn phải làm quen với

Các kiểu toán tử ở C

Các kiểu dữ liệu

Cẩu trúc cơ bản của một chương trình

Các cấu trúc điều khiển (chính các tập lệnh )

Cấu trúc điều kiện : if và else

Các cấu trúc lặp

Vòng lp while

Vòng lp do while

Vòng lp for

Lnh break.

Cấu trúc lựa chọn: switch. case

Biết sử dụng các hàm và chương trình con .

II.Cơ bản C

1. Các chỉ thị trước xử lý của Keil C

// chu thich

/********** chu thich******************

****************************************

*************************************** */

Đây là dòng chú thích. Tất cả các dòng bắt đầu bằng hai dấu sổ (//) được coi là chút thích mà

chúng không có bất kì một ảnh hưởng nào đến hoạt động của chương trình. Chúng có th

được các lập trình viên dùng để giải thích hay bình phẩm bên trong mã nguồn của chương

trình. Trong trường hợp này, dòng chú thích là một giải thích ngắn gọn những gì mà chương

trình chúng ta làm. Còn trong dấu (/* */) bạn có thể chú thích bao nhiêu dòng tuỳ thích ,



#include

hoc

#include "AT89X52.H"

trình biên dịch sẽ gọi file thư viện của 89 ra (cơ bản là 51 cũng như 52)

#define bien_thay_the bien

Vd

#define Congtac P0_6

port0.6 được đặt tên là congtac , khi ta gọi tên này trình biên dịch Keil sẽ tự chuyển tới bit quản lý

P0_6

Note :cách viết P0_6 phụ thuộc vào từng trình biên dịch , có chương trình thì lại viết là P0.6 , còn

keil C viết như cách đầu

#define m_left_tien P1_5

#define m_left_lui P1_4

#define m_left_forward m_left_tien=0;m_left_lui=1;

các bạn chú ý đây là một cách sử dụng marco trong C

khi mình gi m_left_forward thì chân P1_5 = 0 và P1_4=1

Các viết này gần như cho chúng ta một chương trình con , tuy nhiên không nên quá lạm dụng nó

Một ưu điểm nổi bật của C là các bạn có thể tạo ra các bộ thư viện .

Ví dụ sau là tạo thư viện thuvien.h (đuôi .h bạn có thể tạo bằng cách save as .. *.h ở Keil C ).

#ifndef _thuvien_H

#define _thuvien_H

....//mã chương trình

#endif

2. Các toán tử :

->Toán tử gán (=).

Ex:

b = 5;

a = 2 + b;

a = 2 + (b = 5);

a = b = c = 5;

->Các toán tử số học ( +, -, *, /, % )

+ cng

- tr

* nhân

/ chia

% lấy phần dư (trong phép chia)
->Các toán tử gán phức hợp (+=, -=, *=, /=, %=, >>=, <<=, &=, ^=, |=)

value += increase; tương đương với value = value + increase;

a -= 5; tương đương với a = a - 5;

a /= b; tương đương với a = a / b;

price *= units + 1; tương đương với price = price * (units + 1);
Tăng và giảm ++ - -

a++; <=> a+=1; <=> a=a+1;

tính chất tiền tố hoặc hậu tố (++a) # (a++) Ex

B=3;

B=3;A=++B;

// A is 4, B is 4

B=3;

A=B++;

// A is 3, B is 4
-> Các toán tử quan hệ ( ==, !=, >, <, >=, <= )

== Bng

!= Khác

> Lớn hơn

< Nhỏ hơn

> = Lớn hơn hoặc bằng

< = Nhỏ hơn hoặc bằng

EX

Lập trình C cho VXL - Cơ bản VAGAM - giotdang

(7 == 5) sẽ trả giá trị false

(6 >= 6) sẽ trả giá trị true

tất nhiên thay vì sử dụng các số, chúng ta có thể sử dụng bất cứ biểu thức nào. Cho a=2, b=3 và

c=6

(a*b >= c) sẽ trả giá trị true.

(b+4 < a*c) sẽ trả giá trị false

Chú ý rằng = (một dấu bằng) lf hoàn toàn khác với ==

(hai dấu bằng). (==) nhằm so sánh còn (=)gán giá trị của biểu thức bên phải cho biến ở bên trái .
-> Các toán tử logic ( !, &&, || ).

! NOT

&& AND

|| OR

EX:

!(5 == 5) trả về false vì biểu thức bên phải (5 == 5) có giá trị true.

!(6 <= 4) trả về true vì (6 <= 4)có giá trị false.

!true trả về false.

!false trả về true.

( (5 == 5) && (3 > 6) ) trả về false ( true && false ).

( (5 == 5)
-> Các toán tử thao tác bit ( &, |, ^, ~, <<, >> ).

& AND Logical AND

| OR Logical OR

^ XOR Logical exclusive OR

~ NOT Đảo ngược bit

<< SHL Dch bit sang trái

>> SHR Dịch bit sang phải

->Thứ tự ưu tiên của các toán tử

Th

t

Toán tử Mô tả Associativity

1 :: scope Trái

2 () [ ] -> . sizeof Trái

3

++ -- tăng/giảm

Phải

~ Đảo ngược bit

! NOT

& * Toán tử con trỏ

(type) Chuyển đổi kiểu

+ - Dương hoặc âm

4 * / % Toán tử số học Trái

5 + - Toán tử số học Trái

6 << >> Dịch bit Trái

7 < <= > >= Toán tử quan hệ Trái

8 == != Toán tử quan hệ Trái

9 & ^ | Toán tử thao tác bit Trái

10 && || Toán tử logic Trái

11 ?: Toán tử điều kiện Phải

12 = += -= *= /= %=

>>= <<= &= ^= |= Toán tử gán Phải

13 , Dấu phẩy Trái

3. Các kiểu dữ liệu

Các kiểu biến.chuẩn
Type Bits Bytes Range

char 8 1 128 to +127

unsigned char 8 1 0 to 255

enum 16 2 32,768 to +32,767

short 16 2 32,768 to +32,767

unsigned short 16 2 0 to 65,535

Lập trình C cho VXL - Cơ bản VAGAM - giotdang

int 16 2 32,768 to +32,767

unsigned int 16 2 0 to 65,535

long 32 4

2,147,483,648 to

+2,147,483,647

unsigned long 32 4 0 to 4,294,697,295
Kiểu dữ liệu trong Keil C
Type Bits Bytes Range

bit 1 0 0 to 1

sbit 1 0 0 to 1

sfr 8 1 0 to 255

sf16 16 2 0 to 65,535
[/size]
Về Đầu Trang Go down
 
LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P1.
Về Đầu Trang 
Trang 1 trong tổng số 1 trang
 Similar topics
-
» LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P4.
» LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P2.
» LẬP TRÌNH C++ CHO VI ĐIỀU KHIỂN P3.
» NHỮNG VẤN ĐỀ THIẾT YẾU CỦA QUÁ TRÌNH ĐIỀU KHIỂN...Essentials of Process Control Book
» Notepad++ 5.8 Final - Công cụ soạn thảo ngôn ngữ lập trình

Permissions in this forum:Bạn không có quyền trả lời bài viết
CLB_KỸ THUẬT ĐIỆN _ĐIỆN TỬ :: KIẾN THỨC ĐẠI CƯƠNG-
Chuyển đến