本帖最后由 lising 于 2018-1-19 13:33 编辑
利用艾克姆IK-ZET6开发板通过STM32CubeMX开发实验。本次测试板载的四个用户按键及四个LED,开机时LED为熄灭状态,当按下用户按键S1时、D1点亮,松开时熄灭,S2、S3、S4与S1操控相同,控制对应的D2、D3、D4的亮、灭。
一、实验资源
1、艾克姆IK-ZET6开发板;
2、keil 5.24
3、STM32CubeMX 4.23
4、J-LINK9
二、实验内容
1、按开发原理图在Cube中配置相应管脚,四个用户按键均配置为上拉输入;开发板上主控芯片为STM32F103ZET6,并接有8MHz外部晶振,本次实验采用外部时钟HSE;
2、生成并编译工程
主要代码:
- if(HAL_GPIO_ReadPin(S1_GPIO_Port, S1_Pin))
- HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET);
- else
- HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
-
- if(HAL_GPIO_ReadPin(S2_GPIO_Port, S2_Pin))
- HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET);
- else
- HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET);
-
- if(HAL_GPIO_ReadPin(S3_GPIO_Port, S3_Pin))
- HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_SET);
- else
- HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET);
-
- if(HAL_GPIO_ReadPin(S4_GPIO_Port, S4_Pin))
- HAL_GPIO_WritePin(LED4_GPIO_Port, LED4_Pin, GPIO_PIN_SET);
- else
- HAL_GPIO_WritePin(LED4_GPIO_Port, LED4_Pin, GPIO_PIN_RESET);
复制代码
三、实验结果
实验结果如前面的描述。
|