#include "stdio.h"
#include "NuMicro.h"
#define PLL_CLOCK 192000000
//#define POSItiON6_EN PF9 //仓位电机EN
#define POSITION6_EN PE2 //用LED引脚
#define POSITION6_DIR PF10 //方向
#define POSITION6_INIT PB7 //仓位电机初始位
#define POSITION6_RLIM PF4 //仓位电机右检管
#define POSITION6_LLIM PF5 //仓位电机左检管
#define POSITION7_EN PH6 //仓位电机EN
#define POSITION7_DIR PH7 //方向
#define POSITION7_INIT PB14 //仓位电机初始位
#define POSITION7_RLIM PH5 //仓位电机右检管
#define POSITION7_LLIM PH4 //仓位电机左检管
void SYS_Init(void)
{
/* Set core clock as PLL_CLOCK from PLL */
CLK_SetCoreClock(PLL_CLOCK);
/* Set PCLK0/PCLK1 to HCLK/2 */
CLK->PCLKDIV = (CLK_PCLKDIV_APB0DIV_DIV2 | CLK_PCLKDIV_APB1DIV_DIV2);
}
int32_t main(void)
{
/* Unlock protected registers */
SYS_UnlockReg();
/* Init System, peripheral clock and multi-function I/O */
SYS_Init();
/* Lock protected registers */
SYS_LockReg();
GPIO_SetMode(PE, BIT2, GPIO_MODE_OUTPUT);
GPIO_SetMode(PF, BIT4, GPIO_MODE_INPUT);
GPIO_SetMode(PF, BIT5, GPIO_MODE_INPUT);
GPIO_SetMode(PH, BIT4, GPIO_MODE_INPUT);
GPIO_SetMode(PH, BIT5, GPIO_MODE_INPUT);
while(1)
{
if(POSITION6_RLIM)
POSITION6_EN = 1;
else
POSITION6_EN = 0;
}
}
共2条
1/1 1 跳转至页
m483gpio输入输出引脚如何初始化?
关键词: 初始化 GPIO
2楼
OSITION6_RLIM输入高低电平 POSITION6_EN没有变化 是不是GPIO 初始化不对
要初始化GPIO输入输出引脚,需要进行以下步骤:
1. 包含相关头文件:
#include "stdio.h"
#include "NuMicro.h"
2. 配置系统时钟:
#define PLL_CLOCK 192000000
3. 定义引脚:
#define POSITION6_EN PE2 //用LED引脚
#define POSITION6_DIR PF10
4. 初始化GPIO引脚:
GPIO_SetMode(PE, BIT2, GPIO_MODE_OUTPUT); // 设置PE2为输出模式
GPIO_SetMode(PF, BIT10, GPIO_MODE_OUTPUT); // 设置PF10为输出模式
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 给28BYJ-48三自由度机械臂加一个网页控制台被打赏¥32元 | |
| 用28BYJ-48电机从零搭一台三自由度机械臂被打赏¥33元 | |
| 【英飞凌开发经验】ModusToolbox配置EdgeTalk外设被打赏¥27元 | |
| 基于BQ76952PFBR的BMS保护板热插拔损坏的原因和处理措施被打赏¥32元 | |
| 三分钟快速上手搭建nRF Connect SDK开发环境(VSCode)被打赏¥25元 | |
| 告别手动建模:我让AI用FreeCAD画了个开发板外壳被打赏¥30元 | |
| 【瑞萨RA8D1测评】总结收官——从IMU动作识别到LVGL桌宠被打赏¥33元 | |
| 【瑞萨BLE/WIFI模块测评】MPU6050双链路对比被打赏¥30元 | |
| 【瑞萨BLE/WIFI模块测评】DA14531被打赏¥28元 | |
| 【瑞萨BLE/WI-FI模块测评】DA16200被打赏¥28元 | |
我要赚赏金
