昨天拿到先楫HPM5301EVKLITE开发板,今天花了一天时间搭建开发环境和下载。提供的文档太多太杂,摸索了一个上午,也没有得到任何收获。直到下午4点的时候,终于调通了整个开发环境以及实现程序下载。说明如下:
1、在RTT中已经提供了这个开发板的SDK库,所以开发的话,建议使用RTT来开发。需要特别说明的是,在使用1.6的库搭建工程的时候,提供的例程在编译时出现在错误,于是转而使用1.5的,这个版本的例程,编译没问题。2、关于下载
按照文档说明,可以使用JLink,但看到有的网友说要是用JLink11,而我手里的只有V9.所以放弃使用JLInk了,转而考虑使用串口配合先楫的烧录软件完成下载。在走了一些弯路后,看相关的用户手册,才搞明白,要想实现串口连接、烧录,是需要特殊步骤的。在未连接电源的时候,按着开发板上的用户按钮(靠近JLink接口的那个按钮),然后接入电源(我用的是USB电源),然后松开按钮。此时使用HPM Programmer程序就可以正常连接上开发板了。
在使用串口下载的时候,要选择开发板提供的RX0,TX0连接。
为了证明整个过程是正常的,我专门修改了RTT提供的例程,把LED的周期调整为2秒,把编译、链接后的BIN文件下载到开发板上,然后按复位键,可以看到红色的LED已经按照2秒的周期闪烁了,说明OK。至此,整个开发、下载烧录已经打通,后面继续深入学习!
RTT下的测试例程:
- #include <rtthread.h>
- #include <rtdevice.h>
- #include "rtt_board.h"
- void thread_entry(void *arg);
- int main(void)
- {
- app_init_led_pins();
- static uint32_t led_thread_arg = 0;
- rt_thread_t led_thread = rt_thread_create("led_th", thread_entry, &led_thread_arg, 1024, 1, 10);
- rt_thread_startup(led_thread);
- return 0;
- }
- void thread_entry(void *arg)
- {
- while(1){
- app_led_write(0, APP_LED_ON);
- rt_thread_mdelay(2000);
- app_led_write(0, APP_LED_OFF);
- rt_thread_mdelay(2000);
- app_led_write(1, APP_LED_ON);
- rt_thread_mdelay(2000);
- app_led_write(1, APP_LED_OFF);
- rt_thread_mdelay(2000);
- app_led_write(2, APP_LED_ON);
- rt_thread_mdelay(2000);
- app_led_write(2, APP_LED_OFF);
- rt_thread_mdelay(2000);
- }
- }