stm32l010 oled hal

Dependencies:   SMALL_HAL_SSD1308_128x64_I2C mbed

Committer:
caa45040
Date:
Fri Aug 05 06:17:37 2022 +0000
Revision:
0:1aba40096cb1
stm32l010 oled hal

Who changed what in which revision?

UserRevisionLine numberNew contents of line
caa45040 0:1aba40096cb1 1
caa45040 0:1aba40096cb1 2 //HAL_oled_16x24_010_1
caa45040 0:1aba40096cb1 3
caa45040 0:1aba40096cb1 4
caa45040 0:1aba40096cb1 5 #include "mbed.h"
caa45040 0:1aba40096cb1 6 #include "SSD1308.h"
caa45040 0:1aba40096cb1 7
caa45040 0:1aba40096cb1 8
caa45040 0:1aba40096cb1 9 #define ADDR (0x70<<1) // address
caa45040 0:1aba40096cb1 10
caa45040 0:1aba40096cb1 11 int main() {
caa45040 0:1aba40096cb1 12
caa45040 0:1aba40096cb1 13 __HAL_RCC_GPIOA_CLK_ENABLE();
caa45040 0:1aba40096cb1 14
caa45040 0:1aba40096cb1 15 GPIO_InitTypeDef GPIO_InitStruct = {0};
caa45040 0:1aba40096cb1 16
caa45040 0:1aba40096cb1 17 GPIO_InitStruct.Pin = GPIO_PIN_9|GPIO_PIN_10;
caa45040 0:1aba40096cb1 18 GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
caa45040 0:1aba40096cb1 19 GPIO_InitStruct.Pull = GPIO_PULLUP;
caa45040 0:1aba40096cb1 20 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
caa45040 0:1aba40096cb1 21 GPIO_InitStruct.Alternate = GPIO_AF1_I2C1;
caa45040 0:1aba40096cb1 22 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
caa45040 0:1aba40096cb1 23
caa45040 0:1aba40096cb1 24 GPIO_InitStruct.Pin = GPIO_PIN_4;
caa45040 0:1aba40096cb1 25 GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
caa45040 0:1aba40096cb1 26 GPIO_InitStruct.Pull = GPIO_NOPULL;
caa45040 0:1aba40096cb1 27 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
caa45040 0:1aba40096cb1 28 HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
caa45040 0:1aba40096cb1 29
caa45040 0:1aba40096cb1 30 __HAL_RCC_I2C1_CLK_ENABLE();
caa45040 0:1aba40096cb1 31
caa45040 0:1aba40096cb1 32
caa45040 0:1aba40096cb1 33 I2C_HandleTypeDef hi2c1;
caa45040 0:1aba40096cb1 34
caa45040 0:1aba40096cb1 35 hi2c1.Instance = I2C1;
caa45040 0:1aba40096cb1 36 hi2c1.Init.Timing = 0x00000708;
caa45040 0:1aba40096cb1 37 hi2c1.Init.OwnAddress1 = 0;
caa45040 0:1aba40096cb1 38 hi2c1.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
caa45040 0:1aba40096cb1 39 hi2c1.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
caa45040 0:1aba40096cb1 40 hi2c1.Init.OwnAddress2 = 0;
caa45040 0:1aba40096cb1 41 hi2c1.Init.OwnAddress2Masks = I2C_OA2_NOMASK;
caa45040 0:1aba40096cb1 42 hi2c1.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
caa45040 0:1aba40096cb1 43 hi2c1.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
caa45040 0:1aba40096cb1 44 HAL_I2C_Init(&hi2c1);
caa45040 0:1aba40096cb1 45
caa45040 0:1aba40096cb1 46 HAL_I2CEx_ConfigAnalogFilter(&hi2c1, I2C_ANALOGFILTER_ENABLE);
caa45040 0:1aba40096cb1 47
caa45040 0:1aba40096cb1 48 HAL_I2CEx_ConfigDigitalFilter(&hi2c1, 0);
caa45040 0:1aba40096cb1 49
caa45040 0:1aba40096cb1 50
caa45040 0:1aba40096cb1 51 wait_ms(200);
caa45040 0:1aba40096cb1 52
caa45040 0:1aba40096cb1 53
caa45040 0:1aba40096cb1 54 SSD1308 oled = SSD1308( &hi2c1 , SSD1308_SA0);
caa45040 0:1aba40096cb1 55 //SSD1308 oled = SSD1308( &hi2c1 , ADDR);
caa45040 0:1aba40096cb1 56
caa45040 0:1aba40096cb1 57
caa45040 0:1aba40096cb1 58
caa45040 0:1aba40096cb1 59 //char n1_8[] = "12345678";
caa45040 0:1aba40096cb1 60 char n1_8[] = "87654321";
caa45040 0:1aba40096cb1 61 //char n1_8[] = "88888888";
caa45040 0:1aba40096cb1 62
caa45040 0:1aba40096cb1 63 int ii=0;
caa45040 0:1aba40096cb1 64 for(int nn=0; nn<8; nn++) {
caa45040 0:1aba40096cb1 65 // y x
caa45040 0:1aba40096cb1 66 oled.writeBigChar(0, ii*16,n1_8[nn]);
caa45040 0:1aba40096cb1 67 ii = ii + 1;
caa45040 0:1aba40096cb1 68 } //for
caa45040 0:1aba40096cb1 69 //pc.printf("Printed something\r\n");
caa45040 0:1aba40096cb1 70 // printf("Printed something\r\n");
caa45040 0:1aba40096cb1 71
caa45040 0:1aba40096cb1 72 //oled.writeString(0, 0, "Hello World !");
caa45040 0:1aba40096cb1 73
caa45040 0:1aba40096cb1 74
caa45040 0:1aba40096cb1 75
caa45040 0:1aba40096cb1 76
caa45040 0:1aba40096cb1 77
caa45040 0:1aba40096cb1 78
caa45040 0:1aba40096cb1 79
caa45040 0:1aba40096cb1 80 }//main
caa45040 0:1aba40096cb1 81
caa45040 0:1aba40096cb1 82
caa45040 0:1aba40096cb1 83
caa45040 0:1aba40096cb1 84
caa45040 0:1aba40096cb1 85 //容量削減
caa45040 0:1aba40096cb1 86 void error(const char* format, ...) {}
caa45040 0:1aba40096cb1 87
caa45040 0:1aba40096cb1 88
caa45040 0:1aba40096cb1 89
caa45040 0:1aba40096cb1 90