[技术问答] HC32L072爬坑记录

[复制链接]
 楼主| LargeHaige 发表于 2022-5-4 22:17 | 显示全部楼层 |阅读模式
环境:MDK 5.25
官方开发包:hc32l07x_ddl_Rev1.1.10224

  • 坑一:编译警告

    ADC的官方例程,点击“option for target” AC6 会自动变成AC5,之后 ADC
  1.     AdcMskTrigPC15       =  1u<<31,        /*!<选择PC15中断源,自动触发ADC采样*/
   这一行就会报警告,手动改成AC6编译后警告消失,只要点开“option for target”  就会自动变为AC5,之后警告继续;
    这个坑,我可能和我的MDK环境有关系(但是我用STM32都是正常的。。。)有待确认!!!!
  • 坑二:ADC+SYSTICK
现象:单独运行 “adc_scan_jqr_sw” 与 “sysctrl_systick” 例程,运行正常;
两个例程组合在一起,程序不运行,注释掉“DDL_ZERO_STRUCT(stcAdcCfg);”  才运行起来!!!!
至于功能受不受影响想,今天不测了,感觉入坑了,5555555555555555
  1. ///< ADC模块初始化
  2. void App_AdcInit(void)
  3. {
  4.     stc_adc_cfg_t              stcAdcCfg;

  5. //    DDL_ZERO_STRUCT(stcAdcCfg);
  6.     Sysctrl_SetPeripheralGate(SysctrlPeripheralAdcBgr, TRUE);
  7.     Bgr_BgrEnable();        ///< 开启BGR
  8.     ///< ADC 初始化配置
  9.     stcAdcCfg.enAdcMode         = AdcScanMode;              ///<采样模式-扫描
  10.     stcAdcCfg.enAdcClkDiv       = AdcMskClkDiv1;            ///<采样分频-1
  11.     stcAdcCfg.enAdcSampCycleSel = AdcMskSampCycle8Clk;      ///<采样周期数-8
  12.     stcAdcCfg.enAdcRefVolSel    = AdcMskRefVolSelAVDD;      ///<参考电压选择-VCC
  13.     stcAdcCfg.enAdcOpBuf        = AdcMskBufDisable;         ///<OP BUF配置-关
  14.     stcAdcCfg.enInRef           = AdcMskInRefDisable;       ///<内部参考电压使能-关
  15.     stcAdcCfg.enAdcAlign        = AdcAlignRight;               ///<转换结果对齐方式-右
  16.     Adc_Init(&stcAdcCfg);

  17. }
以上测试都是代码运行测试,未作性能验证。

希望能看到华大的人员来解释一下。





评论

还有碰到其他坑的问题?  发表于 2023-12-9 22:58
ysf 发表于 2022-5-5 00:56 | 显示全部楼层
你说的这两点,在我电脑上好像并不存在问题
caigang13 发表于 2022-5-5 07:39 来自手机 | 显示全部楼层
哈哈,感谢分享避坑经验。
 楼主| LargeHaige 发表于 2022-5-5 09:06 来自手机 | 显示全部楼层
现在的感觉就是,后悔了选这个型号,但是板子已经打样了……
wubangmi 发表于 2022-5-5 09:08 | 显示全部楼层
第一个警告问题可以忽略,移位超出了。
第二个问题是华大的库函数把systick时钟用来做死等的延时函数了,你需要修ddl.c里的delay函数.
以上两个问题都不是坑,是你没深入熟悉华大的库函数问题。不是所有的自己没调通的就说是坑。
 楼主| LargeHaige 发表于 2022-5-5 17:26 来自手机 | 显示全部楼层
wubangmi 发表于 2022-5-5 09:08
第一个警告问题可以忽略,移位超出了。
第二个问题是华大的库函数把systick时钟用来做死等的延时函数了,你 ...

好吧,那我搞个定时器做系统时钟吧。
谢谢你的回复,继续调。
两只袜子 发表于 2022-5-6 16:27 来自手机 | 显示全部楼层
哈哈,楼主分享的爬坑经验非常好
 楼主| LargeHaige 发表于 2022-5-6 21:49 | 显示全部楼层
每次进入调试界面就会卡死;
测试例程:gpio_output
改动地方:
- LED 引脚改为PC13
- device 选择hc32L072KATA
- 加入烧写算法
 楼主| LargeHaige 发表于 2022-5-6 21:51 | 显示全部楼层
69320627527b4dae83.png
断掉调试结束后,推出调试模式提示这个;
之后就需要 在进程里 强制结束MDK ;
 楼主| LargeHaige 发表于 2022-5-6 22:02 | 显示全部楼层
本帖最后由 LargeHaige 于 2022-5-6 22:04 编辑

解决方法:参照这个帖子“https://www.amobbs.com/thread-5692175-1-1.html”
去掉中文路径;
代码编码方式改为: ansi 就好了。板子已经打样了,自己约的**,含泪也要打完;
gouguoccc 发表于 2022-5-7 07:56 来自手机 | 显示全部楼层
哈哈哈,欢迎分享避坑经验。
sanxingnote7 发表于 2022-5-28 16:54 | 显示全部楼层
以后需要注意一下了。  
houjiakai 发表于 2022-5-29 08:45 | 显示全部楼层
是个芯片都会有坑  
tpgf 发表于 2022-6-2 14:43 | 显示全部楼层
有没有可能是软件版本的问题啊
drer 发表于 2022-6-2 14:52 | 显示全部楼层
看来是得避免中文字符的出现啊
qcliu 发表于 2022-6-2 15:21 | 显示全部楼层
感觉只要能爬出来的都很厉害
coshi 发表于 2022-6-2 15:33 | 显示全部楼层
会在哪个界面卡死呢
kxsi 发表于 2022-6-2 15:43 | 显示全部楼层
感觉不太好爬啊
wiba 发表于 2022-6-2 15:52 | 显示全部楼层
为什么原来那个引脚不能用呢
biechedan 发表于 2022-6-7 08:24 | 显示全部楼层
这个联合使用比较复杂了。  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

6

帖子

0

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