bme280, nRF51822 internal temperature, oled ssd1306 128x64. Короче сборный тест.
Dependencies: mbed SSD1306_128x64_I2C BLE_API nRF51822 Buzzer
Revision 4:606e79b9a9ce, committed 2019-11-30
- Comitter:
- mamont090671
- Date:
- Sat Nov 30 09:03:25 2019 +0000
- Parent:
- 3:3657b1eb1054
- Commit message:
- bme280, nRF5188, ble400, ssd1306_i2c_128x64, buzzer
Changed in this revision
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Buzzer.lib Sat Nov 30 09:03:25 2019 +0000 @@ -0,0 +1,1 @@ +https://os.mbed.com/users/Ihsianmulla/code/Buzzer/#e29e9889cfb4
--- a/main.cpp Sat Nov 30 07:14:38 2019 +0000 +++ b/main.cpp Sat Nov 30 09:03:25 2019 +0000 @@ -3,9 +3,12 @@ #include "bme280.h" #include "stdlib.h" #include "mbed_logo.h" +#include "mammoth.h" //nrf51822 temperature #include "nrf.h" #include "nrf_temp.h" +//buzzer test +#include "beep.h" //Присваиваем пины для i2c #define D_SDA P0_0 @@ -20,6 +23,12 @@ float t; //температура градусы цельсия float pr; //давление мм ртутного столба int h; //влажность % + +int flag; + +//buzzer test +Beep buzzer(P0_2); + //адрес дисплея uint8_t address = 0x78; //инициализация i2c @@ -65,8 +74,9 @@ wait_ms(10); } i = 0; - oled.writeBitmap((uint8_t*) mbed_logo); - while(i<100){ +// oled.writeBitmap((uint8_t*) mbed_logo); + oled.writeBitmap((uint8_t*) mammoth); + while(i<100) { i++; wait_ms(10); } @@ -87,16 +97,17 @@ int main() { + flag = 0; //nrf51822 temperature float temp; nrf_temp_init(); - + //Initialise LED output led0=0; led1=0; led2=0; led3=0; - + //Set falling and rising edge to apppropriate interrup function sw1Press.fall(&triggerfall_1); sw1Press.rise(&triggerrise_1); @@ -113,21 +124,23 @@ while(1) { //nrf51822 temperature NRF_TEMP->TASKS_START = 1; /* Start the temperature measurement */ - while ((NRF_TEMP->EVENTS_DATARDY & TEMP_INTENSET_DATARDY_Msk) != (TEMP_INTENSET_DATARDY_Set << TEMP_INTENSET_DATARDY_Pos)){} + while ((NRF_TEMP->EVENTS_DATARDY & TEMP_INTENSET_DATARDY_Msk) != (TEMP_INTENSET_DATARDY_Set << TEMP_INTENSET_DATARDY_Pos)) {} NRF_TEMP->EVENTS_DATARDY = 0; temp = (nrf_temp_read()/4); NRF_TEMP->TASKS_STOP = 1; /* Stop the temperature measurement */ - + led4=!led4; bme280.read(); t = bme280.temperature(); float p = bme280.pressure()/100; pr = p*0.750062; h = bme280.humidity(); - Display_Meteo(t, pr, h); + if(flag == 0) { + Display_Meteo(t, pr, h); - oled.writeString(7, 2, "T_nRF: "); - oled.printf("%.1f",temp); + oled.writeString(7, 2, "T_nRF: "); + oled.printf("%.1f",temp); + } wait_ms(1000); } } @@ -136,21 +149,34 @@ { //Toggle LED1 led0=!led0; + if(flag == 0) { + oled.clearDisplay(); + flag = 1; + wait_ms(10); + oled.writeBitmap((uint8_t*) mammoth); + } } - + //Button1 rising interrupt function void triggerrise_1() { //Toggle LED2 led1=!led1; +//buzzer test + buzzer.beep(1000,0.5); +// oled.writeBitmap((uint8_t*) mammoth); } //Button1 falling interrupt function void triggerfall_2() { //Toggle LED3 led2=!led2; + if(flag == 1) { + oled.clearDisplay(); + flag = 0; + } } - + //Button1 rising interrupt function void triggerrise_2() {
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mammoth.h Sat Nov 30 09:03:25 2019 +0000 @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// File generated by LCD Assistant +// http://en.radzio.dxp.pl/bitmap_converter/ +//------------------------------------------------------------------------------ + +const unsigned char mammoth [] = { +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xC0, +0xE0, 0xF8, 0xFC, 0xFC, 0xFC, 0xFE, 0xFE, 0xFE, 0xFC, 0xF8, 0xF8, 0xE0, 0xC0, 0x80, 0x80, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x80, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF8, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0xF3, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xC7, +0x1E, 0xFC, 0xF8, 0xF8, 0xF0, 0xE0, 0xE0, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0xFF, +0x87, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xF8, 0x83, 0x0F, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x0F, 0x0F, 0xFF, 0xBF, 0xDF, 0xEF, 0xF7, 0xF7, 0xFB, +0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xFC, 0xF8, 0xF8, 0xF8, +0xF8, 0xE0, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, +0x07, 0x0F, 0x1C, 0x38, 0x38, 0x38, 0x3C, 0x3C, 0x1E, 0x0F, 0x0F, 0x07, 0x06, 0xF8, 0xF3, 0xE7, +0xE7, 0xC7, 0xC7, 0x47, 0xC7, 0xE0, 0xF0, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFC, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x7F, 0xFF, +0xFF, 0xFF, 0xE1, 0x00, 0xFF, 0xFF, 0xFF, 0x7F, 0x3F, 0x7F, 0x7F, 0x7F, 0x3F, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7F, 0x7F, 0x7F, 0x7F, 0x3F, 0x3F, 0x3F, 0xFF, 0xFF, 0xFF, +0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x39, +0x3B, 0x27, 0x2F, 0x1F, 0x1C, 0x3B, 0x3B, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x3F, +0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3C, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x37, 0x3F, +0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x3F, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0xFF, 0xFF, 0x7C, 0xF8, 0xF8, 0x7C, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x80, 0xFE, 0x7F, 0x3E, +0xFF, 0xE0, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x7E, 0xF8, 0xF0, 0xF8, 0x7E, 0xFF, 0xFE, 0x00, 0xFE, +0xFF, 0x7E, 0xF8, 0xE0, 0xF0, 0x7E, 0xFF, 0xFF, 0xFE, 0xFC, 0xFE, 0xFE, 0x07, 0x07, 0x07, 0xFE, +0xFE, 0x00, 0x06, 0x06, 0x07, 0xFE, 0xFF, 0x06, 0x07, 0x00, 0x00, 0xFF, 0xFE, 0xC0, 0xC0, 0xC0, +0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x3F, 0x3F, 0x00, 0x01, 0x01, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x38, 0x3F, 0x07, 0x07, 0x07, +0x07, 0x3F, 0x3E, 0x20, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x03, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x3F, +0x3F, 0x00, 0x00, 0x07, 0x03, 0x00, 0x3F, 0x3F, 0x3F, 0x0F, 0x1F, 0x3F, 0x38, 0x38, 0x38, 0x3F, +0x1F, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, +0x3F, 0x3F, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +};