답변:
몇 가지 Arduino Simulator 프로젝트가 있습니다.
아마도 가장 성숙한 것 중 하나는 Arduino 용 Virtronics Simulator , YouTube 비디오 입니다.
위에 링크 된 Virtronics 페이지에는 무료 및 유료의 다른 Arduino 시뮬레이터도 나와 있습니다.
Arduino가 유발하는 관심을 감안할 때, 더 많은 시뮬레이터가있을 가능성이 높으므로 여기에 답을 나열하려고 할 필요는 없습니다.
주목할만한 것은 Arduino Simulator iPhone 앱 도 있다는 것입니다 . 이것은 아직 작동 중에는 보지 않은 권장 사항이 아닙니다.
참고 사항 :
Arduino 자체는 프로토 타이핑 / 실험 보드입니다. 그것은 꽤 많은, 신선한 코드를 다시 점멸 한 후, 실험적인 코드를 프로그램을 디버깅, 수정과에 적합 하나 좋아하는만큼 여러 번 . 코드가 중단되면 변경 사항이 있으면 재설정하고 다시 플래시하십시오.
따라서 다양한 실제 타이밍 또는 애플리케이션이 직면 할 수있는 다른 문제를 완벽하게 모방 할 수없는 시뮬레이터 사용의 장점은 의문의 여지가 있습니다.
Arduino의 비용이 우려되는 경우 몇 가지 옵션이 열려 있습니다.
Arduino가 연결된 상태에서 프로그램을 수동으로 단계별로 실행하고 디버그 할 수있는 경우 ( 코드를 Arduino에 다운로드 한 후) 런타임 오류를 찾을 수 있습니다 . Visual Studio가 필요하지만 Visual Micro 에서 사용할 수 있습니다 . 중단 점을 설정하고 변수를 평가하며 변수 값을 변경할 수 있습니다. 시간이 지남에 따라 메모리를 시각화 할 수도 있습니다.
이를 수행하는 한 가지 방법은 실제 환경에 따라 모든 입력을 시뮬레이트하고 출력을 수용 (따라서 피드백 루프 작성)하는 실제 코드에 대한 랩퍼 프로그램을 작성하는 것입니다. 프로그램 유형, 테스트 정도 및 입력 수에 따라 다양한 노력이 필요합니다.
랩퍼 프로그램을 작성하는 동안 블랙 박스 방식을 따라야합니다 .
그렇지 않으면 외부 코드가 프로그램을 테스트하지 않을 수 있으며 테스트 코드를 작성하는 동안 실제 코드를 염두에두면 경계 사례 또는 문제 영역을 무시하도록 바이어스 될 수 있습니다 (이것은 화이트 박스 테스트 를 수행하는 동안 발생하는 것으로 관찰되었습니다 대안입니다).