aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Code_Composer/twine_usblib_demo/Stubs_Handler
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2018-03-28 15:10:05 +0300
committerAvi Levkovich <avi@twine-s.com>2018-03-28 15:10:05 +0300
commit07c12e522fa81bffe2dc516d755d80d3178728d1 (patch)
tree31a3bf9c82a53640f7fa8295104563a27d2b0eb7 /Software/Code_Composer/twine_usblib_demo/Stubs_Handler
parent5e6a7e69008723f88037dcecc0fb55d4a9caefd6 (diff)
downloadTango-07c12e522fa81bffe2dc516d755d80d3178728d1.tar.gz
Tango-07c12e522fa81bffe2dc516d755d80d3178728d1.zip
Update FPGA_ReadVersion
Diffstat (limited to 'Software/Code_Composer/twine_usblib_demo/Stubs_Handler')
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c4
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h5
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c8
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c76
-rw-r--r--Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h3
5 files changed, 91 insertions, 5 deletions
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
index b87eea020..3cd3b3931 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Container.c
@@ -151,6 +151,10 @@ void receive_callback(char* buffer, size_t length)
case MESSAGE_TYPE__StubHWVersionRequest:
Stub_HWVersionRequest(requestContainer);
break;
+ case MESSAGE_TYPE__StubMotorRequest:
+ Stub_MotorRequest(requestContainer);
+ break;
+
default:
//unsupported message type !!
break;
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
index c7e41d2b8..30b9cab07 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/DataDef.h
@@ -114,7 +114,10 @@ The warning:
or in the environment add command line:
Project -> properties ->
-
+Press on show advanced settings
+CCS Build ->
+Advanced Options ->
+Diagnistic Options ->
Add the warning number in
Supports diagnostic <id> (--diag_suppress, - pds)
169
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
index 0861ddb5f..63b643eef 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_FPGAReadVersion.c
@@ -23,10 +23,10 @@
void Stub_FPGAReadVersionRequest(MessageContainer* requestContainer)
{
uint32_t status = FAILED;
- unsigned char Version;
- unsigned char Year;
- unsigned char Month;
- unsigned char Day;
+ unsigned char Version = 0;
+ unsigned char Year = 0 ;
+ unsigned char Month = 0;
+ unsigned char Day = 0;
MessageContainer responseContainer;
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
index 88f015f9a..d1e6ff82d 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.c
@@ -13,6 +13,8 @@
#include <PMR/Stubs/StubMotorPositionResponse.pb-c.h>
#include <PMR/Stubs/StubMotorMovRequest.pb-c.h>
#include <PMR/Stubs/StubMotorMovResponse.pb-c.h>
+#include <PMR/Stubs/StubMotorRequest.pb-c.h>
+#include <PMR/Stubs/StubMotorResponse.pb-c.h>
#include <stdbool.h>
#include <stdlib.h>
@@ -37,6 +39,7 @@
#include "drivers/FPGA/Moters_Driver/L6470.h"
#include "driverlib/ssi.h"
+#include "drivers/SPI/SPI_Comm.h"
extern unsigned long Run_Value ;
@@ -451,3 +454,76 @@ void Stub_MotorMovRequest(MessageContainer* requestContainer)
free(requestContainer);
}
+void Stub_MotorRequest(MessageContainer* requestContainer)
+{
+
+ //uint32_t read_status;
+ uint32_t temp = 0;
+ uint32_t rx = 0;
+
+ unsigned char N_Get = 0;
+
+
+ MessageContainer responseContainer;
+
+ StubMotorRequest* request = stub_motor_request__unpack(NULL, requestContainer->data.len, requestContainer->data.data);
+
+ StubMotorResponse response = STUB_MOTOR_RESPONSE__INIT;
+
+ N_Get = (unsigned char)request->n_bytes_to_get;
+
+ switch(request->n_bytes_to_set)
+ {
+ case 4:
+ temp = Write_Byte((byte)((request->data_to_send >> 24)&0xFF));
+ rx |= (temp & 0xFF) ;
+ N_Get = N_Get-1;
+ case 3:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send >> 16)&0xFF));
+ rx |= (temp & 0xFF);
+ N_Get = N_Get-1;
+ case 2:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send >> 8 )&0xFF));
+ rx |= (temp & 0xFF);
+ N_Get = N_Get-1;
+ case 1:
+ default:
+ rx = rx << 8;
+ temp = Write_Byte((byte)((request->data_to_send )&0xFF));
+ rx |= temp & 0xFF;
+ N_Get = N_Get-1;
+ }
+
+ while (N_Get)
+ {
+ rx = rx << 8;
+ temp = Write_Byte((uint8_t)(0x00));
+ rx |= temp & 0xFF;
+ N_Get = N_Get-1;
+ }
+
+ response.has_recived_data = true;
+ response.recived_data = rx;
+
+ response.has_motor_id = true;
+ response.motor_id = request->motor_id;
+
+ responseContainer = createContainer(MESSAGE_TYPE__StubMotorResponse, requestContainer->token, true, &response, &stub_motor_response__pack, &stub_motor_response__get_packed_size);
+
+ writeLine("Sending Response: ");
+
+ writeFloat(response.motor_id);
+
+
+ free(request);
+ //-------------------------------------------------------------------------------------------
+ uint8_t* container_buffer = malloc(message_container__get_packed_size(&responseContainer));
+ size_t container_size = message_container__pack(&responseContainer, container_buffer);
+ SendChars((char*)container_buffer, container_size);
+ free(container_buffer);
+ free(requestContainer);
+}
+
+
diff --git a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
index 95f82353f..59312179f 100644
--- a/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
+++ b/Software/Code_Composer/twine_usblib_demo/Stubs_Handler/Stub_Motor.h
@@ -5,3 +5,6 @@ void Stub_MotorStatusRequest(MessageContainer* requestContainer);
void Stub_MotorSpeedRequest(MessageContainer* requestContainer);
void Stub_MotorPositionRequest(MessageContainer* requestContainer);
void Stub_MotorMovRequest(MessageContainer* requestContainer);
+void Stub_MotorRequest(MessageContainer* requestContainer);
+
+