Fråga:
Hur många gånger kan jag ladda upp ett program eller skissa till mitt Arduino Uno Clone Board?
A. Raymundo
2018-06-18 22:27:42 UTC
view on stackexchange narkive permalink

Jag håller på att jobba med mitt allra första projekt med arduino (jag ska bara köpa ett nästa vecka), och en av våra professorer säger att vi bara kan ladda upp ett program eller skissa i ett Arduino Uno Board för ungefär åtta gånger. Han tillade också att om vi använder en klonversion kan den bara hålla i två skissuppladdningar. Är det sant eller bluffar han? Tack på förhand.

Jag har blinkat skisser till en viss Nano flera gånger i timmen när jag bygger och testar och jag har själv varit nyfiken på detta under de senaste dagarna. Jag visste att det skulle vara åtminstone på 100-talet men var inte säker på hur många. Tack för att du frågar.
Dags att ifrågasätta professorens trovärdighet. Programmet kommer att blinkas in i ATMega328P: s interna flashminne, och flash kommer att överleva några tusen skrivcykler. Ännu mer för EEPROM. STMicro citerar "10K till 100K-cykler" (http://www.st.com/resource/en/application_note/cd00165693.pdf)
Relaterat: SPIFFS på 8266 slitnivåer, så om du sparar 3KB med 3MB gratis kan du spara 1024X före den första överskrivningen (i teorin 512X i genomsnitt utan blocköverlappning), vilket innebär _millioner_ av sparar.
@jsotola såvida inte Google visar att den här frågan redan har besvarats på SE, berätta inte för användare att Google [(källa: FAQ)] (https://meta.stackexchange.com/questions/8724/how-should-we-deal -med-google-frågor)
Detta är ASE-motsvarigheten till falska nyheter.
Ett svar:
Majenko
2018-06-18 22:41:48 UTC
view on stackexchange narkive permalink

Han pratar fullständigt och fullständigt skakigt. För att citera från ATMega328P-databladet:

  • Icke-flyktiga minnessegment med hög uthållighet
    • 32 kB i det självprogrammerbara Flash-programmet i systemet Minne
    • 1KBytes EEPROM
    • 2KBytes Internt SRAM
    • Skriv / radera cykler: 10.000 Flash / 100.000 EEPROM
    • Datalagring: 20 år vid 85 ° C / 100 år vid 25 ° C (1)
    • Valfri sektion för startkod med oberoende låsbitar
      • In- Systemprogrammering via On-chip Boot Program
      • True Read-While-Write-operation
    • Programmeringslås för mjukvarusäkerhet

Så du har minst 10 000 användningar av det innan det börjar bli fläckigt.

Jag skulle säga att han har _minst_ 10 000 användningar.
Hur Flash-minnet fungerar när det åldras tar det längre tid för en sida att raderas. 10 000 är det minsta förväntade antalet raderingsåtgärder på en sida innan tiden för att radera kan börja överskrida ett fördefinierat (tillverkarspecifikt) tröskelvärde. Så ja, du kan förvänta dig att få mer än det numret (det är det minsta garanterade), eller det tar bara lite längre tid att radera sidor.
I praktiken återanvände jag en Arduino Uno och gjorde ständigt små justeringar av koden. Att ladda upp igen tar tillräckligt lång tid för att det inte ens är värt att oroa sig för. Det är mycket mer troligt att du tappar brädet på något annat sätt om du löd eller böjer ledningar. Också när du gör Arduino ... är brädorna så galna billiga (särskilt om du kan flytta ner till en MiniPro 5V) att det viktigaste du behöver oroa dig för är att bara vara försiktig när du lödder sensorn / IO-grejer. Brädet är extremt pålitligt och du kan bara byta billigt om du någonsin tvivlar på brädet.
när du pratar om lagring som "slits ut", kom bara ihåg att det i allmänhet är det här: 1) Du måste "stressigt" spränga hela områden fulla av nollor och sedan skriva dem över det. 2) Solid State-lagring har vanligtvis komplexa slitnivelleringsalgoritmer för att minimera effekterna av detta. 3) Det är en billig Arduino. 4) Språket är en delmängd av C ++, så du kan håna ut ett testramverk för att testa helt innan det träffar hårdvara; för att begränsa onödig tryckning av okontrollerad kod i hårdvaran.
här är ett enkelt exempel på att spotta ut kortet så att du bara kan testa det lokalt under Linux (sammanställt med GCC), snarare än att ständigt trycka på hårdvara för att testa. Grundidén är att skapa ett ramverk som ser ut så mycket av Arduino-samtalen som du faktiskt gör från din kod: https://github.com/rfielding/octaveRounder/tree/master/test
@Rob brukar du inte ens bry dig om 4 (förutom av orelaterade skäl) på grund av 3


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 4.0-licensen som det distribueras under.
Loading...