aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Embedded_SW/Embedded
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2018-07-22 09:21:26 +0300
committerAvi Levkovich <avi@twine-s.com>2018-07-22 09:21:26 +0300
commit044fb3fe8e56c5f6d1803bf9b97d648abafba44c (patch)
tree116169222e110a565ebc9d198bcfad466f11a847 /Software/Embedded_SW/Embedded
parentb8cae8fcfe37cee8df17d0e8ccfbf2b3ac8c2152 (diff)
downloadTango-044fb3fe8e56c5f6d1803bf9b97d648abafba44c.tar.gz
Tango-044fb3fe8e56c5f6d1803bf9b97d648abafba44c.zip
update RW Flash buffer
Diffstat (limited to 'Software/Embedded_SW/Embedded')
-rw-r--r--Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_ExtFlash.c73
1 files changed, 15 insertions, 58 deletions
diff --git a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_ExtFlash.c b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_ExtFlash.c
index edf4f027e..68c0b4ac7 100644
--- a/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_ExtFlash.c
+++ b/Software/Embedded_SW/Embedded/Modules/Stubs_Handler/Stub_ExtFlash.c
@@ -168,8 +168,19 @@ void Stub_ExtFlashReadRequest(MessageContainer* requestContainer)
stub_ext_flash_read_request__free_unpacked(request,NULL);
}
+//-------------------------------------------------------------------------------------
+#define MaxFlashWords 1024
+#define MaxFlashBytes MaxFlashWords*4
-#define MaxFlashWords 256
+typedef union
+{
+ uint32_t DWords[MaxFlashWords];
+ uint8_t Bytes[MaxFlashBytes];
+}Flash_Union;
+
+Flash_Union Flash_W;
+Flash_Union Flash_R;
+//---------------------------------------------------------------------------------------------
void Stub_ExtFlashWriteWordsRequest(MessageContainer* requestContainer)
{
@@ -191,9 +202,11 @@ void Stub_ExtFlashWriteWordsRequest(MessageContainer* requestContainer)
for(i = 0; i < request->n_wordtwrite;i++)
{
WriteBuf[i] = request->wordtwrite[i];
+ //Flash_W.DWords[i] = request->wordtwrite[i];
}
Ext_Flash_Operation(TX, request->n_wordtwrite, WriteBuf, NULL );
+ //Ext_Flash_Operation(TX, request->n_wordtwrite *4, Flash_W.Bytes, NULL );
status_response(status,&response.status, &response.statusword ,&response.has_statusword);
@@ -223,21 +236,11 @@ void Stub_ExtFlashReadWordsRequest(MessageContainer* requestContainer)
uint32_t No_Words;
uint32_t ReadBuf[MaxFlashWords];
- if(request->number_of_words>Max_words)
- {
- No_Words = Max_words;
- }
- else
- {
- No_Words = request->number_of_words;
- }
+ No_Words = request->number_of_words;
Ext_Flash_Operation(RX, No_Words, NULL, ReadBuf );
- //writeLine("ExtFlash Request: ");
- //writeFloat(request->number_of_words);
-
StubExtFlashReadWordsResponse response = STUB_EXT_FLASH_READ_WORDS_RESPONSE__INIT;
response.readbytes = ReadBuf;
@@ -245,60 +248,14 @@ void Stub_ExtFlashReadWordsRequest(MessageContainer* requestContainer)
status_response(status,&response.status, &response.statusword ,&response.has_statusword);
-/*
- response.has_readword_5 = false;
- response.has_readword_4 = false;
- response.has_readword_3 = false;
- response.has_readword_2 = false;
- response.has_readword_1 = false;
- switch(No_Words)
- {
- case 5:
- response.readword_5 = ReadBuf[4];
- response.has_readword_5 = true;
- case 4:
- response.readword_4 = ReadBuf[3];
- response.has_readword_4 = true;
- case 3:
- response.readword_3 = ReadBuf[2];
- response.has_readword_3 = true;
- case 2:
- response.readword_2 = ReadBuf[1];
- response.has_readword_2 = true;
- case 1:
- response.readword_1 = ReadBuf[0];
- response.has_readword_1 = true;
- break;
- default:
- break;
- }
-*/
responseContainer = createContainer(MESSAGE_TYPE__StubExtFlashReadWordsResponse, requestContainer->token, true, &response, &stub_ext_flash_read_words_response__pack, &stub_ext_flash_read_words_response__get_packed_size);
- //clear();
- /*
- writeLine("Sending Response: ");
- Write_status_response(status);
- writeString(", ");
- writeFloat(response.readword_1);
- writeString(", ");
- writeFloat(response.readword_2);
- writeString(", ");
- writeFloat(response.readword_3);
- writeString(", ");
- writeFloat(response.readword_4);
- writeString(", ");
- writeFloat(response.readword_5);
-*/
- //free(request);
//-------------------------------------------------------------------------------------------
uint8_t* container_buffer = malloc(message_container__get_packed_size(&responseContainer));
size_t container_size = message_container__pack(&responseContainer, container_buffer);
free(responseContainer.data.data);
SendChars((char*)container_buffer, container_size);
- //free(container_buffer);
- //free(requestContainer);
stub_ext_flash_read_words_request__free_unpacked(request,NULL);
}