em lập trình cho 8051 đọc tín hiệu đầu ra của một con LM358. giả sử tín hiệu đầu ra của LM358 được nối vào chân P3^5 của 8051. Bài lập trình như sau
#include <reg51.h>
sbit LED=P2^1;
void main
{
bit x;
// set P3.5 input
P3 |=(1<<5);
x=P3^5;
while(1)
{
if(x) {LED=1; }
else {LED=0;}
}
}
Nhưng mà khi em mô phỏng trên proteus thì chân P3^5 luôn ở mức cao (vì đã set P3^5=1) và tín hiệu đầu ra của LM358 cũng luôn ở mức cao cho dù tín hiệu đầu vào V+ > V- hay V+ <V- đều như nhau. Mạch mô phỏng em đã đính kèm.
Vậy em muốn đọc tín hiệu của LM358 một cách chính xác bằng 8051 thì phải làm thế nào nhỉ. Xin mọi người giúp đỡ
#include <reg51.h>
sbit LED=P2^1;
void main
{
bit x;
// set P3.5 input
P3 |=(1<<5);
x=P3^5;
while(1)
{
if(x) {LED=1; }
else {LED=0;}
}
}
Nhưng mà khi em mô phỏng trên proteus thì chân P3^5 luôn ở mức cao (vì đã set P3^5=1) và tín hiệu đầu ra của LM358 cũng luôn ở mức cao cho dù tín hiệu đầu vào V+ > V- hay V+ <V- đều như nhau. Mạch mô phỏng em đã đính kèm.
Vậy em muốn đọc tín hiệu của LM358 một cách chính xác bằng 8051 thì phải làm thế nào nhỉ. Xin mọi người giúp đỡ
Comment