1#[doc = r" Register block"]
2#[repr(C)]
3pub struct RegisterBlock {
4 #[doc = "0x00 - Status And Control"]
5 pub sc: SC,
6 #[doc = "0x04 - Counter"]
7 pub cnt: CNT,
8 #[doc = "0x08 - Modulo"]
9 pub mod_: MOD,
10 #[doc = "0x0c - Channel (n) Status And Control"]
11 pub c0sc: CSC,
12 #[doc = "0x10 - Channel (n) Value"]
13 pub c0v: CV,
14 #[doc = "0x14 - Channel (n) Status And Control"]
15 pub c1sc: CSC,
16 #[doc = "0x18 - Channel (n) Value"]
17 pub c1v: CV,
18 _reserved0: [u8; 48usize],
19 #[doc = "0x4c - Counter Initial Value"]
20 pub cntin: CNTIN,
21 #[doc = "0x50 - Capture And Compare Status"]
22 pub status: STATUS,
23 #[doc = "0x54 - Features Mode Selection"]
24 pub mode: MODE,
25 #[doc = "0x58 - Synchronization"]
26 pub sync: SYNC,
27 #[doc = "0x5c - Initial State For Channels Output"]
28 pub outinit: OUTINIT,
29 #[doc = "0x60 - Output Mask"]
30 pub outmask: OUTMASK,
31 #[doc = "0x64 - Function For Linked Channels"]
32 pub combine: COMBINE,
33 #[doc = "0x68 - Deadtime Insertion Control"]
34 pub deadtime: DEADTIME,
35 #[doc = "0x6c - FTM External Trigger"]
36 pub exttrig: EXTTRIG,
37 #[doc = "0x70 - Channels Polarity"]
38 pub pol: POL,
39 #[doc = "0x74 - Fault Mode Status"]
40 pub fms: FMS,
41 #[doc = "0x78 - Input Capture Filter Control"]
42 pub filter: FILTER,
43 #[doc = "0x7c - Fault Control"]
44 pub fltctrl: FLTCTRL,
45 #[doc = "0x80 - Quadrature Decoder Control And Status"]
46 pub qdctrl: QDCTRL,
47 #[doc = "0x84 - Configuration"]
48 pub conf: CONF,
49 #[doc = "0x88 - FTM Fault Input Polarity"]
50 pub fltpol: FLTPOL,
51 #[doc = "0x8c - Synchronization Configuration"]
52 pub synconf: SYNCONF,
53 #[doc = "0x90 - FTM Inverting Control"]
54 pub invctrl: INVCTRL,
55 #[doc = "0x94 - FTM Software Output Control"]
56 pub swoctrl: SWOCTRL,
57 #[doc = "0x98 - FTM PWM Load"]
58 pub pwmload: PWMLOAD,
59}
60#[doc = "Status And Control"]
61pub struct SC {
62 register: ::vcell::VolatileCell<u32>,
63}
64#[doc = "Status And Control"]
65pub mod sc;
66#[doc = "Counter"]
67pub struct CNT {
68 register: ::vcell::VolatileCell<u32>,
69}
70#[doc = "Counter"]
71pub mod cnt;
72#[doc = "Modulo"]
73pub struct MOD {
74 register: ::vcell::VolatileCell<u32>,
75}
76#[doc = "Modulo"]
77pub mod mod_;
78#[doc = "Channel (n) Status And Control"]
79pub struct CSC {
80 register: ::vcell::VolatileCell<u32>,
81}
82#[doc = "Channel (n) Status And Control"]
83pub mod csc;
84#[doc = "Channel (n) Value"]
85pub struct CV {
86 register: ::vcell::VolatileCell<u32>,
87}
88#[doc = "Channel (n) Value"]
89pub mod cv;
90#[doc = "Counter Initial Value"]
91pub struct CNTIN {
92 register: ::vcell::VolatileCell<u32>,
93}
94#[doc = "Counter Initial Value"]
95pub mod cntin;
96#[doc = "Capture And Compare Status"]
97pub struct STATUS {
98 register: ::vcell::VolatileCell<u32>,
99}
100#[doc = "Capture And Compare Status"]
101pub mod status;
102#[doc = "Features Mode Selection"]
103pub struct MODE {
104 register: ::vcell::VolatileCell<u32>,
105}
106#[doc = "Features Mode Selection"]
107pub mod mode;
108#[doc = "Synchronization"]
109pub struct SYNC {
110 register: ::vcell::VolatileCell<u32>,
111}
112#[doc = "Synchronization"]
113pub mod sync;
114#[doc = "Initial State For Channels Output"]
115pub struct OUTINIT {
116 register: ::vcell::VolatileCell<u32>,
117}
118#[doc = "Initial State For Channels Output"]
119pub mod outinit;
120#[doc = "Output Mask"]
121pub struct OUTMASK {
122 register: ::vcell::VolatileCell<u32>,
123}
124#[doc = "Output Mask"]
125pub mod outmask;
126#[doc = "Function For Linked Channels"]
127pub struct COMBINE {
128 register: ::vcell::VolatileCell<u32>,
129}
130#[doc = "Function For Linked Channels"]
131pub mod combine;
132#[doc = "Deadtime Insertion Control"]
133pub struct DEADTIME {
134 register: ::vcell::VolatileCell<u32>,
135}
136#[doc = "Deadtime Insertion Control"]
137pub mod deadtime;
138#[doc = "FTM External Trigger"]
139pub struct EXTTRIG {
140 register: ::vcell::VolatileCell<u32>,
141}
142#[doc = "FTM External Trigger"]
143pub mod exttrig;
144#[doc = "Channels Polarity"]
145pub struct POL {
146 register: ::vcell::VolatileCell<u32>,
147}
148#[doc = "Channels Polarity"]
149pub mod pol;
150#[doc = "Fault Mode Status"]
151pub struct FMS {
152 register: ::vcell::VolatileCell<u32>,
153}
154#[doc = "Fault Mode Status"]
155pub mod fms;
156#[doc = "Input Capture Filter Control"]
157pub struct FILTER {
158 register: ::vcell::VolatileCell<u32>,
159}
160#[doc = "Input Capture Filter Control"]
161pub mod filter;
162#[doc = "Fault Control"]
163pub struct FLTCTRL {
164 register: ::vcell::VolatileCell<u32>,
165}
166#[doc = "Fault Control"]
167pub mod fltctrl;
168#[doc = "Quadrature Decoder Control And Status"]
169pub struct QDCTRL {
170 register: ::vcell::VolatileCell<u32>,
171}
172#[doc = "Quadrature Decoder Control And Status"]
173pub mod qdctrl;
174#[doc = "Configuration"]
175pub struct CONF {
176 register: ::vcell::VolatileCell<u32>,
177}
178#[doc = "Configuration"]
179pub mod conf;
180#[doc = "FTM Fault Input Polarity"]
181pub struct FLTPOL {
182 register: ::vcell::VolatileCell<u32>,
183}
184#[doc = "FTM Fault Input Polarity"]
185pub mod fltpol;
186#[doc = "Synchronization Configuration"]
187pub struct SYNCONF {
188 register: ::vcell::VolatileCell<u32>,
189}
190#[doc = "Synchronization Configuration"]
191pub mod synconf;
192#[doc = "FTM Inverting Control"]
193pub struct INVCTRL {
194 register: ::vcell::VolatileCell<u32>,
195}
196#[doc = "FTM Inverting Control"]
197pub mod invctrl;
198#[doc = "FTM Software Output Control"]
199pub struct SWOCTRL {
200 register: ::vcell::VolatileCell<u32>,
201}
202#[doc = "FTM Software Output Control"]
203pub mod swoctrl;
204#[doc = "FTM PWM Load"]
205pub struct PWMLOAD {
206 register: ::vcell::VolatileCell<u32>,
207}
208#[doc = "FTM PWM Load"]
209pub mod pwmload;