คุณสามารถแฟลชเฟิร์มแวร์ Marlin ใหม่ไปยังบอร์ด RAMPS 1.4 ก่อนที่มันจะย่อยสลาย ROM ได้หรือไม่


9

ก่อนอื่นฉันกำลังใช้งานชุด Folger Tech Prusa i3 ถ้านั่นสร้างความแตกต่าง นอกจากนี้ฉันเชื่อว่า Arduino เป็น Mega 2560

ฉันรู้ว่าอยู่ด้านหลังศีรษะของฉันว่า ROM ที่ตั้งโปรแกรมได้ด้วยไฟฟ้าเช่นเดียวกับสิ่งที่จะต้องอยู่บนบอร์ด Arduino ที่เก็บเฟิร์มแวร์ลดลงเล็กน้อยทุกครั้งที่คุณเขียนมัน ตอนนี้ฉันกำลังพยายามปรับเทียบปัญหาการพิมพ์อื่นและฉันคิดว่าฉันต้องแก้ไขเฟิร์มแวร์อีกครั้งซึ่งฉันทำไปแล้วหลายครั้ง ดังนั้นฉันจึงเริ่มกังวลว่าฉันสามารถทำเช่นนั้นได้กี่ครั้ง

เมื่อฉันจำคำย่อ "EEPROM" และหลังจาก googling นิดหน่อยฉันก็เจอArduino - EEPROMซึ่งบอกว่ามันสามารถจัดการกับวงจร 100k ได้ดังนั้นฉันคิดว่าฉันตอบได้ แต่ปัญหาคือฉัน ไม่แน่ใจว่ามีการอัพโหลดไฟล์ทั้งหมดหรือไม่ มันจะเป็นการรวมกันของข้อมูลหรือไม่ และถ้าเป็นเช่นนั้นไฟล์มาร์ลินจะใช้ไปกี่รอบ

ฉันก็พบสิ่งนี้ด้วย:

แต่ฉันประหลาดใจมากถ้าฉันอัพโหลดไปมากกว่า 2,000 ครั้ง

บนMega2560 ก่ออิฐ? ตรวจไม่พบ DFU ล้มเหลวโดยระบุว่าคำตอบอาจต่ำถึง 2000

นอกจากนี้นี้:

โหมดล้มเหลว

ข้อมูลที่จัดเก็บมีข้อ จำกัด อยู่สองประการ ความอดทนและการเก็บรักษาข้อมูล

ระหว่างการเขียนใหม่ gate gate ในทรานซิสเตอร์แบบ gate-gate จะค่อย ๆ สะสมอิเล็กตรอนที่ถูกกักอยู่ สนามไฟฟ้าของอิเล็กตรอนที่ติดอยู่จะถูกเพิ่มเข้าไปในอิเล็กตรอนในประตูลอยลดระดับหน้าต่างระหว่างแรงดันไฟฟ้าที่กำหนดสำหรับค่าศูนย์กับวัตถุ หลังจากมีจำนวนรอบการเขียนใหม่เพียงพอความแตกต่างนั้นเล็กเกินไปที่จะรับรู้เซลล์ติดอยู่ในสถานะโปรแกรมและความล้มเหลวของความอดทนเกิดขึ้น ผู้ผลิตมักจะระบุจำนวนสูงสุดของการเขียนซ้ำได้ 1 ล้านหรือมากกว่านั้น [5]

ในระหว่างการเก็บอิเล็กตรอนที่ถูกฉีดเข้าสู่ประตูลอยอาจลอยผ่านฉนวนโดยเฉพาะที่อุณหภูมิสูงขึ้นและทำให้สูญเสียประจุทำให้เซลล์กลับสู่สภาพเดิม ผู้ผลิตมักรับประกันการเก็บข้อมูล 10 ปีขึ้นไป [6]

จากวิกิพีเดีย: EEPROM - โหมดความล้มเหลวซึ่งบ่งบอกถึงคำตอบอาจเป็นล้าน

ณ จุดนี้ฉันแค่สงสัยว่าผู้เชี่ยวชาญอาจเห็นสิ่งนี้และบรรเทาความเดือดร้อนของฉัน ...


AT Mega2560 มีที่เก็บแฟลชภายใน แต่ช่วยในการดูข้อมูลแฟลชภายนอก อุปกรณ์แฟลชภายนอกมีหลายเกรดด้วยกัน บางตัวสามารถกระพริบได้เพียงจำนวนครั้งที่น้อยมากและจากส่วนเหล่านี้ตัวเลข 2000 อาจมาถึง ส่วนอื่น ๆ ชิ้นส่วนคุณภาพสูงสามารถ reflashed ล้านครั้ง ในงานของฉันเรามักจะเห็นคะแนน 10,000 สำหรับชิ้นส่วนที่มีต้นทุนต่ำและ 100,000 สำหรับชิ้นส่วนที่มีต้นทุนสูงกว่า สำหรับแฟลชในตัวอาจมีราคาและอายุการใช้งานไม่มากนักเนื่องจากจะทำให้ช่องทดสอบและช่องทางการจัดจำหน่ายของผู้ผลิตซับซ้อนขึ้น
cmm

คำตอบ:


14

EEPROM ไม่ใช่ที่เก็บโปรแกรมตัวเองสิ่งที่เกี่ยวข้องกับคำถามของคุณคือแฟลช แฟลชใน ATmega2560 ได้รับการจัดอันดับ 10,000 รอบ (เช่นคุณสามารถโปรแกรมใหม่อย่างน้อย 10,000 ครั้ง)


"รอบ" สำหรับการจัดเก็บแฟลชไม่ใช่การเขียน แต่เป็นการลบ เมื่อเขียน Flash ต้องลบก่อน กระบวนการลบจะเน้นอุปกรณ์และรอบหลายรอบนำไปสู่โหมดความล้มเหลวหลายโหมด การเขียนข้อมูลลงในส่วนที่ถูกลบนั้นมีความอ่อนโยนมากกว่า ดังนั้นจึงไม่สำคัญว่าโปรแกรมจะใหญ่แค่ไหน "การกะพริบซ้ำ" เริ่มต้นด้วยรอบการลบตามด้วยรอบการเขียนโปรแกรมมากเท่าที่จำเป็น
cmm

1

AVR มี SRAM สำหรับตัวแปร (มักเรียกว่า RAM) มี EEPROM สำหรับตัวแปรที่ไม่ลบเลือนและมีแฟลชสำหรับโค้ดที่เรียกใช้งานได้ (สถาปัตยกรรมฮาร์วาร์ด!)

สำหรับการกะพริบอีกครั้งของเฟิร์มแวร์ทั้ง SRAM และ EEPROM อัตราการเขียนนั้นสำคัญ แต่อัตราแฟลชนั้น อัตราการเขียนแฟลชอยู่ในระดับ 100,000 ถึงล้านดังนั้นจึงไม่ควรมีปัญหา

บทความที่คุณเชื่อมโยงยังระบุด้วยว่าเขาไม่ได้เขียนซ้ำเกินกว่า 2000 ครั้งดังนั้นควรแก้ไข ฉันเห็นด้วยเท่านั้น กะพริบสองสามพันครั้งก็ไม่มีปัญหา เมื่อคุณเข้าใกล้ 100,000 คนคุณสามารถเริ่มกังวลได้

บิตแฟลชสามารถเขียนได้ตั้งแต่ 1 ถึง 0 การลบแฟลชจะเขียนบิตทั้งหมดเป็น 1 การลบสามารถทำได้บนหน้าแฟลชเท่านั้น (ขนาดขึ้นอยู่กับอุปกรณ์

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.