View Single Post
Old 09-07-2014, 08:05 PM   #1
langnhan1560
Đệ tử 1 túi
 
Tham gia ngày: Dec 2013
Bài gửi: 14
:
[Help]Giúp e đoan code này qua ccs với

nó là 1 hàm được viết bằng Hitech e muốn chuyễn nó thành ccs để include vào sử dụng anh chị giúp e với

#include <htc.h>

// Cau hinh su dung.
#define _XTAL_FREQ 4000000

// Khai bao bien.
unsigned char led @0x20; // Khai bao dia chi cua bien su dung.

bit led0 @((unsigned)&led*8)+0; // Khai bao dia chi cac bit trong bien.
bit led1 @((unsigned)&led*8)+1;
bit led2 @((unsigned)&led*8)+2;
bit led3 @((unsigned)&led*8)+3;
bit led4 @((unsigned)&led*8)+4;
bit led5 @((unsigned)&led*8)+5;

// Chuong trinh.
void LEDScan()
{
// Khai bao bien.
static unsigned char count; // Bien dem so lan quet LED.

// Chuong trinh.
TRISB3 = 1; // Thiet lap cau hinh cho Port B.
TRISB4 = 1; // Viec thiet lap ngo vao cho Port B se lam cac LED noi voi RB5..RB3
TRISB5 = 1; // se bi tat.

switch(count) // Kiem tra so lan quet LED de hien thi.
{
case 0:
if(led0) // Dieu khien hoat dong cho cap LED D6, D7 noi voi RB<3>,RB<4>.
{
TRISB3 = 0; // Cau hinh RB<3>,RB<4> la ngo ra.
TRISB4 = 0;
RB3 = 1; // Dieu khien LED D6 = ON, D7 = OFF.
RB4 = 0; // RB<3> -> D6<A>,D7<K> RB<4> -> D6<K>,D7<A>.
}
break; // Thoat ra.
case 1:
if(led1) // Dieu khien hoat dong cho cap LED D6, D7 noi voi RB<3>,RB<4>.
{
TRISB3 = 0; // Cau hinh RB<3>,RB<4> la ngo ra.
TRISB4 = 0;
RB3 = 0; // Dieu khien LED D6 = OFF, D7 = ON.
RB4 = 1; // RB<3> -> D6<A>,D7<K> RB<4> -> D6<K>,D7<A>.
}
break; // Thoat ra.
case 2:
if(led2) // Dieu khien hoat dong cho cap LED D8, D9 noi voi RB<4>,RB<5>.
{
TRISB4 = 0; // Cau hinh RB<4>,RB<5> la ngo ra.
TRISB5 = 0;
RB4 = 1; // Dieu khien LED D8 = ON, D9 = OFF.
RB5 = 0; // RB<4> -> D8<A>,D9<K> RB<5> -> D8<K>,D9<A>.
}
break; // Thoat ra.
case 3:
if(led3) // Dieu khien hoat dong cho cap LED D8, D9 noi voi RB<4>,RB<5>.
{
TRISB4 = 0; // Cau hinh RB<4>,RB<5> la ngo ra.
TRISB5 = 0;
RB4 = 0; // Dieu khien LED D8 = OFF, D9 = ON.
RB5 = 1; // RB<4> -> D8<A>,D9<K> RB<5> -> D8<K>,D9<A>.
}
break; // Thoat ra.
case 4:
if(led4) // Dieu khien hoat dong cho cap LED D10, D11 noi voi RB<3>,RB<5>.
{
TRISB3 = 0; // Cau hinh RB<3>,RB<5> la ngo ra.
TRISB5 = 0;
RB3 = 0; // Dieu khien LED D10 = ON, D11 = OFF.
RB5 = 1; // RB<3> -> D10<K>,D11<A> RB<5> -> D10<A>,D11<K>.
}
break; // Thoat ra.
case 5:
if(led5) // Dieu khien hoat dong cho cap LED D10, D11 noi voi RB<3>,RB<5>.
{
TRISB3 = 0; // Cau hinh RB<3>,RB<5> la ngo ra.
TRISB5 = 0;
RB3 = 1; // Dieu khien LED D10 = OFF, D11 = ON.
RB5 = 0; // RB<3> -> D10<K>,D11<A> RB<5> -> D10<A>,D11<K>.
}
break; // Thoat ra.
}

count++; // Tang gia tri bien dem.

if(count > 5) // Kiem tra bien dem de quet xong 6 LED?
count = 0; // Tra bien ve gia tri 0 khi quet du LED.
}
langnhan1560 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn