max7219驱动数码管程序(51单片机+STM32 MAX7219数码管程序案例)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SPI1_InitStructure.SPI_Mode=SPI_Mode_Master;//设置SPI工作模式;设置为主SPI
SPI1_InitStructure.SPI_FirstBit=SPI_FirstBit_MSB; //高位MSB在先
SPI1_InitStructure.SPI_CPOL = SPI_CPOL_High; //选择了串行时钟的稳态,时钟悬空高
*功能:STM32_SPI1硬件配置初始化
*入口参数:无
*出口参数:无
*说明:STM32_SPI1硬件配置初始化,使用3V3
****************************************************************************/
void SPI1_Init(void)
SPI1_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;//数据捕获于第二个时钟沿
SPI1_InitStructure.SPI_NSS = SPI_NSS_Soft;CPolynomial = 7;//CRC值计算的多项式
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1,ENABLE);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_Init(GPIOA,GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//SPI1相关引脚
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
#define Max7219_pinCS PAout(3)
#define Max7219_pinDIN PAout(7)
/****************************************************************************
*名称:SPI1_Init(void)
max7219驱动数码管程序(51单片机+STM32 MAX7219数码管程序案例)
1、STM32硬件SPI max7219 8位数码管显示模块数码管模块电路图
/*****************************************************************
Updated TIme:12th,12,2015
SPI1_InitStructure.SPI_BaudRatePrescaler=SPI_BaudRatePrescaler_64;//定义波特率预分频值;波特率预分频64
SPI1_InitStructure.SPI_DataSize=SPI_DataSize_8b;//设置SPI的数据大小;SPI发送接收8位帧结构
SPI_I2S_DeInit(SPI1);
SPI_Init(SPI1,SPI1_InitStructure); //根据指定的参数初始化
SPI_Cmd(SPI1,ENABLE); //SPI使能
FuncTIon:通过MAX7219驱动数码管
******************************************************************/
#include delay.h
#include sys.h
#include usart.h//串口通信
#define Max7219_pinCLK PAout(5)
{
SPI_InitTypeDef SPI1_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;
//配置SPI1管脚
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;//推挽复用功能
GPIO_Init(GPIOA,GPIO_InitStructure);
SPI1_InitStructure.SPI_DirecTIon=SPI_DirecTIon_2Lines_FullDuplex;//设置SPI单向或者双向的数据模式;SPI设置为双线双向全双工
SPI1_InitStructure.SPI_FirstBit=SPI_FirstBit_MSB; //高位MSB在先
SPI1_InitStructure.SPI_CPOL = SPI_CPOL_High; //选择了串行时钟的稳态,时钟悬空高
*功能:STM32_SPI1硬件配置初始化
*入口参数:无
*出口参数:无
*说明:STM32_SPI1硬件配置初始化,使用3V3
****************************************************************************/
void SPI1_Init(void)
SPI1_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;//数据捕获于第二个时钟沿
SPI1_InitStructure.SPI_NSS = SPI_NSS_Soft;CPolynomial = 7;//CRC值计算的多项式
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1,ENABLE);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;
GPIO_Init(GPIOA,GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//SPI1相关引脚
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
#define Max7219_pinCS PAout(3)
#define Max7219_pinDIN PAout(7)
/****************************************************************************
*名称:SPI1_Init(void)
max7219驱动数码管程序(51单片机+STM32 MAX7219数码管程序案例)
1、STM32硬件SPI max7219 8位数码管显示模块数码管模块电路图
/*****************************************************************
Updated TIme:12th,12,2015
SPI1_InitStructure.SPI_BaudRatePrescaler=SPI_BaudRatePrescaler_64;//定义波特率预分频值;波特率预分频64
SPI1_InitStructure.SPI_DataSize=SPI_DataSize_8b;//设置SPI的数据大小;SPI发送接收8位帧结构
SPI_I2S_DeInit(SPI1);
SPI_Init(SPI1,SPI1_InitStructure); //根据指定的参数初始化
SPI_Cmd(SPI1,ENABLE); //SPI使能
FuncTIon:通过MAX7219驱动数码管
******************************************************************/
#include delay.h
#include sys.h
#include usart.h//串口通信
#define Max7219_pinCLK PAout(5)
{
SPI_InitTypeDef SPI1_InitStructure;
GPIO_InitTypeDef GPIO_InitStructure;
//配置SPI1管脚
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;//推挽复用功能
GPIO_Init(GPIOA,GPIO_InitStructure);
SPI1_InitStructure.SPI_DirecTIon=SPI_DirecTIon_2Lines_FullDuplex;//设置SPI单向或者双向的数据模式;SPI设置为双线双向全双工