بسم الله
سابداء بشرحح كيفية تعيين اكثر من مدخل analogue بال16f877
اولا نعرف الadc ب
و اذا اردنا مثلا تعريف analogue an0 نكتب
و اذا اردنا تعريف analogue an1 نكتب
و اذا اردنا تعريف analogue an2 نكتب
و هكذا اي اننا نغير الموجود بين قوسين لل adc_read
هذا برنامج بسيط لثلاثة حساسات حرارة lm35 اذا الحرارة اكثر من 90 درجة يعمل الled
كود:
unsigned int sens1;
unsigned int sens2;
unsigned int sens3;
void main()
{
ADCON1=0x80;
trisd=0;
TRISA = 0xFF;
portd=0;
while(1)
{
sens1 = ADC_Read(0); // Get 10-bit results of AD conversion
if (sens1>=185)
{
portd=0x01;
}
else
{
portd=0;
}
sens2 = adc_read(1);
if (sens2>=185)
{
portd=0x02;
}
else
{
portd=0;
}
sens3 = adc_read(2);
if (sens3>=185)
{
portd=0x04;
}
else
{
portd=0;
}
}
}
و هذا هو ملف proteus
من هنا
و انا تحت الخدمة انشاء الله