2011-08-05 5 views
3

저는 이미 소프트웨어 개발자입니다. 그러나 일상 업무는 제 능력을 향상시키지 못하는 것이 아닙니다.하드웨어 보드에 직접 매료되었고 하드웨어로 직접 코딩되었습니다. 나는 시작하고 싶니?

나는이 임베디드 것들이 어떻게 작동하는지, 어떻게 hello world 프로그램을 실행하기 위해 수행해야 할 설정이 무엇인지 전혀 모른다.

그래서 C 언어를 지원하는 매우 기본적인 개발 보드를 찾고 있습니다. 매우 복잡하거나 높은 처리가 아닙니다. 그게 그냥 초보자를 죽이는 것보다. 작은 장치를 다루는 방법을 이해할 수 있다면. 나는 다른 상급 판을 배울 것이다. 그것은 자기 주도적이고 자기 가르침이기 때문에. 한 번 나에게 일어난 복잡한 보드를 뛰어 넘고 싶지 않습니다. 나는 잘 갖춘 LPC 21xx 보드를 가지고있다. 프로그램을 만들고 실행할 수있는 좋은 공간이 있습니다. 하지만 나는 제로 라운드에서 기절했다. 컴퓨터에 연결하고 전원을 켜면 더 이상 알 수 없습니다. 내 노트북에 직렬 포트가 없기 때문에 USB를 지원하면 보드가 좋을 것이라고 제안합니다. 아무 문제도없는 경우에, 나는 serial에 무언가가있을 것이라는 점을 희망한다. :) 도와주세요. 나는 그것을 정말로 배우고 싶다.

+2

케이블을 판매하는 거의 모든 장소에서 USB 직렬 포트 케이블을 사용할 수 있습니다. 직렬 포트는 종종 콘솔로 사용되거나 심지어 장치를 프로그래밍하기 때문에 이들 중 하나를 사용하면 대부분의 또는 대부분의 임베디드 장치 평가 보드에 도움이됩니다. –

답변

2

Arduino에 대해 들어 보셨습니까? C++에서 USB로 프로그래밍 된 훌륭한 하드웨어 플랫폼입니다. 보드는 30 달러에 불과하므로 값도 싸다. 당신이 LPC 보드이 도움이 될 수 무엇

3

확실하지 : 그들은 당신이 배우려고 노력하는 물건을 숨겨 때문에

http://lpcstuff.blogspot.com/

아두 이노는 매우 사용자 친화적 그러나 일부입니다. 거기에 몇 가지 예 이미 github.com에서 thumbulator에 대한

http://www.dwelch.com/arduino/

검색 및 문제의 1/3, 컴파일/건물의 느낌을 얻을 수 있지만 당신은 여전히 ​​아두 이노의 금속까지 얻을 수 있습니다 임베디드 애플 리케이션. mbed와 같은 보드는 문제의 두 번째 1/3을 처리하고 보드에 프로그램을로드하며 마지막 1/3은 실제로 레지스터를 프로그래밍하여 일어나는 일을합니다.

약간의 도우미 튜토리얼 (sam7stuff, lmi, lpc, msp430, stm32 등)이 있습니다. 일부는이 시점에서 날짜가 표시 될 수 있습니다. 더 이상 자신의 gcc를 굴려서 혼란 스럽다.) 유용 할 수도있다. winarm 사람은 당신을 시작하게하는 다수의 예제 프로그램을 가지고있다.

Sparkfun은 대부분의 보드에서 미국에서 사용할 수있는 장소입니다. 지금 sam7-h64가 판매 중입니다, atmel은 보드 문제의 로딩을 다루는 유틸리티입니다. 당신은 거기에 mbed를 얻을 수 있습니다, 지금 단풍 나무, coridium armmite 프로, arduino 유사 plethera 있습니다. 그리고 msp430 런치 패드. msp430 런치 패드 보드 중 하나를 선택하는 것이 좋습니다. 단 4.30 달러의 아주 좋은 아키텍처, USB 케이블 (함께 제공되는?) 만 있으면됩니다.

또 다른 TI 제품 (이전의 발광 마이크로, lmistuff)은 cortex-m3 기반 칩/평가 보드의 스텔라리스 라인입니다. 811은 벽돌에 쉽고, 나는 피할 것이고, 필요한 모든 것을 제공합니다. 보드는 맛있는 음식, 눈가리개 디스플레이, 버튼 등으로 물방울이 떨어지고 있습니다.

어느 시점에서 openocd로 발을 젖어 두어야 할 필요가 있습니다. Amontek는 jtag-tiny를 만들어서 아주 좋은 팔 jtag wiggler입니다. 평가 보드의 숫자는 직렬 및 usb에 jtag에 usb를 처리 ftdi 칩을 가지고, 인터넷 검색에 연결하고로드하는 openocd를 사용하는 방법에 대한 정보의 톤을 표시합니다.

다른 경로는 qemu입니다. 스텔라리스 보드/칩 또는 기타 칩 제품군을 지원하므로 프로그램을 컴파일/빌드하는 것은 물론, 로딩 파트를 파악하지 않고도 주변 장치를 프로그래밍 할 수 있습니다.

atmel avr 나비는 여전히 $ 20입니다. 3 개의 전선이 직렬 포트 커넥터에 밀어 넣어 졌으므로이를 프로그래밍 할 수 있습니다. 보드에 일을 내가 하나 개의 프로세서 제품군에 (AVR, 팔, MSP430 등)도 하나의 칩 공급 업체 (LPC, Atmel은, TI 자신을 제한하지 않는 것이 좋습니다 등의 프로그램으로

http://www.dwelch.com/avr/

을 배울 수있다, 기타). 이 보드 중 상당수는 $ 50 이하, $ 25 이하의 보드가 있습니다 (10 달러에 ez430 보드 3 개를보고, 런치 패드로 프로그래밍 할 수 있습니다. 그렇지 않으면 ez430은 $ 20입니다). (arduino 가족의 대부분은 비용을 거의 두 배로하는 직렬 + 플러스 파워에 대한 추가 usb를 원하지만, 5V vs 3.3V 보드를주의하는 데주의해야합니다. 따라서 다른 것을 완전히 녹일 필요가 없습니다. 다른 ftdi를 얻는 것이 좋습니다. 어쨌든 sparkfun에서 시리얼 브레이크 아웃 보드에 usb).

0

stm32의 경우 stm32 (16kb 램 + 128kb 플래시 + 4kb eeprom) + stlink2의 경우 14 달러, USB 케이블 만 있으면됩니다. l 버전은 vl이 아니고 l-은 느린 cpu를 가지고 있지만 lcd 및 일부 터치는 민감한 버튼이 있어야합니다. 저는 전에는 일반적인 C 개발자 였지만 동일한 프로세서를 사용하는 임베디드 시장에서 일자리를 찾았습니다. 한 달 안에 나는 결코 어셈블러를 사용하지 않았고 경험적으로 PC 프로그래밍과 많이 다르지 않았다.하지만 동적 할당을 효과적으로 사용할 수 없다. 하지만 모든 메모리와 타이밍 및 모든 하드웨어를 제어해야하므로 중요하지 않습니다. iar 킥 스타트 도구는 특히 디버거와 같이 매우 뛰어납니다. 실행 속도가 빠르며 실행중인 프로세스에 연결할 수도 있습니다. IAR IDE의 편집자는 많은 시간을 낭비합니다. 그것은 여전히 ​​2011 년에는 유니 코드를 지원하지 않으며 일식에서는 "개요"와 같은 것을 지원하지 않습니다. 여전히 IDE는 하드웨어와 잘 통합되어 있습니다. 당신도 stdperiph 있어요. 라이브러리 stm에서. 그것은 bloatware 측면에 약간이지만, 당신이 좋아하는 모듈을 혼합하고 매치 시키거나 코드가 더 읽기 쉽거나 더 작아지면 원시 레지스터를 사용하도록 선택할 수 있습니다. 어쨌든, 내 경험에 관심이 있다면 물어보십시오. 나는 비용 대비 성능면에서 stm보다 훨씬 더 나쁘기 때문에 avr에 대해서도 조언 할 것입니다. 나는 avr이 16Mhz를 가지고 있고 stm32가 단지 32를 가지고 있었다고하더라도, 지난 달에 많은 avr 코드를 포팅 (avr 's는 약간의 공급 문제를 가지고 있었다.)했고, 훨씬 더 빨리, 훨씬 더 설정 가능하고 더 쉬운 periferials를 가지고있다. programm. Cortex-M3 컨트롤러는 PC에 훨씬 가깝기 때문에 계산을 위해 많은 단어와 32 비트 단어를 최적화하지 않아도된다. M3는 비트 밴딩 (bit banding) 및 구성 가능한 인터럽트 우선 순위와 같은 것들로 프로그래밍하는 것이 더 편합니다.