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

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

somood
:: مهندس جيد ::
تاريخ التسجيل: Jan 2011
الدولة: نابلس
المشاركات: 222
نشاط [ somood ]
قوة السمعة:0
قديم 20-09-2011, 07:10 PM المشاركة 1   
ha وضع الزمن في متغير Twitter FaceBook Google+



هل يمكن وضع الزمن في متغير سواء بلغة microC او micro Basic

اعلانات

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:394
قديم 20-09-2011, 08:23 PM المشاركة 2   
افتراضي


بصورة مباشرة لا يمكن ...
يمكنك ان تضع قيمة عداد تكرار في متغير ...
و تضع عبارة الديلي داخل العداد ...

كود:
int i,x=0;
void main()
{
trisb=0xFF;
x=portb;
for(i=0;i<x;i++)
delay_ms(1);
:
:
:
}
هنا سوف يتم تكرار عبارة ديلي X مرة ...

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

moode3
:: مهندس ::
تاريخ التسجيل: Sep 2011
المشاركات: 48
نشاط [ moode3 ]
قوة السمعة:0
قديم 20-09-2011, 08:45 PM المشاركة 3   
افتراضي


اي نعم ينفع
ولكن اللي أعرفه بالبيسك
ويكون بالمايكرو وليس بالملي

dim x as byte

vdelay_us(x)

أتمنى لك التوفيق
تحياتي لك


somood
:: مهندس جيد ::
تاريخ التسجيل: Jan 2011
الدولة: نابلس
المشاركات: 222
نشاط [ somood ]
قوة السمعة:0
قديم 20-09-2011, 09:26 PM المشاركة 4   
افتراضي


شكرا لكم وبارك الله بكم سأجرب كلتا الحالتين واحاول اطور اذا قدرت حيث اني اريد التحكم بسرعة محرك خطوي عن طريق مقاومة متغيرة توصل مع مدخل الانالوج وتوضع القيمة الرقمية المحولة في متغير ومن ثم اساوي التأخير الزمني بها المتغير


الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 10,061
نشاط [ حيدر علاج حسن ]
قوة السمعة:394
قديم 20-09-2011, 10:36 PM المشاركة 5   
افتراضي


وما علاقة التأخير الزمني بسرعة المحرك ؟


somood
:: مهندس جيد ::
تاريخ التسجيل: Jan 2011
الدولة: نابلس
المشاركات: 222
نشاط [ somood ]
قوة السمعة:0
قديم 21-09-2011, 12:09 AM المشاركة 6   
افتراضي


عن طريق اطالة التأخير الزمني بين النبضات التي تأتي لملفات المحرك الخطوي فكلما زاد الزمن بين النبضة والتي تليها قلت السرعة والعكس صحيح..... الا توافقني الرأي أخي الحبيب


somood
:: مهندس جيد ::
تاريخ التسجيل: Jan 2011
الدولة: نابلس
المشاركات: 222
نشاط [ somood ]
قوة السمعة:0
قديم 21-09-2011, 02:20 AM المشاركة 7   
افتراضي


ابشركم احبائي فقد نجحت الفكرة
حيث تمكن من التحكم بسرعة المحرك الخطوي ببساطة ولكن بدون مدخل انالوج وانما بواسطة مفتاحين واحد يزيد السرعة والاخر ينقصها وذلك عن طريق التحكم بالتأخير الزمني
وللعلم اخي حيدر لقد رأيت طريقة لوضع متغير في دالة الزمن ولكني لم اتمكن من فهمها جيدا ولم استخدمها حيث يجب تعريف برنامج خاص بالزمن في بداية المشروع
....وهذا كود تجربتي التي نفذتها على البروتس وانشا الله غدا بالنهار اجربها عمليا على محرك طابعة
مع العلم ان هذا الكود ينقصه الكثير فأنا اريد ان اشبكه مع كاميرا فإذا يجب ان احدد اقصى دوران له كما يجب تحديد اقصى سرعة فأتمنى ممن يمكنه مساعدتي ان لا يبخل علي وعلى المنتدى
واعذروني ان رأيتم بالكود رداءة فحقا انا مبتدء كما انني لم اعمل هليه الا لبضع
ساعات
كود:
  int i,x=20;
void main() {
CMCON=0x07;
TRISA=0xff;
TRISB=0;
PORTB=0;

loop1:
while(PORTA.F0==0)
{
loop2:
if(PORTA.F1==0){x=x+5;Delay_ms(100);goto loop2; }
loop3:
if(PORTA.F2==0){x=x-5; Delay_ms(100);goto loop3;}
PORTB=0b00000001;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00000011;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00000010;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00000110;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00000100;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00001100;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00001000;
for(i=0;i<x;i++)delay_ms(1);
PORTB=0b00001001;
for(i=0;i<x;i++)delay_ms(1);
}
goto loop1;


الصورة الرمزية ahmad72
ahmad72
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2004
المشاركات: 729
نشاط [ ahmad72 ]
قوة السمعة:108
قديم 21-09-2011, 05:47 AM المشاركة 8   
افتراضي


السلام عليكم ورحمه الله وبركاته
من الممكن وضع الزمن فى متغير
كود:
int ah=200;
كود:
 
vdelay_ms(ah);


لاكن بالملى وليس بالميكرو ثانيه

إضافة رد

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

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

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


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

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