LSE_PUCRS
/
MQ4_example
Read ad values from sensor, and calculate the respective ppm value of respective gas .
main.cpp@0:9f3c885e7d4e, 2018-07-17 (annotated)
- Committer:
- renanbmx123
- Date:
- Tue Jul 17 04:40:44 2018 +0000
- Revision:
- 0:9f3c885e7d4e
MQ4 gas sensor example for reading 3 different types of gas.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
renanbmx123 | 0:9f3c885e7d4e | 1 | #include "mbed.h" |
renanbmx123 | 0:9f3c885e7d4e | 2 | #include "MQ4.h" |
renanbmx123 | 0:9f3c885e7d4e | 3 | |
renanbmx123 | 0:9f3c885e7d4e | 4 | Serial pc(USBTX, USBRX); // tx, rx |
renanbmx123 | 0:9f3c885e7d4e | 5 | MQ4 mq4(p18); // Analog Port to read from |
renanbmx123 | 0:9f3c885e7d4e | 6 | |
renanbmx123 | 0:9f3c885e7d4e | 7 | int main() { |
renanbmx123 | 0:9f3c885e7d4e | 8 | pc.baud(9600); |
renanbmx123 | 0:9f3c885e7d4e | 9 | mq4.begin(); // 'Calibrate' sensor |
renanbmx123 | 0:9f3c885e7d4e | 10 | MQ4_data_t MQ4_data; // Structure to hold data. |
renanbmx123 | 0:9f3c885e7d4e | 11 | pc.printf("Ro calculated: %f\r\n",mq4.get_Ro()); |
renanbmx123 | 0:9f3c885e7d4e | 12 | while (true) { |
renanbmx123 | 0:9f3c885e7d4e | 13 | pc.printf("H2 PPM: %.0f\r\n",mq4.readH2()); // Performs a one shot read of CO |
renanbmx123 | 0:9f3c885e7d4e | 14 | pc.printf("CH4 PPM: %.0f\r\n",mq4.readCH4()); // Performs a one shot read of Smoke |
renanbmx123 | 0:9f3c885e7d4e | 15 | pc.printf("LPG PPM: %.0f\r\n",mq4.readLPG()); // Performs a one shot read of LPG |
renanbmx123 | 0:9f3c885e7d4e | 16 | wait(1); |
renanbmx123 | 0:9f3c885e7d4e | 17 | pc.printf("................................\r\n"); |
renanbmx123 | 0:9f3c885e7d4e | 18 | mq4.read(&MQ4_data); // Alt reading method, reading to struct |
renanbmx123 | 0:9f3c885e7d4e | 19 | pc.printf("CO PPM: %.0f\r\n",MQ4_data.h2); // Return data from strut |
renanbmx123 | 0:9f3c885e7d4e | 20 | pc.printf("Smoke PPM: %.0f\r\n",MQ4_data.ch4); // Return data from strut |
renanbmx123 | 0:9f3c885e7d4e | 21 | pc.printf("LPG PPM: %.0f\r\n",MQ4_data.lpg); // Return data from strut |
renanbmx123 | 0:9f3c885e7d4e | 22 | pc.printf("................................\r\n"); |
renanbmx123 | 0:9f3c885e7d4e | 23 | wait(1); |
renanbmx123 | 0:9f3c885e7d4e | 24 | } |
renanbmx123 | 0:9f3c885e7d4e | 25 | } |
renanbmx123 | 0:9f3c885e7d4e | 26 |