PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   Câu hỏi lập trình pic cho người mới học. (http://www.picvietnam.com/forum/showthread.php?t=10637)

vitieubao 12-08-2011 10:44 PM

Câu hỏi lập trình pic cho người mới học.
 
Chào cả nhà ! em là lính mới vào học pic có mấy câu lệnh không hiểu về ý nghĩa của nó như thế nào mong các anh chị chỉ dùm em ý nghĩa câu lệnh này với ạ.

set_tris_b(0x00);
while(1){
for(k=1;k<0x100;k<<=1) // cái này em chiu không biết ý "k<0x100"nó là gì và k=1 ở đây là giá trị của k =1 hay là gì ạ mong cả nhà giúp em với.


{output_b(k);
delay_ms(100);}
for(k=0x80;k>0;k>>=1)// k>0 ở đây có nghĩa là gì ?
{output_b(k);
delay_ms(100);}

}}

tdm 12-08-2011 10:55 PM

Trích:

Nguyên văn bởi vitieubao (Post 48185)
Chào cả nhà ! em là lính mới vào học pic có mấy câu lệnh không hiểu về ý nghĩa của nó như thế nào mong các anh chị chỉ dùm em ý nghĩa câu lệnh này với ạ.

set_tris_b(0x00);
while(1){
for(k=1;k<0x100;k<<=1) // cái này em chiu không biết ý "k<0x100"nó là gì và k=1 ở đây là giá trị của k =1 hay là gì ạ mong cả nhà giúp em với.


{output_b(k);
delay_ms(100);}
for(k=0x80;k>0;k>>=1)// k>0 ở đây có nghĩa là gì ?
{output_b(k);
delay_ms(100);}

}}

k =1 //gán 1 vào k
k>0//biểu thức điều kiện
k>>=1// k dịch phải một đơn vị.
k<<=1//k dịch trái một đơn vị.

phatcddt08a 13-08-2011 10:40 AM

chỉ đơn giản là quét led . tai moi thoi diem chi co mot led dc sang bat dau tu b0 den b7 lam xong roi thi lam nguoc lai tu b7 den b0 qua trinh lap di lap lai.đơn giản mà

vitieubao 13-08-2011 05:15 PM

bác tdm ơi cái đó thì em cũng biết rồi ý em muốn hỏi là cái k<0x100 ,thì 0x là hệ hex còn 100 kia thì chịu không biết là gì,và tại sao <100 nếu >100 thì có điều gì xảy ra .Thân!

NDK89 13-08-2011 06:57 PM

0x100 là viết theo số hex, nếu viết theo hệ nhi phân là: 0001 0000 0000. câu lệnh trên là lệnh dịch bít, nếu dịch bít dến bit thứ 9 thì sẽ thoát khỏi vòng lặp for

vitieubao 17-08-2011 12:37 PM

Theo các bac thì lệnh output_high() và output_bit(pin,value) giống và khác nhau chỗ nào.Hàm bit_set() được sử dụng như thế nào nó có ứng dụng nhiều trong thực tế không?

phatcddt08a 17-08-2011 01:15 PM

Có chứ bạn output_high(pin_a1) tương đương chân a1 lên mức cao (ra1=1),low thì là ra1=0,output_bit(pin_a1,y) với y chỉ có giá trị 0 và 1.nếu y =1 thì lênh này tương ứng ra1=y=1.lenh input,bit_test,bit_clear,bit_set mấy cái này củng dể sài mà.coi trong help ccs có ví dụ rõ ràng đó bạn nói tóm lại dung cái này thì ko cần #use fast_io, #byte,#bit hay nói cách khác là ko cần quan tam đến việc đặt đỉa chỉ thanh ghi .ah k<0x100<==>k<=0x80 hai cai này như nhau.

vitieubao 22-08-2011 10:22 AM

Các bác cho em hỏi về LCD và ADC thì có những hàm nào về nó và chức năng của từng hàm ?


Múi giờ GMT. Hiện tại là 11:54 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam