本帖最后由 jinglixixi 于 2018-11-20 18:13 编辑
LPC11U68开发板主要适于MCU内部资源的测评,要增强其应用性还是要与相应的功能板相配合,用机智云功能板与之配合当是一个不错的选择。 机智云功能板提供了RGB_LED、小电机、红外感应器、小按键、温湿度传感器、WIFI模块及OLED接口等。 这里先介绍一下简单些的应用,以按键控制小电机的正反转。 按键与小电机的原理图如下:
转换为与MCU的连接关系为: KEY1 --- P1.27 KEY2 --- P1.25 MA --- P1.19 MB --- P1.26
为便于电机的控制,定义输出高低电平的语句如下: #define MA_L Chip_GPIO_SetPinState(LPC_GPIO, 1, 19, 0); #define MA_H Chip_GPIO_SetPinState(LPC_GPIO, 1, 19, 1);
#define MB_L Chip_GPIO_SetPinState(LPC_GPIO, 1, 26, 0); #define MB_H Chip_GPIO_SetPinState(LPC_GPIO, 1, 26, 1);
配置相应引脚为输入/输出端的语句为: Chip_GPIO_SetPinDIROutput(LPC_GPIO, 1, 19); Chip_GPIO_SetPinDIROutput(LPC_GPIO, 1, 26); Chip_GPIO_SetPinDIRInput(LPC_GPIO, 1, 25); Chip_GPIO_SetPinDIRInput(LPC_GPIO, 1, 27); // 两端输出低电平以防电机转动 MA_L; MB_L;
实现电机控制的程序为: while (1) { if ((Chip_GPIO_GetPinState(LPC_GPIO, 1,27)) == 0) { MA_H; MB_L; } else if ((Chip_GPIO_GetPinState(LPC_GPIO, 1, 25)) == 0) { MA_L; MB_H; } else { MA_L; MB_L; } delay_ms(1000); }
后面再研究如何通过P9813来控制RGB_LED实现亮度调节功能。
|