X2D lib first commit

Committer:
sev2000
Date:
Sun Dec 01 14:35:25 2019 +0000
Revision:
13:345e4251cf25
Parent:
12:ce8ae07fd23b
Child:
15:2f74266340ac
Use Circular buffer

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sev2000 0:9ef8edfe21bc 1 #include "mbed.h"
sev2000 0:9ef8edfe21bc 2
sev2000 0:9ef8edfe21bc 3 extern Serial pc;
sev2000 0:9ef8edfe21bc 4
sev2000 0:9ef8edfe21bc 5 #define __DEBUG__
sev2000 0:9ef8edfe21bc 6 #define Level 3
sev2000 0:9ef8edfe21bc 7 #define DBG(x, ...) if (Level>=3) pc.printf("[DBG]"x"\r\n", ##__VA_ARGS__);
sev2000 0:9ef8edfe21bc 8 #define WARN(x, ...) if (Level>=2) pc.printf("[WARN]"x"\r\n", ##__VA_ARGS__);
sev2000 0:9ef8edfe21bc 9 #define ERR(x, ...) if (Level>=1) pc.printf("[ERR]"x"\r\n", ##__VA_ARGS__);
sev2000 0:9ef8edfe21bc 10
sev2000 1:265edb6bdd52 11 typedef enum {
sev2000 7:eaa973daaf58 12 Moon = 0,
sev2000 1:265edb6bdd52 13 Conf1 = 1, // Confort -1
sev2000 1:265edb6bdd52 14 Conf2 = 2, // Confort -2
sev2000 7:eaa973daaf58 15 Sun = 3,
sev2000 12:ce8ae07fd23b 16 ABS = 4,
sev2000 7:eaa973daaf58 17 HG = 7,
sev2000 7:eaa973daaf58 18 OFF = 8
sev2000 7:eaa973daaf58 19 }h_mode; //Heater mode
sev2000 7:eaa973daaf58 20 // mode | 0x80 => OFF
sev2000 7:eaa973daaf58 21 // mode | 0x40 => Abs
sev2000 0:9ef8edfe21bc 22
sev2000 0:9ef8edfe21bc 23 typedef struct {
sev2000 0:9ef8edfe21bc 24 long v;
sev2000 0:9ef8edfe21bc 25 bool pin;
sev2000 0:9ef8edfe21bc 26 }pulse_t;
sev2000 1:265edb6bdd52 27
sev2000 7:eaa973daaf58 28 typedef struct {
sev2000 7:eaa973daaf58 29 char zone;
sev2000 7:eaa973daaf58 30 h_mode mode;
sev2000 7:eaa973daaf58 31 }info_t;
sev2000 7:eaa973daaf58 32
sev2000 12:ce8ae07fd23b 33 typedef struct {
sev2000 13:345e4251cf25 34 char data[8];
sev2000 13:345e4251cf25 35 int lenght;
sev2000 13:345e4251cf25 36 }msg_t;
sev2000 13:345e4251cf25 37
sev2000 13:345e4251cf25 38 typedef struct {
sev2000 12:ce8ae07fd23b 39 unsigned char zone;
sev2000 12:ce8ae07fd23b 40 h_mode mode;
sev2000 12:ce8ae07fd23b 41 bool fixed;
sev2000 12:ce8ae07fd23b 42 unsigned char associated[3];
sev2000 12:ce8ae07fd23b 43 }zone_t;
sev2000 12:ce8ae07fd23b 44
sev2000 12:ce8ae07fd23b 45
sev2000 12:ce8ae07fd23b 46
sev2000 13:345e4251cf25 47 void Init_X2D(void);
sev2000 10:65fd918fc224 48 //void TASK_RcvMessages(info_t *message);
sev2000 12:ce8ae07fd23b 49 void SendCmd(int zone, h_mode prog);
sev2000 4:844c00dd0366 50 void write_ctrl_reg(unsigned long write_data);
sev2000 4:844c00dd0366 51 unsigned long read_ctrl_reg(void);