GPIO

하드웨어 2011.08.29 15:05
GPIO는 General Purpose IO의 약자로, 일반적인 목적으로 쓰이는 IO 핀을 의미한다. 
여기서 일반적인 목적이라는 말은, 특정 목적에 따라 정해진 규약(I2C, SPI, SDIO 등)이 
아니라, 소프트웨어에서 자기가 원하는 목적에 맞게 핀을 제어할 수 있다는 말이다.
 
  GPIO 핀은 대개 소프트웨어가 직접 컨트롤할 수 있는 GPIO로도 쓸 수도 있고, 그 외에
다른 기능(위에서 언급한 기능들)로도 쓸 수 있는 데, 이러한 기능을 Alternative Functionality라고 부르며 각 MCU의 포트 설정에서 어떤 기능으로 쓸지를 명시 해 주면 된다. 
  그리고 GPIO핀은 설정에 따라 입력으로도, 출력으로도 사용이 가능하므로, 사용하기 전에 입력으로 쓸지, 출력으로 쓸지를 명시해주어야 한다. 

  이렇게 GPIO를 제어하기 위해서는 해당 핀에 대한 기능 설정, 입/출력 설정이 선행되어야 하며, 해당 핀의 값을 읽고 쓰는 것을 포함하여 모두 레지스터로 조작이 가능하다. 

정리하면 GPIO를 제어하기 위해서는 3가지 레지스터가 필요하다. 
1. 핀의 포트 설정을 위한 레지스터 
2. 핀의 입출력 상태를 지정하는 레지스터 
3. 핀의 데이터값을 담고 있는 레지스터

좀 더 상세한 정보는 아래 참고 

   관련 정보
 http://forum.falinux.com/zbxe/?document_srl=438015
  http://recipes.egloos.com/5145182 

'하드웨어' 카테고리의 다른 글

GPIO  (0) 2011.08.29
Posted by 라판