반응형
Notice
Recent Posts
Recent Comments
관리 메뉴

"Electronic Enginerring Odyssey"

PIC 마이크로컨트롤러 소개 본문

마이크로프로세서 (MPU)/PIC Microchip

PIC 마이크로컨트롤러 소개

Jerry_Lee_99 2024. 4. 11. 23:51
반응형

PIC 마이크로컨트롤러 소개

현재 우리가 살아가고 있는 세상은 대부분 자동화처리 시스템으로 이루어져 있습니다. 

특히 요즘은 식당이나 카페만 방문하더라도 무인주차정산시스템, 키오스크 자동 주문 등 주변에서 어렵지 않게 자동화장치들을 접할 수 있습니다.

 

약 80년 전으로 돌아가봅시다.

1946년 미국 펜실베이니아 대학에서 최초의 컴퓨터 에니악 (Electronic Numerical Integrator And Computer ; ENIAC) 이 개발되었습니다. 한글로 직역하면 전자식 숫자 적분 및 계산기가 되겠네요.

에니악은 약 18,000개의 진공관으로 이루어져 있어 고장이 잦았고 진공관을 교체하는데 많은 어려움을 겪었다고 알려져 있습니다.

 

현재 우리가 일상에서 다루는 컴퓨터는 메모리(기억장치)를 가지고 있지만 그 당시 에니악은 메모리를 가지고 있지 않아 계산을 위해서는 일일이 선을 연결하여 원하는 값을 입력해야 했습니다.

현재의 컴퓨터에 비해 굉장히 복잡하고 까다로운 시스템이었죠.

 

하지만 최초의 컴퓨터 에니악이 있었기에 전자공학의 지속된 발전으로 가정에 하나씩 가지고 있는 PC(Personal Conputer) 혹은 스마트폰이 탄생되었다고 생각합니다.

 

잠시 이야기가 빠졌습니다. 

다시 돌아와서 오늘 소개하고자 하는 내용은 MCU(Micro Controller Unit)입니다.

앞서 얘기했던 키오스크, 무인주차정산 시스템, 등 다수의 전자장치들이 MCU에 의해 구동된다고 설명해도 무방하죠.

 

최근에는 굉장히 다양한 형태의 MCU들이 등장하고 있습니다.  여러 동작을 수행할 수 있는 것뿐만 아니라 어떤 분야에서의 장점을 가진 형태로 출시되기도 합니다. 예를 들면 A라는 MCU는 저전력(Low Power)에 강점을 두고 설계되거나 B라는 MCU는 블루투스 통신(Bluetooth)에 강점을 두고 설계되기도 합니다.

 

그렇다면 MCU의 정의는 무엇일까요?

MCU의 사전적 정의는 "입출력 모듈을 하나의 칩으로 만들어 정해진 기능을 수행하는 컴퓨터"라고 되어있습니다. 즉 외부에 모터 혹은 기타 부가 장치들을 연결하여 사용자가 원하는 기능을 수행할 수 있도록 제작된 일종의 미니 컴퓨터라고 생각하면 됩니다.

 

컴퓨터를 놓고 생각했을 때 입력장치는 키보드, 마우스 등이 있고 출력 장치에는 모티터, 스피커 등이 있습니다. 하지만 최근 많이 보이는 키오스크를 생각해 봅시다. 카페에 가서 빵을 주문하기 위해 키오스크를 조작하려고 하니 터치 스크린이 있습니다. 사용자가 원하는 품목을 주문하기 위해 우리는 MCU에 입력 신호를 줄 것이고 그 매개체가 바로 터치 스크린이죠. 그런데 곰곰이 생각을 해보니 터치 스크린은 입력뿐만 아니라 사용자에게 메뉴 혹은 가격을 알려주는 역할을 하기도 합니다.  즉 현대사회에서는 하나의 부품이 입출력을 동시에 수행하기도 한다는 거죠.

이처럼 MCU는 우리 사회에서 없어서는 안 될 중요한 장치 중 하나가 되어버렸습니다. 최근에는 단순 기능을 수행하는 MCU뿐만 아니라 인공지능 AI (Artifical Intelligence)이 포함된 기기들도 많이 개발되고 있습니다.

 

PIC는 Microchip사에서 개발한 MCU입니다.

다양한 회사에서 많은 제품군을 출시하고 있지만 PIC의 장점은 제품군이 다양하다는 점입니다.

예를 들어 개발자가 전자시계를 개발한다고 가정합시다. 이때 개발자는 우선적으로 MCU를 선택해야 합니다.

기능, 가격, 온도범위 등등 (자세한 내용은 추후에 한번 더 다루도록 하겠습니다.)

개발자가 원하는 사양에 맞는 MCU를 선택해야겠죠.

 

개발자가 시계를 개발하기 위한 파라미터 중 MCU의 용량에 대해서만 생각을 해보겠습니다.

시계를 개발하기 위한 프로그램 파일의 용량이 만약 1 MByte 라면 비용적인 측면을 고려하였을 때 개발자는 약간의 여유를 두고 1.2 Mbyte ~ 최대 2 Mbyte 용량을 가진 MCU를 선정하고자 할 겁니다. 

우리가 필요한 양만 사용할 수 있으면 되니까요.

굳이 더 높은 비용을 지불하며 1 GByte의 MCU를 선정하지 않을 겁니다.

 

따라서 Microchip사에서 개발된 PIC는 다양한 제품군을 가지고 있어 사용자가 선택할 수 있는 폭이 넓다고 할 수 있습니다.

 

PIC에는 대표적으로 8비트 제품군, 16비트 제품군, 32비트 제품군을 지원합니다.

8비트 제품군에는  10Series, 12 Series, 16 Series 등이 있습니다.

뿐만 아니라 dsPIC (DSP + PIC)도 제공됩니다.

다양한 PIC 제품

ex) PIC10F206

ex) PIC12 F675

ex) PIC16 F628 A, PIC16 F877 A

 

위의 예시 의외에도 성능에 따라 굉장히 많은 제품군을 보유하고 있습니다. 각 칩마다 용량 혹은 I/O (Input/Output) 포트의 개수가 다르며 Timer, Interrupt 등 보유 기능에 따라 제품군이 나누어집니다.

앞으로 PIC 프로그램 예제를 다뤄보는 내용을 포스팅하도록 하겠습니다.

 

 

추가)

 

아래 사진은 집에 사용하던 흙침대의 고장으로 컨트롤러를 탈거하여 확인한 모습입니다.

PCB에 PIC16 Series가 사용된것을 확인할 수 있었습니다. 아무래도 Cost 이슈로 PIC가 산업현장에서 많이 사용되는것은 사실인것 같습니다.

흙침대 기판

 

반응형