LibDriver MAX6675
Loading...
Searching...
No Matches
driver_max6675.h
Go to the documentation of this file.
1
36
37#ifndef DRIVER_MAX6675_H
38#define DRIVER_MAX6675_H
39
40#include <stdio.h>
41#include <stdint.h>
42#include <string.h>
43
44#ifdef __cplusplus
45extern "C"{
46#endif
47
53
58
62typedef struct max6675_handle_s
63{
64 uint8_t (*spi_init)(void);
65 uint8_t (*spi_deinit)(void);
66 uint8_t (*spi_read_cmd)(uint8_t *buf, uint16_t len);
67 void (*delay_ms)(uint32_t ms);
68 void (*debug_print)(const char *const fmt, ...);
69 uint8_t inited;
71
87
91
98
105#define DRIVER_MAX6675_LINK_INIT(HANDLE, STRUCTURE) memset(HANDLE, 0, sizeof(STRUCTURE))
106
113#define DRIVER_MAX6675_LINK_SPI_INIT(HANDLE, FUC) (HANDLE)->spi_init = FUC
114
121#define DRIVER_MAX6675_LINK_SPI_DEINIT(HANDLE, FUC) (HANDLE)->spi_deinit = FUC
122
129#define DRIVER_MAX6675_LINK_SPI_READ_COMMAND(HANDLE, FUC) (HANDLE)->spi_read_cmd = FUC
130
137#define DRIVER_MAX6675_LINK_DELAY_MS(HANDLE, FUC) (HANDLE)->delay_ms = FUC
138
145#define DRIVER_MAX6675_LINK_DEBUG_PRINT(HANDLE, FUC) (HANDLE)->debug_print = FUC
146
150
157
166uint8_t max6675_info(max6675_info_t *info);
167
178uint8_t max6675_init(max6675_handle_t *handle);
179
190uint8_t max6675_deinit(max6675_handle_t *handle);
191
205uint8_t max6675_read(max6675_handle_t *handle,uint16_t *raw, float *temp);
206
210
217
229uint8_t max6675_get_reg(max6675_handle_t *handle, uint16_t *data);
230
234
238
239#ifdef __cplusplus
240}
241#endif
242
243#endif
uint8_t max6675_read(max6675_handle_t *handle, uint16_t *raw, float *temp)
read the temperature
uint8_t max6675_info(max6675_info_t *info)
get chip's information
struct max6675_info_s max6675_info_t
max6675 information structure definition
uint8_t max6675_init(max6675_handle_t *handle)
initialize the chip
struct max6675_handle_s max6675_handle_t
max6675 handle structure definition
uint8_t max6675_deinit(max6675_handle_t *handle)
close the chip
uint8_t max6675_get_reg(max6675_handle_t *handle, uint16_t *data)
get the chip register
max6675 handle structure definition
uint8_t(* spi_init)(void)
void(* delay_ms)(uint32_t ms)
uint8_t(* spi_read_cmd)(uint8_t *buf, uint16_t len)
void(* debug_print)(const char *const fmt,...)
uint8_t(* spi_deinit)(void)
max6675 information structure definition
float supply_voltage_max_v
uint32_t driver_version
char manufacturer_name[32]
float supply_voltage_min_v