나는 재미있는 가정 취미 프로젝트를 위해 NetDuino를 구입할 것을 찾고 있습니다.
당신은 그것을 사용하고 경험이 어땠습니까?
대신 Arduino 또는 FreeDuino 범위를보아야합니까 (또는 완전히 다른 것)?
내 C # 지식으로 인해 NetDuino를 고수하기로 결정했지만 필수 사항은 아닙니다.
감사
추신. 이것이 커뮤니티 위키에 속하는지 확실하지 않습니다 (지침에 감사드립니다).
나는 재미있는 가정 취미 프로젝트를 위해 NetDuino를 구입할 것을 찾고 있습니다.
당신은 그것을 사용하고 경험이 어땠습니까?
대신 Arduino 또는 FreeDuino 범위를보아야합니까 (또는 완전히 다른 것)?
내 C # 지식으로 인해 NetDuino를 고수하기로 결정했지만 필수 사항은 아닙니다.
감사
추신. 이것이 커뮤니티 위키에 속하는지 확실하지 않습니다 (지침에 감사드립니다).
답변:
저는 C #을 좋아하고 C #에서 Visual Studio로 개발할 때 얻을 수있는 생산성 이점이 Netduino에 유리한 매우 강력한 요소라는 것을 알았습니다. "C #은 마이크로 컨트롤러 / 임베디드 환경 용이 아니기 때문에"Netduino를 사용하지 않을 것입니다. 여기에 다른 답변이 표시되어 있습니다.
Arduino를 사용하거나 "베어 메탈 (bare metal)"을 사용하고 AVR, PIC 또는 기타 마이크로 컨트롤러의 직접 MCU 관리를 수행하는 것처럼 Netduino를 사용하여 다양한 물리적 입력 및 출력 장치를 연결하는 방법에 대해 재미있는 프로젝트를 만들고 많은 것을 배울 수 있습니다.
그것으로 나는 다음과 같은 이유로 Arduino를 고수하고 있다고 말했다.
따라서 C 기술이 먼지가 많거나 존재하지 않는다면 C #과 Visual Studio를 좋아하고 비용이 더 큰 문제가되는 곳으로 확장 할 필요가없는 몇 가지 취미 프로젝트에 관심을 기울이고 싶다면 Netduino로 이동하십시오.
C에 익숙하거나 코드 샘플과 커뮤니티의 도움을 받아 편안하게 사용할 수 있고 금속에 더 가까이 다가 가서 Netduino와 Arduino의 "프로토 타입"접근 방식에서 벗어나고 싶다면 Arduino를 시작하십시오.
어쨌든 임베디드 플랫폼에서 C # 지식은 쓸모가 거의 없으므로 너무 많은 비중을 두지 마십시오.
나는 .Net이 악마이기 때문에가 아니라 다른 사람들이 사용하고 있기 때문에 Arduino 또는 복제품 중 하나를 사용합니다.
일단 발을 적신 후에는 반드시 가지를 펴고 다른 것을 시도하십시오.
나는 현재 Arduino, mbed 및 마지막으로 Netduino를 개발 / 취미 사용을 위해 처분했습니다. Arduino와 함께 일하는 것을 좋아하지 않았을 것입니다. 아마도 편집기가 좋지 않기 때문에 C # 개발자로 분명히 손상되었습니다. mbed를 받았을 때 나는 훨씬 더 나은 개발을 좋아했지만 인쇄 명령문을 사용하여 진행 상황을 파악해야하기 때문에 디버깅은 여전히 고통 스럽습니다.
제품을 개발하거나 주변을 조이는 경우 처음에는 대부분의 시간이 디버깅에 소비되며 디버깅 할 때는 중단 점이 필요합니다. 어떤 종류의 중단 점도 제공하지 않는 임베디드 하드웨어로 돌아가는 데 매우 어려운 시간이 있습니다.
아직 JTAG에 대한 경험이 없지만 지금까지 내가 본 모든 Micro (LayerCore 모듈 외에)는 중단 점을 통한 디버깅을 허용해야합니다. 오늘 Netduino를 연결하고 VS2010에서 코드를 단계별로 실행할 수 있었을 때 놀랍다 고 상상해보십시오! 나는 이것에 매우 만족했다.
개인적으로, 나는 발자국 크기, .NET 및 Microsoft의 악에 대해 걱정하지 않을 것입니다. 나는 빠르고 효율적으로 디버깅 할 수 있기를 원하므로 물건을 얻을 수 있습니다 .
개인적으로 저는 C # 또는 .NET의 팬이 아닙니다. 나는 C luddite입니다. 따라서 원하는 플랫폼 (플래시, RAM, 클럭 속도, ADC 수, 타이머 수 등)이있는 플랫폼을 선택했습니다.
즉, C # /. NET이 빠른 프로토 타이핑에 유용하다고 생각할 수 있습니다.
물론이 모든 비용은 다음과 같습니다.
그리고 무엇보다도 임베디드 플랫폼에서 C # 기술을 사용하면 실제로 임베디드 장치에 대해 배우지 않습니다.
그렇습니다, 그것은 일을 끝내게 될 것입니다. 그러나 그 재미는 어디에 있습니까?
나는 mbed 가 Arduino의 놀라운 대용품 이라는 것을 알았 습니다.
소프트웨어 라이브러리는보다 C ++ 지향적이며 할당 연산자 오버로딩의 모든 구문 설탕으로 완성됩니다. 또한 사용자가 코드 라이브러리를 게시하고 문서화 할 수 있도록 시스템을 설정 한 후 쉽게 검색하여 프로젝트로 가져올 수 있습니다.
또 다른 좋은 기능은 장치를 USB 스틱으로 취급하고 .bin
파일을 드라이브에 똑바로 넣는 기능입니다.
불행히도 IDE는 arduino의 IDE와 비슷합니다. 또한 온라인입니다 입니다. 이것은 정말 좋으며 (모든 PC에서 사용할 수 있으며 설치가 필요하지 않음) 정말 나쁩니다 (인터넷 연결없이 쉽게 다시 프로그래밍 할 수 없음).
이사회 비용은 60 달러이지만 후원 제도가 있으며, 진행 상황이 문서화되고 소스 코드가 공개되는 경우 흥미로운 프로젝트에 보드를 기부합니다.
'C #이 임베디드 플랫폼에 적합하지 않음'을 읽을 때 특정 연령보다 오래된 사람들은 이미 'C'에 대해 한 번 이상 평생 C ++에 대해 다시 한 번 들었다는 것을 이미 기억하고 있습니다.
물론 그것은 프로세서의 기본 기능을 기념비적으로 '낭비 적'이지만 유휴 루프를 10 배가 아닌 1000 배 빠르게 실행하는 능력은 결코 부자를 만들지 못했던 것보다 빠릅니다.
베어 메탈을 느끼고 비디오 신호를 직접 생성하거나 캡처 할 수있게하려면 모든 사이클이 중요하며 AVR / Arduino에서이를 수행 할 수 있습니다. 더 높은 수준의 추상화, 더 높은 수준의 프로그래밍 및 디버깅 편의, 가비지 수집기를 원하고 Windows에서와 같이 모든 것을 제어하지 못한다는 사실에 부응하려면 NetDuino 또는 FEZ Domino를 선택하십시오. 둘 다 ARM이 난로에 있기 때문에 필요한 경우 작은 JTAG 디버거를 사용하여 보드에서 .NET MF를 죽이고 IDE와 같은 Eclipse에서 직접 베어 메탈 ARM GCC 코드를 플래시 할 수 있습니다. 조금 조사하십시오. 문제는 JTAG 헤더가없는 경우 납땜을 수행해야한다는 것입니다.
전자 공학과 프로그래밍에서 아주 오랜 시간을 보낸 후, 아들 중 한 명이 대학에서하는 프로젝트로 인해 다시 돌아 왔습니다. 튜브가 표준이었고 토글 스위치 (주소 설정, 데이터 설정,로드, 저장, 이진) 및 펀치 카드로 프로그래밍 할 때 전자 장치를 배웠습니다. 수년에 걸쳐, 나는 많은 집중적 인 노력과 시간이 걸리는 각각의 전자 및 프로그래밍 언어 향상을 배우고 사용했습니다. 결과적으로, 마이크로 컨트롤러의 발전과 Arduino, Netduino 등과 같은 개발 보드를 포함하여 얼마나 저렴한 지에 대해 대단히 감사합니다. Arduino vs Netduino 등에 대한 논란은 Microsoft와 Apple의 전투에 대해 상기시킵니다. 명령 줄 대 GUI. 결과에 적합한 한 어떤 플랫폼, 프로그래밍 언어 등이 사용되는지는 중요하지 않습니다.