본문 바로가기

SPI

(46)
[STM32F4] W5100/W5200 TPC/IP Loopback 전송 속도 테스트 [STM32F4] W5100/W5200 TPC/IP Loopback 전송 속도 테스트 SPI 최대 클럭 21Mhz에서 3.5Mbps 정도 나온다. 빠르긴 한데.. 아쉬운 점은 168Mhz MCU인데 속도가 기대한 만큼은 나오지 않는것 같다. (PIC32 CP/IP 전송 속도 테스트 결과 와 비교하면 80Mhz PIC32가 더 빠르게 나온다) SPI클럭 설정을 좀더 자유롭게 할 수 있으면 좋을것 같은데.... SPI FIFO가 없어 그런것 같은데... DMA를 이용하면 좀더 빨라지지 않을까? ------------------------------------------------------------ [7] iInChip Send: 3.5567 Mbps(5278574 bytes, 11.3230 sec) iI..
[STM32F4] SPI 테스트 [STM32F4] SPI 테스트 STM32F4 의 SPI는 3채널이 있고 37.5Mbits/s 로 고속 전송이 가능해 졌다고 한다. STM32F4 SPI 블록도 STM32F4 소프트웨어는 STM32F103과 거의 호환 가능하다. 초기화 부분에 GPIO설정 부분만 수정하면 문제 없이 동작한다. SPI클럭을 최대로 설정하니 42Mhz 정도 나온다. STM32F4 SPI 초기화 함수 void SPI0_Init(void) { SPI_InitTypeDef SPI_InitStructure; GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE); RCC_AHB1PeriphClockCmd(RCC_AHB1Periph..
[MSP430F5529 EVM] SPI테스트 - 3축 가속도 센서 출력 [MSP430F5529 EVM] SPI테스트 - 3축 가속도 센서 출력 [MSP430F5510 EVM] 및 [MSP430F5529 EVM] 의 SPI는 PORT4의 USB1에 할당 되어 있다. 핀맵을 보면 아래와 같다. P4.3/PM_UCB1CLK/PM_UCA1STE P4.2/PM_UCB1SOMI/PM_UCB1SCL P4.1/PM_UCB1SIMO/PM_UCB1SDA P4.0/PM_UCB1STE/PM_UCA1CLK MSP430F5x의 SPI특징 SPI mode features include: • 7-bit or 8-bit data length • LSB-first or MSB-first data transmit and receive • 3-pin and 4-pin SPI operation • Master ..
[W5200 EVM] TCP 전송 속도 테스트 [W5200 EVM] TCP 전송 속도 테스트 W5200을 이용하여 MCU별로 TCP/IP Loopback 전송 속도를 테스트 해 보았다. MCU별 SPI최대 속도도 참고 할 수 있는 자료가 될것 같다. TCP/IP 전송 속도 테스트 결과 참고 PIC32 마이크로 칩사의 PIC32는 SPI최대 속도가 20Mhz임에도 불구 하고 4MBps정도 까지 출력된다. SPI로 데이터 읽고 쓰는데 상당히 빠른것 같다. 저렴하면서 성능이 좋아 가장 마음에 든다. dsPIC33 SPI클럭 13Mhz 에서 최대로 나오며 2.4Mbps 정도 출력 된다. [3] iInChip Send: 2.3772 Mbps(6596649 bytes, 21.1710 sec) iInChip Recv: 2.4131 Mbps(6596649 byte..
[PIC32] W5200(W5100) TCP/IP Boopback 전송 속도 Test [PIC32] W5200(W5100) TCP/IP Boopback 전송 속도 Test 마이크로 칩사의 PIC32는 SPI최대 속도가 20Mhz임에도 불구 하고 4MBps정도 까지 출력된다. SPI로 데이터 읽고 쓰는데 다른 MCU보다 상당히 빠른것 같다. 저렴하면서 성능이 좋아 가장 마음에 든다. (SPI 효율은 가장 뛰어난것 같다.) TCP/IP 전송 속도 테스트 결과 참고 PIC32 W5200 제어 HAL 드라이버 코드 #define _SPI0_ENABLE 1 //----------------------------------------------------------------------------- // W5100 HAL #define W5100_CS_PORT LATG #define W5100_CS..
[LM3S8962 EVM] SPI테스트 - 3축 가속도센서 테스트 [LM3S8962 EVM] SPI테스트 - 3축 가속도센서 테스트 가속도 센서 테스트 드라이버 myMCU-EXP 보드의 가속도 센서(LIS3LV02)는 SPI0, CS(J18->16) ->RD3에 연결되어 있으므로 아래와 같이 드라이버 코드를 작성할 수 있다. //----------------------------------------------------------------------------- // myAccel3LV02 HAL #define MY_ACCEL3LV02_SPI_MODE 1 #define MY_ACCEL3LV02_I2C_MODE 0 #define ACCEL_CS_BIT BIT3 #define ACCEL_CS_PORT PORTD #define ACCEL_CS_INIT() SysCtlPe..
[CANTUS EVM] SPI테스트 - SPI 가속도 센서 테스트 [CANTUS EVM] SPI테스트 - SPI 가속도 센서 테스트 CANTUS의 SPI구조는 아래 그림과 같고 특징적으로는 8Byte FIFO가 있다. CANTUS SPI테스트를 위해 [NET-EVM]보드의 가속도 센서를 테스트 해 보았다. 가속도센서의 SPI CS핀은 P5.2에 연결되어 있다. ADChip사에서 제공하는 드라이버코드는 여러기능을 위해 작성되어 있기 때문에 속도 면이나 기존 코드를 위해 그냥 사용하기는 힘들다. 데이터시트보고 로레벨로 작성해 보았다. SUINT SPI0_WriteReadByte(SUINT Data) { //SPI포트로 데이터 출력 *R_SPI0DATA = Data; // 전송대기 while (!(*R_SPI0STAT & SPISTAT_SPIF)); //데이터 수신 retu..
[PIC32-SM EVM] SPI 테스트 - 가속도 센서 테스트 [PIC32-SM EVM] SPI 테스트 PIC32의 SPI는 최대 25Mhz로 동작하며 8, 16, 32비트로 설정가능하다. [PIC32-SM EVM] 보드에는 SPI핀이 SPI2 RG6(SCLK), RG7(MISO), RG8(MOSI)에 할당되어 있다. PIC32 블록도 PIC32 SPI초기화 void SPI0_Init(void) { SPI2CONbits.ON = 1; // Enable SPI2CONbits.FRZ = 0; SPI2CONbits.SIDL = 0; SPI2CONbits.DISSDO = 0; SPI2CONbits.MODE32 = 0; SPI2CONbits.MODE16 = 0; //8비트 모드 //SPI 모드 설정 SPI2CONbits.SMP = 0; //위상 설정 SPI2CONbits.C..

반응형