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)
-   -   Về lệnh bet_set và bit_clear (http://www.picvietnam.com/forum/showthread.php?t=4784)

nhanthienthan 19-08-2009 08:45 AM

Về lệnh bet_set và bit_clear
 
Đây là chương trình hào quang, mình đã test và chạy tốt. Nhưng mình vẫn ko hiểu rõ tác dụng của câu lệnh bit_set trong trường hợp này là gì, cả cái temp=0x00 nữa. Tương tự cho mình hỏi luôn về lệnh bit_clear. Thanks nhiều !

Code:

#include <16f877a.h>
  #fuses HS,NOWDT
  #use delay(clock=4000000)
  #byte trisb=0x86
  #byte portb=0x06
 int i,j=9,b=0x00,a=8,temp=0x00;
  main()
  {
  trisb=0x00;
  portb=0xff;
  temp=0x01;
  while (1)
  {
      while (a>=1)
  {
  a=a-1;
  for (i=0;i<=a;++i)
  {
for  (j=9;j>=a+1;j--) bit_set (temp,j);
portb=temp;
  delay_ms(250);
  temp<<=1;
      }
      temp=0x01;
}
a=8;
  }
}


nhanh0112 19-08-2009 10:46 AM

Bạn có thể xem help của CCS
Code:

int x;
x=5;
bit_set(x,3);
// x is now 13
//101=>5
//set bit 3 => 1101 => 13

tương tự cho bit_clear là xóa đi bit chỉ định

temp=0x00 thiết lập giá trị ban đầu của temp thôi
hay temp=0b0000.0000


Múi giờ GMT. Hiện tại là 07:46 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