Em đang làm một mạch đo nhiệt độ bằng cách sử dụng ATmega16 và LM35. Em muốn truyền số liệu tới máy tính nên em dùng thêm 1 con max232 để điều chỉnh điện áp. Tuy nhiên, khi mô phỏng trên Proteus, nếu em ko truyền qua max232 thì truyền đúng dữ liệu tới virtual terminal, nhưng truyền qua max232 thì dữ liệu lại bị thay đổi.
Mọi ng có thể giải thích cho em được ko ạ, em xin cám ơn!
Code và mạch mô phỏng (proteus 7.5) em để trong file đính kèm
Mọi ng có thể giải thích cho em được ko ạ, em xin cám ơn!
Code:
while (1)
{
// Place your code here
char *text1 = "Bienvenue^_^";
char *text2 = "Sinh vien TP-K51";
//Doc gia tri ADC kenh 0
NhietDo=adc_data[0];
//Tinh toan nhiet do
NhietDo=NhietDo/2-1;
//Dua ra terminal
sprintf(str,"%d \n\r",NhietDo);
puts(str);
delay_ms(500);
};
}



. còn mạch thật thì cứ mắc như thế là OK

Comment