본문 바로가기

I2C

(9)
#STM32G030 EVM - I2C 테스트 (TMP275 온도 센서의 온도 측정) #STM32G030 EVM - I2C 테스트 (TMP275 온도 센서의 온도 측정) STM32G-SSM EVM 보드는 표준 핀맵을 통일화 해서 다양한 확장보드에 공용으로 테스트 할 수 있도록 제작한 보드 이다. I2C도 핀 맵핑에 따라 동일한 위치에서 테스트 가능하다. SSM EVM표준 핀맵 SSM EVM 확장 테스트 보드 연결SSM EVM 표준 핀맵을 테스트 할수 있는 다양한 확장 테스트 보드를 이용해서 I2C 테스트를 진행 해 볼수 있다. 우선 I2C로 온도 값을 읽을 수 있는 TMP275 온도 센서 모듈을이용하여 SSM EVM 확장 테스트 보드에 연결하여 I2C를 테스트 해 보자. STM32CubeIDE를 이용하여 기본 핀맵 설정하고 I2C 셋팅을 한 후 코드 생성하면 자동으로 I2C 설정 코드가 ..
[STM32F373 EVM] I2C 테스트 - 9축 IMU 센서 테스트 [STM32F373 EVM] I2C 테스트 - 9축 IMU 센서 테스트 [STM32F373 EVM]에는 I2C가 PB8(SCL), PB9(SDA)에 할당되어 있다. I2C테스트를 위해 9축 IMU센서(BNO055 EVM)의 롤,피치 값을 TFT LCD에 표시하는 예제를 작성해 보았다. PB8 -> SPI2_SCK/I2S2_CK,I2C1_SCL, USART3_TX,CAN_RX, CEC, TIM16_CH1,TIM4_CH3, TIM19_CH3,COMP1_OUT, TSC_SYNCPB9 -> SPI2_NSS/I2S2_WS,I2C1_SDA, USART3_RX,CAN_TX, IR_OUT,TIM17_CH1, TIM4_CH4,TIM19_CH4, COMP2_OUT STM32F373 EVM 회로도 핀맵 STM32F373의 ..
dsPIC33 EVM - I2C 테스트 dsPIC33 EVM - I2C 테스트 dsPIC33 EVM 보드의 I2C는 RG2(SCL), RG3(SDA)에 연결되어 있다. dsPIC33 I2C 초기화 코드void i2c_init(unsigned int Speed){OpenI2C1( I2C_ON, I2C_BRG );} dsPIC33 I2C Read/Write 소스 코드unsigned char i2c_read_byte(unsigned char Addr, unsigned char reg){unsigned char data = 0;unsigned char SlaveAddress = Addr;char i2cData[10];int DataSz;int Index = 0;i2cData[0] = (SlaveAddress
[STM32F4] I2C 테스트 - 3축 가속도 센서 TFT LCD 출력 [STM32F4] I2C 테스트 - 3축 가속도 센서 TFT LCD 출력 3축 가속도 센서를 테스트 해야할 일이 있어 STM32F407 보드를 이용하여 I2C 테스트를 해보았다. 기존 STM32F103 I2C 테스트 코드과 크게 차이 없이 테스트 가능했다. [EXP-NET EVM] 보드에는 I2C(SPI)로 연결되는 자이로, 가속도, 온도, 압력 센서등의 모듈을 연결할 수 있는 표준핀맵 커넥터가 있다. SM-Type EVM 에는 핀 8번에, M-Type EVM에는 핀 13번에 각각 CS핀이 할당되어 있다. STM32F4 I2C테스트 동영상STM32F407 을 이요하여 3가속도 센서의 데이터를 TFT-LCD에 그래프로 표시하는 테스트 예제 STM32F4 I2C 초기화 코드void i2c_init1(unsi..
[LM3S608] Simple I2C 테스트 - simple polling mode [LM3S608] Simple I2C 테스트 - simple polling mode 간단히 [LM3S608]의 I2C 개념 잡기 위해 우선 polling모드로 I2C Slave의 데이터를 읽어오는 실험을 했다. I2C 구조 I2C초기화 함수 void i2c_init(void) { SysCtlPeripheralEnable(SYSCTL_PERIPH_I2C0); SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); // // Enable processor interrupts. // IntMasterEnable(); // // Configure the appropriate pins to be I2C instead of GPIO. // GPIOPinTypeI2C(GPIO_PORTB_BA..
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..
MSP430 I2C 테스트 - USCI(H/W SM) vs USI (MSP430F2013 S/W SM I2C) Universal Serial Interface MSP430F2013은 USI모듈로 SPI, I2C인터페이스를 제공한다. I2C는 USCI를 지원하는 상위 MSP430과 같은 풀 하드웨어로 동작하는것은 아니고 소프트웨어 State Machine를 구현해야 한다. 이때문에 약간 귀찮은 작업을 해 주어야 한다. 물론 속도도 느려지지만 그나마 소형 모듈에서 쉽게 구현할 수 있다는 장점이 있다. 소프트웨어 SM 구조 Slave 구현 1)Master에서 Start + (7bit+1bit)Address를 전송하고 NACK를 기다린다. 2)Slave에서 Address가 맞으면 NACK를 전송한다. 3)Slave에서 Data 전송한다. 4)Master에서 Data수신후 NACK를 송신 5)Slave에서 NACK수신 6..
[ PCA9539 ] I2C to Parallel Port Expander [ PCA9539 ] I2C to Parallel Port Expander http://focus.ti.com/docs/prod/folders/print/pca9539.html