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>SPIMSS</name> 5 <description>Serial Peripheral Interface.</description> 6 <prependToName>SPIMSS</prependToName> 7 <baseAddress>0x40019000</baseAddress> 8 <addressBlock> 9 <offset>0x00</offset> 10 <size>0x1000</size> 11 <usage>registers</usage> 12 </addressBlock> 13 <registers> 14 <register> 15 <name>DATA</name> 16 <description>SPI 16-bit Data Access</description> 17 <addressOffset>0x00</addressOffset> 18 <size>16</size> 19 <access>read-write</access> 20 <fields> 21 <field> 22 <name>DATA</name> 23 <description>SPI data.</description> 24 <bitOffset>0</bitOffset> 25 <bitWidth>16</bitWidth> 26 </field> 27 </fields> 28 </register> 29 <register> 30 <name>CTRL</name> 31 <description>SPI Control Register.</description> 32 <addressOffset>0x04</addressOffset> 33 <fields> 34 <field> 35 <name>ENABLE</name> 36 <description>SPI Enable.</description> 37 <bitOffset>0</bitOffset> 38 <bitWidth>1</bitWidth> 39 <enumeratedValues> 40 <name>dis_en_enum</name> 41 <enumeratedValue> 42 <name>disable</name> 43 <value>0</value> 44 </enumeratedValue> 45 <enumeratedValue> 46 <name>enable</name> 47 <value>1</value> 48 </enumeratedValue> 49 </enumeratedValues> 50 </field> 51 <field> 52 <name>MMEN</name> 53 <description>SPI Master Mode Enable.</description> 54 <bitOffset>1</bitOffset> 55 <bitWidth>1</bitWidth> 56 <enumeratedValues> 57 <name>slv_mst_enum</name> 58 <enumeratedValue> 59 <name>slave</name> 60 <value>0</value> 61 </enumeratedValue> 62 <enumeratedValue> 63 <name>master</name> 64 <value>1</value> 65 </enumeratedValue> 66 </enumeratedValues> 67 </field> 68 <field> 69 <name>WOR</name> 70 <description>Wired OR (open drain) Enable.</description> 71 <bitOffset>2</bitOffset> 72 <bitWidth>1</bitWidth> 73 <enumeratedValues> 74 <name>dis_en_enum</name> 75 <enumeratedValue> 76 <name>disable</name> 77 <value>0</value> 78 </enumeratedValue> 79 <enumeratedValue> 80 <name>enable</name> 81 <value>1</value> 82 </enumeratedValue> 83 </enumeratedValues> 84 </field> 85 <field> 86 <name>CLKPOL</name> 87 <description>Clock Polarity.</description> 88 <bitOffset>3</bitOffset> 89 <bitWidth>1</bitWidth> 90 <enumeratedValues> 91 <name>spi_pol_enum</name> 92 <enumeratedValue> 93 <name>idleLo</name> 94 <description>SCLK idles Low (0) after character transmission/reception.</description> 95 <value>0</value> 96 </enumeratedValue> 97 <enumeratedValue> 98 <name>idleHi</name> 99 <description>SCLK idles High (1) after character transmission/reception.</description> 100 <value>1</value> 101 </enumeratedValue> 102 </enumeratedValues> 103 </field> 104 <field> 105 <name>PHASE</name> 106 <description>Phase Select.</description> 107 <bitOffset>4</bitOffset> 108 <bitWidth>1</bitWidth> 109 <enumeratedValues> 110 <name>spi_phase_enum</name> 111 <enumeratedValue> 112 <name>activeEdge</name> 113 <description>Transmit on active edge of SCLK.</description> 114 <value>0</value> 115 </enumeratedValue> 116 <enumeratedValue> 117 <name>inactiveEdge</name> 118 <description>Transmit on inactive edge of SCLK.</description> 119 <value>1</value> 120 </enumeratedValue> 121 </enumeratedValues> 122 </field> 123 <field> 124 <name>BIRQ</name> 125 <description>Baud Rate Generator Timer Interrupt Request.</description> 126 <bitOffset>5</bitOffset> 127 <bitWidth>1</bitWidth> 128 <enumeratedValues> 129 <name>dis_en_enum</name> 130 <enumeratedValue> 131 <name>disable</name> 132 <value>0</value> 133 </enumeratedValue> 134 <enumeratedValue> 135 <name>enable</name> 136 <value>1</value> 137 </enumeratedValue> 138 </enumeratedValues> 139 </field> 140 <field> 141 <name>STR</name> 142 <description>Start SPI Interrupt.</description> 143 <bitOffset>6</bitOffset> 144 <bitWidth>1</bitWidth> 145 <enumeratedValues> 146 <name>start_op_enum</name> 147 <enumeratedValue> 148 <name>complete</name> 149 <description>No operation/complete.</description> 150 <value>0</value> 151 </enumeratedValue> 152 <enumeratedValue> 153 <name>start</name> 154 <description>Start operation.</description> 155 <value>1</value> 156 </enumeratedValue> 157 </enumeratedValues> 158 </field> 159 <field> 160 <name>IRQE</name> 161 <description>Interrupt Request Enable.</description> 162 <bitOffset>7</bitOffset> 163 <bitWidth>1</bitWidth> 164 <enumeratedValues> 165 <name>dis_en_enum</name> 166 <enumeratedValue> 167 <name>disable</name> 168 <value>0</value> 169 </enumeratedValue> 170 <enumeratedValue> 171 <name>enable</name> 172 <value>1</value> 173 </enumeratedValue> 174 </enumeratedValues> 175 </field> 176 </fields> 177 </register> 178 <register> 179 <name>INT_FL</name> 180 <description>SPI Interrupt Flag Register.</description> 181 <addressOffset>0x08</addressOffset> 182 <resetValue>0x00000001</resetValue> 183 <fields> 184 <field> 185 <name>SLAS</name> 186 <description>Slave Select. If the SPI is in slave mode, this bit indicates if the SPI is selected. If the SPI is in master mode this bit has no meaning.</description> 187 <bitOffset>0</bitOffset> 188 <bitWidth>1</bitWidth> 189 <access>read-only</access> 190 <enumeratedValues> 191 <name>sel_enum</name> 192 <enumeratedValue> 193 <name>selected</name> 194 <value>0</value> 195 </enumeratedValue> 196 <enumeratedValue> 197 <name>notSelected</name> 198 <value>1</value> 199 </enumeratedValue> 200 </enumeratedValues> 201 </field> 202 <field> 203 <name>TXST</name> 204 <description>Transmit Status.</description> 205 <bitOffset>1</bitOffset> 206 <bitWidth>1</bitWidth> 207 <access>read-only</access> 208 <enumeratedValues> 209 <name>busy_enum</name> 210 <enumeratedValue> 211 <name>idle</name> 212 <value>0</value> 213 </enumeratedValue> 214 <enumeratedValue> 215 <name>busy</name> 216 <value>1</value> 217 </enumeratedValue> 218 </enumeratedValues> 219 </field> 220 <field> 221 <name>TUND</name> 222 <description>Transmit Underrun.</description> 223 <bitOffset>2</bitOffset> 224 <bitWidth>1</bitWidth> 225 <modifiedWriteValues>oneToClear</modifiedWriteValues> 226 <enumeratedValues> 227 <name>event_flag_enum</name> 228 <enumeratedValue> 229 <name>noEvent</name> 230 <description>The event has not occurred.</description> 231 <value>0</value> 232 </enumeratedValue> 233 <enumeratedValue> 234 <name>occurred</name> 235 <description>The event has occurred.</description> 236 <value>1</value> 237 </enumeratedValue> 238 </enumeratedValues> 239 </field> 240 <field> 241 <name>ROVR</name> 242 <description>Receive Overrun.</description> 243 <bitOffset>3</bitOffset> 244 <bitWidth>1</bitWidth> 245 <enumeratedValues> 246 <name>event_flag_enum</name> 247 <enumeratedValue> 248 <name>noEvent</name> 249 <description>The event has not occurred.</description> 250 <value>0</value> 251 </enumeratedValue> 252 <enumeratedValue> 253 <name>occurred</name> 254 <description>The event has occurred.</description> 255 <value>1</value> 256 </enumeratedValue> 257 </enumeratedValues> 258 </field> 259 <field> 260 <name>ABT</name> 261 <description>Slave Mode Transaction Abort.</description> 262 <bitOffset>4</bitOffset> 263 <bitWidth>1</bitWidth> 264 <enumeratedValues> 265 <name>event_flag_enum</name> 266 <enumeratedValue> 267 <name>noEvent</name> 268 <description>The event has not occurred.</description> 269 <value>0</value> 270 </enumeratedValue> 271 <enumeratedValue> 272 <name>occurred</name> 273 <description>The event has occurred.</description> 274 <value>1</value> 275 </enumeratedValue> 276 </enumeratedValues> 277 </field> 278 <field> 279 <name>COL</name> 280 <description>Collision.</description> 281 <bitOffset>5</bitOffset> 282 <bitWidth>1</bitWidth> 283 <enumeratedValues> 284 <name>event_flag_enum</name> 285 <enumeratedValue> 286 <name>noEvent</name> 287 <description>The event has not occurred.</description> 288 <value>0</value> 289 </enumeratedValue> 290 <enumeratedValue> 291 <name>occurred</name> 292 <description>The event has occurred.</description> 293 <value>1</value> 294 </enumeratedValue> 295 </enumeratedValues> 296 </field> 297 <field> 298 <name>TOVR</name> 299 <description>Transmit Overrun.</description> 300 <bitOffset>6</bitOffset> 301 <bitWidth>1</bitWidth> 302 <enumeratedValues> 303 <name>event_flag_enum</name> 304 <enumeratedValue> 305 <name>noEvent</name> 306 <description>The event has not occurred.</description> 307 <value>0</value> 308 </enumeratedValue> 309 <enumeratedValue> 310 <name>occurred</name> 311 <description>The event has occurred.</description> 312 <value>1</value> 313 </enumeratedValue> 314 </enumeratedValues> 315 </field> 316 <field> 317 <name>IRQ</name> 318 <description>SPI Interrupt Request.</description> 319 <bitOffset>7</bitOffset> 320 <bitWidth>1</bitWidth> 321 <modifiedWriteValues>oneToClear</modifiedWriteValues> 322 <enumeratedValues> 323 <name>flag_enum</name> 324 <enumeratedValue> 325 <name>inactive</name> 326 <description>No interrupt is pending.</description> 327 <value>0</value> 328 </enumeratedValue> 329 <enumeratedValue> 330 <name>pending</name> 331 <description>An interrupt is pending.</description> 332 <value>1</value> 333 </enumeratedValue> 334 </enumeratedValues> 335 </field> 336 </fields> 337 </register> 338 <register> 339 <name>MODE</name> 340 <description>SPI Mode Register.</description> 341 <addressOffset>0x0C</addressOffset> 342 <fields> 343 <field> 344 <name>SSV</name> 345 <description>Slave Select Value.</description> 346 <bitOffset>0</bitOffset> 347 <bitWidth>1</bitWidth> 348 <enumeratedValues> 349 <name>lo_hi_enum</name> 350 <enumeratedValue> 351 <name>lo</name> 352 <description>The SSEL pin will be driven low.</description> 353 <value>0</value> 354 </enumeratedValue> 355 <enumeratedValue> 356 <name>hi</name> 357 <description>The SSEL pin will be driven high.</description> 358 <value>1</value> 359 </enumeratedValue> 360 </enumeratedValues> 361 </field> 362 <field> 363 <name>SS_IO</name> 364 <description>Slave Select I/O.</description> 365 <bitOffset>1</bitOffset> 366 <bitWidth>1</bitWidth> 367 <enumeratedValues> 368 <name>input_output_enum</name> 369 <enumeratedValue> 370 <name>input</name> 371 <value>0</value> 372 </enumeratedValue> 373 <enumeratedValue> 374 <name>output</name> 375 <value>1</value> 376 </enumeratedValue> 377 </enumeratedValues> 378 </field> 379 <field> 380 <name>NUMBITS</name> 381 <bitOffset>2</bitOffset> 382 <bitWidth>4</bitWidth> 383 <enumeratedValues> 384 <name>spi_bits_enum</name> 385 <enumeratedValue> 386 <name>bits16</name> 387 <value>0</value> 388 </enumeratedValue> 389 <enumeratedValue> 390 <name>bits1</name> 391 <value>1</value> 392 </enumeratedValue> 393 <enumeratedValue> 394 <name>bits2</name> 395 <value>2</value> 396 </enumeratedValue> 397 <enumeratedValue> 398 <name>bits3</name> 399 <value>3</value> 400 </enumeratedValue> 401 <enumeratedValue> 402 <name>bits4</name> 403 <value>4</value> 404 </enumeratedValue> 405 <enumeratedValue> 406 <name>bits5</name> 407 <value>5</value> 408 </enumeratedValue> 409 <enumeratedValue> 410 <name>bits6</name> 411 <value>6</value> 412 </enumeratedValue> 413 <enumeratedValue> 414 <name>bits7</name> 415 <value>7</value> 416 </enumeratedValue> 417 <enumeratedValue> 418 <name>bits8</name> 419 <value>8</value> 420 </enumeratedValue> 421 <enumeratedValue> 422 <name>bits9</name> 423 <value>9</value> 424 </enumeratedValue> 425 <enumeratedValue> 426 <name>bits10</name> 427 <value>10</value> 428 </enumeratedValue> 429 <enumeratedValue> 430 <name>bits11</name> 431 <value>11</value> 432 </enumeratedValue> 433 <enumeratedValue> 434 <name>bits12</name> 435 <value>12</value> 436 </enumeratedValue> 437 <enumeratedValue> 438 <name>bits13</name> 439 <value>13</value> 440 </enumeratedValue> 441 <enumeratedValue> 442 <name>bits14</name> 443 <value>14</value> 444 </enumeratedValue> 445 <enumeratedValue> 446 <name>bits15</name> 447 <value>15</value> 448 </enumeratedValue> 449 </enumeratedValues> 450 </field> 451 <field> 452 <name>TX_LJ</name> 453 <description>Transmit Left Justify.</description> 454 <bitOffset>7</bitOffset> 455 <bitWidth>1</bitWidth> 456 <enumeratedValues> 457 <name>dis_en_enum</name> 458 <enumeratedValue> 459 <name>disable</name> 460 <value>0</value> 461 </enumeratedValue> 462 <enumeratedValue> 463 <name>enable</name> 464 <value>1</value> 465 </enumeratedValue> 466 </enumeratedValues> 467 </field> 468 </fields> 469 </register> 470 <register> 471 <name>BRG</name> 472 <description>Baud Rate Reload Value. The SPI Baud Rate register is a 16-bit reload value for the SPI Baud Rate Generator. The reload value must be greater than or equal to 0002H for proper SPI operation (maximum baud rate is PCLK frequency divided by 4).</description> 473 <addressOffset>0x14</addressOffset> 474 <resetValue>0x0000FFFF</resetValue> 475 <fields> 476 <field> 477 <name>DIV</name> 478 <description>Baud Rate Reload Value.</description> 479 <bitOffset>0</bitOffset> 480 <bitWidth>16</bitWidth> 481 </field> 482 </fields> 483 </register> 484 <register> 485 <name>DMA</name> 486 <description>SPI DMA Register.</description> 487 <addressOffset>0x18</addressOffset> 488 <resetValue>0x00070007</resetValue> 489 <fields> 490 <field> 491 <name>TX_FIFO_LVL</name> 492 <description>Transmit FIFO Level. Set the number of free entries in the TxFIFO when a TxDMA request occurs.</description> 493 <bitOffset>0</bitOffset> 494 <bitWidth>3</bitWidth> 495 <enumeratedValues> 496 <name>fifo_level_enum</name> 497 <enumeratedValue> 498 <name>entry1</name> 499 <value>0</value> 500 </enumeratedValue> 501 <enumeratedValue> 502 <name>entries2</name> 503 <value>1</value> 504 </enumeratedValue> 505 <enumeratedValue> 506 <name>entries3</name> 507 <value>2</value> 508 </enumeratedValue> 509 <enumeratedValue> 510 <name>entries4</name> 511 <value>3</value> 512 </enumeratedValue> 513 <enumeratedValue> 514 <name>entries5</name> 515 <value>4</value> 516 </enumeratedValue> 517 <enumeratedValue> 518 <name>entries6</name> 519 <value>5</value> 520 </enumeratedValue> 521 <enumeratedValue> 522 <name>entries7</name> 523 <value>6</value> 524 </enumeratedValue> 525 <enumeratedValue> 526 <name>entries8</name> 527 <value>7</value> 528 </enumeratedValue> 529 </enumeratedValues> 530 </field> 531 <field> 532 <name>TX_FIFO_CLR</name> 533 <description>Transmit FIFO Clear.</description> 534 <bitOffset>4</bitOffset> 535 <bitWidth>1</bitWidth> 536 <access>write-only</access> 537 <enumeratedValues> 538 <name>start_op_enum</name> 539 <enumeratedValue> 540 <name>complete</name> 541 <description>No operation/complete.</description> 542 <value>0</value> 543 </enumeratedValue> 544 <enumeratedValue> 545 <name>start</name> 546 <description>Start operation.</description> 547 <value>1</value> 548 </enumeratedValue> 549 </enumeratedValues> 550 </field> 551 <field> 552 <name>TX_FIFO_CNT</name> 553 <description>Transmit FIFO Count.</description> 554 <bitOffset>8</bitOffset> 555 <bitWidth>4</bitWidth> 556 <access>read-only</access> 557 </field> 558 <field> 559 <name>TX_DMA_EN</name> 560 <description>Transmit DMA Enable.</description> 561 <bitOffset>15</bitOffset> 562 <bitWidth>1</bitWidth> 563 <enumeratedValues> 564 <name>dis_en_enum</name> 565 <enumeratedValue> 566 <name>disable</name> 567 <value>0</value> 568 </enumeratedValue> 569 <enumeratedValue> 570 <name>enable</name> 571 <value>1</value> 572 </enumeratedValue> 573 </enumeratedValues> 574 </field> 575 <field> 576 <name>RX_FIFO_LVL</name> 577 <description>Receive FIFO Level. Sets the RX FIFO DMA request threshold. This configures the number of filled RxFIFO entries before activating an RxDMA request.</description> 578 <bitOffset>16</bitOffset> 579 <bitWidth>3</bitWidth> 580 <enumeratedValues> 581 <name>fifo_level_enum</name> 582 <enumeratedValue> 583 <name>entry1</name> 584 <value>0</value> 585 </enumeratedValue> 586 <enumeratedValue> 587 <name>entries2</name> 588 <value>1</value> 589 </enumeratedValue> 590 <enumeratedValue> 591 <name>entries3</name> 592 <value>2</value> 593 </enumeratedValue> 594 <enumeratedValue> 595 <name>entries4</name> 596 <value>3</value> 597 </enumeratedValue> 598 <enumeratedValue> 599 <name>entries5</name> 600 <value>4</value> 601 </enumeratedValue> 602 <enumeratedValue> 603 <name>entries6</name> 604 <value>5</value> 605 </enumeratedValue> 606 <enumeratedValue> 607 <name>entries7</name> 608 <value>6</value> 609 </enumeratedValue> 610 <enumeratedValue> 611 <name>entries8</name> 612 <value>7</value> 613 </enumeratedValue> 614 </enumeratedValues> 615 </field> 616 <field> 617 <name>RX_FIFO_CLR</name> 618 <description>Receive FIFO Clear.</description> 619 <bitOffset>20</bitOffset> 620 <bitWidth>1</bitWidth> 621 <enumeratedValues> 622 <name>start_op_enum</name> 623 <enumeratedValue> 624 <name>complete</name> 625 <description>No operation/complete.</description> 626 <value>0</value> 627 </enumeratedValue> 628 <enumeratedValue> 629 <name>start</name> 630 <description>Start operation.</description> 631 <value>1</value> 632 </enumeratedValue> 633 </enumeratedValues> 634 </field> 635 <field> 636 <name>RX_FIFO_CNT</name> 637 <description>Receive FIFO Count.</description> 638 <bitOffset>24</bitOffset> 639 <bitWidth>4</bitWidth> 640 <access>read-only</access> 641 </field> 642 <field> 643 <name>RX_DMA_EN</name> 644 <description>Receive DMA Enable.</description> 645 <bitOffset>31</bitOffset> 646 <bitWidth>1</bitWidth> 647 <enumeratedValues> 648 <name>dis_en_enum</name> 649 <enumeratedValue> 650 <name>disable</name> 651 <value>0</value> 652 </enumeratedValue> 653 <enumeratedValue> 654 <name>enable</name> 655 <value>1</value> 656 </enumeratedValue> 657 </enumeratedValues> 658 </field> 659 </fields> 660 </register> 661 <register> 662 <name>I2S_CTRL</name> 663 <description>I2S Control Register.</description> 664 <addressOffset>0x1C</addressOffset> 665 <fields> 666 <field> 667 <name>I2S_EN</name> 668 <description>I2S Mode Enable.</description> 669 <bitOffset>0</bitOffset> 670 <bitWidth>1</bitWidth> 671 <enumeratedValues> 672 <name>dis_en_enum</name> 673 <enumeratedValue> 674 <name>disable</name> 675 <value>0</value> 676 </enumeratedValue> 677 <enumeratedValue> 678 <name>enable</name> 679 <value>1</value> 680 </enumeratedValue> 681 </enumeratedValues> 682 </field> 683 <field> 684 <name>I2S_MUTE</name> 685 <description>I2S Mute transmit.</description> 686 <bitOffset>1</bitOffset> 687 <bitWidth>1</bitWidth> 688 <enumeratedValues> 689 <enumeratedValue> 690 <name>normal</name> 691 <description>Normal Transmit.</description> 692 <value>0</value> 693 </enumeratedValue> 694 <enumeratedValue> 695 <name>replaced</name> 696 <description>Transmit data is replaced with 0.</description> 697 <value>1</value> 698 </enumeratedValue> 699 </enumeratedValues> 700 </field> 701 <field> 702 <name>I2S_PAUSE</name> 703 <description>I2S Pause transmit/receive.</description> 704 <bitOffset>2</bitOffset> 705 <bitWidth>1</bitWidth> 706 <enumeratedValues> 707 <enumeratedValue> 708 <name>normal</name> 709 <description>Normal Transmit.</description> 710 <value>0</value> 711 </enumeratedValue> 712 <enumeratedValue> 713 <name>halt</name> 714 <description>Halt transmit and receive FIFO and DMA access, transmit 0's.</description> 715 <value>1</value> 716 </enumeratedValue> 717 </enumeratedValues> 718 </field> 719 <field> 720 <name>I2S_MONO</name> 721 <description>I2S Monophonic Audio Mode.</description> 722 <bitOffset>3</bitOffset> 723 <bitWidth>1</bitWidth> 724 <enumeratedValues> 725 <enumeratedValue> 726 <name>stereophonic</name> 727 <description>Stereophonic audio.</description> 728 <value>0</value> 729 </enumeratedValue> 730 <enumeratedValue> 731 <name>monophonic</name> 732 <description>Monophonic audio format.Each transmit data word is replicated on both left/right channels. Receive data is taken from left channel, right channel receive data is ignored.</description> 733 <value>1</value> 734 </enumeratedValue> 735 </enumeratedValues> 736 </field> 737 <field> 738 <name>I2S_LJ</name> 739 <description>I2S Left Justify.</description> 740 <bitOffset>4</bitOffset> 741 <bitWidth>1</bitWidth> 742 <enumeratedValues> 743 <enumeratedValue> 744 <name>normal</name> 745 <description>Normal I2S audio protocol.</description> 746 <value>0</value> 747 </enumeratedValue> 748 <enumeratedValue> 749 <name>replaced</name> 750 <description>Audio data is synchronized with SSEL.</description> 751 <value>1</value> 752 </enumeratedValue> 753 </enumeratedValues> 754 </field> 755 </fields> 756 </register> 757 </registers> 758 </peripheral> 759 <!-- SPIMSS: SPI MSS --> 760</device>