Skip to content
Snippets Groups Projects
Commit 8b8bcae8 authored by Sergi Hernandez's avatar Sergi Hernandez
Browse files

Solved a problem with the starting addresses of the action and walking module.

Added the configuration of the walking step.
parent 084475a9
No related branches found
No related tags found
No related merge requests found
Pipeline #
...@@ -388,7 +388,7 @@ typedef enum { ...@@ -388,7 +388,7 @@ typedef enum {
#define MANAGER_ODD_SER_EN 0x08 #define MANAGER_ODD_SER_EN 0x08
#define MANAGER_ODD_SER_MOD 0x07 #define MANAGER_ODD_SER_MOD 0x07
#define ACTION_BASE_ADDRESS 0x017A #define ACTION_BASE_ADDRESS 0x019C
#define ACTION_MEM_LENGTH 2 #define ACTION_MEM_LENGTH 2
#define ACTION_START 0x01 #define ACTION_START 0x01
#define ACTION_STOP 0x02 #define ACTION_STOP 0x02
...@@ -396,7 +396,7 @@ typedef enum { ...@@ -396,7 +396,7 @@ typedef enum {
#define ACTION_INT_FLAG 0x08 #define ACTION_INT_FLAG 0x08
#define ACTION_STATUS 0x10 #define ACTION_STATUS 0x10
#define WALK_BASE_ADDRESS 0x0182 #define WALK_BASE_ADDRESS 0x019E
#define WALK_MEM_LENGTH 4 #define WALK_MEM_LENGTH 4
#define WALK_EEPROM_ADDRESS 0x0033 #define WALK_EEPROM_ADDRESS 0x0033
#define WALK_EEPROM_LENGTH 19 #define WALK_EEPROM_LENGTH 19
......
...@@ -501,6 +501,12 @@ void walking_process_write_cmd(unsigned short int address,unsigned short int len ...@@ -501,6 +501,12 @@ void walking_process_write_cmd(unsigned short int address,unsigned short int len
if(data[DARWIN_WALK_CNTRL-address]&WALK_STOP) if(data[DARWIN_WALK_CNTRL-address]&WALK_STOP)
walking_stop(); walking_stop();
} }
if(ram_in_range(DARWIN_WALK_STEP_FW_BW,address,length))
ram_data[DARWIN_WALK_STEP_FW_BW]=data[DARWIN_WALK_STEP_FW_BW-address];
if(ram_in_range(DARWIN_WALK_STEP_LEFT_RIGHT,address,length))
ram_data[DARWIN_WALK_STEP_LEFT_RIGHT]=data[DARWIN_WALK_STEP_LEFT_RIGHT-address];
if(ram_in_range(DARWIN_WALK_STEP_DIRECTION,address,length))
ram_data[DARWIN_WALK_STEP_DIRECTION]=data[DARWIN_WALK_STEP_DIRECTION-address];
// walk parameters // walk parameters
for(i=WALK_EEPROM_ADDRESS;i<=WALK_EEPROM_ADDRESS+WALK_EEPROM_LENGTH;i++) for(i=WALK_EEPROM_ADDRESS;i<=WALK_EEPROM_ADDRESS+WALK_EEPROM_LENGTH;i++)
if(ram_in_range(i,address,length)) if(ram_in_range(i,address,length))
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment