📄 lm3s101.h
字号:
//*****************************************************************************
//
// lm3s101.h - LM3S101 Register Definitions
//
// Copyright (c) 2007 Luminary Micro, Inc. All rights reserved.
//
// Software License Agreement
//
// Luminary Micro, Inc. (LMI) is supplying this software for use solely and
// exclusively on LMI's microcontroller products.
//
// The software is owned by LMI and/or its suppliers, and is protected under
// applicable copyright laws. All rights are reserved. You may not combine
// this software with "viral" open-source software in order to form a larger
// program. Any use in violation of the foregoing restrictions may subject
// the user to criminal sanctions under applicable laws, as well as to civil
// liability for the breach of the terms and conditions of this license.
//
// THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED
// OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE.
// LMI SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR
// CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER.
//
// This is part of revision 1928 of the Stellaris Peripheral Driver Library.
//
//*****************************************************************************
#ifndef __LM3S101_H__
#define __LM3S101_H__
//*****************************************************************************
//
// Watchdog Timer (WATCHDOG)
//
//*****************************************************************************
#define WATCHDOG_LOAD_R (*((volatile unsigned long *)0x40000000))
#define WATCHDOG_VALUE_R (*((volatile unsigned long *)0x40000004))
#define WATCHDOG_CTL_R (*((volatile unsigned long *)0x40000008))
#define WATCHDOG_ICR_R (*((volatile unsigned long *)0x4000000C))
#define WATCHDOG_RIS_R (*((volatile unsigned long *)0x40000010))
#define WATCHDOG_MIS_R (*((volatile unsigned long *)0x40000014))
#define WATCHDOG_TEST_R (*((volatile unsigned long *)0x40000418))
#define WATCHDOG_LOCK_R (*((volatile unsigned long *)0x40000C00))
//*****************************************************************************
//
// General-Purpose Input/Outputs (PORTA)
//
//*****************************************************************************
#define GPIO_PORTA_DATA_BITS_R ((volatile unsigned long *)0x40004000)
#define GPIO_PORTA_DATA_R (*((volatile unsigned long *)0x400043FC))
#define GPIO_PORTA_DIR_R (*((volatile unsigned long *)0x40004400))
#define GPIO_PORTA_IS_R (*((volatile unsigned long *)0x40004404))
#define GPIO_PORTA_IBE_R (*((volatile unsigned long *)0x40004408))
#define GPIO_PORTA_IEV_R (*((volatile unsigned long *)0x4000440C))
#define GPIO_PORTA_IM_R (*((volatile unsigned long *)0x40004410))
#define GPIO_PORTA_RIS_R (*((volatile unsigned long *)0x40004414))
#define GPIO_PORTA_MIS_R (*((volatile unsigned long *)0x40004418))
#define GPIO_PORTA_ICR_R (*((volatile unsigned long *)0x4000441C))
#define GPIO_PORTA_AFSEL_R (*((volatile unsigned long *)0x40004420))
#define GPIO_PORTA_DR2R_R (*((volatile unsigned long *)0x40004500))
#define GPIO_PORTA_DR4R_R (*((volatile unsigned long *)0x40004504))
#define GPIO_PORTA_DR8R_R (*((volatile unsigned long *)0x40004508))
#define GPIO_PORTA_ODR_R (*((volatile unsigned long *)0x4000450C))
#define GPIO_PORTA_PUR_R (*((volatile unsigned long *)0x40004510))
#define GPIO_PORTA_PDR_R (*((volatile unsigned long *)0x40004514))
#define GPIO_PORTA_SLR_R (*((volatile unsigned long *)0x40004518))
#define GPIO_PORTA_DEN_R (*((volatile unsigned long *)0x4000451C))
//*****************************************************************************
//
// General-Purpose Input/Outputs (PORTB)
//
//*****************************************************************************
#define GPIO_PORTB_DATA_BITS_R ((volatile unsigned long *)0x40005000)
#define GPIO_PORTB_DATA_R (*((volatile unsigned long *)0x400053FC))
#define GPIO_PORTB_DIR_R (*((volatile unsigned long *)0x40005400))
#define GPIO_PORTB_IS_R (*((volatile unsigned long *)0x40005404))
#define GPIO_PORTB_IBE_R (*((volatile unsigned long *)0x40005408))
#define GPIO_PORTB_IEV_R (*((volatile unsigned long *)0x4000540C))
#define GPIO_PORTB_IM_R (*((volatile unsigned long *)0x40005410))
#define GPIO_PORTB_RIS_R (*((volatile unsigned long *)0x40005414))
#define GPIO_PORTB_MIS_R (*((volatile unsigned long *)0x40005418))
#define GPIO_PORTB_ICR_R (*((volatile unsigned long *)0x4000541C))
#define GPIO_PORTB_AFSEL_R (*((volatile unsigned long *)0x40005420))
#define GPIO_PORTB_DR2R_R (*((volatile unsigned long *)0x40005500))
#define GPIO_PORTB_DR4R_R (*((volatile unsigned long *)0x40005504))
#define GPIO_PORTB_DR8R_R (*((volatile unsigned long *)0x40005508))
#define GPIO_PORTB_ODR_R (*((volatile unsigned long *)0x4000550C))
#define GPIO_PORTB_PUR_R (*((volatile unsigned long *)0x40005510))
#define GPIO_PORTB_PDR_R (*((volatile unsigned long *)0x40005514))
#define GPIO_PORTB_SLR_R (*((volatile unsigned long *)0x40005518))
#define GPIO_PORTB_DEN_R (*((volatile unsigned long *)0x4000551C))
//*****************************************************************************
//
// General-Purpose Input/Outputs (PORTC)
//
//*****************************************************************************
#define GPIO_PORTC_DATA_BITS_R ((volatile unsigned long *)0x40006000)
#define GPIO_PORTC_DATA_R (*((volatile unsigned long *)0x400063FC))
#define GPIO_PORTC_DIR_R (*((volatile unsigned long *)0x40006400))
#define GPIO_PORTC_IS_R (*((volatile unsigned long *)0x40006404))
#define GPIO_PORTC_IBE_R (*((volatile unsigned long *)0x40006408))
#define GPIO_PORTC_IEV_R (*((volatile unsigned long *)0x4000640C))
#define GPIO_PORTC_IM_R (*((volatile unsigned long *)0x40006410))
#define GPIO_PORTC_RIS_R (*((volatile unsigned long *)0x40006414))
#define GPIO_PORTC_MIS_R (*((volatile unsigned long *)0x40006418))
#define GPIO_PORTC_ICR_R (*((volatile unsigned long *)0x4000641C))
#define GPIO_PORTC_AFSEL_R (*((volatile unsigned long *)0x40006420))
#define GPIO_PORTC_DR2R_R (*((volatile unsigned long *)0x40006500))
#define GPIO_PORTC_DR4R_R (*((volatile unsigned long *)0x40006504))
#define GPIO_PORTC_DR8R_R (*((volatile unsigned long *)0x40006508))
#define GPIO_PORTC_ODR_R (*((volatile unsigned long *)0x4000650C))
#define GPIO_PORTC_PUR_R (*((volatile unsigned long *)0x40006510))
#define GPIO_PORTC_PDR_R (*((volatile unsigned long *)0x40006514))
#define GPIO_PORTC_SLR_R (*((volatile unsigned long *)0x40006518))
#define GPIO_PORTC_DEN_R (*((volatile unsigned long *)0x4000651C))
//*****************************************************************************
//
// Synchronous Serial Interface (SSI0)
//
//*****************************************************************************
#define SSI0_CR0_R (*((volatile unsigned long *)0x40008000))
#define SSI0_CR1_R (*((volatile unsigned long *)0x40008004))
#define SSI0_DR_R (*((volatile unsigned long *)0x40008008))
#define SSI0_SR_R (*((volatile unsigned long *)0x4000800C))
#define SSI0_CPSR_R (*((volatile unsigned long *)0x40008010))
#define SSI0_IM_R (*((volatile unsigned long *)0x40008014))
#define SSI0_RIS_R (*((volatile unsigned long *)0x40008018))
#define SSI0_MIS_R (*((volatile unsigned long *)0x4000801C))
#define SSI0_ICR_R (*((volatile unsigned long *)0x40008020))
//*****************************************************************************
//
// Universal Asynchronous Receivers/Transmitters (UART0)
//
//*****************************************************************************
#define UART0_DR_R (*((volatile unsigned long *)0x4000C000))
#define UART0_RSR_R (*((volatile unsigned long *)0x4000C004))
#define UART0_ECR_R (*((volatile unsigned long *)0x4000C004))
#define UART0_FR_R (*((volatile unsigned long *)0x4000C018))
#define UART0_IBRD_R (*((volatile unsigned long *)0x4000C024))
#define UART0_FBRD_R (*((volatile unsigned long *)0x4000C028))
#define UART0_LCRH_R (*((volatile unsigned long *)0x4000C02C))
#define UART0_CTL_R (*((volatile unsigned long *)0x4000C030))
#define UART0_IFLS_R (*((volatile unsigned long *)0x4000C034))
#define UART0_IM_R (*((volatile unsigned long *)0x4000C038))
#define UART0_RIS_R (*((volatile unsigned long *)0x4000C03C))
#define UART0_MIS_R (*((volatile unsigned long *)0x4000C040))
#define UART0_ICR_R (*((volatile unsigned long *)0x4000C044))
//*****************************************************************************
//
// General-Purpose Timers (TIMER0)
//
//*****************************************************************************
#define TIMER0_CFG_R (*((volatile unsigned long *)0x40030000))
#define TIMER0_TAMR_R (*((volatile unsigned long *)0x40030004))
#define TIMER0_TBMR_R (*((volatile unsigned long *)0x40030008))
#define TIMER0_CTL_R (*((volatile unsigned long *)0x4003000C))
#define TIMER0_IMR_R (*((volatile unsigned long *)0x40030018))
#define TIMER0_RIS_R (*((volatile unsigned long *)0x4003001C))
#define TIMER0_MIS_R (*((volatile unsigned long *)0x40030020))
#define TIMER0_ICR_R (*((volatile unsigned long *)0x40030024))
#define TIMER0_TAILR_R (*((volatile unsigned long *)0x40030028))
#define TIMER0_TBILR_R (*((volatile unsigned long *)0x4003002C))
#define TIMER0_TAMATCHR_R (*((volatile unsigned long *)0x40030030))
#define TIMER0_TBMATCHR_R (*((volatile unsigned long *)0x40030034))
#define TIMER0_TAPR_R (*((volatile unsigned long *)0x40030038))
#define TIMER0_TBPR_R (*((volatile unsigned long *)0x4003003C))
#define TIMER0_TAPMR_R (*((volatile unsigned long *)0x40030040))
#define TIMER0_TBPMR_R (*((volatile unsigned long *)0x40030044))
#define TIMER0_TAR_R (*((volatile unsigned long *)0x40030048))
#define TIMER0_TBR_R (*((volatile unsigned long *)0x4003004C))
//*****************************************************************************
//
// General-Purpose Timers (TIMER1)
//
//*****************************************************************************
#define TIMER1_CFG_R (*((volatile unsigned long *)0x40031000))
#define TIMER1_TAMR_R (*((volatile unsigned long *)0x40031004))
#define TIMER1_TBMR_R (*((volatile unsigned long *)0x40031008))
#define TIMER1_CTL_R (*((volatile unsigned long *)0x4003100C))
#define TIMER1_IMR_R (*((volatile unsigned long *)0x40031018))
#define TIMER1_RIS_R (*((volatile unsigned long *)0x4003101C))
#define TIMER1_MIS_R (*((volatile unsigned long *)0x40031020))
#define TIMER1_ICR_R (*((volatile unsigned long *)0x40031024))
#define TIMER1_TAILR_R (*((volatile unsigned long *)0x40031028))
#define TIMER1_TBILR_R (*((volatile unsigned long *)0x4003102C))
#define TIMER1_TAMATCHR_R (*((volatile unsigned long *)0x40031030))
#define TIMER1_TBMATCHR_R (*((volatile unsigned long *)0x40031034))
#define TIMER1_TAPR_R (*((volatile unsigned long *)0x40031038))
#define TIMER1_TBPR_R (*((volatile unsigned long *)0x4003103C))
#define TIMER1_TAPMR_R (*((volatile unsigned long *)0x40031040))
#define TIMER1_TBPMR_R (*((volatile unsigned long *)0x40031044))
#define TIMER1_TAR_R (*((volatile unsigned long *)0x40031048))
#define TIMER1_TBR_R (*((volatile unsigned long *)0x4003104C))
//*****************************************************************************
//
// Analog Comparators (COMP)
//
//*****************************************************************************
#define COMP_ACMIS_R (*((volatile unsigned long *)0x4003C000))
#define COMP_ACRIS_R (*((volatile unsigned long *)0x4003C004))
#define COMP_ACINTEN_R (*((volatile unsigned long *)0x4003C008))
#define COMP_ACREFCTL_R (*((volatile unsigned long *)0x4003C010))
#define COMP_ACSTAT0_R (*((volatile unsigned long *)0x4003C020))
#define COMP_ACCTL0_R (*((volatile unsigned long *)0x4003C024))
#define COMP_ACSTAT1_R (*((volatile unsigned long *)0x4003C040))
#define COMP_ACCTL1_R (*((volatile unsigned long *)0x4003C044))
//*****************************************************************************
//
// Internal Memory (FLASH)
//
//*****************************************************************************
#define FLASH_FMA_R (*((volatile unsigned long *)0x400FD000))
#define FLASH_FMD_R (*((volatile unsigned long *)0x400FD004))
#define FLASH_FMC_R (*((volatile unsigned long *)0x400FD008))
#define FLASH_FCRIS_R (*((volatile unsigned long *)0x400FD00C))
#define FLASH_FCIM_R (*((volatile unsigned long *)0x400FD010))
#define FLASH_FCMISC_R (*((volatile unsigned long *)0x400FD014))
#define FLASH_FMPRE_R (*((volatile unsigned long *)0x400FE130))
#define FLASH_FMPPE_R (*((volatile unsigned long *)0x400FE134))
#define FLASH_USECRL_R (*((volatile unsigned long *)0x400FE140))
//*****************************************************************************
//
// System Control (SYSCTL)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -