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

أدوات الموضوع

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



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




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

• قم بتعديل البرنامج مستخدما الدوال 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);

		}

	}

}



احصائية الشكر والاعجاب - 2 شكراً, 0 عدم اعجاب, 2 اعجاب
شكراً عريبى محمود, مسلم11 ( شكر العضو على هذه المشاركة )
اعجاب عريبى محمود, مسلم11 ( أعجبته المشاركة )
اعلانات

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


شكرا لك
للرفع

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

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025