HWA
Bare metal programming with style
oca_1.h
Go to the documentation of this file.
1 
2 /* This file is part of the HWA project.
3  * Copyright (c) 2012,2015 Christophe Duparquet.
4  * All rights reserved. Read LICENSE.TXT for details.
5  */
6 
31 #define hw_class__oca
32 
33 
34 #define HW_BITS__oca , _hw_bits_oca
35 #define _hw_bits_oca(...) 8
36 
37 
38 /* Return the compare register of a _oca
39  */
40 #define hw__oca_reg , _hw_oca_reg
41 #define _hw_oca_reg(oo,ct,cp) HW_XOR(ct,ocr##cp) /* HW_CODR is blued */
42 
43 
44 #if !defined __ASSEMBLER__
45 
46 /* HWA context
47  */
48 typedef struct {
49 
50  /* Registers used for high-level configuration
51  */
52  struct {
53  uint8_t update ;
54  uint8_t output ;
55  } config ;
56 
57  /* Registers used for configuration resolution
58  */
59  struct {
60  uint8_t com ;
61  } solved ;
62 
63 } hwa_oca_t ;
64 
65 #endif