قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

   

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,832
نشاط [ F.Abdelaziz ]
قوة السمعة:
قديم 04-06-2017, 11:48 PM المشاركة 1   
افتراضي تمرين رقم 1



تمرين :
الدائرة الكهربية :




فى البرنامج أدناه :
• اشرح البرنامج متتبعا خطوات تنفيذ البرنامج .

• قم بتعديل البرنامج مستخدما الدوال Function .

كود:
sbit LED0 at PORTB.B0; // bit is fully defined
sbit LED1 at PORTB.B1;
sbit LED2 at PORTB.B2;
sbit LED3 at PORTB.B3;
sbit LED4 at PORTB.B4;
sbit LED5 at PORTB.B5;
sbit LED6 at PORTB.B6;
sbit LED7 at PORTB.B7;




//main function
void main(void)
{
   unsigned int c;		//for loop Counter

	TRISB = 0;
	PORTB = 0;

	while(1)
	{

		for(c=0; c<10; c++)
		{
			//forward
			LED0 = 1;
			Delay_ms(1000);

			LED0 = 0;
			LED1 = 1;
			Delay_ms(1000);

			LED1 = 0;
			LED2 = 1;
			Delay_ms(1000);

			LED2 = 0;
			LED3 = 1;
			Delay_ms(1000);

			LED3 = 0;
			LED4 = 1;
			Delay_ms(1000);

			LED4 = 0;
			LED5 = 1;
			Delay_ms(1000);

			LED5 = 0;
			LED6 = 1;
			Delay_ms(1000);

			LED6 = 0;
			LED7 = 1;
			Delay_ms(1000);

			LED7 = 0;


			//reverse
			LED6 = 1;
			Delay_ms(1000);

			LED6 = 0;
			LED5 = 1;
			Delay_ms(1000);

			LED5 = 0;
			LED4 = 1;
			Delay_ms(1000);

			LED4 = 0;
			LED3 = 1;
			Delay_ms(1000);

			LED3 = 0;
			LED2 = 1;
			Delay_ms(1000);

			LED2 = 0;
			LED1 = 1;
			Delay_ms(1000);

			LED1 = 0;
			LED0 = 1;
			Delay_ms(1000);


		}

		//re-initalize PORTB
		PORTB = 0b00000000;

		for(c=0; c<10; c++)
		{

			PORTB = 0b10101010;
			Delay_ms(1000);

			PORTB = 0b01010101;
			Delay_ms(1000);

		}

		for(c=0; c<10; c++)
		{

			PORTB = 0b11110000;
			Delay_ms(1000);

			PORTB = 0b00001111;
			Delay_ms(1000);

		}

		for(c=0; c<10; c++)
		{

			PORTB = 0b11001100;
			Delay_ms(1000);

			PORTB = 0b00110011;
			Delay_ms(1000);

		}

		for(c=0; c<10; c++)
		{

			PORTB = 0b10000001;
			Delay_ms(1000);

			PORTB = 0b01000010;
			Delay_ms(1000);

			PORTB = 0b00100100;
			Delay_ms(1000);

			PORTB = 0b00011000;
			Delay_ms(1000);

			PORTB = 0b00100100;
			Delay_ms(1000);

			PORTB = 0b01000010;
			Delay_ms(1000);

		}

	}

}



اعلانات

الصورة الرمزية مسلم11
مسلم11
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2009
الدولة: بلاد الشام
المشاركات: 3,679
نشاط [ مسلم11 ]
قوة السمعة:
قديم 22-06-2017, 11:34 PM المشاركة 2   
افتراضي


شكرا لك
للرفع

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 01:06 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)