HAL库+Nucleo+CubeMX+MDK5- 视频教程连载2
上传一套YOUTUBE 的视频教程STM32 Nucleo401RE - Keil 5 MDK with CubeMX- ,
一贴一集,适合HAL入门
第二集 按键
代码随后贴上
720p,高清视频,
英文对白,
播放卡顿的话请直接上优酷观看
硬件是Nucleo401RE
不过移植到其他平台也很简单
https://v.youku.com/v_show/id_XMzYyMDAzNzIyOA==.htmlhttp://player.youku.com/player.php/sid/XMzYyMDAzNzIyOA==/v.swf
本帖最后由 anywill 于 2018-5-22 14:57 编辑
#include "main.h"
#include "stm32f4xx_hal.h"
/* USER CODE BEGIN Includes */
#include "stdbool.h"
/* USER CODE END Includes */
/* Private variables ---------------------------------------------------------*/
UART_HandleTypeDef huart2;
/* USER CODE BEGIN PV */
/* Private variables ---------------------------------------------------------*/
/* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/
void SystemClock_Config(void);
static void MX_GPIO_Init(void);
static void MX_USART2_UART_Init(void);
/* USER CODE BEGIN PFP */
/* Private function prototypes -----------------------------------------------*/
/* USER CODE END PFP */
/* USER CODE BEGIN 0 */
bool tempVar=true;
/* USER CODE END 0 */
/**
* @briefThe application entry point.
*
* @retval None
*/
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();
/* USER CODE BEGIN Init */
/* USER CODE END Init */
/* Configure the system clock */
SystemClock_Config();
/* USER CODE BEGIN SysInit */
/* USER CODE END SysInit */
/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_USART2_UART_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 */
if (HAL_GPIO_ReadPin (GPIOC,GPIO_PIN_13)&&tempVar)//PC13 default high voltage
{
HAL_Delay(10);//contact stability
if(HAL_GPIO_ReadPin (GPIOC,GPIO_PIN_13))
{
HAL_GPIO_TogglePin (GPIOA,GPIO_PIN_5);
tempVar=false;
}
}
else if(HAL_GPIO_ReadPin (GPIOC,GPIO_PIN_13)==GPIO_PIN_RESET&&tempVar==false )//
{
HAL_Delay(10);//contact stability
if(HAL_GPIO_ReadPin (GPIOC,GPIO_PIN_13)==GPIO_PIN_RESET)
{
tempVar=true;
}
}
/* USER CODE END 3 */
}
}
页:
[1]