'STM32F4 Tips'에 해당되는 글 2건

  1. STM32 SPL LL CUBE Driver
  2. STM32F4xx Clock Configuration 클럭 계산기

STM32 SPL LL CUBE Driver



ST에서 맨 처음에 나온게 SPL 드라이버 입니다. (Standard Peripheral Library)

현재 포지션에서도 그렇게 예전에도 그렇고 딱 중간 만큼 좋은 드라이버 입니다. 위,아래로 커버가 가능한..


그 다음에 STM32Cube HAL 드라이버인데....

이게 좀 처음 나왔을때는 겁나 좋은건가?? 했는데... 기존에 SPL드라이버 쓰던 사람들은 적응 불가 입니다.

더구나, SPL드라이버 베이스로 작업해놓은 FW LIB들이 모두 무용지물이 됩니다. 혼용 불가...

더해서 ST에서는 새로운 MCU제품군에서는 SPL드라이버 지원을 하지 않게 됩니다. F7, L0, L4

외국 포럼등에서도 저와 같이 SPL드라이버를 계속 지원 요청하는 글들이 많이 보입니다.


하지만 다 나쁠수는 없고, STM32Cube HAL 드라이버는 ST에서 나오는 수백가지 MCU제품군을 단 몇 분만에 사용자 정의 실행 가능한 기본 코드가 생성하는 

대단한 면도 있습니다. 개발자로서는 포기 하기 어렵죠.


위와 같은 cube 단점을 커버하기 위해? ST에서 STM32Cube LL(LowLevel) 지원을 하면서 사실상 SPL은 더 이상 지원하지 않을 것 같습니다.

LL드라이버는 CUBE설치후 LIB Update하면 볼 수 있는데, 대부분의 code가  header 에서 inline 함수로 register direct access 위주로 만들어져 있습니다.


향후는 cube로 작업하는게 맞을것 같습니다....

자세한 문서는 아래 링크....







올해 1분기에 모든 제품군에 대해서 LL 드라이버 지원을 하게 됩니다. 

사실상 CUBE 가 Main이 되는거죠

'STM32F4 Tips' 카테고리의 다른 글

STM32F4xx Clock Configuration 클럭 계산기  (0) 2013.11.11

STM32F4xx Clock Configuration 클럭 계산기


STM32F4xx_Clock_Configuration_V1.1.0.xls



STM 내부 클럭 계산기 입니다.





요걸 돌리면 흔히 ST 예제에 들어 있는 system_stm32f4xx.c 코드가 생성 됩니다.


예제와 다른 외부 crystal 값을 사용한다거나, 변칙적인 클럭 운용시 활용 합니다.



 

 *=============================================================================

  *=============================================================================

  *        Supported STM32F40xx/41xx/427x/437x devices

  *-----------------------------------------------------------------------------

  *        System Clock source                    | PLL (HSE)

  *-----------------------------------------------------------------------------

  *        SYSCLK(Hz)                             | 168000000

  *-----------------------------------------------------------------------------

  *        HCLK(Hz)                               | 168000000

  *-----------------------------------------------------------------------------

  *        AHB Prescaler                          | 1

  *-----------------------------------------------------------------------------

  *        APB1 Prescaler                         | 4

  *-----------------------------------------------------------------------------

  *        APB2 Prescaler                         | 2

  *-----------------------------------------------------------------------------

  *        HSE Frequency(Hz)                      | 8000000

  *-----------------------------------------------------------------------------

  *        PLL_M                                  | 8

  *-----------------------------------------------------------------------------

  *        PLL_N                                  | 336

  *-----------------------------------------------------------------------------

  *        PLL_P                                  | 2

  *-----------------------------------------------------------------------------

  *        PLL_Q                                  | 7

  *-----------------------------------------------------------------------------

  *        PLLI2S_N                               | 426

  *-----------------------------------------------------------------------------

  *        PLLI2S_R                               | 4

  *-----------------------------------------------------------------------------

  *        I2S input clock(Hz)                    | 106500000

  *                                               |

  *        To achieve the following I2S config:   |

  *         - Master clock output (MCKO): ON      |

  *         - Frame wide                : 16bit   |

  *         - Audio sampling freq (KHz) : 32      |

  *         - Error %                   : 0.0038  |

  *         - Prescaler Odd factor (ODD): 1       |

  *         - Linear prescaler (DIV)    : 6       |

  *-----------------------------------------------------------------------------

  *        VDD(V)                                 | 3.3

  *-----------------------------------------------------------------------------

  *        Main regulator output voltage          | Scale1 mode

  *-----------------------------------------------------------------------------

  *        Flash Latency(WS)                      | 5

  *-----------------------------------------------------------------------------

  *        Prefetch Buffer                        | ON

  *-----------------------------------------------------------------------------

  *        Instruction cache                      | ON

  *-----------------------------------------------------------------------------

  *        Data cache                             | ON

  *-----------------------------------------------------------------------------

  *        Require 48MHz for USB OTG FS,          | Enabled

  *        SDIO and RNG clock                     |

  *-----------------------------------------------------------------------------


'STM32F4 Tips' 카테고리의 다른 글

STM32 SPL LL CUBE Driver  (0) 2017.01.17