no-OS
Loading...
Searching...
No Matches
parameters.h
Go to the documentation of this file.
1/***************************************************************************/
36#ifndef __PARAMETERS_H__
37#define __PARAMETERS_H__
38
39#include "stm32_hal.h"
40#include "stm32_irq.h"
41#include "stm32_gpio_irq.h"
42#include "stm32_spi.h"
43#include "stm32_gpio.h"
44#include "stm32_uart.h"
45#include "stm32_uart_stdio.h"
46#include "no_os_units.h"
47
48extern UART_HandleTypeDef huart5;
49extern TIM_HandleTypeDef htim1;
50extern TIM_HandleTypeDef htim2;
51extern TIM_HandleTypeDef htim8;
52
53#define XSTR(x) STR(x)
54#define STR(x) #x
55
56#define UART_IRQ_ID UART5_IRQn
57#define UART_ASYNC_RX true
58
59#define UART_DEVICE_ID 5
60#define UART_BAUDRATE 115200
61#define UART_EXTRA &uart_extra_ip
62#define UART_OPS &stm32_uart_ops
63
64
65#define SPI_DEVICE_ID 1
66#define SPI_BAUDRATE 45000000 /* multiples of sysclk */
67#define SPI_CS 15
68#define SPI_CS_PORT GPIO_PORT_A
69#define SPI_OPS &stm32_spi_ops
70#define SPI_EXTRA &spi_extra_ip
71
72#define GPIO_OPS &stm32_gpio_ops
73#define GPIO_EXTRA NULL
74#define GPIO_CNV 10
75#define GPIO_CNV_PORT GPIO_PORT_A
76#define GPIO_PORT_A 0
77
78#define SAMPLES_PER_CHANNEL 1000
79#define BYTES_PER_SAMPLE 4 /* one sample contains all channels */
80#define MAX_SIZE_BASE_ADDR (SAMPLES_PER_CHANNEL * BYTES_PER_SAMPLE)
81
82/* time to xfer 1 byte */
83#define TX_PWM_PERIOD_NS (( 8 * KILO) / ((SPI_BAUDRATE / MEGA ) - 1))
84#define TX_PWM_DUTY_NS 1 /* dont care */
85#define TX_PWM_REPS (BYTES_PER_SAMPLE - 1)
86
87/* time to transfer a sample */
88#define CS_PWM_PERIOD_NS ((TX_PWM_PERIOD_NS * BYTES_PER_SAMPLE) + CS_PWM_DUTY_NS + 200)
89#define CS_PWM_DUTY_NS 30 /* quiet time, from datasheet */
90
91/* sample rate */
92#define TRIGGER_PERIOD_NS (CS_PWM_PERIOD_NS + TRIGGER_DUTY_NS)
93#define TRIGGER_DUTY_NS 20
94#define TRIGGER_PWM_ID 1
95
96#define PWM_OPS &stm32_pwm_ops
97#define TRIGGER_PWM_EXTRA &trigger_pwm_extra_init_params
98
102
103#define CLKGEN_INIT NULL
104#define OFFLOAD_INIT NULL
105#define SPI_ENGINE_INIT NULL
106#define DCACHE_INVALIDATE NULL
107
108
109#endif /* __PARAMETERS_H__ */
UART_HandleTypeDef huart5
TIM_HandleTypeDef htim1
TIM_HandleTypeDef htim2
TIM_HandleTypeDef htim8
struct xil_uart_init_param uart_extra_ip
Definition parameters.c:37
struct stm32_pwm_init_param trigger_pwm_extra_init_params
Definition parameters.c:71
struct stm32_spi_init_param spi_extra_ip
Definition parameters.c:138
Header file of Units.
Header file for stm32 gpio specifics.
Header file for stm32 gpio irq specifics.
Header file for stm32 irq specifics.
Header file for the stm32 spi driver.
Header file of UART driver for STM32.
Header file of stm32 UART driver stdout/stdin redirection.
Structure holding the STM32 PWM parameters.
Definition stm32_pwm.h:87
Structure holding the initialization parameters for stm32 platform specific SPI parameters.
Definition stm32_spi.h:51
Specific initialization parameters for stm32 UART.
Definition stm32_uart.h:46