1<?xml version="1.0" encoding="utf-8" standalone="no"?> 2<device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="svd_schema.xsd"> 3 <peripheral> 4 <name>TMR0</name> 5 <description>32-bit reloadable timer that can be used for timing and event counting.</description> 6 <groupName>Timers</groupName> 7 <baseAddress>0x40010000</baseAddress> 8 <addressBlock> 9 <offset>0x00</offset> 10 <size>0x1000</size> 11 <usage>registers</usage> 12 </addressBlock> 13 <interrupt> 14 <name>TMR0</name> 15 <description>TMR0 IRQ</description> 16 <value>5</value> 17 </interrupt> 18 <registers> 19 <register> 20 <name>CNT</name> 21 <description>Count. This register stores the current timer count.</description> 22 <addressOffset>0x00</addressOffset> 23 <resetValue>0x00000001</resetValue> 24 </register> 25 <register> 26 <name>CMP</name> 27 <description>Compare. This register stores the compare value, which is used to set the maximum count value to initiate a reload of the timer to 0x0001.</description> 28 <addressOffset>0x04</addressOffset> 29 <resetValue>0x0000FFFF</resetValue> 30 </register> 31 <register> 32 <name>PWM</name> 33 <description>PWM. This register stores the value that is compared to the current timer count.</description> 34 <addressOffset>0x08</addressOffset> 35 </register> 36 <register> 37 <name>INTR</name> 38 <description>Clear Interrupt. Writing a value (0 or 1) to a bit in this register clears the associated interrupt.</description> 39 <addressOffset>0x0C</addressOffset> 40 <modifiedWriteValues>oneToClear</modifiedWriteValues> 41 <fields> 42 <field> 43 <name>IRQ_CLR</name> 44 <description>Clear Interrupt.</description> 45 <bitOffset>0</bitOffset> 46 <bitWidth>1</bitWidth> 47 </field> 48 </fields> 49 </register> 50 <register> 51 <name>CN</name> 52 <description>Timer Control Register.</description> 53 <addressOffset>0x10</addressOffset> 54 <fields> 55 <field> 56 <name>TMODE</name> 57 <description>Timer Mode.</description> 58 <bitOffset>0</bitOffset> 59 <bitWidth>3</bitWidth> 60 <enumeratedValues> 61 <enumeratedValue> 62 <name>oneShot</name> 63 <description>One Shot Mode.</description> 64 <value>0</value> 65 </enumeratedValue> 66 <enumeratedValue> 67 <name>continuous</name> 68 <description>Continuous Mode.</description> 69 <value>1</value> 70 </enumeratedValue> 71 <enumeratedValue> 72 <name>counter</name> 73 <description>Counter Mode.</description> 74 <value>2</value> 75 </enumeratedValue> 76 <enumeratedValue> 77 <name>pwm</name> 78 <description>PWM Mode.</description> 79 <value>3</value> 80 </enumeratedValue> 81 <enumeratedValue> 82 <name>capture</name> 83 <description>Capture Mode.</description> 84 <value>4</value> 85 </enumeratedValue> 86 <enumeratedValue> 87 <name>compare</name> 88 <description>Compare Mode.</description> 89 <value>5</value> 90 </enumeratedValue> 91 <enumeratedValue> 92 <name>gated</name> 93 <description>Gated Mode.</description> 94 <value>6</value> 95 </enumeratedValue> 96 <enumeratedValue> 97 <name>captureCompare</name> 98 <description>Capture/Compare Mode.</description> 99 <value>7</value> 100 </enumeratedValue> 101 </enumeratedValues> 102 </field> 103 <field> 104 <name>PRES</name> 105 <description>Prescaler. Set the Timer's prescaler value. The prescaler divides the PCLK input to the timer and sets the Timer's Count Clock, F_CNT_CLK = PCLK (HZ) /prescaler. The Timer's prescaler setting is a 4-bit value with pres3:pres[2:0].</description> 106 <bitOffset>3</bitOffset> 107 <bitWidth>3</bitWidth> 108 <enumeratedValues> 109 <enumeratedValue> 110 <name>div1</name> 111 <description>Divide by 1.</description> 112 <value>0</value> 113 </enumeratedValue> 114 <enumeratedValue> 115 <name>div2</name> 116 <description>Divide by 2.</description> 117 <value>1</value> 118 </enumeratedValue> 119 <enumeratedValue> 120 <name>div4</name> 121 <description>Divide by 4.</description> 122 <value>2</value> 123 </enumeratedValue> 124 <enumeratedValue> 125 <name>div8</name> 126 <description>Divide by 8.</description> 127 <value>3</value> 128 </enumeratedValue> 129 <enumeratedValue> 130 <name>div16</name> 131 <description>Divide by 16.</description> 132 <value>4</value> 133 </enumeratedValue> 134 <enumeratedValue> 135 <name>div32</name> 136 <description>Divide by 32.</description> 137 <value>5</value> 138 </enumeratedValue> 139 <enumeratedValue> 140 <name>div64</name> 141 <description>Divide by 64.</description> 142 <value>6</value> 143 </enumeratedValue> 144 <enumeratedValue> 145 <name>div128</name> 146 <description>Divide by 128.</description> 147 <value>7</value> 148 </enumeratedValue> 149 </enumeratedValues> 150 </field> 151 <field> 152 <name>TPOL</name> 153 <description>Timer input/output polarity bit.</description> 154 <bitOffset>6</bitOffset> 155 <bitWidth>1</bitWidth> 156 <enumeratedValues> 157 <enumeratedValue> 158 <name>activeHi</name> 159 <description>Active High.</description> 160 <value>0</value> 161 </enumeratedValue> 162 <enumeratedValue> 163 <name>activeLo</name> 164 <description>Active Low.</description> 165 <value>1</value> 166 </enumeratedValue> 167 </enumeratedValues> 168 </field> 169 <field> 170 <name>TEN</name> 171 <description>Timer Enable.</description> 172 <bitOffset>7</bitOffset> 173 <bitWidth>1</bitWidth> 174 <enumeratedValues> 175 <enumeratedValue> 176 <name>dis</name> 177 <description>Disable.</description> 178 <value>0</value> 179 </enumeratedValue> 180 <enumeratedValue> 181 <name>en</name> 182 <description>Enable.</description> 183 <value>1</value> 184 </enumeratedValue> 185 </enumeratedValues> 186 </field> 187 <field> 188 <name>PRES3</name> 189 <description>MSB of prescaler value.</description> 190 <bitOffset>8</bitOffset> 191 <bitWidth>1</bitWidth> 192 </field> 193 <field> 194 <name>PWMSYNC</name> 195 <description>Timer PWM Synchronization Mode Enable.</description> 196 <bitOffset>9</bitOffset> 197 <bitWidth>1</bitWidth> 198 <enumeratedValues> 199 <enumeratedValue> 200 <name>dis</name> 201 <description>Disable.</description> 202 <value>0</value> 203 </enumeratedValue> 204 <enumeratedValue> 205 <name>en</name> 206 <description>Enable.</description> 207 <value>1</value> 208 </enumeratedValue> 209 </enumeratedValues> 210 </field> 211 <field> 212 <name>NOLHPOL</name> 213 <description>Timer PWM output 0A polarity bit.</description> 214 <bitOffset>10</bitOffset> 215 <bitWidth>1</bitWidth> 216 <enumeratedValues> 217 <enumeratedValue> 218 <name>dis</name> 219 <description>Disable.</description> 220 <value>0</value> 221 </enumeratedValue> 222 <enumeratedValue> 223 <name>en</name> 224 <description>Enable.</description> 225 <value>1</value> 226 </enumeratedValue> 227 </enumeratedValues> 228 </field> 229 <field> 230 <name>NOLLPOL</name> 231 <description>Timer PWM output 0A' polarity bit.</description> 232 <bitOffset>11</bitOffset> 233 <bitWidth>1</bitWidth> 234 <enumeratedValues> 235 <enumeratedValue> 236 <name>dis</name> 237 <description>Disable.</description> 238 <value>0</value> 239 </enumeratedValue> 240 <enumeratedValue> 241 <name>en</name> 242 <description>Enable.</description> 243 <value>1</value> 244 </enumeratedValue> 245 </enumeratedValues> 246 </field> 247 <field> 248 <name>PWMCKBD</name> 249 <description>Timer PWM output 0A Mode Disable.</description> 250 <bitOffset>12</bitOffset> 251 <bitWidth>1</bitWidth> 252 <enumeratedValues> 253 <enumeratedValue> 254 <name>dis</name> 255 <description>Disable.</description> 256 <value>1</value> 257 </enumeratedValue> 258 <enumeratedValue> 259 <name>en</name> 260 <description>Enable.</description> 261 <value>0</value> 262 </enumeratedValue> 263 </enumeratedValues> 264 </field> 265 </fields> 266 </register> 267 </registers> 268 </peripheral> 269 <!-- TMR0: 32-bit reloadable timer Port 0 --> 270</device>