📄 spi_t_r.c
字号:
/****************************************Copyright (c)**************************************************
** Guangzhou ZHIYUAN electronics Co.,LTD.
**
** http://www.embedtools.com
**
**--------------File Info-------------------------------------------------------------------------------
** File Name: ssi_send.c
** Last modified Date: 2007-04-25
** Last Version: v1.0
** Description: 通过 SSI 接口循环向外输出 0~F 的字模,74HC595 接收到 SSI 信号以后
** 在7段数码管上显示相应的字符。
**
**------------------------------------------------------------------------------------------------------
** Created By: Pan Yi Fei
** Created date: 2007-04-25
** Version: v1.0
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
** Modified by:
** Modified date:
** Version:
** Description:
**
********************************************************************************************************/
#include "hw_memmap.h"
#include "hw_types.h"
#include "ssi.h"
#include "gpio.h"
#include "sysctl.h"
#include "systick.h"
#define BitRate 115200 // 设定波特率
#define DataWidth 8 // 设定数据宽度
// 此表为7段数码管显示0~F的字模
unsigned char DISP_TAB[16] = {
0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8,
0x80, 0x90, 0x88, 0x83, 0xC6, 0xA1, 0x86, 0x8E};
//-----------------------------------------------------------------------------------------------------------------------------
// 函数原形:void delay(unsigned long d)
// 功能描述:延时数量为 d 个指令周期。
// 参数说明:unsigned long d,将要延时的时间数。
// 返回值:无
//-----------------------------------------------------------------------------------------------------------------------------
void delay(unsigned long d)
{
for(;d;d--);
}
//-----------------------------------------------------------------------------------------------------------------------------
// 函数原形:int main(void)
// 功能描述:主函数
// 参数说明:无
// 返回值:0
//-----------------------------------------------------------------------------------------------------------------------------
int main(void)
{
unsigned char i=0;
// 使能 SSI
SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI);
// 使能 GPIO A 口
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA);
// 配置 SSI
SSIConfig(SSI_BASE, SSI_FRF_MOTO_MODE_0, SSI_MODE_MASTER, BitRate, DataWidth);
// 使能 SSI
SSIEnable(SSI_BASE);
// 设定 GPIO A 2~5 引脚为使用外设功能
GPIODirModeSet(GPIO_PORTA_BASE, (GPIO_PIN_2 | GPIO_PIN_3 | GPIO_PIN_4 |
GPIO_PIN_5), GPIO_DIR_MODE_HW);
while (1)
{
for (i=0; i<16; i++)
{
// 循环输出 0~F 的字模
SSIDataPut(SSI_BASE, DISP_TAB[i]);
delay(2000000); // 输出后延时一段时间
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -