流水灯程序GPIO端口说明
端口 | 引脚 | 信号名称 | 备注 |
---|---|---|---|
LED D5 | 02 | GPIO11 | 0熄灭1点亮 |
LED D6 | 01 | GPIO10 | 同上 |
LED D7 | 64 | GPIO09 | 同上 |
- 在CCS导入Blinky项目,参照以下文章。
使用CCS调试CC3200芯片GPIO接口应用----流水灯程序
- 项目程序流程图
- 主函数如下。
- 初始化开发板BoardInit()
- 设置中断向量表基地址,中断向量表在startup_ccs.c中定义。此函数的声明在interrupt.h,代码在interrupt.c中。
- 允许处理器中断,此函数调用CPUcpsie()允许处理器中断操作。函数的声明在interrupt.h,代码在interrupt.c中。CPUcpsie()调用汇编语言程序段实现允许CPU中断操作,其声明在cpu.h,代码在cpu.c。
- 允许SysTick中断函数声明在interrupt.h,代码在interrupt.c中。
- 初始化MCU,加电启动或从低功耗休眠模式退出时,应用程序应该调用次函数配置MCU参数。参函数声明在prcm.h,代码在prcm.c。
- 引脚复用配置PinMuxConfig()
这三个函数是API函数,是通过硬件寄存器操作HWREG()实现相应功能。此函数可以通过PinMux软件来生成对应的c文件。 - LED操作函数
LED操作主要包含以下内容。
配置LED:GPIO_IF_LedConfigure(unsigned char ucPins)
熄灭LED:GPIO_IF_LedOff(char ledNum)
点亮LED:GPIO_IF_LedOn(char ledNum)
这三个函数程序代码都在GPIO驱动文件gpio_if.c文件中,也就是说只要程序需要,就把这个文件夹复制进去,然后调用就行了。其中调用了相应的GPIO API函数,主要是GPIOPinWrite()和GPIOPinRead()。
a)GPIO配置函数**通过调用GPIO_IF_GetPortNPin()获得LED使用GPIO的端口基地址和引脚位权,用于后续的LED操作。括号内的参数表示引脚定义。
b) GPIO_IF_LedOff(char ledNum)函数中 MCU_ALL_LED_IND代表三个灯。
c) 循环亮灯函数
GPIO_IF_LedOn(char ledNum)函数,里面是灯的标识,相关定义在本文第一幅图可以看到。
- GPIO使用总结
GPIO的使用主要包括引脚复用配置和GPIO读写操作。
引脚服用配置包括允许GPIO时钟、配置GPIO引脚类型、配置GPIO引脚方向。
相关的函数在头文件都有定义,所以下次我们编辑程序的时候直接引用函数就好。
参考文献:《ARM Cortex-M4+Wi-Fi MCU应用指南-CC3200 CCS基础篇》郭书军编著 电子工业出版社