본문 바로가기

분류 전체보기

(1955)
LPC812 EVM - SPI 테스트 LPC812 EVM - SPI 테스트LPC812는 2개의 SPI를 내장하고 있다. 저가격 소형 칩이라도 기능은 막강하다. 특히 SWITCH MATRIX 방식으로 SPI 핀맵을 원하는 형태로 할당 할 수 있기 때문에 상상히 유연성이 좋은것 같다.SPI의 최대 클럭 속도는 메인클럭인 30Mhz까지 출력 가능하다. LPC812 SPI 블록도 LPC812 EVM 에서 SPI 핀맵할당LPC812 EVM에서 SPI핀맵은 아래와같이 할당 했고 Switch Matrix Tool을 이용하여 코드 생성을 쉽게 할 수 있다. LPC812 SPI 초기화 함수void SPI0_Init(void){ /* Enable SWM clock */ LPC_SYSCON->SYSAHBCLKCTRL |= (1PINASSIGN4 = 0xffff..
LPC812 EVM - UART 테스트 LPC812 EVM - UART 테스트 LPC812 는 3채널의 UART가 있다. 20핀 소형 페키지 임에도 불구하고 3개의 UART가 있어 유용하게 사용될곳이 많을것 같다.그리고 스위치 메트릭스라는 기능을 이용하여 UART핀을 자유롭게 맵핑할 수 있는것도 상당히 마음에 든다. 아래 그림은 LPC812의 UART 블록도 이다. LPC812 UART 핀맵핑 #if 1 /* connect the UART0 TXD abd RXD sigals to port pins(P0.4-P0.0)*/regVal = LPC_SWM->PINASSIGN0 & ~( 0xFF PINASSIGN0 = regVal | ( 4 PINASSIGN0 & ~( 0xFF PINASSIGN0 = regVal | ( 0 PINASSIGN0 & ~(..
LPC812 EVM 보드 제작 - NXP Cortex-M0+ Core LPC812 EVM 보드 제작 - NXP Cortex-M0+ Core NXP사의 Cortex-M0+ 코어의 저렴한 LPC812 테스트를 위한 보드를 S-Type EVM 보드 형태로 제작했다.LPC812는 1$ 이하의 32bit Cortex-M0+ 코어로 30Mhz로 동작하고 UART 3채널, SPI2채널 등의 화려한 페리를 자랑한다. 뿐만아니라 핀맵핑을 소프트웨어적으로 원하는 형태로 할당 가능하므로 하드웨어의 유연성이 뛰어나다. 다만 아쉬운점은 ADC가 없는것인데 가격을 생각하면 ADC없는 어플리케이션에서는 아주 매리트가 있다. LPC812 EVM 보드에는 소형의 16비트 ADC인 ADS8320을 실장 할 수 있도록 했다. LPC812 핀맵 회로도LPC812 회로도 - LED 및 스위치 LPC800 시리..
LPC812 - JTAG (ISP) 모드 주의사항 LPC812 - JTAG (ISP) 모드 주의사항 LPC1K와 LPC800시리즈의 부트모드 설정을 위한 GPIO핀이 칩 버전에 따라 변경되었다고 한다. 하드웨서 제작시 유의해야 할것 같다. LPC812 SWD 핀맵
LM2576 - 초소형 파워모듈 제작 LM2576 - 초소형 파워모듈 제작 3A 출력의 스위칭 파워 LM2576 모듈을 최대한 작게 제작해 보았다. 프로젝트 테스트 하다보면 소형의 레귤레이터가 필요한데 특히 입력이 고전압이면 문제가 되는 경우가 있는데 저렴한 LM24576으로 초소형으로 제작해 보았다. LM2576-S EVM 회로도 J91 은 가변저항을 연결하여 출력전압을 가변할수 있다. 입력은 100mil 피치의 3핀 혹은 4핀 헤더핀으로 최소 공간을 필요로 한다.
[TMS320C28346] 7" TFT LCD 테스트 [TMS320C28346] 7" TFT LCD 테스트 SSD1963 을 이용하여 TMS320C28346 보드에서 7" TFT LCD를 테스트 했다. TFT LCD의 CS는 TMS320C28346의 ZONE7에 할당된 CS7을 이용하였고 RS는 A0로 할당해서 코드 수정했다.#pragma DATA_SECTION(gExinf1Buff,"ZONE7DATA"); #define _LCD_CMD_OUT(Data)gExinf1Buff[0] = Data#define _LCD_DAT_OUT(Data)gExinf1Buff[1] = Data #if _USE_EXINF//Write Command void Lcd_Cmd(unsigned short Data){_LCD_CMD_OUT(Data);} void Lcd_Data(unsi..
[TMS320C28346] W5300을 이용한 TCP/IP 전송속도 테스트 [TMS320C28346] W5300을 이용한 TCP/IP 전송속도 테스트 TMS320C28346 은 C28코어로 (C2834x) Delfino시리즈중 가장 성능이 좋은 MCU이다. 최대 300Mhz로 동작하고 512KB RAM의 풍부한 리소스를 가지고 있다. 코어 자체가 C28 이므로 F28335와 코드는 거의 호환이된다. TMS320F28335코드에서 약간의 수정만 해 주면 기존 TCP/IP코드가 동작한다.init_zone() 함수에서 XTIMCK 를 1로 설정하니 정상 동작한다.XintfRegs.XINTCNF2.bit.XTIMCLK = 1; 옵티마이즈 레벨3으로 설정시 32Mbsp 정도로 구동된다. TMC320C28346을 이용하여 W5300에서 TCP/IP 전송 속도 테스트 결과 32MBps정도 ..
[TMS320C28346] 성능 테스트 - GPIO토글 테스트 [TMS320C28346] 성능 테스트 - GPIO토글 테스트 DSP28335 EVM 보드와 핀맵을 동일하게 해서 TMS320C28346를 테스트 할 수 있는 보드를 제작 했다. TMS320F28335와 코드가 호환 되므로 기존 예제들을 좀더 좋은 성능으로 테스트 가능하다. TMS320F28335 EVM에서의 속도 비교를 참고하면 확실히 성능향상이 된것 같다 메모리방식으로 단순 On/Off15Mhz while(1) { GpioDataRegs.GPACLEAR.bit.GPIO4 = 1; GpioDataRegs.GPASET.bit.GPIO4 = 1;} 레지스터방식의 토글 레지스터18Mhz GpioDataRegs.GPATOGGLE.all =0x000000FF; 레지스터방식의 단순 On/Off 속도 38MhzGp..