CuVoodoo

the sorcery of copper

User Tools

Site Tools


dump_spi_flash

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
dump_spi_flash [2021/04/15 11:11] – [interface] kingkevindump_spi_flash [2021/04/19 08:11] – [BX48] add database explorer kingkevin
Line 177: Line 177:
 There I can save read/write the data content, and save/load it. There I can save read/write the data content, and save/load it.
  
-To get the latest chip database (particularly if the Linux release it lagging), here how I update it:+To get the latest chip database (particularly if the Linux release it lagging), here how I update it ([[https://flashdb.cuvoodoo.info/|here]] you can also explore the database):
  
 <code> <code>
Line 236: Line 236:
 This allows to customize the programmer to your needs and setup (regarding voltage level, clock speed, nRST pin of flash and MCU, ...). This allows to customize the programmer to your needs and setup (regarding voltage level, clock speed, nRST pin of flash and MCU, ...).
  
-===== electrical =====+===== electrical electrical =====
  
 The most important part is using the right voltage so you don't damage the target chip or board. The most important part is using the right voltage so you don't damage the target chip or board.
Line 243: Line 243:
 Connect the target voltage and your MCU voltage on each side, and the job is done. Connect the target voltage and your MCU voltage on each side, and the job is done.
  
-===== interface =====+===== data interface =====
  
 The most common lines are the following: The most common lines are the following:
Line 262: Line 262:
   * in theory the data lines need to be driven as push-pull, but you can also drive them as open-drain (allowing using level shifter as the BSS138-based ones). But be aware that the chip will drive DO (and other lines in dual/quad mode) as push-pull   * in theory the data lines need to be driven as push-pull, but you can also drive them as open-drain (allowing using level shifter as the BSS138-based ones). But be aware that the chip will drive DO (and other lines in dual/quad mode) as push-pull
   * each setup is different, and you have to find things out by yourself. Just don't forget to read the appropriate data sheet   * each setup is different, and you have to find things out by yourself. Just don't forget to read the appropriate data sheet
 +
 +===== instruction interface =====
 +
 +The instructions are sent in 8-bit packets, most significant bit first.
 +There are a couples of instructions common to most SPI flash chips, which allow you to perform basic operations:
 +
 +  * 0x9F, JEDEC ID: you will then read 3 bytes allowing you to identify the chip (manufacturer, memory type, capacity). This is how most programmers verify the chip type
 +  * 0x03, Read Data: followed by 3 bytes of data where you specify the start address of the data you want to read. After that you can read out as much data as you want
dump_spi_flash.txt · Last modified: 2024/01/07 17:49 by 127.0.0.1