861|2

406

帖子

3

TA的资源

纯净的硅(高级)

【AT32A403A 车规MCU开发板】 移植rt-thread [复制链接]

学习移植RT-Thread系统到开发板。

 

一、RT-Thread源码下载

官网下载地址:

链接已隐藏,如需查看请登录或者注册

0001.png

 

二、源码移植

 

2.1、复制BSP/AT32目录下资源接近的芯片工程目录

复制at32f403a-start -> at32a403a_board

0002.png

 

2.2、复制芯片库文件

将at32a103a芯片的库文件复制到libraries目录下

0003.png

 

2.3、将项目中的这些文件替换

>替换board.c中的system_clock_config函数

void system_clock_config(void)
{
  /* reset crm */
  crm_reset();

  crm_clock_source_enable(CRM_CLOCK_SOURCE_HEXT, TRUE);

   /* wait till hext is ready */
  while(crm_hext_stable_wait() == ERROR)
  {
  }

  /* config pll clock resource */
  crm_pll_config(CRM_PLL_SOURCE_HEXT_DIV, CRM_PLL_MULT_50, CRM_PLL_OUTPUT_RANGE_GT72MHZ);

  /* config hext division */
  crm_hext_clock_div_set(CRM_HEXT_DIV_2);

  /* enable pll */
  crm_clock_source_enable(CRM_CLOCK_SOURCE_PLL, TRUE);

  /* wait till pll is ready */
  while(crm_flag_get(CRM_PLL_STABLE_FLAG) != SET)
  {
  }

  /* config ahbclk */
  crm_ahb_div_set(CRM_AHB_DIV_1);

  /* config apb2clk, the maximum frequency of APB1/APB2 clock is 100 MHz */
  crm_apb2_div_set(CRM_APB2_DIV_2);

  /* config apb1clk, the maximum frequency of APB1/APB2 clock is 100 MHz  */
  crm_apb1_div_set(CRM_APB1_DIV_2);

  /* enable auto step mode */
  crm_auto_step_mode_enable(TRUE);

  /* select pll as system clock source */
  crm_sysclk_switch(CRM_SCLK_PLL);

  /* wait till pll is used as system clock source */
  while(crm_sysclk_switch_status_get() != CRM_SCLK_PLL)
  {
  }

  /* disable auto step mode */
  crm_auto_step_mode_enable(FALSE);

  /* update system_core_clock global variable */
  system_core_clock_update();
}

 

>替换库

0004.png

 

>头文件替换

将项目中的at32f403.h头文件替换成at32a403.h

 

>修改头文件路径

修改芯片型号和头文件路径

0005.png

 

三、编译及下载程序

 

3.1、编译项目

0006.png

 

3.2、下载程序

0007.png

 

 

四、程序运行

 

4.1、串口输出

0008.png

 

4.2、LED指示灯显示

rt-thread

 

 

此帖出自汽车电子论坛

最新回复

能否提供一些源代码工程文件   详情 回复 发表于 2024-3-1 15:50

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

PL

此帖出自汽车电子论坛

回复

40

帖子

0

TA的资源

一粒金砂(中级)

能否提供一些源代码工程文件

此帖出自汽车电子论坛

回复
您需要登录后才可以回帖 登录 | 注册

猜你喜欢
随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
推荐帖子
运算放大器使用指南(中文)

运算放大器使用指南(原E文译成中文)

转:我为什么离开ARM加入MIPS? 

本文作者系,原ARM技术行销经理,费浙平。 几星期前刚递交辞职信的时候,很多朋友都表示了理解,他们都知道,经过近8年的努力 ...

富士通工控板DIY之AD篇

Easy KIt 板例程里面有1路AD测量的程序,我就不介绍了。在用AD前我们有必要知道一下MB9BF506的AD资源。16路AD通道(AN00------AN ...

HELPER2416学习笔记5——呼吸灯详解

本帖最后由 fjjjnk1234 于 2014-7-29 14:13 编辑 HELPER2416学习笔记5——呼吸灯详解 参与HELPER2416开发板助学计划 BOSS布 ...

关于HELPER2416助学计划心得的说明(9月16日重新统计)

本帖最后由 spacexplorer 于 2014-9-18 14:15 编辑 本次HELPER2416助学计划即将结束,以下是各用户的心得发贴情况,不少 ...

常见积分器应用:信号处理、传感器调节、信号生成、滤波

在电子世界走向数字化之前,基于微分方程求解的控制系统使用模拟计算来解方程。因此,模拟计算机相当普遍,因为几乎所有微分 ...

为什么 Python 没有在移动设备上或浏览器上起飞

本帖最后由 dcexpert 于 2021-6-10 22:16 编辑 翻译自:https://www.zdnet.com/article/python-programming-why-it-hasnt-tak ...

电机应用开发实战指南—基于野火 STM32 全系列开发板

电动机(Motor)是用来把电能转换为机械能的电气设备,俗称马达,其主要作用是产生驱动力矩,作为用电器或小型机械的动力能源。 ...

请教一下一个计量设备有个4位的刻度盘,用光电直读的设备逐位来读取,如何避免读数错

请教一下一个计量设备有个4位的刻度盘,用光电直读的设备逐位(成本限制只能逐位读)来读取,如何通过单片机中程序来避免读数错 ...

【MPS商城小程序上线钜惠】开箱: EVQ8633B-LE-00A和MP1909

本帖最后由 lansebuluo 于 2023-3-13 19:19 编辑 【MPS商城小程序上线钜惠】开箱: EVQ8633B-LE-00A和MP1909 前段时间 ...

关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表