ác bạn xem tới bài gần cuối đã có bản Pdf toàn bộ tài liệu này do VAGAM thực hiện
Toán tử gán (=). Ex:
c code
1.
2.
b = 5;
3.
a = 2 + b;
4.
a = 2 + (b = 5);
5.
a = b = c = 5;
6.
Các toán tử số học ( +, -, *, /, % )
+ cộng
- 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ảmc code 1. ++ c code 1. a++; <=> a+=1; <=> a=a+1; tính chất tiền tố hoặc hậu tố (++a) # (a++) ExB=3;B=3;A=++B;// A is 4, B is 4B=3;A=B++;// A is 3, B is 4Các toán tử quan hệc code 1. ( , !=, >, <, >=, <= )c code 1. 2. Bằng 3. != Khác 4. > Lớn hơn 5. < Nhỏ hơn 6. > = Lớn hơn hoặc bằng 7. < = Nhỏ hơn hoặc bằng 8. EXc code 1. 2. (7 5) sẽ trả giá trị false 3. (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=6c code 1. 2. (a*b >= c) sẽ trả giá trị true. 3. (b+4 < a*c) sẽ trả giá trị false 4. Chú ý rằng = (một dấu bằng) lf hoàn toàn khác vớic code 1.(hai dấu bằng). (c code 1.) 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|| OREX:(3 > 6)) trả về true ( true code
1.
2.
!(5 5) trả về false vì biểu thức bên phải (5 5) có giá trị true.
3.
!(6 <= 4) trả về true vì (6 <= 4)có giá trị false. 4. !true trả về false. 5. !false trả về true. 6. ( (5 5) && (3 > 6) ) trả về false ( true && false ).
7.
( (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 Dịch bit sang trái>> SHR Dịch bit sang phải
Thứ tự ưu tiên của các toán tử
Toán tử logic Trái
11 ?: Toán tử điều kiện Phải
12 = += -= *= /= %=
>>= <<= &= ^= |= Toán tử gán Phải13 , Dấu phẩy Tráicode 1. 2. 1 :: scope Trái 3. 2 () [ ] -> . sizeof Trái
4.
3 ++ tăng/giảm Phải
5.
~ Đảo ngược bit
6.
! NOT
7.
& * Toán tử con trỏ
8.
(type) Chuyển đổi kiểu
9.
+ - Dương hoặc âm
10.
4 * / % Toán tử số học Trái
11.
5 + - Toán tử số học Trái
12.
6 << >> Dịch bit Trái
13.
7 < <= > >= Toán tử quan hệ Trái
14.
8 != Toán tử quan hệ Trái
15.
9 & ^ | Toán tử thao tác bit Trái
16.
10 &&
giotdang1985@yahoo.com
thtam | 11:00:18 05-08-07 | Posts: 23 2
Kiến thức C cơ bản dùng lập trình VXL
kiến thức này rất cần cho những người như tôi, chỉ quen dùng asm và bascom.
mong bạn tiếp tục viết các kiến thức C mà bạn đã dùng cho vi điều khiển?
Bạn có thể nói qua khoảng bao nhiêu lệnh C và nhiều ko vậy?
Nếu học thì tốn khoản nhiều thời gian không bạn? có thể bắt đầu bằng các bài nào vậy?
Chúc bạn luôn vui!
Nothing is not possible!!!
I am doing and it will be done by me!
thật tuyệt vời, em xin hỏi cách viết 1 delay trong C cho mọi vi điều khiển là thế nào ạ?
Em ví dụ sau nhé:
Bài toán kiểm tra relay, nếu thay đổi vị trí relay thì mở động cơ lên.
box code
1.
org
2.
3.
dc_cong_tac euq bit 1.0
4.
5.
relay euq bit 1.1
6.
7.
main
8.
9.
abc: // Nhản
10.
djnz relay, 0 // kiem tra trang thay relay co ở mức thấp ko
11.
lmp: abc //quay lại nhản nếu relay chưa đổi trạng thái
12.
set dc_cong_tac // bật động cơ để mở công tắc (công tắc đèn chẳng hạn)
13.
14.
ret
(Lâu quá em ko viết lại ASM, có gì nhờ anh trietnguyen chỉ giúp lại chỗ sai)
Vậy chyển qua C thì thế nào ạ? thanks các anh
mitvn@gmail.com
Một ngày mitvn sẽ giỏi lập trình!
Ai có câu hỏi gì về C, và matlab cứ viết lên để giúp tôi tiến bộ hơn với nhé!
Writing C Code for the 8051
Interrupt : Vector address ; Interrupt number
External0 0003h 0
Timer0 000Bh 1
External1 0013h 2
Timer 1 001Bh 3
Serial 0023h 4
c code
1.
2.
org 00h
3.
ljmp main
4.
org 0003h
5.
ljmp ngat0
6.
org 30h
7.
8.
main:
9.
...
10.
Here: sjmp Here
11.
12.
ngat0:
13.
...
14.
reti
code C
box code
1.
2.
void main
3.
{
4.
...
5.
while(1)
6.
}
7.
void ngat0(void) interrupt 0
8.
{
9.
...
10.
}
Chào bạn,
. Keil C và Codevison tuy cùng dùng C khác nhau ở các lệnh hỗ trợ cho từng loại vđk. Đó tạo ra nét riêng của từng trình biên dịch, cái nào mạnh hơn cái nào một phần cũng là do vậy.
. Về C trong Keil: chẳng hạn kiểu dữ liệu bit, sbit, sfr.. chỉ gọi là C của Keil thôi. còn cấu trúc while.. là C chuẩn. những kiểu dữ liệu đó của riêng từng trình biên dịch, nhà sx quy định.
Ngoài ra Keil còn chứa các lệnh hỗ trợ dành riêng cho vđk, chẳng hạn lệnh
c code
1.
_crol_, _cror_
hoặc trong Bascom có lệnh
c code
1.
lcd, wait..v.v
, đó có thể gọi là lệnh hỗ trợ rồi còn gì biggrin
. Pinnacle dùng Asm, do vậy mình mà mình chỉ nhắc đến ngôn ngữ bậc cao thôi, đó là C và Basic, chắc do bạn đọc k kĩ smile
Chúc thành công !
Nơi nào có ý chí, nơi đó có con đường.
ý bạn thanlan nói dĩ nhiên là cách viết của Keil C rồi (luồng này đang viết về Keil C mà). mà bạn thanlan nói đúng rồi đấy, k hiểu sao bạn giotdang lại viết như vậy nhỉ ?
. chào mitvn, bạn thích học trên diễn đàn là điều rất đáng hoan nghênh, vì đó cũng là một cách học. chính mình cũng bắt đầu học như bạn đây.
. Nhưng muốn theo dõi luồng này tốt, bạn cần có kiến thức căn bản về C. Vì luồng này là "C cho vđk" nên bạn giotdang viết khá vắn tắt về C, chủ yếu là ôn lại thôi sau đó tập trung vào lập trình C cho vđk, trước mắt là 8051. tương tự, bạn ấy cũng không trình bày chi tiết về vdk, nên bạn sẽ thấy rất nhiều thắc mắc, mơ hồ là vậy. Vì thế mình mới khuyên bạn đọc trước về phần cứng vdk và C căn bản là thế.
. Bạn yên tâm đi, 8051 hay AVR hay PIC chung qui lại cũng là vdk 8bit, nên lập trình C cũng không khác nhau mấy. Bạn cứ ôn lại rồi theo dõi luồng này sẽ thấy rất bổ ích đấy ! wink
. Chúng ta thảo luận để cùng nhau tiến bộ mà, vì vậy nếu khi tìm hiểu gặp thắc mắc mình sẽ mở ra luồng mới về "C căn bản" hoặc "tìm hiểu về vdk" chẳng hạn, okie ? wink
Chào Mừng bạn đến với Blog Âm Thanh - Ánh Sáng - Sân Khấu lớn nhất VIỆT NAM, đây là blog do một cá nhân sưu tầm và biên tập, nơi bạn có thể cập nhật kỹ thuật, những thông tin mới nhất trong lĩnh vực công nghệ giải trí, các hệ thống âm thanh ánh sáng chuyên nghiệp. Mọi vấn đề khúc mắc, trợ giúp về kỹ thuật mình rất vui lòng được học hỏi và giải đáp cùng các đồng nghiệp Email: soundandlightvn@gmail.com Hotline: 0906715077
Đăng ký:
Đăng Nhận xét (Atom)
Lưu trữ Blog
-
▼
2010
(766)
-
▼
tháng 9
(582)
- Tìm hiểu về LED
- Tìm hiểu về LED
- Giao tiếp với led đơn
- Giao tiếp với led đơn
- Mạch Led nhấp nháy theo nhạc
- Mạch Led nhấp nháy theo nhạc
- Mạch điều khiển nhiệt độ không thay đổi
- Bộ điều chỉnh điện áp cho quạt DC dùng LM2941
- Mạch điều khiển nhiệt độ không thay đổi
- Bộ điều chỉnh điện áp cho quạt DC dùng LM2941
- Âm thanh điều khiển động cơViết bởi Administrator ...
- Âm thanh điều khiển động cơViết bởi Administrator ...
- Mạch tạo trễ 9s và mạch rơle
- Mạch tạo trễ 9s và mạch rơle
- LED nhấp nháy công suất dùng LM3909
- LED nhấp nháy công suất dùng LM3909
- LED-LED
- LED-LED
- Acer ra mắt bộ sưu tập màn hình LED S1 series
- Acer ra mắt bộ sưu tập màn hình LED S1 series
- Phần mềm lập trinh tự động led quảng cáo tiên tiến
- Phần mềm lập trinh tự động led quảng cáo tiên tiến
- tông hợp Lập trình C cho VXL - Cơ bản
- tông hợp Lập trình C cho VXL - Cơ bản
- AVR
- AVR
- Mạch đèn giao thông bị lỗi khi reset IC đếm Read ...
- Mạch đèn giao thông bị lỗi khi reset IC đếm Read ...
- VI ĐIỀU KHIỂN ĐÔC LẬP
- VI ĐIỀU KHIỂN ĐÔC LẬP
- LED ma trận hiển thị chữ
- LED ma trận hiển thị chữ
- Mạch LED sáng dần thay đổi kiểu rồi tắt Read more...
- Mạch LED sáng dần thay đổi kiểu rồi tắt Read more...
- ĐÈN LED CHỚP VỚI 89C51
- ĐÈN LED CHỚP VỚI 89C51
- keil C Programming Tutorial: Functions
- keil C Programming Tutorial: Functions
- Easy-DownloaderV1.1 forATMEL 89C2051/4051
- Easy-DownloaderV1.1 forATMEL 89C2051/4051
- AVR-USB-JTAG OPTOISOLATED USB JTAG DONGLE FOR PROG...
- AVR-USB-JTAG OPTOISOLATED USB JTAG DONGLE FOR PROG...
- AVR-JTAG-L JTAG DONGLE FOR PROGRAMMING AND EMULATION
- AVR-JTAG-L JTAG DONGLE FOR PROGRAMMING AND EMULATION
- PIC-MICRO-WEB
- PIC-MICRO-WEB
- Bo mạch âm thanh
- Bo mạch âm thanh
- Giải Oscar cho âm thanh
- Giải Oscar cho âm thanh
- Ray of Light
- Ray of Light
- Phonon
- Phonon
- Âm thanh
- Sóng dọc
- Âm thanh
- Sóng dọc
- Nhạc sĩ Nguyễn Thanh Tùng
- Nhạc sĩ Nguyễn Thanh Tùng
- Line array
- Line array
- meyersound
- meyersound
- About Loudspeaker Measurements in MAPP Online Pro
- About Loudspeaker Measurements in MAPP Online Pro
- Everything You Wanted To Know About Line Array Tec...
- Everything You Wanted To Know About Line Array Tec...
- Can Line Arrays Form Cylindrical Waves? A Line Arr...
- Can Line Arrays Form Cylindrical Waves? A Line Arr...
- Line array
- Line array
- Digital Sound System 80
- Digital Sound System 80
- Mackie 2
- Mackie 2
- Mackie
- Mackie
- Personal Audio
- Personal Audio
- Car Audio
- Car Audio
- JBL Creature III
- JBL Creature III
- Test sound 5
- Test sound 5
- Test sound 4
- Test sound 4
- Test sound 2
- Test sound 3
- Test sound 2
- Test sound 3
- Test sound 1
- Test sound 1
- Âm thanh và âm nhạc
- Âm thanh và âm nhạc
- Tìm hiểu thiết bị nén âm thanh Compressor s
- Tìm hiểu thiết bị nén âm thanh Compressor s
- Tìm hiểu thiết bị Equalizer (EQ)
- Tìm hiểu thiết bị Equalizer (EQ)
-
▼
tháng 9
(582)
Không có nhận xét nào:
Đăng nhận xét