Skip to content

Commit a44f63c

Browse files
Fixed Jededc ID & Device ID reading #17 [SPI_FLASH]
1 parent 9ed3af5 commit a44f63c

File tree

2 files changed

+16
-15
lines changed

2 files changed

+16
-15
lines changed

Firmware/drivers/spi/spi_wrapper.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ class SpiBus::SpiBackendImpl
144144
, const size_t _receiveBufferSize
145145
)
146146
{
147-
assert( _bytesCount <= _receiveBufferSize );
147+
//assert( _bytesCount <= _receiveBufferSize );
148148

149149
nrfx_spim_xfer_desc_t receiveAsyncDesc =
150150
NRFX_SPIM_XFER_RX(

Firmware/drivers/winbondflash/winbond_flash.cpp

+15-14
Original file line numberDiff line numberDiff line change
@@ -129,14 +129,16 @@ WinbondFlash::requestDeviceId()
129129
, WindbondCommandSet::DummyByte
130130
, WindbondCommandSet::DummyByte
131131
, WindbondCommandSet::DummyByte
132-
);
133-
m_pBusPtr->addTransaction( std::move( requestId ) );
134-
135132

136-
Interface::Spi::Transaction receiveData =
137-
readTransaction( WindbondCommandSet::UniqueIdLength );
133+
, WindbondCommandSet::DummyByte
134+
, WindbondCommandSet::DummyByte
135+
, WindbondCommandSet::DummyByte
136+
, WindbondCommandSet::DummyByte
137+
, WindbondCommandSet::DummyByte
138+
, WindbondCommandSet::DummyByte
139+
);
138140

139-
receiveData.afterTransaction =
141+
requestId.afterTransaction =
140142
[this]
141143
{
142144
const auto& dmaReceiveBuffer = m_pBusPtr->getDmaBufferReceive();
@@ -147,8 +149,8 @@ WinbondFlash::requestDeviceId()
147149
}
148150
onRequestDeviceIdCompleted.emit();
149151
};
150-
151-
m_pBusPtr->addTransaction( std::move( receiveData ) );
152+
153+
m_pBusPtr->addTransaction( std::move( requestId ) );
152154
m_pBusPtr->runQueue();
153155
}
154156

@@ -157,12 +159,11 @@ WinbondFlash::requestJEDEDCId()
157159
{
158160
Interface::Spi::Transaction requestIdCommandTransaction = writeTransaction(
159161
WindbondCommandSet::ReadJedecId
162+
, WindbondCommandSet::DummyByte
163+
, WindbondCommandSet::DummyByte
164+
, WindbondCommandSet::DummyByte
160165
);
161-
m_pBusPtr->addTransaction( std::move( requestIdCommandTransaction ) );
162-
163-
Interface::Spi::Transaction receiveData =
164-
readTransaction( WindbondCommandSet::JedecIdLength );
165-
receiveData.afterTransaction =
166+
requestIdCommandTransaction.afterTransaction =
166167
[this]
167168
{
168169
std::uint32_t JedecDeviceId{};
@@ -173,7 +174,7 @@ WinbondFlash::requestJEDEDCId()
173174
}
174175
onRequestJedecIdCompleted.emit(JedecDeviceId);
175176
};
176-
m_pBusPtr->addTransaction( std::move( receiveData ) );
177+
m_pBusPtr->addTransaction( std::move( requestIdCommandTransaction ) );
177178
m_pBusPtr->runQueue();
178179
}
179180

0 commit comments

Comments
 (0)