سلام دوستان،
من می خوام یه برنامه بنویسم که وقتی یه سویچ روی پایه A30 فشرده می شه، وضعیت خروجی رو روی پورت B19 تغییر بده. میکرو AT91SAM7X256 می باشد. کد رو اینجا گذاشتم ، دوتان لطف می کنید یه نگاهی بندازید بهم بگید ایراد کار چیه؟
قسمت اول برنامه رو گذاشتم ببینیم خروجی ها درست ست شدند و کار می کنن یا نه. قسمت مورد نظر تو حلقه ی while هست...
[code=c]#include <AT91SAM7X256.h>
#include <lib_AT91SAM7X256.h>
int i;
int j;
int main(){
AT91F_PIO_CfgOutput(AT91C_BASE_PIOB,0x0FF80000);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,0x0FF80000);
for (i=0;i<1843200;i++);
AT91F_PIO_SetOutput(AT91C_BASE_PIOB,0x0FF80000);
for (j=0;j<1843200;j++);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,0x0FF80000);
AT91F_PIO_CfgPullup(AT91C_BASE_PIOA,0x78000000);
while(1){
if((AT91F_PIO_GetInput(AT91C_BASE_PIOA)&AT91C_ PIO_PA30)==0){
AT91F_PIO_SetOutput(AT91C_BASE_PIOB,AT91C_PIO_PB19 );
}
else{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB 19);
}
}
}[/code]
با سپاس
من می خوام یه برنامه بنویسم که وقتی یه سویچ روی پایه A30 فشرده می شه، وضعیت خروجی رو روی پورت B19 تغییر بده. میکرو AT91SAM7X256 می باشد. کد رو اینجا گذاشتم ، دوتان لطف می کنید یه نگاهی بندازید بهم بگید ایراد کار چیه؟
قسمت اول برنامه رو گذاشتم ببینیم خروجی ها درست ست شدند و کار می کنن یا نه. قسمت مورد نظر تو حلقه ی while هست...
[code=c]#include <AT91SAM7X256.h>
#include <lib_AT91SAM7X256.h>
int i;
int j;
int main(){
AT91F_PIO_CfgOutput(AT91C_BASE_PIOB,0x0FF80000);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,0x0FF80000);
for (i=0;i<1843200;i++);
AT91F_PIO_SetOutput(AT91C_BASE_PIOB,0x0FF80000);
for (j=0;j<1843200;j++);
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,0x0FF80000);
AT91F_PIO_CfgPullup(AT91C_BASE_PIOA,0x78000000);
while(1){
if((AT91F_PIO_GetInput(AT91C_BASE_PIOA)&AT91C_ PIO_PA30)==0){
AT91F_PIO_SetOutput(AT91C_BASE_PIOB,AT91C_PIO_PB19 );
}
else{
AT91F_PIO_ClearOutput(AT91C_BASE_PIOB,AT91C_PIO_PB 19);
}
}
}[/code]
با سپاس