 |
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,892
|
|
نشاط [ سعيد قادر ]
قوة السمعة:
|
|
22-09-2014, 08:16 PM
المشاركة 13
|
|
السلام عليكم
كتبت هذا الكود لرمونت كنترول الكود يعمل على البروتيوس بدون مشاكل ولاكن فى الواقع لايعمل اذا كان اكثر من ثلاث سويشات ؟؟ لو اضفنا كود لسويش الرابع يتوقف عن العمل ؟؟ مالسبب ؟؟
[IMG]  [/IMG]
الكود
كود:
#define is ==
#define preseed 0
#define sw1 porta.b0
#define sw2 porta.b1
#define sw3 porta.b2
#define sw4 porta.b3
#define sw5 porta.b4
#define sw6 porta.b5
#define sw1_dir trisa.b0
#define sw2_dir trisa.b1
#define sw3_dir trisa.b2
#define sw4_dir trisa.b3
#define sw5_dir trisa.b4
#define sw6_dir trisa.b5
#define on 1
#define off 0
#define input 1
#define output 0
/*******************************************/
char code_1[]={0,0,0,0,1,0,1,0,0,1};
char code_2[]={0,0,0,0,1,0,1,0,1,1};
char code_3[]={0,0,0,0,1,0,1,1,0,1};
char code_4[]={0,0,0,0,1,0,1,1,1,1};
char code_5[]={0,0,0,0,1,1,0,0,0,1};
char code_6[]={0,0,0,0,1,1,0,0,1,1};
char x=0;
/*****************************************/
void send_code(char my_code[])
{
for(x=0;x<10;x++)
{
if(my_code[x] is 0){pwm1_start();}
if(my_code[x] is 1){pwm1_stop() ;}
delay_ms(20);
}
/*****************************************/
}
void init()
{trisa.b7=input;
trisa.b5=input;
sw1=input;
sw2=input;
sw3=input;
sw4=input;
sw5=input;
sw6=input;
trisb=0;
portb=0;
ANSEL=0;
OSCCON= 0b01000000;
cmcon=7;
}
/*****************************************/
void main()
{
init();
pwm1_init(38000);
pwm1_set_duty(178);
while(1)
{
if(sw1 is preseed)
{delay_ms(10);
while(sw1 is preseed);
delay_ms(10);
send_code(code_1);
}
else if(sw2 is preseed)
{
delay_ms(10);
while(sw2 is preseed);
delay_ms(10);
send_code(code_2);
}
else if(sw3 is preseed)
{
delay_ms(10);
while(sw3 is preseed);
delay_ms(10);
send_code(code_3);
}
else if(sw4 is preseed)
{
delay_ms(10);
while(sw4 is preseed);
delay_ms(10);
send_code(code_4);
}
else if(sw5 is preseed)
{
delay_ms(10);
while(sw5 is preseed);
delay_ms(10);
send_code(code_5);
}
else if(sw6 is preseed)
{
delay_ms(10);
while(sw6 is preseed);
delay_ms(10);
send_code(code_6);
}
}
}
الملف
http://www.gulfup.com/?Lrm2Dr
|