[原创] 【翌创ET6001测评】GPIO. 从IO交互开始

majorshu   2024-10-26 13:58 楼主

1、测试目的

  • 初次使用,验证硬件环境,软件环境可行性
  • 测试GPIO翻转性能,最大IO输出频率,推断在软件IO控制中的性能,为IO模拟数字接口指标提供数据

2、测试过程

       2.1在其中一台电脑上,把开GPIO Demo测例,位于..\ ET6001\ET6001 SDK示例代码\Examples\GPIO\GPIO_TogglePin\Project。查看代码,用于在主循环中进P2.4进行阻塞式Delay翻转,里面用了读改写的操作

DRV_StatusTypeDef GPIO_TogglePin(GPIO0_Type *GPIOx, uint16_t pin_mask)

{

    uint32_t val = 0;

 

    assert_param(GPIOx != NULL);

    assert_param(IS_GPIO_ALL_PERIPH(GPIOx));

 

    val = READ_REG(GPIOx->DATAOUT);

 

    if (val & pin_mask)  //根据当前寄器(上一次写入的值),决定本次写入的电平状态

    {

        CLEAR_BIT(GPIOx->DATAOUT, pin_mask);

    }

    else

    {

        SET_BIT(GPIOx->DATAOUT, pin_mask);

    }

 

    return DRV_OK;

}

       编译,下载,执行。。。。。顺利,但没有效果

       于是Debug调试,不能控制断点,查看SDK用户手册,严格按软件版本进行操作,重新下载MDK 5.3以上的版本测试,效果一样(无效果)

       重新写最简函数

Int32_t gCnt = 0;

Void main(void)

{

       While(1)

{

gCnt++;
}

}

       在线Debug下载,仍为异常。在wworld网上看到一个同行,也类似的现象。原帧如下

https://bbs.eeworld.com.cn/thread-1296575-1-1.html

       怀疑是电脑的原因,换台电脑,重装环境

       2.2 新电脑重新梳理

image-20241026135607-3.png  

       安装pack包 ETMCU.ET600x_DFP.1.0.6.pack

       打开GPIO demo,编译,下载,运行,OK

       Debug 查看watch window变量,仍然无效。

怀疑LINK调试器的原因,手上有1个通用版本DAP LINK,可以识别芯片,但不能下载程序。

改写程序,验证变量是事有效果。让闪灯有点节奏,如下

image-20241026135607-4.png  

下载,执行,闪灯程序,快到慢,有一个变化的过程 ,说明gCnt生效了。

但Debug仍无法观测gCnt变量的值

3、总结

  • 如果发现编译,下载OK,运行没有反应,可能是电脑原因,或是需要MDK 6.36版本,不止是《ET6001-SDK开发入门指南_V1.0.2.pdf》中讲的5.3x
  • Debug时,MCU不受控,且不能查看watch window中的值,仍末解,MDK工程 会加到本帧,希望原厂FAE看到,可以下载看下,是环境配置原因,还是其他原因
  • IO输出性能评估等Debug正常后,在本帧更新参数

 

回复评论 (3)

貌似,不能发表附件。MDK配置信息如下:

  

 

image-20241026140414-1.png  

image-20241026140414-2.png  

image-20241026140414-3.png  

  • 1729922513450.png
点赞  2024-10-26 14:04

Debug仍无法观测gCnt变量的值,这是什么原因

点赞  2024-10-26 14:14

4楼 nmg 

引用: majorshu 发表于 2024-10-26 14:04 貌似,不能发表附件。MDK配置信息如下:           

可以,记得上传后,记得点击一下,才能插入到里面

点赞  2024-11-1 19:12
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复