본문 바로가기

[INTERFACE]

(223)
[W7100 EVM] 개발환경 설정 [iMCU W7100 EVM] 개발환경 설정 W7100은 ISP를 지원하기 때문에 간단히 별도의 장비 없이 UART나 이더넷으로 프로그램 할수 있다. BOOT핀을 Low로 하고 리셋하면 부트모드로 설정되고 ISP프로그램을 이용하여 시리얼 포트로 다운로드 가능하다. (아래 그림은 부트모드 설정시) UART는 USB2UART를 이용하고 WizISP프로그램을 이용하여 다운로드 해 보았다. Veryfy옵션을 제거 하면 상당히 빠르게 다운로드 되는것 같다. W7100 개발환경 8051코어 MCU이므로 8051 컴파일러를 이용하면 됩다. 쉽게 구할수 있는 Keil 을 이용하여 테스트 해 보았다. 기존 타사 MCU관련 예제들과 호한되도록 하기위해 제공되는 코드구조를 좀 수정하여 내가 사용하는 형태로 변경하여 테스트를..
[W7100 EVM] iMCU 테스트 보드 제작 (8051+MAC+Phy+HW TCP/IP 원칩) [W7100 EVM] iMCU 테스트 보드 제작 (8051+MAC+Phy+HW TCP/IP 원칩) iMCU W7100은 hardwired TCP/IP Core 를 내장하고 8051코어가 내장되어 있는 one-chip 인터넷 솔루션 이다. 256KByte Data Flash, 64K Code Flash, 64Kbyte RAM으로 구성된 메모리는 별도의 확장 필요없이 간단한 웹서버를 구현하기에 아주 적합한 솔루션을 제공할것 같다. 내부에 부트로더가 있어 별도의 장비 없이 UART나 이더넷으로 프로그램을 다운로드 할 수 있다. 가격도 저렴(IC Bank에서 6500원에 판매하고 있다.)하니 간단히 임베디드 웹서버 공부하는데 사용하면 좋을것 같다. 데이트시트 회로도 예제소스 [M-Type EVM] 으로 표준핀맵..
[W5100] STM32에서 SPI로 테스트중... 속도문제 [W5100] STM32에서 SPI로 테스트중... 속도문제 STM32에서 SPI로 테스트중... STM32를 SPI를 이용하여 W5100테스트 중이다. 기본 동작은 잘 되지만 전송 속도가 문제다. SPI클럭을 18M/4 = 4.5Mhz 로 구동 하는데 속도가 400kbps도 안된다. AVR 4Mhz로 구동해도 500k이상 나왔는데... SPI를 클럭을 메인클럭에서 2분주 해서 다시 시도 해본다. 아예 SPI리드 라이트가 않된다. wiz_write_buf() 함수를 좀 수정해야 할듯... CS를 for루프 위쪽으로 올려서 CS제어 부분도 줄여볼까해서 해보니 데이터 에러가 발생한다. IINCHIP_CSoff(); for(idx=0;idx> 8); IINCHIP_SpiSendData((addr+idx) & ..
[CC2500] 소형 Zibee 모듈 제작 [CC2500] 소형 Zibee 모듈 제작 소형의 RF to UART모듈을 제작 했다. 기존 USB2UART, Bluetooth2UART 모듈과 호환되는 핀맵으로 제작하여 기존 보드에 연결하여 무선으로 시리얼 데이터 전송이 가능하다. UART로 입력되는 데이터를 UART로 전송하고 수신된 데이터를 UART로 출력한는 기능을 한다. 기본적으로 모듈간 시리얼 통신을 무선으로 변경해 주는 기능을 하지만 PC에 연결도 가능하다. 만들면서 STM32를 이용하여 USB2UART 도 함께 제작하였다. 장점이라면 펌웨어를 수정할 수 있기 때문에 보레이트나 기타 여러 기능을 추가 할수 있다.
[W5100 EVM] 초간단 TCP서버 테스트 [W5100 EVM] 초간단 TCP서버 테스트 임베디드 시스템에서 이더넷을 통한 네트웍제어는 여러가지 솔루션이 있지만 특히 소형의 임베디드 환경에서는 상당한 부하를 차지한다. 임베디드 환경에서 좀더 쉽고 간단히 이더넷을 제어하기 위해 TCP/IP스택이 하드웨어적으로 처리되는 W5100을 이용하여 초간단 TCP서버를 구축해 보았다. 먼저 소형 [W5100 EVM] 모듈과 AVR128 보드, 확장 테스트보드(EXP-) 를 연결한다. 회로적으로 아래와 같이 연결된다. 소스코드 소스코드는 예전에 작성했던 코드를 좀더 간단하고 사용하기 편하도록 몇가지 수정을 했다.(좀더 자세한 내용은 [AVR TCP Server 테스트 예제 참고) [config.h] W5100의 SPI_CS핀은 PD5에 연결되어 있다. //--..
[WiFi] OBD2WiFi 보드 테스트 [WiFi] OBD2WiFi 보드 테스트 차량 진단용 OBD스케너를 WiFi 모듈을 이용하여 제작하여 OBD2WiFi 보드를 테스트 했다. Main MCU는 CAN통신도 가능하고 저렴하면서 성능좋는 STM32를 이용하였다. OBD제작 정리 OBD 데이터를 얻기 위해 CAN통신으로 쿼리를 보내고 그에 대한 응답을 받으면 된다. 1) Host의 CAN ID를 11bit ID 0x7DF 로 설정한다. 2) CAN데이터를 PID리스트에 따라 만들어서 전송한다. ex) 차량 엔진온도 : 02 01 05 00 | 00 00 00 00 (데이터바이트:Show:엔진온도 PID) 3)정상적으로 전달되면 0x7E8(ECU)에서 응답이 온다. ex)[ID 7E8(0):00:08] : 03 41 05 41 | aa aa aa..
[CC2500] ez430-RF2500 가지고 놀기 3 - RF 통신 ez430-RF2500을 가지고 기본적인 테스트가 끝났기 때문에 이제는 CC2500을 이용하여 RF통신 실험을 해 보자. TI에서 제공되는코들르 보면 좀 복잡하고 추가나 수정이 어여운 코드로 작성되어 있는데... 이 부분을 좀 수정하여 좀 더 간단히 코드를 작성해 보았다. 일단 CC2500 기본 제어 부 및 SimpliciTi는 특별히 수정할 필요가 없기 때문에 한 폴더로 넣어서 라이브러리 형태로 취급하고 RF송수신을 위한 가장 기본 코드만 남기도록 한다. -> 아래와 같이 하면 아주 심플 해 진다. network config파일은 EXTRA Option에 등록한다. -f"$PROJ_DIR$\Configuration\Access Point\smpl_config.dat" -f"$PROJ_DIR$\Confi..
[CC2500] ez430-RF2500 가지고 놀기 2 - UART 통신 [CC2500] ez430-RF2500 가지고 놀기 2 - UART 통신 임베디드 환경에서 가장 간단히 하고 강력한 디버거는 printf가 아닐까... 아무튼 TI에서 제공 되는 예제는 UART사용이 좀 지저분하다. 물론 코드 사이즈 줄이기엔 좋지만 디버깅할때는 너무 불편하다. printf 사용할 수 있도록 환경을 구성해서 테스트 해보려고 한다. ez430 키트에서 제공되는 USB동글은 JTAG기능 및 UART통신이 가능하지만 보레이트를 9600이상 올리면 깨지는 현상이 많다(아주 많이 심각함) 그래서 USB2UART에 연결해서 테스트 하려고 하는데... RF2500의 확장 포트에는 UART를 뽑아 놓지 않았다. 윽... 아래와 같이 점퍼 날려서 확장핀을 뽑았다. CC2500 UART통신 테스트 예제 코..

반응형