File tree Expand file tree Collapse file tree 2 files changed +19
-5
lines changed
Expand file tree Collapse file tree 2 files changed +19
-5
lines changed Original file line number Diff line number Diff line change @@ -82,6 +82,14 @@ AS5047Settings1 AS5047::readSettings1(){
8282 return result;
8383}
8484
85+
86+ void AS5047::writeSettings1 (AS5047Settings1 settings){
87+ uint16_t command = AS5047_SETTINGS1_REG; // set r=0, result is 0x0018
88+ uint16_t cmdresult = spi_transfer16 (command);
89+ cmdresult = spi_transfer16 (settings.reg );
90+ }
91+
92+
8593AS5047Settings2 AS5047::readSettings2 (){
8694 uint16_t command = AS5047_SETTINGS2_REG | AS5047_RW; // set r=1, result is 0x4019
8795 uint16_t cmdresult = spi_transfer16 (command);
@@ -105,12 +113,16 @@ AS5047Diagnostics AS5047::readDiagnostics(){
105113void AS5047::enablePWM (bool enable){
106114 AS5047Settings1 settings = readSettings1 ();
107115 settings.pwmon = enable;
108- uint16_t command = AS5047_SETTINGS1_REG; // set r=0, result is 0x0018
109- uint16_t cmdresult = spi_transfer16 (command);
110- cmdresult = spi_transfer16 (settings.reg );
111- // TODO check result...
116+ writeSettings1 (settings);
112117}
113118
119+ void AS5047::enableABI (bool enable){
120+ AS5047Settings1 settings = readSettings1 ();
121+ settings.uvw_abi = enable?0 :1 ;
122+ writeSettings1 (settings);
123+ }
124+
125+
114126
115127uint16_t AS5047::setZero (uint16_t value){
116128 // TODO implement me!
Original file line number Diff line number Diff line change @@ -122,8 +122,10 @@ class AS5047 {
122122
123123 AS5047Diagnostics readDiagnostics ();
124124 AS5047Settings1 readSettings1 ();
125+ void writeSettings1 (AS5047Settings1 settings);
125126 AS5047Settings2 readSettings2 ();
126- void enablePWM (bool enable);
127+ void enablePWM (bool enable);
128+ void enableABI (bool enable);
127129
128130 uint16_t setZero (uint16_t );
129131
You can’t perform that action at this time.
0 commit comments