본문 바로가기

공부/STM32F1

31.[stm32f103][hal] OLED SSD1306

반응형

0. 파일

ssd1306.zip


참고 사이트

https://github.com/afiskon/stm32-ssd1306

구매 사이트

http://www.devicemart.co.kr/1382233



1. STM32Cube 설정

이미 풀업 저항이 달려서 나온 제품~!!




2. 파일 설정



폴더를 열면 

Inc 폴더엔 .h 파일을

Src 폴더엔 .c 파일을 넣으면 됩니다.


3. IAR 설정






4. 소스

main.c

#include "main.h"

#include "stm32f1xx_hal.h"


/* USER CODE BEGIN Includes */

#include "ssd1306_tests.h"

/* USER CODE END Includes */


/* Private variables ---------------------------------------------------------*/

I2C_HandleTypeDef hi2c1;


/* USER CODE BEGIN PV */

/* Private variables ---------------------------------------------------------*/


/* USER CODE END PV */


/* Private function prototypes -----------------------------------------------*/

void SystemClock_Config(void);

static void MX_GPIO_Init(void);

static void MX_I2C1_Init(void);


/* USER CODE BEGIN PFP */

/* Private function prototypes -----------------------------------------------*/


/* USER CODE END PFP */


/* USER CODE BEGIN 0 */

void init() {

    ssd1306_TestAll();

}


void loop() {

HAL_Delay(100);

}

/* USER CODE END 0 */


/**

  * @brief  The application entry point.

  *

  * @retval None

  */

int main(void)

{

  /* USER CODE BEGIN 1 */


  /* USER CODE END 1 */


  /* MCU Configuration----------------------------------------------------------*/


  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */

  HAL_Init();


  /* USER CODE BEGIN Init */


  /* USER CODE END Init */


  /* Configure the system clock */

  SystemClock_Config();


  /* USER CODE BEGIN SysInit */


  /* USER CODE END SysInit */


  /* Initialize all configured peripherals */

  MX_GPIO_Init();

  MX_I2C1_Init();

  /* USER CODE BEGIN 2 */

  init();

  /* USER CODE END 2 */



  /* Infinite loop */

  /* USER CODE BEGIN WHILE */

  while (1)

  {


  /* USER CODE END WHILE */


  /* USER CODE BEGIN 3 */


  }

  /* USER CODE END 3 */


}



5. 결과


반응형