[ETC]Sys Tick

SysTick? STM32F051R8T6은 다양한 기능을 가진 타이머가 8개가 존재하며 이것들은 서로 독립적으로 동작을 한다. 일단 FND 제어때 쓰려고 하는 것인 만큼  설명이 필요한 타이머에 대한 포스팅은 일단 나중에 하기로 하고 간단하게 사용할 수 있는 24비트 타이머를 알아보자.   SysTick 타이머의 장점은 STK_RVR(SysTick_LOAD, 0xE000E014)에 클럭 소스를 입력 하면 STK_CVR(SysTick_VAL, 0xE000E018)이 다운카운터로 동작하고 “0”이되면 STK_CSR.B16(STK_CTRL 의 16비트 자리, 0x00010000)가 “1”이 …

Continue reading ‘[ETC]Sys Tick’ »

[FND제어]Chapter 1

FND (Flexible Numberic Display) 는 보통 Dynamic Display 방법으로 제어한다. 착시현상을 이용한 것인데 이 부분을 동영상으로 설명했으니 동영상을 먼저 확인하고 다음 설명으로 넘어가겠다. 동영상에서 관찰되는 것 처럼 FND 제어에서 Dinamic 방식의 핵심은 바로 시간차다. 1000의자리를 먼저 출력하고 1ms 후에 100의자리 표시, 또 1ms 후 10의 자리 표시, 또 1ms 후 1의 자리 총 5ms 이내의  빠른 …

Continue reading ‘[FND제어]Chapter 1’ »

[LED제어]Chapter 5

   

       

[LED제어]Chapter 4

 

       

[LED제어]Chapter 3

Chapter 2에서 GPIO_Digitial_Output() 함수에 대해서 간단히 설명을 했는데 Chapter 2는  논리합 연산으로 사용하고 싶은 Port를 선택할 수 있었다. 이번엔 16비트 중 하위 8bit를 Out Port로 지정하는 방법으로 설정하였다. 반대로 상위 8bit롤 Out Port로 지정하기 위해서는 _GPIO_PINMAS_HIGH, 전부 Out Port로 사용하기 위해서는  _GPIO_PINMAS_ALL  이런식의 지정하여 사용할 수 있다. 해당 소스를 Downloader 하면 LED의 교차동작을 확인할 수 있다.

[LED제어]Chapter 2

ST32F051 Discovery의 LED 점멸. 아래 코드를 복사해 컴파일 후 실행하면 ST32F051 Discovery에 장착되어 있는 Green LED와  Blue LED가 0.5초 간격으로  On/Off를 반복하는 코드 이다.

여기서 살펴보아야 하는건 GPIO_Digital_Output 함수이다. 이것은 STM32F051의 GPIO Pin을 Out Port로 설정하고 사용하는 Port를 설정하는 역할을 한다.   // for  ST MCUs : 함수 원형 void GPIO_Digital_Output(unsigned long *port, unsigned …

Continue reading ‘[LED제어]Chapter 2’ »

STM32F051F GPIO

Microprocessor 제어 중 가장 기본이 되는 항목은 바로 GPIO(General Purpose Input/Output)다 즉 여러 기능이 있는 입출력 포트를 말한다. 여기서  GPIO에 포함되어 있는   통신이나 아날로그는 기본 입출력 제어를 끝내고 진행하도록 하겠다. 눈으로 확인할 수 있고 비교적 다루기 쉬운  LED, FND, KEY, CLCD를 일단 다뤄보도록 하자. 아래는 Discorvery에 연결된 회로의 예다.  STM32F051 Discovery는 동작전압이 3.3V이므로  저항등 기타  타 소자는 …

Continue reading ‘STM32F051F GPIO’ »

Cortex-M0 STM32 실습환경

개인 생계문제로 방치만 하던 블로그를 다시 시작하는 의미로  새롭게 시작해 보고자 하는 것은  요즘 대세인 ARM을 다뤄보고자 한다.  8bit AVR도  겨우 쓰는놈이 뭔 16bit MCU 라는 생각을 하지만 Cortex-M Series 중 M0이 가장  만만해 보여  살짝 발을 담궈 보기로 한다. ARM 이란? Advanced RISC Machine 의 약자로 AVR(8bit) 보다 진보된 RISC 기계쯤으로 생각하면 되겠다. RISC는 또 무엇인가?  간단히 …

Continue reading ‘Cortex-M0 STM32 실습환경’ »