BASIC4MCU | 질문게시판 | ATmega128에 MQ-3 센서를 사용하는 방법을 찾고 있습니다.
페이지 정보
작성자 c언어초보 작성일2023-12-16 02:54 조회1,357회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=23596
첨부파일
본문
#include <avr/io.h>#include <avr/interrupt.h>#include "ATmega128_v20m.H"int main (){int ADval;float Vin, Vref = 5.1;char msg[16];MCU_initialize();LCD_initialize();//MQ3DDRF = 0x00;ADMUX = 0b01000000;ADCSRA = 0b11100111;Delay_ms(5);//buzzerDDRG |=0x08;Beep();Delay_ms(1000);//LEDDDRB = 0xff;PORTB = 0x00;while(1){ADval = (int)ADCL + ((int)ADCH << 8);Vin = (float)ADval*Vref/1023.0;sprintf(msg,"BAC : %.2f %%", Vin);LCD_string(0x80,msg);LCD_string(0xC0, "AD0: V");LCD_command(0xC0 + 5);LCD_1d2(Vin);Delay_ms(100);if(Vin>4.0){//BuzzerPORTG |= 0x08;Delay_ms(300);PORTG &=0xf7;Delay_ms(100);//LEDPORTB = 0b00100000;}else{PORTG &=0xf7;PORTB = 0b00010000;}}}위의 코드를 실행시켜서 MQ-3 센서를 통해 얻은 전압 값을 lcd에 표시 하는 것 까지는 성공했습니다.저는 여기서 센서를 통해 출력 된 전압 값을 혈중 알코올 농도(BAC)로 변환해서 lcd에 표시하는 방법을 알고 싶습니다.그런 건 보통 제조사 쪽에서 변환해서 쓸 수 있는 공식 같은 게 있다고 들었습니다,그래서 센서 구매 한 곳에서 MQ-3 데이터 시트를 찾았는데 일단 영어로 되어있어서 번역기 돌려서 내용 파악은 대충 했습니다.하지만 정작 필요한 정보는 제가 놓친 건지 얻지 를 못했습니다. 여기 데이터 시트에서 해당 내용이 있는지 확인해주시면 감사하겠습니다.
댓글 1
조회수 1,357master님의 댓글
master 작성일
https://cafe.naver.com/circuitsmanual/16764
https://cafe.naver.com/circuitsmanual/180179
참고하세요