打印
[国产单片机]

【东软载波ESF0654 PDS开发板活动】之二 + 点灯啦

[复制链接]
2809|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Harvard|  楼主 | 2019-12-29 23:33 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Harvard 于 2019-12-30 17:00 编辑

    言归正传,话接上回, 认识了ES-LINK II 和PDS开发板,现在轮到我们来进行水到渠成的一部, 先给板子通个电, 写他个小程序(一个代码很少的简单的单片机代码,并非手机里的小程序的概念.),然后点亮个LED吧. 俗称点灯.

    首先,打开我们的keil5, 最新的是mdk 5.29版本 ,详细的下载地址本论坛有. 看看,有没有支持到我们所需要的ES32F0654的芯片.


打开21ic下载_ES32_SDK_V1.03\ES32_SDK_V1.03\Projects\ES32F065x\Discovery\00_example\MDK-ARM


文件夹下的keil5工程, 然后点开魔术棒

                                               
    看看device里面是否有正确的型号显示, 如果没有 请按照东软 的pack包:
Eastsoft.ES32_DFP.1.0.2.pack
   直接点击,就可以运行,和所有的mdk 所支持的arm新器件一样. 按照对应的pack包.
                                                                         
    此处,有必要重点提一下.pack包里面的说明文档:
       AN2017_简介_ES32SDK.pdf
    其文,重点阐述了,整个软件库的结构,说明, 不得不说,这就是中国制造的魅力, 纯中文撰写, 没有了各种英译文的不爽,直接切中要害, 言简意赅.
MD 和ALD 都是比较新颖的字眼,把整个软件库清晰分层,利于我们使用理解; 我们先来体验下第一个点灯程序 ,非常简单.采用md底层库;

void config_gpio(void)
{
     md_gpio_set_pin_function(LED2_GPIO_PORT, LED2_GPIO_PIN, GPIO_FUNC_1);
     md_gpio_set_pin_push_pull(LED2_GPIO_PORT, LED2_GPIO_PIN);
     md_gpio_set_pin_mode_output(LED2_GPIO_PORT, LED2_GPIO_PIN);
}

/**
  * [url=home.php?mod=space&uid=247401]@brief[/url]  Test main function
  * @retval Status.
  */
int main()
{
     md_init_1ms_tick();
     config_gpio();
       
     while (1)




可以看出,程序非常简洁,  main主程序里面, 先初始化一个1ms的节拍,然后 配置LED所在的IO,此时,我选择的是PC08;
在main.h中进行如下配置:


     #define LED2_GPIO_PORT GPIOC
     #define LED2_GPIO_PIN  MD_GPIO_PIN_8       

然后重新编译,默认是选择了jlink方式,我们重新选择下,

                                                  

点击LOAD按钮,下载程序,如果程序没有正确运行,请勾选reset and run,如果下载不成功,再确认下下载算法是否是ES32f065X
                                                  
核心的点灯程序其实非常简单

                                                   
其本质就是一个SET_BIT的置位的一个宏:

#define SET_BIT(reg, bit)        ((reg) |= (bit))

如此,可以体会到东软的库,很别致,很容易上手,可配置性 可选择性都很强. 希望有机会量产使用.











使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

74

主题

1726

帖子

21

粉丝