본문 바로가기

Embedded system/Microcontroller4

ATmega2560의 ADC (2) 이번에는 Atmega2560의 ADC를 이용하여 가변 저항의 값을 읽어보도록 하겠습니다. 가변저항은 ATmega2560보드에 부착되어 있는 것으로 사용했습니다. 우선 두 가지의 모드가 존재합니다. 프리 러닝 모드 코드 단일 변환 모드 코드 프리 러닝 모드는 자동 트리거 모드에 속하는 모드입니다. 자동 트리거 모드는 이전 변환이 끝나면 특정 신호에 의해 다시 AD 변환이 시작되는 모드인데, 이에 속하는 프리 러닝 모드는 이전 변환이 끝나면 자동으로 다음 변환이 시작됩니다. 단일 변환 모드는 변환 시작 신호가 주어지면 한 번 AD 변환을 수행하고 끝내는 모드입니다. 딱 한번만 변환하려면 단일 변환 모드 여러번 반복할건데, 특정 신호에 의해 시작하고 싶다면 자동 트리거모드 여러번 반복할건데, 자동으로 시작하고.. 2021. 10. 26.
ATmega2560의 ADC (1) ADC란? 아날로그 – 디지털 변환기 (Analog-Digital Converter ADC) ATmega2560을 비롯하여 대다수의 uC에는 ADC가 꼭 필요합니다. ATmega2560의 ADC 특징 uC는 디지털 컴퓨터의 일종으로 디지털 데이터만을 처리 가능 온도, 조도 등 주변환경에서 측정할 수 있는 데이터들은 연속적인 아날로그 데이터 아날로그 데이터를 처리하기 위해서는 디지털 데이터로 변환해야 함 10비트 해상도 ADC : 아날로그 전압을 0~1023사이의 디지털 값으로 변환v16개의 채널은 포트 F(PF0~PF7)와 포트 K(PK0~PK7)에 연결 ADC 채널 16개이며, 하나의 AD 변환기에 멀티플렉서로 연결되어 있어 한 번에 하나의 아날로그 입력만을 디지털로 변환할 수 있음 Ex. 온도 센서의.. 2021. 10. 26.
ATmega2560의 EEPROM을 SPI 통신으로 데이터 읽고 쓰기 ATmega2560의 EEPROM을 이용하여 바이트 데이터를 읽고, 쓰는 과정을 진행해보겠습니다. 우선 ATmega2560에서 EEPROM의 위치와 Schematic을 확인합니다. ATmega2560에서 사용하는 EEPROM은 마이크로칩사의 25LCn EEPROM입니다. 64Kbit의 메모리를 가지고 있습니다. 1바이트 데이터를 읽는 방법 EEPROM 칩 선택 CS핀에 LOW 가하기 읽기에 해당하는 8비트 명령어 전송(0x03) 데이터를 읽을 EEPROM의 주소를 전송(13비트) 바이트 단위로 상위 바이트부터 2번에 나누어 전송 EEPROM에서는 해당 메모리 번지의 바이트 값을 마이크로컨트롤러로 전송할 준비 완료 실제로 EEPROM에서 1바이트의 데이터를 읽기 위해서는 임의의 1바이트 값을 슬레이브로 전.. 2021. 9. 16.
SPI(Serial Peripheral Interface) SPI란 UART와 같은 전이중 방식의 시리얼 통신 마스터 – 슬레이브 구조 가짐 일대다(1:N) 통신이 가능 마스터 -> 연결 시작 후 통신을 제어 연결이 성립되면 두 개의 데이터 선을 통해 데이터 주고 받음 동기화의 문제를 해결하기 위해 SPI는 송신과 수신이 항상 동시 진행 마스터 장치가 제공하는 클록에 의해 데이터 전송 이루어짐 마스터와 슬레이브 장치의 데이터 버퍼가 원형 큐 구조를 가짐 SPI에서 사용하는 핀 MOSI(Master Output Slave Input) : 마스터 -> 슬레이브 데이터 전송 MISO(Master Input Slave Output) : 슬레이브 -> 마스터 데이터 전송 SCK(Serial Clock) : SPI 동기화를 위한 클록 전송 SS(Slave Select) 혹.. 2021. 9. 16.