Arduino Uno Clone Board에 프로그램이나 스케치를 몇 번 업로드 할 수 있습니까?


12

나는 arduino를 사용하여 첫 번째 프로젝트를 진행하려고합니다 (다음 주에 하나를 구입하려고합니다). 교수 중 한 명은 Arduino Uno Board에서 약 8 번만 프로그램 또는 스케치를 업로드 할 수 있다고 말합니다. . 또한 복제 버전을 사용하는 경우 스케치 업로드가 2 회만 지속될 수 있다고 덧붙였습니다. 이것이 사실입니까 아니면 허풍입니까? 미리 감사드립니다.


2
나는 빌드하고 테스트 할 때 한 시간에 여러 번 특정 Nano에 대한 스케치를 번쩍이며 지난 며칠 동안 이것에 대해 궁금했습니다. 나는 그것이 적어도 100 대에있을 것이라는 것을 알고 있었지만 얼마나 많은지 확신하지 못했습니다. 질문 주셔서 감사합니다.
raddevus 2016 년

9
그 교수의 신뢰성에 의문을 제기 할 시간입니다. 프로그램은 ATMega328P의 내부 플래시 메모리에 플래시되며 플래시는 수천 번의 쓰기주기 동안 유지됩니다. EEPROM을위한 더 많은 것. STMicro, "10K ~ 100K 사이클"인용 ( st.com/resource/en/application_note/cd00165693.pdf )
Maximilian Gerhardt

관련 : 8266웨어 레벨의 SPIFFS이므로 3KB의 여유 공간을 가진 3KB를 저장하는 경우 첫 번째 덮어 쓰기 전에 1024X를 저장할 수 있습니다 (이론적으로 블록 오버랩없이 평균 512X). 이는 수백만 의 저장 을 의미 합니다.
dandavis

4
@jsotola Google이이 질문에 이미 답변했다는 것을 표시하지 않는 한 사용자에게 Google에 알려주지 말아주세요 (출처 : FAQ)
Cephalopod

1
이것은 가짜 뉴스와 ASE에 해당합니다.
copper.hat

답변:


24

그는 완전하고 완전하게 횡설수설하고 있습니다. ATMega328P 데이터 시트 에서 인용하려면 :

  • 내구성이 뛰어난 비 휘발성 메모리 세그먼트
    • 32KB의 시스템 내 자체 프로그래밍 가능 플래시 프로그램 메모리
    • 1 킬로바이트 EEPROM
    • 2KBytes 내부 SRAM
    • 쓰기 / 삭제주기 : 10,000 플래시 / 100,000 EEPROM
    • 데이터 보존 기간 : 85 ° C에서 20 년 / 25 ° C에서 1 년 (1)
    • 독립적 인 잠금 비트가있는 선택적 부팅 코드 섹션
      • 온칩 부팅 프로그램을 통한 시스템 내 프로그래밍
      • 진정한 읽기 / 쓰기 작업
    • 소프트웨어 보안을위한 프로그래밍 잠금

따라서 결함이 발생하기 전에 최소한 10,000 회 이상 사용합니다.


3
나는 그가 적어도 10K를 사용 한다고 말한다 .
Edgar Bonet

3
플래시 메모리가 오래 작동함에 따라 페이지가 지워지는 데 시간이 오래 걸립니다. 10,000은 지우기에 걸리는 시간이 사전 정의 된 (제조업체 지정) 임계 값을 초과하기 전에 페이지에서 예상되는 최소 지우기 작업 수입니다. 따라서 예, 그 수보다 많은 숫자를 얻거나 (최소 보장) 페이지를 지우는 데 시간이 조금 더 걸립니다.
Majenko

2
실제로 Arduino Uno를 재사용하고 지속적으로 코드를 약간 수정했습니다. 다시 업로드하는 데 시간이 오래 걸리므로 걱정할 가치가 없습니다. 와이어를 납땜하거나 굽히는 경우 보드를 다른 방식으로 더 많이 사용할 수 있습니다. 또한 Arduino를 할 때 보드는 매우 저렴하여 (특히 MiniPro 5V로 이동할 수있는 경우) 센서 / IO 재료를 납땜 할 때주의해야합니다. 보드는 매우 안정적이며 보드에 대한 의문이있는 경우 저렴하게 교체 할 수 있습니다.
Rob

1
스토리지에 대한 이야기가 나올 때마다 일반적으로 다음과 같은 점을 명심하십시오. 1) 0으로 가득 찬 전체 영역을 "스트레스하게"발파 한 다음 그 위에 1을 써야합니다. 2) 솔리드 스테이트 스토리지에는 일반적으로 복잡한 마모 수준 알고리즘이있어 영향을 최소화합니다. 3) 저렴한 Arduino입니다. 4) 언어는 C ++의 하위 집합이므로 테스트 프레임 워크를 모의하여 하드웨어에 닿기 전에 완전히 테스트 할 수 있습니다. 테스트되지 않은 코드를 하드웨어에 불필요하게 푸시하는 것을 제한합니다.
Rob

1
다음은 보드를 모의하는 간단한 예입니다. 테스트를 위해 지속적으로 하드웨어를 사용하지 않고 Linux (GCC로 컴파일)에서 로컬로 장치를 테스트 할 수 있습니다. 기본 아이디어는 코드에서 실제로 만드는 것처럼 많은 Arduino 호출처럼 보이는 프레임 워크를 만드는 것입니다. github.com/rfielding/octaveRounder/tree/master/test
Rob
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.