• 大小: 1.24MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-05
  • 语言: 其他
  • 标签: 74HC595  

资源简介

STM32用SPI与74HC595通讯,串行数据转并行,可应用为O口拓展,或者是驱动多个LED数码管

资源截图

代码片段和文件信息


#include “stm32f10x.h“
#include “platform_config.h“

/* Private typedef -----------------------------------------------------------*/
/* Private define ------------------------------------------------------------*/
/* Private macro -------------------------------------------------------------*/
/* Private variables ---------------------------------------------------------*/
//uint8_t PWMValues[40];
uint16_t PrescalerValue=0;
uint8_t Led_Counter=0;
uint8_t Led_Value=0xFF;
uint16_t  CCR1_Val = 1;


/* Private functions ---------------------------------------------------------*/
void RCC_Configuration(void);
void GPIO_Configuration(void);
void NVIC_Configuration(void);
void TIM_Configuration(void);
void SPI_Configuration(void);
void Delay(__IO uint32_t);

/**
  * @brief  Main program
  * @param  None
  * @retval None
  */
int main(void)
{
  /*!< At this stage the microcontroller clock setting is already configured 
       this is done through SystemInit() function which is called from startup
       file (startup_stm32f10x_xx.s) before to branch to application main.
       To reconfigure the default setting of SystemInit() function refer to
       system_stm32f10x.c file
     */     
       
  /* System clocks configuration ---------------------------------------------*/
  RCC_Configuration();

  /* NVIC configuration ------------------------------------------------------*/
  NVIC_Configuration();

  /* GPIO configuration ------------------------------------------------------*/
  GPIO_Configuration();

/* SPI configuration ------------------------------------------------------*/
SPI_Configuration();

/* TIM configuration ------------------------------------------------------*/
TIM_Configuration();

  while(1)
{
if(Led_Value==0) Led_Value=0xff;
else Led_Value <<=1;
Delay(5000000);
}

}

/**
  * @brief  Configures the different system clocks.
  * @param  None
  * @retval None
  */
void RCC_Configuration(void)
{
/* Enable peripheral clocks --------------------------------------------------*/
/* SPI GPIO and AFIO clock enable */
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO  ENABLE);

/* Enable SPI clock for 74HC595 shift registers */
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI3  ENABLE);

/* TIM2 clock enable */
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2 ENABLE);
}

/**
  * @brief  Configures the different GPIO ports.
  * @param  None
  * @retval None
  */
void GPIO_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;

/* Disable the Serial Wire Jtag Debug Port SWJ-DP */
GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable ENABLE);

  /* Configure SPI_MASTER pins: SCK and MOSI ---------------------------------*/
  /* Configure SCK and MOSI pins as Alternate Function Push Pull */
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3 | GPIO_Pin_5;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStru

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       7444  2014-05-15 18:21  Project\main.c

     文件       2309  2014-05-14 19:39  Project\platform_config.h

     文件      77269  2014-05-15 18:24  Project\RVMDK\List\SPI_74HC595.map

     文件      65291  2014-05-15 16:38  Project\RVMDK\List\startup_stm32f10x_hd.lst

     文件       3557  2014-05-15 16:38  Project\RVMDK\Obj\core_cm3.crf

     文件        115  2014-05-15 16:38  Project\RVMDK\Obj\core_cm3.d

     文件      10488  2014-05-15 16:38  Project\RVMDK\Obj\core_cm3.o

     文件     350123  2014-05-15 18:21  Project\RVMDK\Obj\main.crf

     文件       2196  2014-05-15 18:21  Project\RVMDK\Obj\main.d

     文件     384284  2014-05-15 18:21  Project\RVMDK\Obj\main.o

     文件     349179  2014-05-15 16:38  Project\RVMDK\Obj\misc.crf

     文件       2269  2014-05-15 16:38  Project\RVMDK\Obj\misc.d

     文件     381580  2014-05-15 16:38  Project\RVMDK\Obj\misc.o

     文件     388924  2014-05-15 18:24  Project\RVMDK\Obj\SPI_74HC595.axf

     文件      23001  2014-05-15 18:24  Project\RVMDK\Obj\SPI_74HC595.hex

     文件      69724  2014-05-15 18:24  Project\RVMDK\Obj\SPI_74HC595.htm

     文件        479  2014-05-15 18:24  Project\RVMDK\Obj\SPI_74HC595.lnp

     文件        188  2014-05-16 18:44  Project\RVMDK\Obj\SPI_74HC595.plg

     文件        479  2014-04-05 08:06  Project\RVMDK\Obj\SPI_74HC595.sct

     文件       1628  2014-05-15 18:24  Project\RVMDK\Obj\SPI_74HC595.tra

     文件        117  2014-05-15 16:38  Project\RVMDK\Obj\startup_stm32f10x_hd.d

     文件       6896  2014-05-15 16:38  Project\RVMDK\Obj\startup_stm32f10x_hd.o

     文件     352677  2014-05-15 16:38  Project\RVMDK\Obj\stm32f10x_gpio.crf

     文件       2599  2014-05-15 16:38  Project\RVMDK\Obj\stm32f10x_gpio.d

     文件     388024  2014-05-15 16:38  Project\RVMDK\Obj\stm32f10x_gpio.o

     文件     352016  2014-05-15 18:24  Project\RVMDK\Obj\stm32f10x_it.crf

     文件       2493  2014-05-15 18:24  Project\RVMDK\Obj\stm32f10x_it.d

     文件     394396  2014-05-15 18:24  Project\RVMDK\Obj\stm32f10x_it.o

     文件        425  2014-05-15 18:24  Project\RVMDK\Obj\stm32f10x_it.__i

     文件     356252  2014-05-15 16:38  Project\RVMDK\Obj\stm32f10x_rcc.crf

............此处省略30个文件信息

评论

共有 条评论