 |
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,892
|
|
نشاط [ سعيد قادر ]
قوة السمعة:
|
|
13-02-2015, 12:16 AM
المشاركة 36
|
|
الحمد لله وجدت الحل ببرنامج مايكرو سى
فى الاول قمت بتغير
الى
كود:
unsigned long int mlv
لكى ازيد المدى للمتغير
استخدمنا 20 فولت والمايكرو يعمل على جهد 5 فولت نقوم بتقسيم 20 على 5 يكون الناتج 4 وهذا الناتج بيكون قيمة مجموع المقاومتين على دخل المايكرو
طيب لو اردت ان احصل على قيمة 14.5 فولت اقوم بتقسمها على 4 والاربعة هية قيمة مجموع المقاومتين فنحصل على 3.625 فولت ثم بعد ذالك نحول الفولت الى ملى فولت فنضربها فى 1000 فيكون النتيجة 3625 ملى فولت
الكود
كود:
#define is ==
unsigned long int mlv=0;
void _init()
{
trisa=0b00000010;
porta=0;
trisb=0;
portb=0;
}
void main()
{ adc_init();
_init();
while(1)
{
mlv=adc_read(1);
mlv=(mlv*5000)>>10;
if(mlv > 3625 && mlv <5000)portb.b0=1; else if (mlv <3000 && mlv>0)portb.b0=0;
}
}
اذا وصل الفولت الى 14.5 حتى 20 فولت يضىء ليد واذا قل الفولت الى 12 حتى صفر يطفى ليد
|