Skip to content

Instantly share code, notes, and snippets.

@jcsoo
Created April 10, 2018 20:22
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jcsoo/4d608daa8737e6aacc4af0442a926a50 to your computer and use it in GitHub Desktop.
Save jcsoo/4d608daa8737e6aacc4af0442a926a50 to your computer and use it in GitHub Desktop.
(peripheral
(group-name GPIO)
(description "General-purpose I/Os")
(register
(name MODER)
(offset 0x0)
(size 0x20)
(access read-write)
(description "GPIO port mode register")
(field
(name MODER)
(dim 16)
(dim-increment 2)
(bit-offset 0)
(bit-width 2)
(description "Port x configuration bits (y = 0..15)")
)
)
(register
(name OTYPER)
(offset 0x4)
(size 0x20)
(access read-write)
(description "GPIO port output type register")
(field
(name OT)
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port x configuration bits (y = 0..15)")
)
)
(register
(name OSPEEDR)
(offset 0x8)
(size 0x20)
(access read-write)
(description "GPIO port output speed register")
(field
(name OSPEEDR)
(dim 16)
(dim-increment 2)
(bit-offset 0)
(bit-width 2)
(description "Port x configuration bits (y = 0..15)")
)
)
(register
(name PUPDR)
(offset 0xc)
(size 0x20)
(access read-write)
(description "GPIO port pull-up/pull-down register")
(field
(name PUPDR)
(dim 16)
(dim-increment 2)
(bit-offset 0)
(bit-width 2)
(description "Port x configuration bits (y = 0..15)")
)
)
(register
(name IDR)
(offset 0x10)
(size 0x20)
(access read-only)
(description "GPIO port input data register")
(field
(name IDR)
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port input data (y = 0..15)")
)
)
(register
(name ODR)
(offset 0x14)
(size 0x20)
(access read-write)
(description "GPIO port output data register")
(field
(name ODR)
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port output data (y = 0..15)")
)
)
(register
(name BSRR)
(offset 0x18)
(size 0x20)
(access write-only)
(description "GPIO port bit set/reset register")
(field
(name BR)
(dim 16)
(dim-increment 1)
(bit-offset 16)
(bit-width 1)
(description "Port x reset bit y (y = 0..15)")
)
(field
(name BS)
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port x set bit y (y= 0..15)")
)
)
(register
(name LCKR)
(offset 0x1c)
(size 0x20)
(access read-write)
(description "GPIO port configuration lock register")
(field
(name LCKK)
(bit-offset 16)
(bit-width 1)
(description "Lock Key")
)
(field
(name "LCK")
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port x lock bit y (y= 0..15)")
)
)
(register
(name AFRL)
(offset 0x20)
(size 0x20)
(access read-write)
(description "GPIO alternate function low register")
(field
(name "AFRL")
(dim 8)
(dim-increment 4)
(bit-offset 0)
(bit-width 4)
(description "Alternate function selection for port x bit y (y = 0..7)")
)
)
(register
(name AFRH)
(offset 0x24)
(size 0x20)
(access read-write)
(description "GPIO alternate function high register")
(field
(name "AFRH")
(dim 8)
(dim-increment 4)
(bit-offset 0)
(bit-width 4)
(description "Alternate function selection for port x bit y (y = 8..15)")
)
)
(register
(name BRR)
(offset 0x28)
(size 0x20)
(access write-only)
(description "Port bit reset register")
(field
(name BR)
(dim 16)
(dim-increment 1)
(bit-offset 0)
(bit-width 1)
(description "Port x reset bit y")
)
)
)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment