libxr  1.0
Want to be the best embedded framework
Loading...
Searching...
No Matches
ch32_spi_def.cpp
1#include "ch32_spi_def.hpp"
2
3ch32_spi_id_t CH32_SPI_GetID(SPI_TypeDef *addr)
4{
5 if (addr == nullptr)
6 {
7 return ch32_spi_id_t::CH32_SPI_ID_ERROR;
8 }
9#if defined(SPI1)
10 else if (addr == SPI1)
11 {
12 return ch32_spi_id_t::CH32_SPI1;
13 }
14#endif
15#if defined(SPI2)
16 else if (addr == SPI2)
17 {
18 return ch32_spi_id_t::CH32_SPI2;
19 }
20#endif
21#if defined(SPI3)
22 else if (addr == SPI3)
23 {
24 return ch32_spi_id_t::CH32_SPI3;
25 }
26#endif
27
28 return ch32_spi_id_t::CH32_SPI_NUMBER;
29}
30
31SPI_TypeDef *CH32_SPI_GetInstanceID(ch32_spi_id_t id)
32{
33 switch (id)
34 {
35#if defined(SPI1)
36 case CH32_SPI1:
37 return SPI1;
38#endif
39#if defined(SPI2)
40 case CH32_SPI2:
41 return SPI2;
42#endif
43#if defined(SPI3)
44 case CH32_SPI3:
45 return SPI3;
46#endif
47 default:
48 return nullptr;
49 }
50}