1. GPIO
GPxMUX(功能选择寄存器),
GPxMUX.bit=0配置为I/O功能。GPxMUX.bit=1配置为外设功能。复位时所有GPIO配置为I/O功能。
GPxDIR(方向选择寄存器),0为输入,1为输出,复位时都为输入。
GPxDAT(数据寄存器),
如果GPxDAT.bit=0,且设置为输出功能,置相应的引脚为低电平;
如果GPxDAT.bit= 1,且设置为输出功能,置相应的引脚为高电平。
GPxSET(设置寄存器),是只写寄存器,任何读操作都返回0。
如果GPxSET.bit=0,没有影响;
如果GPxSET.bit=1,且引脚设置为输出,将相应的引脚置成高电平。
GPxCLEAR(清除寄存器),是只写寄存器,任何读操作都返回0。
如果GPxCLEAR.bit=0,没有影响;
如果GPxCLEAR.bit=1,且引脚设置为输出,将相应的引脚置成低电平。
GPxTOGGLE(取反寄存器),是只写寄存器,任何读操作都返回0。
如果GPxTOGGLE.bit=0,没有影响;
如果GPxTOGGLE.bit=1,且引脚设置为输出,将相应的引脚取反,原来是低电平变成高电平,原来是高电平,变为低电平。
2. 矩阵键盘
矩阵键盘扫描原理:GPIO48-50这三根线为行线,配置为输出口。GPIO51-53这三根线为列线,配置为输入口,用于检测端口电平。先让GPIO48输出低电平,且49,50输出高电平。检测GPIO51、52、53的电平,看哪一个是低电平,则说明相应按键按下。比如此时GPIO52为低电平,则说明SW7按键按下了。同理,再让49为低,且48,50为高;再50为低,48,49为高。这样就实现了按键扫描。
3. SPI控制数码管显示
SPI接口是高速同步串行输入输出接口。F28335有一个专门的SPI模块, 另外两个McBSP也可以配置为SPI接口。SPI由12组控制寄存器控制,位于控制寄存器帧0x7040h开始的位置。所有的寄存器都为16bit寄存器。
数码管控制原理:GPIO58-61这四个管脚控制数码管的位码,当他们为高电平的时候,三极管9013导通,此时相应位的数码管点亮。芯片74HC164为串口转并口芯片,A、B为串行数据输入口,A、B是“与”的关系,这里他们连在一起,也就是说当GPIO54为“1”时,输入与后为1,反之,当GPIO54为“0”时,输入“与”后为0。CP是时钟信号输入。当MR为高电平,且在CP的上升沿期间,GPIO54口的数据进行一位位的转换,第一位放在Q0,当第二位过来后,原来的Q0放到Q1,现在的数据又放在Q0,以此类推循环8次,当一次转换结束后,8位数据经过并口输出到数码管,就实现了“串转并”。
4. SPI
SPI即(Serial Peripheral Interface)是高速同步串行输入输出接口,,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,四线制:SPISOMI(主输入/从输出引脚)、SPISIMO(主输出/从输入引脚)、SPISTE|(从片选)、SPICLK(时钟引脚)。SPI接口数据传输时一共有3种模式:简单模式、基本模式、增强FIFO模式。SPI接口要配置的寄存器有12个:SPI配置控制寄存器(SPICCR)、SPI操作控制寄存器(SPICTL)、SPI状态寄存器(SPISTS)、SPI波特率设置寄存器(SPIBRR)、SPI仿真缓冲寄存器(SPIRXEMU)、SPI串行接收缓冲寄存器(SPIRXBUF)、SPI串行发送缓冲寄存器(SPITXBUF)、SPI串行数据寄存器(SPIDAT)、SPI FIFO发送寄存器SPIFFTX、SPI FIFO接收寄存器SPIFFRX、SPI FIFO控制寄存器SPIFFCT、SPI优先级控制寄存器(SPIPRI)。每个寄存器每一位的如何配置见书《手把手教你学DSP》353页。
系统在上电复位时,SPI工作在标准SPI模式,禁止FIFO功能。FIFO的寄存器SPIFFTX、SPIFFRX、