【评测】资料下载和上电跑例程
本帖最后由 Gavin3389 于 2021-9-18 09:49 编辑有幸拿到HC的开发板,对于学习和了解一款开发板和芯片来讲,我觉得最值得信赖的应该还是官网。对于有开发经验的人来说,或许下载个例程,移植个程序家常便饭,可对很多学生朋友或者刚入门的开发者来说,
找资料,不一定是件容易的事。
借此机会,多接触下HC的片子,毕竟现在国产替代和发展之声越来越强,
自己也算是一名初学者吧,和大家一起从查找资料学起,进行评测。
一、看看如何找到自己需要的资料当然是上官网了,官网做的还不错,http://www.hdsc.com.cn/Category83-1487
设计文件:我不知道是用什么画的,反正不是AD好在原理图转换成了PDF,自己慢慢对应,不成问题。开发工具用户手册:对开发板做了简单的介绍,引导入门使用。驱动库及样例:Template是空白的工程,为了用户自己开发,可以节省时间。(想的是真周到)ddl是官方的例程,很全面ddl_help是帮助文档,配合例程,做参考用
这里注意下ddl例程,我下载的是hc32f460_ddl_Rev2.1.0例程在example文件夹下
里面又是两个文件夹
看到这,直接看V2啊,版本高,是不是坑比较少?不要看你板子上有个版本标识,我的是V1.3所以,开始直接选择V2的我,尴尬了好久,还想,这引脚也不对啊?是不是难道要自己引线验证?后来发现,原来是自己搞错了。这里需要自行对应开发板。二、随便跑个例程看看找个简单的gpio前面的宏定义/* LED0 Port/Pin definition */
#defineLED0_PORT (PortE)
#defineLED0_PIN (Pin06)
/* LED1 Port/Pin definition */
#defineLED1_PORT (PortA)
#defineLED1_PIN (Pin07)
/* LED2 Port/Pin definition */
#defineLED2_PORT (PortB)
#defineLED2_PIN (Pin05)
/* LED3 Port/Pin definition */
#defineLED3_PORT (PortB)
#defineLED3_PIN (Pin09)
/* LED0~3 toggle definition */
#defineLED0_TOGGLE() (PORT_Toggle(LED0_PORT, LED0_PIN))
#defineLED1_TOGGLE() (PORT_Toggle(LED1_PORT, LED1_PIN))
#defineLED2_TOGGLE() (PORT_Toggle(LED2_PORT, LED2_PIN))
#defineLED3_TOGGLE() (PORT_Toggle(LED3_PORT, LED3_PIN))
#defineDLY_MS (300ul)主函数int32_t main(void)
{
stc_port_init_t stcPortInit;
/* configuration structure initialization */
MEM_ZERO_STRUCT(stcPortInit);
stcPortInit.enPinMode = Pin_Mode_Out;
stcPortInit.enExInt = Enable;
stcPortInit.enPullUp = Enable;
/* LED0 Port/Pin initialization */
PORT_Init(LED0_PORT, LED0_PIN, &stcPortInit);
/* LED1 Port/Pin initialization */
PORT_Init(LED1_PORT, LED1_PIN, &stcPortInit);
/* LED2 Port/Pin initialization */
PORT_Init(LED2_PORT, LED2_PIN, &stcPortInit);
/* LED3 Port/Pin initialization */
PORT_Init(LED3_PORT, LED3_PIN, &stcPortInit);
while(1)
{
LED0_TOGGLE();
Ddl_Delay1ms(DLY_MS);
LED1_TOGGLE();
Ddl_Delay1ms(DLY_MS);
LED2_TOGGLE();
Ddl_Delay1ms(DLY_MS);
LED3_TOGGLE();
Ddl_Delay1ms(DLY_MS);
/* de-init if necessary */
//PORT_DeInit();
};
}
程序运行的效果是
四个不同颜色的led的流水灯,非常漂亮。
有了官网资料,有了开发板,可以慢慢的跑例程,熟悉华大环境和风格了。单纯跑例程的话,也无所谓简单和复杂,关键是通过例程熟悉板子和配置。
三、吐槽一下,并且记录下踩的坑(亮点)官网的资料很全,比较好找,分类也清晰,能看出来,也在定期维护和更新。只是跑例程的话,很容易。但是说实话,官网的资料,针对的是有一定基础的用户,比如已经参加工作,有开发经验的人。是不是可以考虑,丰富下文件内容,把用户扩大,广大学生和初学者也包含进来,比如,1、在用户手册中,用实物照片替代丝印图进行资源说明2、开发环境的搭建,配置做些详细的讲解。3、对例程的设计思路,原理做些补充说明,让初学这快速的运用起来。其实,很多内容已经做的很好了,再做细致一些,会有一大批站在门槛边缘的人进来,之所以ST用的人多,有很大的原因是教程详细丰富,跟手把手教学差不多了。
再说下,踩的坑(亮点)就是dll_config文件,这个应该算是程序配置文件吧,既是坑,又是亮点。这个文件里,把每个外设,给设计了一个“开关”,初衷应该是打算裁剪用吧,类似于“文件系统”里的配置文件如果,你只是单纯的跑例程,很可能忽略这里,一看程序跑起来,乐呵呵半天。但是吧,要写一个自己的程序,就很可能入坑了,也许会遇到“函数未定义的”错误,折腾一圈,路径也包含了,头文件也引用了,为啥不行?原因也许就在这里,用每一个库函数的时候,都要把开关打开。例如GPIO需要让这个条件编译,成立。
小结下个人感受:总体来说,资料比较全,也比较容易找到有自己的风格。用户手册和配套的教程比较少,需要用户自己去理解。这个淘汰了一些虚假的喊学习口号的人,也挡住了一些真正想学,如不了门的人。最后感谢华大和21ic提供这次评测机会,后面会逐步跑一跑自己移植的程序,非常期待国产芯片的崛起和腾飞。
华大的开发板还可以申请吗 豌豆爹 发表于 2021-9-18 16:17
华大的开发板还可以申请吗
这个我还不清楚当前能不能,
关注下论坛活动,或者问问21官方 我也是被这个开关挡了半天~~哈哈哈~~~ 楼主跑跑sdio的例程看,我没有跑通 hello麻烦问下,开发板还有别的方式获得吗,可以买到最好? jheng 发表于 2021-9-23 19:14
楼主跑跑sdio的例程看,我没有跑通
https://bbs.21ic.com/icview-3166014-1-1.html
临时跑了一个,不知道和你说的是不是一个,参考下 太幸运了吧,居然能拿到这个板
羡慕
页:
[1]