DK-128 직렬통신 실습 아이티즌 기술연구소 2010.04.20
DK-128 메인보드 – 연산, 제어 확장보드 - 입출력 Serial port Parallel port FND LED high low FND low high LED low high EEPROM & Sensor ATmega 4K EEPROM Tact Switch EEPROM Power 1:TWI clock, 2:TWI data, 상위5~8:Infrared sensor
DK-128의 결선 8 line j19 red - j15 + black j18 j16 - + 8 line 1 1 2 61 1 25 j16 54 - + 35 42 8 line
LED OUT ATMEGA128 Key IN ADC=아날로그신호입력 Port A : I/O, 상위어드레스(ALE의한제어) 아날로그전원 프로그램 쓰기 LED OUT 전원 Port E : I/O, 외부인터럽트, ISP 프로그래밍 데이터/주소 모드 ATMEGA128 Key IN 전원 Port B : I/O, 타이머, 카운터, PWM, SPI 외부데이터메모리 접근 모드 Port D : I/O, TWI, UART직렬통신 Oscillator Real time clock시 Oscillator
ATmega128 USART Full Duplex 동작 비 동기(Asynchronous)와 동기 모두 동작 직렬 송수신 버퍼가 독립적 비 동기(Asynchronous)와 동기 모두 동작 두 개의 USART를 제공 – USART0, USART1 DK128은 USART1만 사용하도록 제작됨 UDR1 (USART1 I/O Data Register) UCSR1A (USART Control and Status Register A) UCSR1B (USART Control and Status Register B) UCSR1C (USART Control and Status Register C) UBRR1H/L (USART Baud Rate Registers)
단방향 직렬 통신 1/2
단방향 직렬 통신 2/2
직렬통신 테스트 윈도우의 하이퍼터미널은 미리 열어둔다. 파라미터: Baud 19200, no parity, 1 stop bit, 8byte size, no flow control 그리고 DK128의 전원을 끄고 켤 때 마다 프로그램이 수행되며 직렬포트로 데이터를 전송하고 종료된다.
양방향 직렬통신 직렬통신 수신 함수 구현 RXC bit ( Receive complete ) UCSR1A 레지스터의 7번째 비트 직렬통신시 데이터 입력이 있으면 1로 설정 됨
양방향 직렬통신 응용 직렬포트로 값을 입력 받아 LED 제어