CODE
CODE
H>
// Ham delay
void delay(int time) {
while (time--); // Delay
}
void main() {
unsigned char adc_value;
float nhietdo;
while (1) {
adc_value = doc_adc(); // Doc gia tri ADC tu ADC0804
nhietdo = tinhtoan_nhietdo(adc_value); // Tinh toan nhiet do tu gia tri ADC
hienthi((int)nhietdo); // Hien thi nhiet do len LED 7 doan
}
}
#include <AT89X52.H>
#define LED1 P2_0
#define LED2 P2_1
#define SEG7 P0
#define rd P3_1 // Ch?n d?c d? li?u t? ADC
#define wr P3_2 // Ch?n ghi d? b?t d?u chuy?n d?i ADC
#define cs P3_0 // Ch?n ch?n chip (Chip Select)
#define intr P3_3 // Ch?n ng?t b?o hi?u ho?n th?nh chuy?n d?i
#define adc P3
void timer(void);
void Delay_ms(unsigned int);
unsigned char R5,R6;
unsigned int conv, get_value,i,chuc,donvi;
unsigned char maled[10] =
{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};
void timer()//tao ngat tran timer voi ck 1ms
{
TMOD = 0x01; // Timer0 mode1
TH0=0xFC; //initial value for 1ms
TL0=0x17;
TR0 = 1; // timer0 start
while (TF0 == 1); // check overflow condition
TR0 = 0; // Stop Timer
TF0 = 0; // Clear flag
}
void Delay(unsigned int count)// delay_ms
{
unsigned int r;
for(r=0;r<count;r++)
{
timer();
}
}
void delay_ms(unsigned int ms) {
unsigned int i, j;
for (i = 0; i < ms; i++) {
for (j = 0; j < 120; j++) {
// L?p d? t?o d? tr? (t?c d? thay d?i t?y t?n s? th?ch anh)
}
}
}
unsigned char adc_read() {
cs = 0;
wr = 0;
rd = 1;
wr = 1;
while(intr==1);
rd = 0;
conv = P3;
Delay(1);
cs = 1;
return conv;
}
void main() {
P3 = 0xFF;
while (1) {
get_value = adc_read();
get_value = (get_value*500/256);
chuc = (get_value/10);
donvi = (get_value%10);
LED1 = 1;
SEG7 = maled[chuc];
delay_ms(1);
LED1 = 0;
LED2 = 1;
SEG7 = maled[donvi];
delay_ms(1);
LED2 = 0;
rd = 1;
}
}
3.
#include <REGX51.H>
// Ma LED 7 doan
unsigned char maled[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,
0x80, 0x90};
return adc_value;
}
while (1) {
adc_value = adc_read(); // Doc gia tri tu ADC
temperature = (adc_value * 500) / 256; // Quy doi gia tri ADC sang nhiet do
(°C)
display_temperature(temperature); // Hien thi nhiet do len LED 7 doan
}
}