LP-MSPM0L1306开发板试用体验---GPIO测试篇

[复制链接]
1318|1
 楼主| jinglixixi 发表于 2023-10-10 19:21 | 显示全部楼层 |阅读模式
本帖最后由 jinglixixi 于 2023-10-10 19:22 编辑

在MSPM0L1306开发板上配有一个RGB_LED,其电路如图1所示。
该电路的特点就是它不独占引脚资源,大大地提高了使用的灵活性,例如可将连接RGB_LED的短接子打开,从而控制外挂的设备,如图2和图3所示就是控制一个外挂的LED模块。
1.jpg
图1  RGB_LED电路

2.jpg
图2 点亮LED模块

3.jpg
图3 熄灭LED模块


此外,在开发板上还配有一个红色的LED,其电路如图4所示。
4.jpg
图4  LED电路


在例程的基础上要控制该LED,可通过配置界面来添加该器件所使用的GPIO口,并配置该GPIO口的输入/输出工作模式等,参见图5所示。
5.jpg
图5 配置GPIO口


随后,通过修改主程序即可达到图6的显示效果,其内容为:
  1. intmain(void)
  2. {
  3.     int i,j;
  4.     SYSCFG_DL_init();
  5.     while (1) {
  6.         delay_cycles(10000000);
  7.         DL_GPIO_togglePins(GPIOA, DL_GPIO_PIN_0);
  8.    }
  9. }
6.jpg
6 控制LED

除了输出模式的测试,还可通过开发板上的按键来进行输入模式的测试,按键的电路如图7所示。
7.jpg
7  按键电路

S2LED1所用引脚的工作模式配置函数为:
  1. SYSCONFIG_WEAK void SYSCFG_DL_GPIO_init(void)
  2. {
  3.     DL_GPIO_initDigitalOutput(GPIO_GRP_0_PIN_0_IOMUX);
  4.     DL_GPIO_initDigitalInput(GPIO_GRP_2_PIN_14_IOMUX);
  5. }

实现S2控制LED1的主程序为:

  1. intmain(void)
  2. {
  3.     int i,j;
  4.     SYSCFG_DL_init();
  5.     DL_GPIO_setPins(GPIOA, DL_GPIO_PIN_26);
  6.     while (1) {
  7.         if(DL_GPIO_readPins(GPIOA, DL_GPIO_PIN_14)==0)
  8.         {
  9.                DL_GPIO_clearPins(GPIOA, DL_GPIO_PIN_0);
  10.         }
  11.         else
  12.        {
  13.                DL_GPIO_setPins(GPIOA, DL_GPIO_PIN_0);
  14.        }
  15.    }
  16. }

经程序的编译与下载,其控制效果如图8所示。
8.jpg
图8  控制效果


这样,就基本解决了GPIO口的使用问题。


xyz549040622 发表于 2023-10-12 21:35 | 显示全部楼层
楼主准备充分,那个外挂LED模块确实直观,比自带的LED直观多了,还可以方便的用万用表测量电平。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

521

主题

2949

帖子

39

粉丝
快速回复 在线客服 返回列表 返回顶部