okitakimura
05-04-2012, 06:29 PM
Hi mọi người!
Hiện tại mình mới học PIC bằng C nên mình ko biết cách truyền địa chỉ của 1 thanh ghi vào hàm con như thế nào.
Mong mọi người giúp dùm.
Đây là code của mình , khi build thì ko có lỗi but ko chạy được.
#include <16f877a.h>
#fuses XT, NOLVP, NOWDT
#use delay (clock = 4000000)
//==============================================
//Global Var
//==============================================
#byte PORTB = 0x06
//==============================================
//Prototype Func
//==============================================
void CallLEd(byte PORT);
//==============================================
//main Func
//==============================================
void main()
{
//config input, output
set_tris_B(0x00);
//define local var
//init var value
output_B(0x00);
//auto loop
while (true)
{
CallLEd(PORTB);
}
}
//==============================================
//Define sub function
//==============================================
void CallLEd(byte PORT)
{
PORT = 0x00;
delay_ms(100);
PORTB = 0xff;
delay_ms(100);
}
Hiện tại mình mới học PIC bằng C nên mình ko biết cách truyền địa chỉ của 1 thanh ghi vào hàm con như thế nào.
Mong mọi người giúp dùm.
Đây là code của mình , khi build thì ko có lỗi but ko chạy được.
#include <16f877a.h>
#fuses XT, NOLVP, NOWDT
#use delay (clock = 4000000)
//==============================================
//Global Var
//==============================================
#byte PORTB = 0x06
//==============================================
//Prototype Func
//==============================================
void CallLEd(byte PORT);
//==============================================
//main Func
//==============================================
void main()
{
//config input, output
set_tris_B(0x00);
//define local var
//init var value
output_B(0x00);
//auto loop
while (true)
{
CallLEd(PORTB);
}
}
//==============================================
//Define sub function
//==============================================
void CallLEd(byte PORT)
{
PORT = 0x00;
delay_ms(100);
PORTB = 0xff;
delay_ms(100);
}