PAGE1
PAGE1
1.认识TivaC系列(基于TM4C123)微控制器
1.1TivaC系列概述
TivaC系列微控制器是德州仪器(TexasInstruments,TI)推出的一系列高性能、低功耗的32位微控制器。基于ARMCortex-M4内核,TivaC系列提供了丰富的外设和强大的处理能力,适用于各种嵌入式系统应用,如工业控制、消费电子、医疗设备和物联网(IoT)设备。TM4C123是TivaC系列中的一个重要型号,广泛应用于各种开发项目中。
1.1.1主要特点
高性能ARMCortex-M4内核:运行频率高达80MHz,支持单精度浮点运算单元(FPU)和DSP指令集。
丰富的外设:包括UART、I2C、SPI、CAN、ADC、DAC、PWM、定时器、GPIO等。
低功耗:多种低功耗模式,适用于电池供电的应用。
大容量存储:高达256KB的闪存和32KB的SRAM。
强大的开发工具支持:包括CodeComposerStudio(CCS)和TI的TivaWare库。
1.1.2应用领域
工业控制:电机控制、传感器数据采集和处理。
消费电子:智能家居、可穿戴设备、家电控制。
医疗设备:医疗监测、数据采集和处理。
物联网设备:无线通信、数据传输和处理。
1.2TM4C123系列微控制器
1.2.1内核架构
TM4C123微控制器基于ARMCortex-M4内核,该内核是一个高性能的32位RISC处理器,具有以下主要特点:
高性能:支持Thumb-2指令集,提供高效的代码执行。
单精度浮点运算单元(FPU):支持复杂的数学运算,适用于需要高精度计算的应用。
DSP指令集:支持数字信号处理,适用于音视频处理和通信应用。
嵌套向量中断控制器(NVIC):支持多达96个中断源,具有灵活的中断优先级和嵌套机制。
1.2.2存储器
TM4C123系列微控制器提供了丰富的存储资源,包括闪存和SRAM:
闪存:最大256KB,用于存储程序代码和常量数据。
SRAM:最大32KB,用于存储运行时数据。
1.2.3时钟系统
TM4C123的时钟系统非常灵活,支持多种时钟源和配置:
主时钟源:外部晶振(通常为16MHz)或内部RC振荡器(16MHz)。
系统时钟:通过PLL(锁相环)可以将主时钟源倍频到80MHz。
低频时钟源:内部低频RC振荡器(32.768kHz)或外部低频晶振(32.768kHz)。
1.2.4电源管理
TM4C123系列微控制器支持多种电源管理模式,以降低功耗:
正常模式:全速运行,所有外设和时钟源启用。
低功耗模式:包括LPM0到LPM4,根据应用场景选择合适的功耗模式。
深度睡眠模式:关闭大部分时钟源和外设,仅保留必要的功能。
1.3开发环境和工具
1.3.1CodeComposerStudio(CCS)
CodeComposerStudio(CCS)是TI提供的集成开发环境(IDE),支持TivaC系列微控制器的开发。CCS提供了强大的调试工具、代码编辑器和项目管理功能。
1.3.2TivaWare库
TivaWare库是TI提供的一组API和驱动程序,用于简化TivaC系列微控制器的开发。TivaWare库包括以下主要部分:
初始化函数:用于初始化微控制器和外设。
外设驱动:支持各种外设的配置和操作。
示例代码:提供了丰富的示例代码,帮助开发者快速上手。
1.3.3开发板
TI提供了多种开发板,以便开发者进行原型设计和测试。常见的开发板包括:
TivaCLaunchPad:低成本开发板,集成了USB仿真器和调试接口。
EK-TM4C123GXL:功能更强大的开发板,支持更多的外设和接口。
1.4硬件接口
1.4.1通用输入输出(GPIO)
GPIO是TivaC系列微控制器中最基本的外设之一,用于与外部设备进行数字通信。
1.4.1.1GPIO基本配置
#includestdint.h
#includestdbool.h
#includeinc/hw_memmap.h
#includeinc/hw_types.h
#includedriverlib/sysctl.h
#includedriverlib/gpio.h
//初始化GPIO
voidinit_gpio(void){
//使能GPIO端口A的时钟
SysCtlPeripheralEnable(SYSCTL_