configuration_json
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
configuration_json [ 18.04.2025 14:13] – lars | configuration_json [ 21.04.2025 12:14] (current) – lars | ||
---|---|---|---|
Line 436: | Line 436: | ||
" | " | ||
" | " | ||
- | | + | " |
- | | + | |
- | " | + | |
- | " | + | |
} | } | ||
} | } | ||
Line 469: | Line 466: | ||
**default**: | **default**: | ||
+ | === communication_mode === | ||
- | * // | + | Describes the communication. Possible values are: |
- | * | + | * duplex : the traditional mode using MISO and MOSI to transmit and receive at the same time. |
- | * //receive-only// (RXOMEN in the F411) disables the transmission signal (MISO in slave mode, MOSI in master mode). According to the F411 manual, it is useful when communicating with multiple slaves to avoid data collisions (not completely clear to me; avoids NSS signals for master-to-slave communication? | + | * half-duplex |
+ | * receive-only | ||
+ | * send-only : receive Line is not used. | ||
- | **DICUSS(Lars): | + | **type**: enum |
- | **REPLY(Johan)** Half duplex | + | **default**: duplex |
- | **DICUSS(Lars): | + | === frame_format === |
- | **REPLY(Johan)** I agree: this is a bad idea. Unfortunately, | + | Describes |
+ | * motorola : the " | ||
+ | * ti : | ||
- | Maybe we just need a setting to specify which pad should be used for half-duplex communication. | + | **type**: enum |
- | This whole // | + | **default**: |
- | * // | + | === clock_polarity === |
+ | Also often called CPOL. Describes the communication. Possible values | ||
+ | * idle_low | ||
+ | * idle_high | ||
- | | + | **type**: enum |
- | | + | **default**: idle_low |
+ | === clock_phase === | ||
+ | Also often called CPHA. Describes the communication. Possible values are: | ||
+ | * sample_on_leading_edge : samples the data on the edge from idle value to non-idle value. | ||
+ | * sample_on_trailinging_edge : samples the data on the edge from non-idle value to idle value. | ||
+ | |||
+ | **type**: enum | ||
+ | |||
+ | **default**: | ||
+ | |||
+ | |||
+ | === SPI Mode === | ||
Sometimes the documentation talks about a SPI Mode with the value of 0 to 3. This mode maps to the phase and polarity as described in the following table: | Sometimes the documentation talks about a SPI Mode with the value of 0 to 3. This mode maps to the phase and polarity as described in the following table: | ||
Line 500: | Line 516: | ||
| 3 | 1 | 1 | clock: idle_high, phase: sample_on_trailing_edge | | | 3 | 1 | 1 | clock: idle_high, phase: sample_on_trailing_edge | | ||
- | * // | ||
- | * // | ||
- | **DICUSS(Lars):** What do you have in mind? How can the code generator provide feedback? Shall we define some sort of log file that goes into the zip with the generated code that you can read and check for things like this? | + | === bit_order === |
+ | Describes the communication. Possible values are: | ||
+ | | ||
+ | | ||
- | **REPLY(Johan): | + | **type**: enum |
- | + | ||
- | **DICUSS(Lars): | + | |
- | + | ||
- | **REPLY(Johan): | + | |
- | + | ||
- | * //crc//: //enabled// or // | + | |
- | + | ||
- | **DICUSS(Lars): | + | |
- | + | ||
- | **REPLY(Johan): | + | |
- | + | ||
- | * // | + | |
- | + | ||
- | **DICUSS(Lars): | + | |
- | + | ||
- | **REPLY(Johan)** You are right. Wikipedia https:// | + | |
- | + | ||
- | **DICUSS(Lars): | + | |
- | + | ||
- | **REPLY(Johan)** Agreed: let's postpone this. It is not essential for a demo, so we can even postpone it until after the demo. | + | |
- | + | ||
- | **REPLY(Johan)** How/where would you specify the parameters of the connected device? Many other SPI parameters specified here also depend on the connected device. For example clock polarity and phase and bit order must match the device' | + | |
- | + | ||
- | **DICUSS(Lars): | + | |
- | + | ||
- | **REPLY(Johan)** Does that mean that for supported devices, | + | |
- | + | ||
- | ===== QSPI group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | ===== SDIO group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | ===== I2C group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | + | ||
- | ===== I3C group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | + | ||
- | ===== I2S group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | + | ||
- | ===== CAN group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | + | ||
- | ===== USB group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | + | ||
- | ===== Watchdog group ===== | + | |
- | + | ||
- | TBD | + | |
- | + | ||
- | ===== Random_Number group ===== | + | |
- | TBD | + | **default**: |
+ | === baud_rate === | ||
- | ===== CRC group ===== | + | Is the number of bits per second exchanged on the data lines. Expressed as frequency of the clock line. |
- | TBD | + | **type**: int (Hz) |
configuration_json.txt · Last modified: by lars