Em đang làm đồ án vi xử lý msp430 ạ. Em đang cần biến đổi ADC10 cùng lúc cho nhiệt độ và độ ẩm hiển thị lên LCD. Mà thầy bận quá nên chỉ kịp dạy biến đổi 1 kênh thôi(1 kênh cũng dễ) . Tuy trong sách có viết nhưng đọc ko hiệu ạ. Nhờ các cao nhân trợ giúp với, em cảm ơn. Dưới là đoạn code của em. Viết nó vẫn chạy nhưng độ ẩm mà thay đổi là nhiệt độ cũng đôi theo luôn. em đã mò suốt 3 ngày rồi mà ko ra
Thông báo
Collapse
No announcement yet.
Biến đổi ADC 2 kênh dùng MSP430
Collapse
X
-
#include "msp430g2553.h"
#include "LCDP1.h"
void adcnhiet(void) ///bien doi adc kenh 6 luu vao bien 'nhiet' hien thi lcd
{ float nhiet1;int nhiet;
ADC10CTL0 &=~ ENC;
while(ADC10CTL1 & BUSY);
ADC10CTL1 = INCH_6 + CONSEQ_2;//kenh A6
ADC10AE0 |= 0x40;//P1.6
ADC10CTL0 |= ENC + ADC10SC;//bat dau chuyen doi adc
__bis_SR_register(CPUOFF + GIE);
nhiet1 = (float)((ADC10MEM*3.3*100)/1023);
nhiet = (int)nhiet1/1;
if(nhiet<30)
P2OUT |= BIT0;
else
P2OUT &=~ BIT0;
lcd_gotoxy(10,0);
lcd_3n(nhiet);
}
void adcam(void) ///bien doi adc kenh 7 luu vao bien 'doam' hien thi lcd
{ float doam1; int doam;
ADC10CTL0 &=~ ENC;
while(ADC10CTL1 & BUSY);
ADC10CTL1 = INCH_7 + CONSEQ_2;//kenh A7
ADC10AE0 |= 0x80;//P1.7
ADC10CTL0 |= ENC + ADC10SC;//bat dau chuyen doi adc
__bis_SR_register(CPUOFF + GIE);
lcd_gotoxy(7,1);
doam1 = (float)(100-(ADC10MEM-400)/6);
doam = (int)doam1/1;
if(doam>100) doam=100;
lcd_3n(doam);
}
//////////////////////////////////////
void main( void )
{
// Stop watchdog timer to prevent time out reset
WDTCTL = WDTPW + WDTHOLD;
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
P1DIR |= BIT2 + BIT3 + BIT4 + BIT5 + BIT0 + BIT1 ;//port 1 ngo ra
P2DIR |= BIT0;
lcd_init();//khoi tao lcd
lcd_clear();//xoa man hinh lcd
lcd_gotoxy(0,0); lcd_puts("Nhiet do: ");
lcd_gotoxy(13,0); lcd_puts("'C");
lcd_gotoxy(0,1); lcd_puts("Do am: ");
lcd_gotoxy(10,1); lcd_puts("%");
//khoi tao adc10 voi thoi gian lay mau va giu mau la 16*ADC10clock, chon dien the tham chieu noi avcc=3.3V, bat ADC10, cho phep ngat ADC10
ADC10CTL0 = ADC10SHT_2 + REFON + ADC10ON + ADC10IE;
__delay_cycles(30);
while(1)
{
adcnhiet();
adcam();
__delay_cycles(1000000);
}
}
//chuong trinh con phuc vu ngat
#pragma vector=ADC10_VECTOR
__interrupt void ADC10_ISR(void)
{__bic_SR_register_on_exit(CPUOFF);}
Bài viết mới nhất
Collapse
-
bởi chinhnguyen9Xem hình minh họa có phần thuyết minh bên trong tiện việc quan sát và đọc thuyết minh. Khi G1 high dòng điện chạy theo các đường màu đen khi G2 high dòng điện chạy theo các đường màu nâu đỏ.
Bổ sung một tính chất củng cố cho tên gọi tụ bay: Trong mạch đề cập chỉ...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:02 -
-
bởi chinhnguyen9Sản phẩm này ghi version 2.0 01-2024 MADE IN CHINA nhưng không thấy thương hiệu hình 1
Do 8 chân G của 8 mosfet được đấu song song thành 2 nhóm nên có cùng biên độ xung kích 12V. Nhưng Q1 và Q2 nằm cuối dãy, chân S cùa chúng có điện áp DC cao đến...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 20:37 -
-
bởi xuanthiettivi em bị mất remote lỡ vào chế độ usb giờ không chọn lại source được. ai có file nạp cho em xin với ạ. Model 32HD957T2
-
Channel: Điện tử truyền hình
Hôm qua, 10:53 -
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi chinhnguyen9Đa tạ lời cảm ơn của bạn. Mến!
-
Channel: Hướng dẫn sử dụng diễn đàn
Hôm qua, 05:06 -
-
Trả lời cho Xin tư vấn về mạch cầu H cho inverter 1000wbởi thebinhzChắc là không được đâu bạn ơi
Quán ăn Vĩnh Yên-
Channel: Điện tử công suất
25-04-2024, 21:56 -
-
Trả lời cho Giải thích nôm na từ "tụ bay"bởi thebinhzCảm ơn bạn nhiều nha
Nhà hàng Vĩnh Yên-
Channel: Hướng dẫn sử dụng diễn đàn
25-04-2024, 21:50 -
-
bởi chinhnguyen9Vai viết này đã được chuyển sang chuyên mục phù hợp....
-
Channel: Hướng dẫn sử dụng diễn đàn
25-04-2024, 08:29 -
-
bởi chinhnguyen9
Xem hình có phần thuyết minh bên trong tiện việc quan sát và đọc thuyết minh. Khi G1 high dòng điện chạy theo các đường màu đen khi G2 high dòng điện chạy theo các đường màu nâu đỏ.
Bổ sung một tính chất củng cố cho tên gọi tụ...-
Channel: Hướng dẫn sử dụng diễn đàn
24-04-2024, 01:15 -
-
Trả lời cho CODE/ROM-dvb-vcd-dvd-mindikaraoke- Máy nạp Rombởi ThaPhong20Mình cần giúp đõ đầu California MIDI-800K
Ngày trc có nghe tin đồn đầu này có thể chạy đĩa DH-3600 nên mua Vol 26 về chạy thử và nó báo góc trái dòng code rồi tự thay nền DH-3600S luôn. Sau khi tự thay nền thì nó tiếp tục báo dòng Code...-
Channel: Thiết bị thu phát MEDIA dân dụng
23-04-2024, 19:24 -
-
Trả lời cho Xin tư vấn về mạch cầu H cho inverter 1000wbởi N.T.HIRF460 có chịu được tải 1000W công suất thực không ạ....
-
Channel: Điện tử công suất
23-04-2024, 16:05 -
Comment