ฉันติดอยู่กับเรื่องนี้มาซักพักหนึ่งแล้วประมาณ 2-3 สัปดาห์ ฉันไม่แน่ใจว่าฉันทำอะไรผิด ฉันกำลังพยายามเขียนถึงส่วนแฟลช spiนี้และตอนนี้ฉันกำลังรันรูทีนเพื่อลบเขียนและอ่านเพื่อพยายามแยกมันออก แต่ก็ไม่มีโชค แน่นอนฉันได้แก้ไขข้อบกพร่องระหว่างทาง ...
อย่างไรก็ตามฉันมีสาย WP ของฉันผูกไว้บนกระดานและฉันลดความเร็วของนาฬิกาลงเหลือ 200khz จากนั้นฉันก็ใช้รูทีนการลบและดูเหมือนว่า:
ก่อนอื่นฉันจะตรวจสอบ ID เพียงแค่ตรวจแก้จุดบกพร่องนั่นคือคำสั่ง 9F จากนั้นฉันตั้งค่า WREN ด้วยคำสั่ง 06, C7 คือการลบชิปทั้งหมดจากนั้นฉันตรวจสอบบิตสถานะด้วย 05 และชัดเจน เวลาลบชิปของสิ่งนี้มีเพียง 35 มิลลิวินาที
ตอนนี้ฉันโหลดรหัสของฉันและลองเขียน:
ครั้งแรกที่ฉันตั้งค่า WREN กับ 06 ตรวจสอบสถานะเพื่อดูว่า WREN ถูกตั้งค่าเป็น 05 มันคือจากนั้นส่งคำสั่งโปรแกรมหน้า 02 ไปยังที่อยู่ 0x000000 คุณสามารถเห็นฉันเขียน deadcafe เป็นบิตแรก ๆ ยังไม่ได้วาดภาพที่นี่หลังจากเขียนเสร็จ (หนึ่งหน้าหรือ 256 ไบต์) ฉันส่งคำสั่ง 0x04 เพื่อปิดการใช้งาน WREN ฉันสังเกตว่าและฉันได้ตั้งค่าสี่ไบต์สุดท้ายของบัฟเฟอร์หน้าของฉันเป็น 0xAA, 0x55, 0xAA, 0x55 และฉันเห็นพวกเขาก่อน CS จะสูง
ตอนนี้หยุดโหลดรหัสซ้ำและลองเรียกใช้รอบการอ่าน: ส่ง 0x03 เป็นคำสั่ง read และ 0x000000 เป็นที่อยู่และ ... 0xFF ทั้งหมดกลับมาจากอุปกรณ์
ฉันสามารถเห็นอุปกรณ์ที่ตอบสนองต่อ ID การอ่านของฉันและตั้งค่าคำสั่ง WREN เพื่อให้ฉันรู้ว่ามันได้ยินฉันและสามารถตอบสนองได้ ฉันไม่รู้ว่าฉันทำอะไรผิดในตอนนี้ ฉันเดาว่าฉันจะกลับไปอ่านแผ่นข้อมูลและลองบางสิ่ง แต่ถ้าใครมีข้อมูลเชิงลึกฉันจะขอบคุณความช่วยเหลือ มันกำลังจะเป็นวันหยุดสุดสัปดาห์ที่น่าหงุดหงิดกับสิ่งนี้