Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(PeriphDrivers): Fix MAX32675, MAX32680 A5 Silicon AFE Init, and Speedups #830

Merged
merged 5 commits into from
Dec 20, 2023

Conversation

jdk-maxim
Copy link
Contributor

Pull Request Template

Description

Corrects AFE initialization issue on latest MAX32675 silicon.

Changes to AFE driver to speed up communications. Increased SPI clock rate from 100KHz, to 1Mhz, and added define AFE_SPI_TRANSCEIVE_SAFE_BUT_SLOWER to allow compile time choice between timer based infinite loop protection, as was previously used, and the faster version without timeouts used by default now.

Adds HART_TEST_MODE_EXTERNAL this "Tristates" the HART Uart pins to allows them to be driven from off board PC. This mode is required during HART registration testing as a Modem (Secondary Master).

Validated working on MAX32675.

Checklist Before Requesting Review

  • PR Title follows correct guidelines.
  • Description of changes and all other relevant information.
  • (Optional) Link any related GitHub issues using a keyword
  • (Optional) Provide info on any relevant functional testing/validation. For API changes or significant features, this is not optional.

jdk-maxim and others added 4 commits December 12, 2023 16:57
Fix probing of AFE version. Had incorrect define on earlier version.

Updated HART UART driver to correctly handle new POR versus Reset
behavior after seeing this not work on latest silicon (ME16A-1E).

Precise procedure must be followed to maintain HART analog biases.
Found current timeout based scheme is a bit slow for requested
performance.

Supporting both methods at least at compile time via define:
AFE_SPI_TRANSCEIVE_SAFE_BUT_SLOWER

Also updated timeout for register access.
HART registration as a Modem requires driving of the HART UART
signals via external UART connection. This change places these
pins into a safe mode allowing external PC to drive these lines
as necessary.
@github-actions github-actions bot added MAX32675 Related to the MAX32675 (ME16) MAX32680 Related to the MAX32680 (ME20) labels Dec 13, 2023
@jdk-maxim jdk-maxim marked this pull request as ready for review December 13, 2023 13:53
Copy link
Contributor

@Jake-Carter Jake-Carter left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving and merging after @WilliamDock's review

@Jake-Carter Jake-Carter merged commit 8f82e92 into analogdevicesinc:main Dec 20, 2023
11 checks passed
@jdk-maxim jdk-maxim deleted the me16_new_a5_silicon_mods branch October 8, 2024 22:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
MAX32675 Related to the MAX32675 (ME16) MAX32680 Related to the MAX32680 (ME20)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants