| 拿到开发板也有段时间了,可是一直最近才开箱玩上那么一玩,第一次用L系列的芯片,不过早在之前就有听那些大神在讨论这款低功耗的芯片,上次参加活动申请到L496的开发板。 不过我们拿到板子一般都是从点灯开始的,下面先来点个灯。
 由于那个啥病毒导致没网所以只能贴几段代码,其他CUBE配置的步骤以及生成工程的步骤就贴不了图,没网也截不了图。手机拍照也不好看,所以就瞎看吧。
 根据电路图以及CUBE配置好IO口,以及时钟,生成代码我们就可以进行操作。
 我使用的是MDK keil集成开发环境
 
 
 使能用到的IO口时钟
 
 IO口的配置复制代码 __HAL_RCC_GPIOC_CLK_ENABLE();
  __HAL_RCC_GPIOB_CLK_ENABLE();
 
 根据那个电路图我们可以知道,输出高电平,就可以点亮LED灯,所以初始化的时候我们设为低电平,方便后面看现象
 
 
 接下来我们在main函数进行这样的操作就可以流水灯实验了复制代码HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|LD3_Pin|LD2_Pin, GPIO_PIN_RESET);
  HAL_GPIO_WritePin(LD1_GPIO_Port, LD1_Pin, GPIO_PIN_RESET);
接下来编译,由于NUCLEO-L496ZG开发板上集成了stlink模块,因此我们不需要其它下载工具,直接就可以烧录程序,实现结果如下图所示:复制代码int main(void)
{
  /* USER CODE BEGIN 1 */
  /* USER CODE END 1 */
  /* MCU Configuration----------------------------------------------------------*/
  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();
  /* Configure the system clock */
  SystemClock_Config();
  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  /* USER CODE BEGIN 2 */
  /* USER CODE END 2 */
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
  /* USER CODE END WHILE */
  /* USER CODE BEGIN 3 */
                HAL_GPIO_TogglePin(GPIOC, LD1_Pin);           //此函数是控制电平翻转的
                HAL_Delay(500);
                HAL_GPIO_TogglePin(GPIOB, LD2_Pin);
                HAL_Delay(500);
                HAL_GPIO_TogglePin(GPIOB, LD3_Pin);
                HAL_Delay(500);
                
  }
  /* USER CODE END 3 */
}
   结果是LD1,LD2,LD3逐个点亮,再逐个熄灭,无限循环,实验测试完毕。
 
 
 
 |