본문 바로가기

AVR

(62)
[Atmega8 EVM] USB HID 테스트 [Atmega8 EVM] USB HID 테스트 USB HID을 이용하면 윈도 표준 입력 인터페이스로 드라이버 필요 없이(정확히는 Windows 내부 표준 드라이버) USB연결 할 수 있다. USB Mouse, Keyboard, Joystick 등이 이 표준을 따르는데 USB를 연결하면 바로 동작하기 때문에 사용자 입장에서 상당히 편리한 인터페이스 이다. 이번에는 AVR AtMega8 (ATMega8-EVM) 의 USB 소프트웨어 스텍을 이용하여 HID Data 테스트를 해 보았다. 스프트웨어 스텍이라 약간 불안하거나 속도에 문제가 있지 않을까 했는데.. 테스트 결과 속도도 나쁘지 않고 저렴고 간단하게 사용할 수 있어서 좋은것 같다. Atmeg8 EVM을 USB에 연결하면 HID장치로 인식되고 휴먼인터페이..
AVR 와치독(Watchdog) 타이머 사용하기 AVR 와치독(Watchdog) 타이머 사용하기 MCU가 예외 상황으로 멈춰 있을때 리셋을 걸어 주어야 하는데.. 이때 Watchdog를 사용할 수 있다. 초기화는 WDTCR레지스터의 비트3을 설정해주면 와치독 타이머가 동작한다. 이때 주의 사항은 MCUSR레지스터의 WDRF비트를 0으로 설정해 주어야 한다. 와치독 타이머가 동작하면 설정한 주기 이내로 레지스터 값을 클리어 해 주어야 하는데 #asm("WDR") 로 가능하다. WIN AVR을 이용하면 wdt.h에 기본 함수가 정의 되어 있어 간단히 사용할 수 있다. AVR Watchdoc 타이머 사용 예제 소스코드 #include #define WDTO_15MS 0 #define WDTO_30MS 1 #define WDTO_60MS 2 #define W..
[ATXmega128A1 EVM] 보드 제작 [ATXmega128A1 EVM] 보드 제작 Atmel의 ATXmega128A1 EVM 보드를 제작 했다. 예전에 만들어 두었던 보드 인데 정리하면서 조립 했다. (XMega128A1 을 지인으로 부터 받아서..) 1.6~3.3V 에서32Mhz, 8개의 16bit timer, SPI 4채널, TWI 채널, USART 8채널, DMA 지원하고, SDRAM도 연결가능하니 나쁘지 않다. 기존 제작된 보드와 핀맵을 호환 되도록 했고 USB2UART나 Bluetooth모듈을 연결할 수 있다. IR센서를 연결 할 수 있어 리모콘 수신 테스트를 해 볼수 있다. 포트가 풍부하다 보니(SPI 4채널) 뒷면에 T-Flash 연결 가능하도록 했다. 확장 테스트 보드 TFT-LCD테스트 확장 모듈 이더넷 테스트 확장모듈 사실..
[Mega8-SM EVM] 소형 AVR보드 제작 [Mega8-SM EVM] 소형 AVR보드 제작 기존 [Mega8-s EVM]에 확장해서 [SM-Type EVM] 로 제작 했다. SM-Type은 USB2Seral 모듈이나 Bluetooth 모듈 등을 연결할수 있고 SPI, I2C, UART등의 자주사용하는 기능을 표준화된 핀맵으로 정의해서 제작하고 있다. 또한 소프트웨어 USB스택을 테스트 할 수 있도록 USB커넥터를 연결 하능하다. (참고 USB 관련 테스트 예제, USB 호스트 예제) USB커넥터를 두어 SW USB Stack을 테스트 할 수 있을 뿐아니라 USB2UART가 있어 디버깅 및 Arduino 를 쉽게 포팅할 수 있도록 제작했다. 회로도 확장 커넥터 on board LED USB Connector
MSP430 I2C 전송 속도 테스트 MSP430 I2C 전송 속도 테스트 MSP430F2013 보드는 UART가 없어 I2C로 데이터를 수집테스트 정리 구성도 MSP430F2013 (I2C Slave) ->AVR (I2C Master) -> USB2Serial -> PC Host AVR - > 8Mhz 구동 MSP430F2013 -> 16Mhz구동 2Byte 데이터 수집 속도 측정 H/W 구동시 100Khz 구동시 450us 소요된다. 150Khz 까지 구동 가능하고 이때는 300us 소요된다. (200Khz 이상부터 깨지기 시작한다.) ->메인클럭을 16Mhz까지 올리니 400khz도 문제 없이 잘 동작한다. S/W I2C 구현시 AVR 8Mhz클럭에서 600us 소요된다. H/W I2C 구현 예제 unsigned char ReadByt..
[W5100 EVB] Simple UDP Test - 4 channel loop back source code [W5100 EVB] Simple UDP Test - 4 channel loop back source code 간단한 UDP 루프백 테스트 프로그램 작성. 4개의 소켓을 생성해 UDP로 받은 데이터를 다시 송신하는 예제이다. 4개의 클라이언트 프로그램으로 UDP로 접속해 loopback 테스트를 할 수 있다. //----------------------------------------------------------------------------- /** * UDP loopback program. */ void loopback_udp(SOCKET s, uint16 port) { unsigned int len; unsigned char buf[MAX_BUF_SIZE]; unsigned char desti..
[myAVR] M-Type AVR보드 제작 [myAVR] M-Type AVR보드 제작 Atmega128 보드를 새로운 형태로 제작했다. [M-Type EVM] 형태로 제작 했고, 50 I/O이상은 앞으로 이 표준으로 제작 할 예정이다. UART, SPI, PWM, I2C, Data8, Ctrl8, GPIO, CAN등의 표준을 지킬 생각이다. LED, Switch, Buzzer, VR, SD Card, Data Flash 기본 테스트 페리가를 가지고 있다. 자이로, 가속도 등의 센서를 연결할 수 있도록 하고 USB, Ethernet(Enc28J60), Bluetooth등의 인터페이스도 표준으로 연결 가능하도록 했다.
초소형 W5300 Web Server Module 보드 제작 AVR128, 64k SRAM Memory, 512k Flash Memory, W5300을 이용하여 초소형 웹서버 모듈을 만들었다.