- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SAM3X8E(Arduino due)移植RT-Thread
SAM3X8E RT-THREAD 移植笔记
基于Arduino DUE
SEPTEMBER 25, 2015
目录
一、前言 2
二、rt-thread简介 2
三、一步步了解系统的初始化工作 3
1、main() 3
2、rtthread_startup();4
3、rt_hw_board_init(); 5
4、NVIC_Configuration();6
5、rt_hw_usart_init()6
6、led.c 10
四、系统测试 13
1、led控制线程 13
2、shell的使用 13
五、移植总结 14
一、前言
前一段时间买了一块Arduino DUE 开发板,发现这块板子的库很匮乏,加之它是一块
Cortex -M3 核的单片机,所以就有给它移植操作系统的打算,本人在网上查询了很多实时系
统的资料,有免费的,有开源的,最后综合考虑选择了rt-thread 这款实时系统。
二、rt-thread 简介
RT-Thread (实时线程操作系统)是国内 RT-Thread 工作室精心打造的稳定的开源实时
操作系统,“她”是 RTT 核心成员历时 4 年,呕心沥血研发,力图突破国内没有小型稳定
的开源实时操作系统局面的开山之作, 曾获得 “第六届中日韩开源软件竞赛” 技术优胜
奖 (其他两个技术优胜奖获得者为淘宝的 OceanBase 和红旗的 Qomo Linux)它不仅仅是
一款开源意义的硬实时操作系统 (不是软的哦),也是一款产品级别的实时操作系统,目前
已经被国内十多家企业采用,被证明是一款能够稳定持续运行的操作系统。
RT-Thread 实时操作系统核心是一个高效的硬实时核心,它具备非常优异的实时性、稳
定性、可剪裁性,当进行最小配置时,内核体积可以到 3k ROM 占用、1k RAM 占用。目
前 RT-thread 支持的分支和包含的组件如下
分支:
- ARM Cortex-M3: STM32F1, STM32F2, LPC176xx, LPC18xx, LM3S, EFM32, MB9BF
- ARM Cortex-M4: STM32F4, LM4S, LPC4300
- ARM7TDMI: LPC2478, LPC2148, AT91SAM7S, AT91SAM7X, S3C44B0
- ARM720T: SEP4020
- ARM9:AT91SAM9260, S3C2440
- NIOS-II
- XILINX MicroBlaze
- AVR32
- Blackfin 533
- MIPS: PIC32, Jz47xx
- PPC450: taihu
- x86
- windows simulator (VC++)
组件
- CMSIS, CMSIS-RTOS
- RT-Thread DFS 文件系统:devfs, ELM FatFs, JFFS2, NFS, romfs, UFFS, YAFFS2
- finsh shell (类似命令行的组件,RTT 的亮点哦)
(针对 )
- libc: armlibc Keil MDK , newlib
- POSIX: pthreads, libdl
- 网络:lwIP 1.4.0
- RT-Thread GUI
- lua
- Device Drivers: IIC, MTD NOR/NAND, RTC, SDIO, serial, SPI Bus/Device, USB
device/host
RT-Thread 采用 GPL-V2 发布 ,并且承诺永久不会针对使用 RT-Thread 收费 ,
用户只需要保留 RT-Thread 的 LOGO 既可以免费使用 ,所以这也是我当初选择它的
一个重要原因。
三、一步步了解系统的初始化工作
1、main()
int main(void)
{
/* disable interrupt first */
rt_hw_interrupt_disable();
/* st
文档评论(0)