:::: MENU ::::

RTS/CTS flow control

시리얼 통신에서 H/W flow control은 RTS, CTS signal을 사용을 한다.
아래 자료는 ST의 칩 데이터시트에서 가져온 내용인데, RTS/CTS flow control에 대해 쉽게 이해가 된다.

RTS 신호가 RX 회로쪽에 CTS 신호가 TX 회로쪽에 연결이 되어 있다는 점에 유의하자.



1. RTS flow control
RTS 신호는 수신이 가능한 상태이면 Low로 되며, 수신이 불가능하면 High로 한다.

2. CTS flow control
TX를 하기전에 CTS 입력을 확인해서 CTS가 Low이면 데이터를 보낸다.

즉 Hardware Flow control을 사용한다면, 데이터를 보내기전에 CTS 입력(상대방의 RTS)을 확인하여 이것이 Low이면 데이터를 보내고, 데이터를 수신시에는 버퍼가 어느 정도까지 차면(buffer full) RTS를 High로 하고, 나머지 상태에서는 Low로  하면 된다.


Open Source Hardware Logo

Open Source Software에서는 다음과 같은 로고를 사용을 합니다.

OSHW에서도 공식 로고를 만들기 위해 공모를 했습니다.
총 129개가 접수가 됐네요.
로고로 선정되기 위한 3가지 기준은
  -. PCB에 인쇄가 쉽고 보기 쉬워야 하고,
  -. 회로도에 인쇄가 쉽고 보기 쉬워야 하고,
  -. 개방성을 잘 나타내야하네요.


이건 Open Hardware Summit에서 제출한 로고이고…
나머지는 아래 링크에서 확인 가능 합니다.
http://www.openhardwaresummit.org/oshw-logo-v1-0/

129개의 응모작중에서 10개의 작품이 투표가 진행이 되고 있습니다.
어떤 로고가 좋은신 가요? http://www.openhardwaresummit.org/oshw-logo-selection/


아두이노 팀 (Arduino Team) 뒷조사

명함을 정리하다가 보니 작년 여름에 이태리에서 미팅한 Smart Projects의 사장이 오픈소스 하드웨어 플랫폼인 아두이노를 개발한 팀의 한명임을 뒤늦게 알았네요.
아두이노 홈페이지에서 다른 멤버들의 이름을 기점으로 뒷조사를 해 보니 재미있네요.
인터넷 세상에서 그 사람이 어디 출신인지 학력은 어떤지 블로그, 이메일, 플리커등의 주소 정보가 고스란히 알 수 있는 세상…


사진 출처: 플리커 <= 계정을 보니 David의 플리커 사이트네요.
암튼 위 아두이노 팀 사진에서 제가 만났던 분은 아랫줄 맨 왼쪽의 Gianluca라는 사람입니다.


1. Massimo Banzi: David와 함께 아두이노 보드를 처음 만든 사람. 현재 하이테크 디자인 회사를 운영. Getting Started with Arduino 책 집필

2. David Cuartielles : 스페인 출신, PIC 마이크로콘트롤러 엔지니어로 이태리에 객원연구원으로 왔다가 Massimo와 같이 아두이노 보드를 개발. S/W 작업 및 Linux 에서 테스팅, 홈페이지를 관리하고 있슴.

3. Gianluca Martino : 아두이노에서 Masimo와 같이 하드웨어 디자인을 맡고 있으며, Smart Projects의 사장. 아두이노의 모든 공식적인 하드웨어를 생산 및 공급하며, 전세계 distributor를 관리하고 있슴.

4. Tom Igoe: 2005년도에 팀에 합류. 아두이노의 문서 및 테스팅을 담당. 현재 뉴욕대 ITP(Interactive Telecommunications Program)교수로 재직중이며, Making Things Talk 책을 집필.

5. David Mellis: 현재 MIT의  대학원 생이며, 아두이노의 대부분의 S/W를 작업함. Massimo의 제자라고 함. 여기서 그의 모습을 볼수 있다. http://hlt.media.mit.edu/?cat=4 두번째 사진의 인물.


VLC를 이용한 비디오 스트리밍

스트리밍 서버 설정
미디어 > 스트리밍 메뉴를 선택하고, 미디어 열기 창이 뜨면 스트리밍할 파일을 선택을 한다.
이 창에서 스트림 버튼을 누르면  새창이 뜨면서 방금 선택한 스트리밍소스가 나오는데, 다음 버튼을 누른다.
다음 그림 처럼 스트림 출력 창이 뜨는데, 여기서 먼저 트랜트코팅 옵션은 해제를 해서 스트리밍 서버의 리소스를 줄인다.
그리고 대상항목에서 스트리밍을 할 방법을 선택을 한다. 즉 RTSP, HTTP, UDP등의 프로토콜을 선택을 한다. 선택을 한후에 반드시 추가 버튼을 눌러야 한다.
이제 마지막 창에서 스트림 버튼을 누르면 스트리밍이 시작된다.우측하단 부분에 시간이 0에서 부터 증가하면 제대로 스트리밍이 되는 것이다.


CooCox

Nuvoton의 Cortex M0 칩관련 포스팅 중에 잠시 CooCox를 언급한 적이 있습니다.

CooCox는 무료 ARM Cortex M3 and Cortex M0 Development Tools 이며, ARM  gcc를 사용을 합니다. 홈페이지를 확인해 보니 중국 대학에서 만들었네요. 
ARM Connected Community Member,  NXP Partner,  Nuvoton Tools Partner, Energy Micro 3rd Party 이기도 합니다.

실제로 IDE를 받아서 설치를 하고 간단한 코드를 만들어 동작을 시켜보니 잘 돌아가네요.
처음 프로젝트를 만들때 디바이스를 선택하고 Repository에서 필요한 라이브러리를 선택을 할 수 있도록 되어 있어서 사용하기가 쉽네요.다운로드를 개별적으로도 받을 수 도 있고 CooCox CoCenter라는 프로그램을 받아서 다운로드 및 설치가 가능합니다.


IAR 컴파일러에서 J-LINK 사용하기 2 – EWARM5.41

이전 포스트 “IAR 컴파일러에서 J-LINK 사용하기” 는 EWARM4.xx 버전에서 동작하는 것이였습니다.
컴파일러 버젼을 5.41로 바꿨는데, 이전 버젼에서 사용하던 메뉴들이 없어졌네요.
이전 버젼과 호환성을 유지를 해줘야 하는데… -_-;;
J-link와 연결은 되는데, “Programming flash memory” 창이 떠서 멈줘있는 현상이 있어서 다시 확인을 하니 몇가지 주의해야 할 설정이 있습니다.
컴파일러 옵션 설정에서



  • Output Converter => intel extended

  • Linker/ Config => icf 파일 을 제대로 설정

  • Debugger / Download => board 파일을 제대로 설정


J-Link 에러 메시지

IAR의 컴파일러인 EWARM과 J-link 디버거를 사용시 다음과 같은 에러가 났을때 해결 방법

Could net write CPU  register MSP : Written: 0xFFFFFFFF, Read 0xFFFFFFFC

이와 같은 에러는 EWARM 4.42 버젼에서 사용하는 디바이스가 추가되지 않아서 생기는 에러로, 첨부된 파일들을 해당 폴더에 카피하면 디바이스가 추가된다.

관련 내용은 이전 포스트 참고: EWARM4.42에 STM32 디바이스 추가하기



W7100 TCP loopback

위즈네트W7100을 이용한 loopback소스입니다.

cfile10.uf.1564FB4D4D50CCD605E1B3.zip

W7100이 8051기반인데 많이 사용하는 Keil 컴파일러 대신에 SDCC 를 사용했습니다.
사용된 소스는 iMCU design contest에 출품한 Clayton Gumbrel([email protected])의 Remote Finger소스를 수정했습니다.

수정 내용은 소스를 간단하게 하기 위해 UART를 인터럽트를 사용하지 않는 루틴으로 바꾸고, application code는 제거를 하고 TCP loopback 코드를 포팅햇습니다.

아래 사진은 SDCC로 컴파일을 하고 나서 WizISP로 W7100EVB에 코드를 다운로드한 후 ping을 한 것을 캡쳐한 그림입니다.

Circuit Cellar의 project editor인 David Tweed가 쓴 iMCU W7100 article 첨부 합니다.
cfile30.uf.1775AE594D50C35C269DDB.pdf


무료 8051 컴파일러 – SDCC

SDCC는 Small Device C Compiler의 약자입니다. GPL 라이센스를 따르는 free open source software입니다.
그리고 8051뿐만 아니라 motolora 60HC08 시리즈와 Microchip PIC16, PIC18시리즈도 지원을 하며, Linux, Windows, MAC OS를 지원하네요. 관련자료는 => http://sdcc.sourceforge.net/ 에서 찾을 수 있습니다.

http://sourceforge.net/projects/sdcc/files/ 에서 사용하는 OS 맞는 버젼을 다운받으시고 인스톨하시면 됩니다.
압축이 풀린 폴더에는 다음과 같은 내용의 파일들이 설치 됩니다.

In <installdir>/bin:
sdcc – The compiler.
sdcpp – The C preprocessor.
sdas8051 – The assembler for 8051 type processors.
sdasz80, sdasgb – The Z80 and GameBoy Z80 assemblers.
sdas6808 – The 6808 assembler.
sdld -The linker for 8051 type processors.
sdldz80, sdldgb – The Z80 and GameBoy Z80 linkers.
sdld6808 – The 6808 linker.
s51 – The ucSim 8051 simulator.
sz80 – The ucSim Z80 simulator.
shc08 – The ucSim 6808 simulator.
sdcdb – The source debugger.
sdcclib – A tool for creating sdcc libraries
asranlib – A tool for indexing sdcc ar libraries
packihx – A tool to pack (compress) Intel hex files.
makebin – A tool to convert Intel Hex file to a binary and GameBoy binary image file format.
In <installdir>/share/sdcc/include
the include files
In <installdir>/share/sdcc/non-free/include
the non-free include files
In <installdir>/share/sdcc/lib
the src and target subdirectories with the precompiled relocatables.
In <installdir>/share/sdcc/non-free/lib
the src and target subdirectories with the non-free precompiled relocatables.
In <installdir>/share/sdcc/doc
the documentation

인스톨과정에서 PATH 설정이 되며, 해당 소스가 있는 폴더에서 각 실행 파일을 실행시키면 되는데, 일반적으로 make 파일을 만들어서 사용합니다.

메뉴얼을 보니 Microsoft Visual C++ 6.0/NET (MSVC)에 연결을 해서 사용하는 방법도 있습니다.

cfile30.uf.1576FA424D50A67D272F09.pdf

직접 사용을 해보니 예전에는 에러가 많았는데 이제는 어느 정도 안정화 되가는 느낌이네요.


Pages:1...40414243444546...51