Robert Rostohar | ba96a2c | 2016-07-01 22:42:12 +0200 | [diff] [blame] | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | |
| 3 | <!-- File naming: <part/series name>.svd --> |
| 4 | |
| 5 | <!-- |
| 6 | Copyright (C) 2012-2014 ARM Limited. All rights reserved. |
| 7 | |
| 8 | Purpose: System Viewer Description (SVD) Example (Schema Version 1.1) |
| 9 | This is a description of a none-existent and incomplete device |
| 10 | for demonstration purposes only. |
| 11 | |
| 12 | Redistribution and use in source and binary forms, with or without |
| 13 | modification, are permitted provided that the following conditions are met: |
| 14 | - Redistributions of source code must retain the above copyright |
| 15 | notice, this list of conditions and the following disclaimer. |
| 16 | - Redistributions in binary form must reproduce the above copyright |
| 17 | notice, this list of conditions and the following disclaimer in the |
| 18 | documentation and/or other materials provided with the distribution. |
| 19 | - Neither the name of ARM nor the names of its contributors may be used |
| 20 | to endorse or promote products derived from this software without |
| 21 | specific prior written permission. |
| 22 | |
| 23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
| 24 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| 25 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| 26 | ARE DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS AND CONTRIBUTORS BE |
| 27 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
| 28 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
| 29 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
| 30 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN |
| 31 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) |
| 32 | ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| 33 | POSSIBILITY OF SUCH DAMAGE. |
| 34 | --> |
| 35 | |
| 36 | <device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD.xsd" > |
| 37 | <vendor>ARM Ltd.</vendor> <!-- device vendor name --> |
| 38 | <vendorID>ARM</vendorID> <!-- device vendor short name --> |
| 39 | <name>ARM_Example</name> <!-- name of part--> |
| 40 | <series>ARMCM3</series> <!-- device series the device belongs to --> |
| 41 | <version>1.2</version> <!-- version of this description, adding CMSIS-SVD 1.1 tags --> |
| 42 | <description>ARM 32-bit Cortex-M3 Microcontroller based device, CPU clock up to 80MHz, etc. </description> |
| 43 | <licenseText> <!-- this license text will appear in header file. \n force line breaks --> |
| 44 | ARM Limited (ARM) is supplying this software for use with Cortex-M\n |
| 45 | processor based microcontroller, but can be equally used for other\n |
| 46 | suitable processor architectures. This file can be freely distributed.\n |
| 47 | Modifications to this file shall be clearly marked.\n |
| 48 | \n |
| 49 | THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED\n |
| 50 | OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF\n |
| 51 | MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.\n |
| 52 | ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR\n |
| 53 | CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
| 54 | </licenseText> |
| 55 | <cpu> <!-- details about the cpu embedded in the device --> |
| 56 | <name>CM3</name> |
| 57 | <revision>r1p0</revision> |
| 58 | <endian>little</endian> |
| 59 | <mpuPresent>true</mpuPresent> |
| 60 | <fpuPresent>false</fpuPresent> |
| 61 | <nvicPrioBits>3</nvicPrioBits> |
| 62 | <vendorSystickConfig>false</vendorSystickConfig> |
| 63 | </cpu> |
| 64 | <addressUnitBits>8</addressUnitBits> <!-- byte addressable memory --> |
| 65 | <width>32</width> <!-- bus width is 32 bits --> |
| 66 | <!-- default settings implicitly inherited by subsequent sections --> |
| 67 | <size>32</size> <!-- this is the default size (number of bits) of all peripherals |
| 68 | and register that do not define "size" themselves --> |
| 69 | <access>read-write</access> <!-- default access permission for all subsequent registers --> |
| 70 | <resetValue>0x00000000</resetValue> <!-- by default all bits of the registers are initialized to 0 on reset --> |
| 71 | <resetMask>0xFFFFFFFF</resetMask> <!-- by default all 32Bits of the registers are used --> |
| 72 | |
| 73 | <peripherals> |
| 74 | <!-- Timer 0 --> |
| 75 | <peripheral> |
| 76 | <name>TIMER0</name> |
| 77 | <version>1.0</version> |
| 78 | <description>32 Timer / Counter, counting up or down from different sources</description> |
| 79 | <groupName>TIMER</groupName> |
| 80 | <baseAddress>0x40010000</baseAddress> |
| 81 | <size>32</size> |
| 82 | <access>read-write</access> |
| 83 | |
| 84 | <addressBlock> |
| 85 | <offset>0</offset> |
| 86 | <size>0x100</size> |
| 87 | <usage>registers</usage> |
| 88 | </addressBlock> |
| 89 | |
| 90 | <interrupt> |
| 91 | <name>TIMER0</name> |
Joachim Krech | bec65e2 | 2018-07-20 15:16:37 +0200 | [diff] [blame] | 92 | <description>Timer 0 interrupt</description> |
Robert Rostohar | ba96a2c | 2016-07-01 22:42:12 +0200 | [diff] [blame] | 93 | <value>0</value> |
| 94 | </interrupt> |
| 95 | |
| 96 | <registers> |
| 97 | <!-- CR: Control Register --> |
| 98 | <register> |
| 99 | <name>CR</name> |
| 100 | <description>Control Register</description> |
| 101 | <addressOffset>0x00</addressOffset> |
| 102 | <size>32</size> |
| 103 | <access>read-write</access> |
| 104 | <resetValue>0x00000000</resetValue> |
| 105 | <resetMask>0x1337F7F</resetMask> |
| 106 | |
| 107 | <fields> |
| 108 | <!-- EN: Enable --> |
| 109 | <field> |
| 110 | <name>EN</name> |
| 111 | <description>Enable</description> |
| 112 | <bitRange>[0:0]</bitRange> |
| 113 | <access>read-write</access> |
| 114 | <enumeratedValues> |
| 115 | <enumeratedValue> |
| 116 | <name>Disable</name> |
| 117 | <description>Timer is disabled and does not operate</description> |
| 118 | <value>0</value> |
| 119 | </enumeratedValue> |
| 120 | <enumeratedValue> |
| 121 | <name>Enable</name> |
| 122 | <description>Timer is enabled and can operate</description> |
| 123 | <value>1</value> |
| 124 | </enumeratedValue> |
| 125 | </enumeratedValues> |
| 126 | </field> |
| 127 | |
| 128 | <!-- RST: Reset --> |
| 129 | <field> |
| 130 | <name>RST</name> |
| 131 | <description>Reset Timer</description> |
| 132 | <bitRange>[1:1]</bitRange> |
| 133 | <access>write-only</access> |
| 134 | <enumeratedValues> |
| 135 | <enumeratedValue> |
| 136 | <name>No_Action</name> |
| 137 | <description>Write as ZERO if necessary</description> |
| 138 | <value>0</value> |
| 139 | </enumeratedValue> |
| 140 | <enumeratedValue> |
| 141 | <name>Reset_Timer</name> |
| 142 | <description>Reset the Timer</description> |
| 143 | <value>1</value> |
| 144 | </enumeratedValue> |
| 145 | </enumeratedValues> |
| 146 | </field> |
| 147 | |
| 148 | <!-- CNT: Counting Direction --> |
| 149 | <field> |
| 150 | <name>CNT</name> |
| 151 | <description>Counting direction</description> |
| 152 | <bitRange>[3:2]</bitRange> |
| 153 | <access>read-write</access> |
| 154 | <enumeratedValues> |
| 155 | <enumeratedValue> |
| 156 | <name>Count_UP</name> |
| 157 | <description>Timer Counts UO and wraps, if no STOP condition is set</description> |
| 158 | <value>0</value> |
| 159 | </enumeratedValue> |
| 160 | <enumeratedValue> |
| 161 | <name>Count_DOWN</name> |
| 162 | <description>Timer Counts DOWN and wraps, if no STOP condition is set</description> |
| 163 | <value>1</value> |
| 164 | </enumeratedValue> |
| 165 | <enumeratedValue> |
| 166 | <name>Toggle</name> |
| 167 | <description>Timer Counts up to MAX, then DOWN to ZERO, if no STOP condition is set</description> |
| 168 | <value>2</value> |
| 169 | </enumeratedValue> |
| 170 | </enumeratedValues> |
| 171 | </field> |
| 172 | |
| 173 | <!-- MODE: Operation Mode --> |
| 174 | <field> |
| 175 | <name>MODE</name> |
| 176 | <description>Operation Mode</description> |
| 177 | <bitRange>[6:4]</bitRange> |
| 178 | <access>read-write</access> |
| 179 | <enumeratedValues> |
| 180 | <enumeratedValue> |
| 181 | <name>Continous</name> |
| 182 | <description>Timer runs continously</description> |
| 183 | <value>0</value> |
| 184 | </enumeratedValue> |
| 185 | <enumeratedValue> |
| 186 | <name>Single_ZERO_MAX</name> |
| 187 | <description>Timer counts to 0x00 or 0xFFFFFFFF (depending on CNT) and stops</description> |
| 188 | <value>1</value> |
| 189 | </enumeratedValue> |
| 190 | <enumeratedValue> |
| 191 | <name>Single_MATCH</name> |
| 192 | <description>Timer counts to the Value of MATCH Register and stops</description> |
| 193 | <value>2</value> |
| 194 | </enumeratedValue> |
| 195 | <enumeratedValue> |
| 196 | <name>Reload_ZERO_MAX</name> |
| 197 | <description>Timer counts to 0x00 or 0xFFFFFFFF (depending on CNT), loads the RELOAD Value and continues</description> |
| 198 | <value>3</value> |
| 199 | </enumeratedValue> |
| 200 | <enumeratedValue> |
| 201 | <name>Reload_MATCH</name> |
| 202 | <description>Timer counts to the Value of MATCH Register, loads the RELOAD Value and continues</description> |
| 203 | <value>4</value> |
| 204 | </enumeratedValue> |
| 205 | </enumeratedValues> |
| 206 | </field> |
| 207 | |
| 208 | <!-- PSC: Use Prescaler --> |
| 209 | <field> |
| 210 | <name>PSC</name> |
| 211 | <description>Use Prescaler</description> |
| 212 | <bitRange>[7:7]</bitRange> |
| 213 | <access>read-write</access> |
| 214 | <enumeratedValues> |
| 215 | <enumeratedValue> |
| 216 | <name>Disabled</name> |
| 217 | <description>Prescaler is not used</description> |
| 218 | <value>0</value> |
| 219 | </enumeratedValue> |
| 220 | <enumeratedValue> |
| 221 | <name>Enabled</name> |
| 222 | <description>Prescaler is used as divider</description> |
| 223 | <value>1</value> |
| 224 | </enumeratedValue> |
| 225 | </enumeratedValues> |
| 226 | </field> |
| 227 | |
| 228 | <!-- CNTSRC: Timer / Counter Soruce Divider --> |
| 229 | <field> |
| 230 | <name>CNTSRC</name> |
| 231 | <description>Timer / Counter Source Divider</description> |
| 232 | <bitRange>[11:8]</bitRange> |
| 233 | <access>read-write</access> |
| 234 | <enumeratedValues> |
| 235 | <enumeratedValue> |
| 236 | <name>CAP_SRC</name> |
| 237 | <description>Capture Source is used directly</description> |
| 238 | <value>0</value> |
| 239 | </enumeratedValue> |
| 240 | <enumeratedValue> |
| 241 | <name>CAP_SRC_div2</name> |
| 242 | <description>Capture Source is divided by 2</description> |
| 243 | <value>1</value> |
| 244 | </enumeratedValue> |
| 245 | <enumeratedValue> |
| 246 | <name>CAP_SRC_div4</name> |
| 247 | <description>Capture Source is divided by 4</description> |
| 248 | <value>2</value> |
| 249 | </enumeratedValue> |
| 250 | <enumeratedValue> |
| 251 | <name>CAP_SRC_div8</name> |
| 252 | <description>Capture Source is divided by 8</description> |
| 253 | <value>3</value> |
| 254 | </enumeratedValue> |
| 255 | <enumeratedValue> |
| 256 | <name>CAP_SRC_div16</name> |
| 257 | <description>Capture Source is divided by 16</description> |
| 258 | <value>4</value> |
| 259 | </enumeratedValue> |
| 260 | <enumeratedValue> |
| 261 | <name>CAP_SRC_div32</name> |
| 262 | <description>Capture Source is divided by 32</description> |
| 263 | <value>5</value> |
| 264 | </enumeratedValue> |
| 265 | <enumeratedValue> |
| 266 | <name>CAP_SRC_div64</name> |
| 267 | <description>Capture Source is divided by 64</description> |
| 268 | <value>6</value> |
| 269 | </enumeratedValue> |
| 270 | <enumeratedValue> |
| 271 | <name>CAP_SRC_div128</name> |
| 272 | <description>Capture Source is divided by 128</description> |
| 273 | <value>7</value> |
| 274 | </enumeratedValue> |
| 275 | <enumeratedValue> |
| 276 | <name>CAP_SRC_div256</name> |
| 277 | <description>Capture Source is divided by 256</description> |
| 278 | <value>8</value> |
| 279 | </enumeratedValue> |
| 280 | </enumeratedValues> |
| 281 | </field> |
| 282 | |
| 283 | <!-- CAPSRC: Timer / COunter Capture Source --> |
| 284 | <field> |
| 285 | <name>CAPSRC</name> |
| 286 | <description>Timer / Counter Capture Source</description> |
| 287 | <bitRange>[15:12]</bitRange> |
| 288 | <access>read-write</access> |
| 289 | <enumeratedValues> |
| 290 | <enumeratedValue> |
| 291 | <name>CClk</name> |
| 292 | <description>Core Clock</description> |
| 293 | <value>0</value> |
| 294 | </enumeratedValue> |
| 295 | <enumeratedValue> |
| 296 | <name>GPIOA_0</name> |
| 297 | <description>GPIO A, PIN 0</description> |
| 298 | <value>1</value> |
| 299 | </enumeratedValue> |
| 300 | <enumeratedValue> |
| 301 | <name>GPIOA_1</name> |
| 302 | <description>GPIO A, PIN 1</description> |
| 303 | <value>2</value> |
| 304 | </enumeratedValue> |
| 305 | <enumeratedValue> |
| 306 | <name>GPIOA_2</name> |
| 307 | <description>GPIO A, PIN 2</description> |
| 308 | <value>3</value> |
| 309 | </enumeratedValue> |
| 310 | <enumeratedValue> |
| 311 | <name>GPIOA_3</name> |
| 312 | <description>GPIO A, PIN 3</description> |
| 313 | <value>4</value> |
| 314 | </enumeratedValue> |
| 315 | <enumeratedValue> |
| 316 | <name>GPIOA_4</name> |
| 317 | <description>GPIO A, PIN 4</description> |
| 318 | <value>5</value> |
| 319 | </enumeratedValue> |
| 320 | <enumeratedValue> |
| 321 | <name>GPIOA_5</name> |
| 322 | <description>GPIO A, PIN 5</description> |
| 323 | <value>6</value> |
| 324 | </enumeratedValue> |
| 325 | <enumeratedValue> |
| 326 | <name>GPIOA_6</name> |
| 327 | <description>GPIO A, PIN 6</description> |
| 328 | <value>7</value> |
| 329 | </enumeratedValue> |
| 330 | <enumeratedValue> |
| 331 | <name>GPIOA_7</name> |
| 332 | <description>GPIO A, PIN 7</description> |
| 333 | <value>8</value> |
| 334 | </enumeratedValue> |
| 335 | <enumeratedValue> |
| 336 | <name>GPIOB_0</name> |
| 337 | <description>GPIO B, PIN 0</description> |
| 338 | <value>9</value> |
| 339 | </enumeratedValue> |
| 340 | <enumeratedValue> |
| 341 | <name>GPIOB_1</name> |
| 342 | <description>GPIO B, PIN 1</description> |
| 343 | <value>10</value> |
| 344 | </enumeratedValue> |
| 345 | <enumeratedValue> |
| 346 | <name>GPIOB_2</name> |
| 347 | <description>GPIO B, PIN 2</description> |
| 348 | <value>11</value> |
| 349 | </enumeratedValue> |
| 350 | <enumeratedValue> |
| 351 | <name>GPIOB_3</name> |
| 352 | <description>GPIO B, PIN 3</description> |
| 353 | <value>12</value> |
| 354 | </enumeratedValue> |
| 355 | <enumeratedValue> |
| 356 | <name>GPIOC_0</name> |
| 357 | <description>GPIO C, PIN 0</description> |
| 358 | <value>13</value> |
| 359 | </enumeratedValue> |
| 360 | <enumeratedValue> |
| 361 | <name>GPIOC_5</name> |
| 362 | <description>GPIO C, PIN 1</description> |
| 363 | <value>14</value> |
| 364 | </enumeratedValue> |
| 365 | <enumeratedValue> |
| 366 | <name>GPIOC_6</name> |
| 367 | <description>GPIO C, PIN 2</description> |
| 368 | <value>15</value> |
| 369 | </enumeratedValue> |
| 370 | </enumeratedValues> |
| 371 | </field> |
| 372 | |
| 373 | <!-- CAPEDGE: Capture Edge --> |
| 374 | <field> |
| 375 | <name>CAPEDGE</name> |
| 376 | <description>Capture Edge, select which Edge should result in a counter increment or decrement</description> |
| 377 | <bitRange>[17:16]</bitRange> |
| 378 | <access>read-write</access> |
| 379 | <enumeratedValues> |
| 380 | <enumeratedValue> |
| 381 | <name>RISING</name> |
| 382 | <description>Only rising edges result in a counter increment or decrement</description> |
| 383 | <value>0</value> |
| 384 | </enumeratedValue> |
| 385 | <enumeratedValue> |
| 386 | <name>FALLING</name> |
| 387 | <description>Only falling edges result in a counter increment or decrement</description> |
| 388 | <value>1</value> |
| 389 | </enumeratedValue> |
| 390 | <enumeratedValue> |
| 391 | <name>BOTH</name> |
| 392 | <description>Rising and falling edges result in a counter increment or decrement</description> |
| 393 | <value>2</value> |
| 394 | </enumeratedValue> |
| 395 | </enumeratedValues> |
| 396 | </field> |
| 397 | |
| 398 | <!-- TRGEXT: Triggers an other Peripheral --> |
| 399 | <field> |
| 400 | <name>TRGEXT</name> |
| 401 | <description>Triggers an other Peripheral</description> |
| 402 | <bitRange>[21:20]</bitRange> |
| 403 | <access>read-write</access> |
| 404 | <enumeratedValues> |
| 405 | <enumeratedValue> |
| 406 | <name>NONE</name> |
| 407 | <description>No Trigger is emitted</description> |
| 408 | <value>0</value> |
| 409 | </enumeratedValue> |
| 410 | <enumeratedValue> |
| 411 | <name>DMA1</name> |
| 412 | <description>DMA Controller 1 is triggered, dependant on MODE</description> |
| 413 | <value>1</value> |
| 414 | </enumeratedValue> |
| 415 | <enumeratedValue> |
| 416 | <name>DMA2</name> |
| 417 | <description>DMA Controller 2 is triggered, dependant on MODE</description> |
| 418 | <value>2</value> |
| 419 | </enumeratedValue> |
| 420 | <enumeratedValue> |
| 421 | <name>UART</name> |
| 422 | <description>UART is triggered, dependant on MODE</description> |
| 423 | <value>3</value> |
| 424 | </enumeratedValue> |
| 425 | </enumeratedValues> |
| 426 | </field> |
| 427 | |
| 428 | <!-- Reload: Selects Reload Register n --> |
| 429 | <field> |
| 430 | <name>RELOAD</name> |
| 431 | <description>Select RELOAD Register n to reload Timer on condition</description> |
| 432 | <bitRange>[25:24]</bitRange> |
| 433 | <access>read-write</access> |
| 434 | <enumeratedValues> |
| 435 | <enumeratedValue> |
| 436 | <name>RELOAD0</name> |
| 437 | <description>Selects Reload Register number 0</description> |
| 438 | <value>0</value> |
| 439 | </enumeratedValue> |
| 440 | <enumeratedValue> |
| 441 | <name>RELOAD1</name> |
| 442 | <description>Selects Reload Register number 1</description> |
| 443 | <value>1</value> |
| 444 | </enumeratedValue> |
| 445 | <enumeratedValue> |
| 446 | <name>RELOAD2</name> |
| 447 | <description>Selects Reload Register number 2</description> |
| 448 | <value>2</value> |
| 449 | </enumeratedValue> |
| 450 | <enumeratedValue> |
| 451 | <name>RELOAD3</name> |
| 452 | <description>Selects Reload Register number 3</description> |
| 453 | <value>3</value> |
| 454 | </enumeratedValue> |
| 455 | </enumeratedValues> |
| 456 | </field> |
| 457 | |
| 458 | <!-- IDR: Inc or dec Reload Register Selection --> |
| 459 | <field> |
| 460 | <name>IDR</name> |
| 461 | <description>Selects, if Reload Register number is incremented, decremented or not modified</description> |
| 462 | <bitRange>[27:26]</bitRange> |
| 463 | <access>read-write</access> |
| 464 | <enumeratedValues> |
| 465 | <enumeratedValue> |
| 466 | <name>KEEP</name> |
| 467 | <description>Reload Register number does not change automatically</description> |
| 468 | <value>0</value> |
| 469 | </enumeratedValue> |
| 470 | <enumeratedValue> |
| 471 | <name>INCREMENT</name> |
| 472 | <description>Reload Register number is incremented on each match</description> |
| 473 | <value>1</value> |
| 474 | </enumeratedValue> |
| 475 | <enumeratedValue> |
| 476 | <name>DECREMENT</name> |
| 477 | <description>Reload Register number is decremented on each match</description> |
| 478 | <value>2</value> |
| 479 | </enumeratedValue> |
| 480 | </enumeratedValues> |
| 481 | </field> |
| 482 | |
| 483 | <!-- START: Starts / Stops the Timer/Counter --> |
| 484 | <field> |
| 485 | <name>S</name> |
| 486 | <description>Starts and Stops the Timer / Counter</description> |
| 487 | <bitRange>[31:31]</bitRange> |
| 488 | <access>read-write</access> |
| 489 | <enumeratedValues> |
| 490 | <enumeratedValue> |
| 491 | <name>STOP</name> |
| 492 | <description>Timer / Counter is stopped</description> |
| 493 | <value>0</value> |
| 494 | </enumeratedValue> |
| 495 | <enumeratedValue> |
| 496 | <name>START</name> |
| 497 | <description>Timer / Counter is started</description> |
| 498 | <value>1</value> |
| 499 | </enumeratedValue> |
| 500 | </enumeratedValues> |
| 501 | </field> |
| 502 | </fields> |
| 503 | </register> |
| 504 | |
| 505 | <!-- SR: Status Register --> |
| 506 | <register> |
| 507 | <name>SR</name> |
| 508 | <description>Status Register</description> |
| 509 | <addressOffset>0x04</addressOffset> |
| 510 | <size>16</size> |
| 511 | <access>read-write</access> |
| 512 | <resetValue>0x00000000</resetValue> |
| 513 | <resetMask>0xD701</resetMask> |
| 514 | |
| 515 | <fields> |
| 516 | <!-- RUN: Shows if Timer is running --> |
| 517 | <field> |
| 518 | <name>RUN</name> |
| 519 | <description>Shows if Timer is running or not</description> |
| 520 | <bitRange>[0:0]</bitRange> |
| 521 | <access>read-only</access> |
| 522 | <enumeratedValues> |
| 523 | <enumeratedValue> |
| 524 | <name>Stopped</name> |
| 525 | <description>Timer is not running</description> |
| 526 | <value>0</value> |
| 527 | </enumeratedValue> |
| 528 | <enumeratedValue> |
| 529 | <name>Running</name> |
| 530 | <description>Timer is running</description> |
| 531 | <value>1</value> |
| 532 | </enumeratedValue> |
| 533 | </enumeratedValues> |
| 534 | </field> |
| 535 | |
| 536 | <!-- MATCH: Shows if a Match was hit --> |
| 537 | <field> |
| 538 | <name>MATCH</name> |
| 539 | <description>Shows if the MATCH was hit</description> |
| 540 | <bitRange>[8:8]</bitRange> |
| 541 | <access>read-write</access> |
| 542 | <enumeratedValues> |
| 543 | <enumeratedValue> |
| 544 | <name>No_Match</name> |
| 545 | <description>The MATCH condition was not hit</description> |
| 546 | <value>0</value> |
| 547 | </enumeratedValue> |
| 548 | <enumeratedValue> |
| 549 | <name>Match_Hit</name> |
| 550 | <description>The MATCH condition was hit</description> |
| 551 | <value>1</value> |
| 552 | </enumeratedValue> |
| 553 | </enumeratedValues> |
| 554 | </field> |
| 555 | |
| 556 | <!-- UN: Shows if an underflow occured --> |
| 557 | <field> |
| 558 | <name>UN</name> |
| 559 | <description>Shows if an underflow occured. This flag is sticky</description> |
| 560 | <bitRange>[9:9]</bitRange> |
| 561 | <access>read-write</access> |
| 562 | <enumeratedValues> |
| 563 | <enumeratedValue> |
| 564 | <name>No_Underflow</name> |
| 565 | <description>No underflow occured since last clear</description> |
| 566 | <value>0</value> |
| 567 | </enumeratedValue> |
| 568 | <enumeratedValue> |
| 569 | <name>Underflow</name> |
| 570 | <description>A minimum of one underflow occured since last clear</description> |
| 571 | <value>1</value> |
| 572 | </enumeratedValue> |
| 573 | </enumeratedValues> |
| 574 | </field> |
| 575 | |
| 576 | <!-- OV: Shows if an overflow occured --> |
| 577 | <field> |
| 578 | <name>OV</name> |
| 579 | <description>Shows if an overflow occured. This flag is sticky</description> |
| 580 | <bitRange>[10:10]</bitRange> |
| 581 | <access>read-write</access> |
| 582 | <enumeratedValues> |
| 583 | <enumeratedValue> |
| 584 | <name>No_Overflow</name> |
| 585 | <description>No overflow occured since last clear</description> |
| 586 | <value>0</value> |
| 587 | </enumeratedValue> |
| 588 | <enumeratedValue> |
| 589 | <name>Overflow_occured</name> |
| 590 | <description>A minimum of one overflow occured since last clear</description> |
| 591 | <value>1</value> |
| 592 | </enumeratedValue> |
| 593 | </enumeratedValues> |
| 594 | </field> |
| 595 | |
| 596 | <!-- RST: Shows if Timer is in RESET state --> |
| 597 | <field> |
| 598 | <name>RST</name> |
| 599 | <description>Shows if Timer is in RESET state</description> |
| 600 | <bitRange>[12:12]</bitRange> |
| 601 | <access>read-only</access> |
| 602 | <enumeratedValues> |
| 603 | <enumeratedValue> |
| 604 | <name>Ready</name> |
| 605 | <description>Timer is not in RESET state and can operate</description> |
| 606 | <value>0</value> |
| 607 | </enumeratedValue> |
| 608 | <enumeratedValue> |
| 609 | <name>In_Reset</name> |
| 610 | <description>Timer is in RESET state and can not operate</description> |
| 611 | <value>1</value> |
| 612 | </enumeratedValue> |
| 613 | </enumeratedValues> |
| 614 | </field> |
| 615 | |
| 616 | <!-- RELOAD: Shows the currently active Reload Register --> |
| 617 | <field> |
| 618 | <name>RELOAD</name> |
| 619 | <description>Shows the currently active RELOAD Register</description> |
| 620 | <bitRange>[15:14]</bitRange> |
| 621 | <access>read-only</access> |
| 622 | <enumeratedValues> |
| 623 | <enumeratedValue> |
| 624 | <name>RELOAD0</name> |
| 625 | <description>Reload Register number 0 is active</description> |
| 626 | <value>0</value> |
| 627 | </enumeratedValue> |
| 628 | <enumeratedValue> |
| 629 | <name>RELOAD1</name> |
| 630 | <description>Reload Register number 1 is active</description> |
| 631 | <value>1</value> |
| 632 | </enumeratedValue> |
| 633 | <enumeratedValue> |
| 634 | <name>RELOAD2</name> |
| 635 | <description>Reload Register number 2 is active</description> |
| 636 | <value>2</value> |
| 637 | </enumeratedValue> |
| 638 | <enumeratedValue> |
| 639 | <name>RELOAD3</name> |
| 640 | <description>Reload Register number 3 is active</description> |
| 641 | <value>3</value> |
| 642 | </enumeratedValue> |
| 643 | </enumeratedValues> |
| 644 | </field> |
| 645 | </fields> |
| 646 | </register> |
| 647 | |
| 648 | <!-- INT: Interrupt Register --> |
| 649 | <register> |
| 650 | <name>INT</name> |
| 651 | <description>Interrupt Register</description> |
| 652 | <addressOffset>0x10</addressOffset> |
| 653 | <size>16</size> |
| 654 | <access>read-write</access> |
| 655 | <resetValue>0x00000000</resetValue> |
| 656 | <resetMask>0x0771</resetMask> |
| 657 | |
| 658 | <fields> |
| 659 | <!-- EN: Interrupt Enable --> |
| 660 | <field> |
| 661 | <name>EN</name> |
| 662 | <description>Interrupt Enable</description> |
| 663 | <bitRange>[0:0]</bitRange> |
| 664 | <access>read-write</access> |
| 665 | <enumeratedValues> |
| 666 | <enumeratedValue> |
| 667 | <name>Disabled</name> |
| 668 | <description>Timer does not generate Interrupts</description> |
| 669 | <value>0</value> |
| 670 | </enumeratedValue> |
| 671 | <enumeratedValue> |
| 672 | <name>Enable</name> |
| 673 | <description>Timer triggers the TIMERn Interrupt</description> |
| 674 | <value>1</value> |
| 675 | </enumeratedValue> |
| 676 | </enumeratedValues> |
| 677 | </field> |
| 678 | |
| 679 | <!-- MODE: Interrupt Mode --> |
| 680 | <field> |
| 681 | <name>MODE</name> |
| 682 | <description>Interrupt Mode, selects on which condition the Timer should generate an Interrupt</description> |
| 683 | <bitRange>[6:4]</bitRange> |
| 684 | <access>read-write</access> |
| 685 | <enumeratedValues> |
| 686 | <enumeratedValue> |
| 687 | <name>Match</name> |
| 688 | <description>Timer generates an Interrupt when the MATCH condition is hit</description> |
| 689 | <value>0</value> |
| 690 | </enumeratedValue> |
| 691 | <enumeratedValue> |
| 692 | <name>Underflow</name> |
| 693 | <description>Timer generates an Interrupt when it underflows</description> |
| 694 | <value>1</value> |
| 695 | </enumeratedValue> |
| 696 | <enumeratedValue> |
| 697 | <name>Overflow</name> |
| 698 | <description>Timer generates an Interrupt when it overflows</description> |
| 699 | <value>2</value> |
| 700 | </enumeratedValue> |
| 701 | </enumeratedValues> |
| 702 | </field> |
| 703 | </fields> |
| 704 | </register> |
| 705 | |
| 706 | <!-- COUNT: Counter Register --> |
| 707 | <register> |
| 708 | <name>COUNT</name> |
| 709 | <description>The Counter Register reflects the actual Value of the Timer/Counter</description> |
| 710 | <addressOffset>0x20</addressOffset> |
| 711 | <size>32</size> |
| 712 | <access>read-write</access> |
| 713 | <resetValue>0x00000000</resetValue> |
| 714 | <resetMask>0xFFFFFFFF</resetMask> |
| 715 | </register> |
| 716 | |
| 717 | <!-- MATCH: Match Register --> |
| 718 | <register> |
| 719 | <name>MATCH</name> |
| 720 | <description>The Match Register stores the compare Value for the MATCH condition</description> |
| 721 | <addressOffset>0x24</addressOffset> |
| 722 | <size>32</size> |
| 723 | <access>read-write</access> |
| 724 | <resetValue>0x00000000</resetValue> |
| 725 | <resetMask>0xFFFFFFFF</resetMask> |
| 726 | </register> |
| 727 | |
| 728 | <!-- PRESCALE: Prescale Read Register --> |
| 729 | <register> |
| 730 | <name>PRESCALE_RD</name> |
| 731 | <description>The Prescale Register stores the Value for the prescaler. The cont event gets divided by this value</description> |
| 732 | <addressOffset>0x28</addressOffset> |
| 733 | <size>32</size> |
| 734 | <access>read-only</access> |
| 735 | <resetValue>0x00000000</resetValue> |
| 736 | <resetMask>0xFFFFFFFF</resetMask> |
| 737 | </register> |
| 738 | |
| 739 | <!-- PRESCALE: Prescale Write Register --> |
| 740 | <register> |
| 741 | <name>PRESCALE_WR</name> |
| 742 | <description>The Prescale Register stores the Value for the prescaler. The cont event gets divided by this value</description> |
| 743 | <addressOffset>0x28</addressOffset> |
| 744 | <size>32</size> |
| 745 | <access>write-only</access> |
| 746 | <resetValue>0x00000000</resetValue> |
| 747 | <resetMask>0xFFFFFFFF</resetMask> |
| 748 | </register> |
| 749 | |
| 750 | |
| 751 | <!-- RELOAD: Array of Reload Register with 4 elements--> |
| 752 | <register> |
| 753 | <dim>4</dim> |
| 754 | <dimIncrement>4</dimIncrement> |
Robert Rostohar | ba96a2c | 2016-07-01 22:42:12 +0200 | [diff] [blame] | 755 | <name>RELOAD[%s]</name> |
| 756 | <description>The Reload Register stores the Value the COUNT Register gets reloaded on a when a condition was met.</description> |
| 757 | <addressOffset>0x50</addressOffset> |
| 758 | <size>32</size> |
| 759 | <access>read-write</access> |
| 760 | <resetValue>0x00000000</resetValue> |
| 761 | <resetMask>0xFFFFFFFF</resetMask> |
| 762 | </register> |
| 763 | </registers> |
| 764 | </peripheral> |
| 765 | |
| 766 | <!-- Timer 1 --> |
| 767 | <peripheral derivedFrom="TIMER0"> |
| 768 | <name>TIMER1</name> |
| 769 | <baseAddress>0x40010100</baseAddress> |
| 770 | <interrupt> |
| 771 | <name>TIMER1</name> |
Joachim Krech | bec65e2 | 2018-07-20 15:16:37 +0200 | [diff] [blame] | 772 | <description>Timer 2 interrupt</description> |
Robert Rostohar | ba96a2c | 2016-07-01 22:42:12 +0200 | [diff] [blame] | 773 | <value>4</value> |
| 774 | </interrupt> |
| 775 | </peripheral> |
| 776 | |
| 777 | <!-- Timer 2 --> |
| 778 | <peripheral derivedFrom="TIMER0"> |
| 779 | <name>TIMER2</name> |
| 780 | <baseAddress>0x40010200</baseAddress> |
| 781 | <interrupt> |
| 782 | <name>TIMER2</name> |
Joachim Krech | bec65e2 | 2018-07-20 15:16:37 +0200 | [diff] [blame] | 783 | <description>Timer 2 interrupt</description> |
Robert Rostohar | ba96a2c | 2016-07-01 22:42:12 +0200 | [diff] [blame] | 784 | <value>6</value> |
| 785 | </interrupt> |
| 786 | </peripheral> |
| 787 | </peripherals> |
| 788 | </device> |