Fixed SPI Read timing issue affecting MAX283x chips (#1590)

* Slowed SPI timing to MAX283x by 20%

* Fix temperature scaling
This commit is contained in:
Mark Thompson 2023-11-18 09:50:57 -06:00 committed by GitHub
parent de937f02d4
commit 8655027a5b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 3 deletions

View File

@ -342,7 +342,7 @@ int8_t MAX2837::temp_sense() {
_map.r.rx_top.ts_adc_trigger = 0; _map.r.rx_top.ts_adc_trigger = 0;
flush_one(Register::RX_TOP); flush_one(Register::RX_TOP);
return value * 4.31 - 6; // reg value is 0 to 31; possible return range is -6 C to 127 C return std::min(127, (int)(value * 4.31 - 40)); // reg value is 0 to 31; possible return range is -40 C to 127 C
} }
} // namespace max2837 } // namespace max2837

View File

@ -372,7 +372,7 @@ int8_t MAX2839::temp_sense() {
_map.r.rx_top_2.ts_adc_trigger = 0; _map.r.rx_top_2.ts_adc_trigger = 0;
flush_one(Register::RX_TOP_2); flush_one(Register::RX_TOP_2);
return value * 4.31 - 75; // reg value is 0 to 31; possible return range is -75 C to 58 C return std::min(127, (int)(value * 4.31 - 40)); // reg value is 0 to 31; possible return range is -40 C to 127 C
} }
} // namespace max2839 } // namespace max2839

View File

@ -61,7 +61,7 @@ static constexpr SPIConfig ssp_config_max283x = {
.ssport = gpio_max283x_select.port(), .ssport = gpio_max283x_select.port(),
.sspad = gpio_max283x_select.pad(), .sspad = gpio_max283x_select.pad(),
.cr0 = .cr0 =
CR0_CLOCKRATE(ssp_scr(ssp1_pclk_f, ssp1_cpsr, max283x_spi_f)) | CR0_FRFSPI | CR0_DSS16BIT, CR0_CLOCKRATE(ssp_scr(ssp1_pclk_f, ssp1_cpsr, max283x_spi_f) + 1) | CR0_FRFSPI | CR0_DSS16BIT,
.cpsr = ssp1_cpsr, .cpsr = ssp1_cpsr,
}; };