USB 인사이드

Sources

Posts

12 posts

안드로이드<->보드 통신 프로토콜

USB 인사이드|2018년 3월 9일

TM4C1236D5PM에는 16개의 endpoint (control IN/OUT 2개 + 7쌍의 IN/OUT) 4 KB dedicated endpoint memory가 있다. 각 기능마다(Port I/O, UART, PWM, ADC, I2C, SPI) Endpoint를 할당하는 것이 좋을까? 그게 낫겠다. 한 기능에 할당된 endpoint가 stall 상태에 빠져도 다른 기능은 살아 있도록.

테스트보드 선정

USB 인사이드|2018년 3월 9일

사용할 칩 TM4C1236D5PMI TI사 Tiva™ C 시리즈 TM4C123x 코어 : Cortex-M4F, 32bit속도 : 80Mhz인터페이스 : CAN, I²C, IrDA, Microwire, SPI, SSI, UART/USART, USB OTGI/O갯수 : 49메모리 : 64KB Flash, 24KB RAM, 2KB EEPROM전압 : 1.08~3.63VA/D : 12x12b작동온도 : -40°C ~ 85°C패키지 : 64-LQFP가격 : 7,800원@0.1K(디지키, 2018/3/9)데모보드 : Tiva™ C 시리즈Connected LaunchPad(EK-TM4C1294XL) 선정이유 1. 이전 프로젝트에서 썼던 데모보드가 있다.(테스트 보드 안사도 된다.

앱작성을 위한배경지식

USB 인사이드|2018년 3월 8일

안드로이드 백그라운드 잘 다루기 Thread, Looper, Handler

안드로이드단 USB API

USB 인사이드|2018년 3월 7일

안드로이드앱에서 USB I/O보드를 컨트롤 하기위해 필요한 API 최우선 구현--------- UsbOpen UsbClose UsbSetPort(INPUT(0)/OUTPUT(1), 32bit):포트를 Input으로 쓸지 Output으로 쓸지 결정해주는 함수:포트는 default로 INPUT 상태 UsbReadPort(32bit):Input/Output 관계없이 포트의 상태(0/1)를 읽어들임:Alt Function(UART/I2C/SPI) 으로 쓰이는 포트들은 0 리턴(?)/ 리턴값이 의미없음(?) UsbWritePort(32bit) :출력으로 세팅된 포트에 대해서, 해당되는 자리의 비트 값(0/1)을 출력 우선구현------- UsbSetAlt(UART/I2C/SPI)

USB 테스트 보드 요구사양

USB 인사이드|2018년 3월 7일

요구사양 : USB full-speed device usb mini-B 커넥터 선호 외부 전원 공급: 5V 3.3V 인터페이스 I/O 포트 : 16개 이상 SPI/I2C/UART 인터페이스 각 1개 이상 : I/O 포트와 공유해도 괞찬음 1 ADC : 10/12bit 1 DAC : 10bit 이상 (jtag) (출력포트중 최소한 4개는 릴레이구동 가능하도록 Open-Drain(nMOSFET) 사용 : 24V, 500mA <-요건 외부보드에 넣어도 될 듯) (입력포트중 최소한 2개는 포토다이오드를 통한 입력 <-요건 외부보드에 넣어도 될 듯) 비슷하게라도 요구사양을 만족하는 보드가 있다면 시간들여 만들지 말고 사다쓰자.