【转】hurry_liu 大神STM32移植contiki入门之一:系统介绍和开发环境搭建
前言:
由于项目的原因,需要在LPC1788(STM32 cortex-M3)上面跑contiki。
之前没有涉及到contiki,不知其为何物。不过这个不是难事,做IT的,每每遇到新事物,都不会处理,习惯了从无到有的过程就好了。
开始老师说这个系统很好移植,于是想在网上找现成的资料。无奈,关于contiki的资料少的可怜,contiki移植就更少了,有几篇也是互相copy而来的,连图片都没有改,呵呵。于是不得不自己动手,从头开始搞移植了。
操作系统:windowsXP
开发环境:MDK
目标板:LPC1788(cortex-M3 STM32)
移植系统:contiki
开发工具:J-Linker
在这里,先给出几个我认为比较好的链接,供大家学习研究contiki时使用。
1) Contiki大神Jelline的博客http://blog.chinaunix.net/uid-9112803-id-2978041.html,相信大家都看过他写的关于contiki的学习资料,没说的,大神的文章,当然要借鉴学习的。
2) Contiki大神徐凯的博客http://blog.csdn.net/xukai871105/article/category/1129569,这篇也是比较好的,我有些东西也是参考他的。
一 contiki简介:
“Contiki 是一个小型的,开源的,极易移植的多任务操作系统。它专门设计以适用于一系列的内存优先的网络系统,包括从8位电脑到微型控制器的嵌入系统。它的名字来自于托尔·海尔达尔的康提基号。Contiki只需几kilobyte的代码和几百字节的内存就能提供多任务环境和内建TCP/IP支持。”-------维基百科。
从维基百科这段介绍中可以得知contiki操作系统的三大特点——小型、开源、极易移植。和绝大多数开源的嵌入式操作系统不同,contiki非常容易移植,使用事件驱动和protothread机制,运行时占用的内存很小。究竟什么是时间驱动和protothread机制,本篇先不讲,在后面的文章中,我会给与讲解。
二 Contiki的源代码:
在线浏览http://contiki.git.sourceforge.net/git/gitweb.cgi?p=contiki/contiki;a=tree
GIT下载:git clone git://contiki.git.sourceforge.net/gitroot/contiki/contiki
最新的contiki系统已经更新到2.6版,我移植的就是2.6版本的contiki(跟上国际的脚步,呵呵)
三 开发环境的搭建:
1) Instant Contiki
InstantContiki是官方配好的开发环境,基于Ubuntu,在http://sourceforge.net/projects/contiki/下载InstantContiki,装在虚拟机VMware上。网上没什么资料,我自己也没有试过,虽然也有虚拟机。
2) IAR+J-Linker
网上的资料,大部分是基于IAR环境来开发的,移植起来相对简单。目标板也是ARM Cortex M3,如果你的也是这样的开发板,不妨试试用这个开发环境。不过在IAR做移植,要对Makefile进行大量修改。我自己安装了IAR,但是用了一周后,觉得很不舒服,而且修改什么的很不方便,所以放弃了,改用下面的方法。
3) MDK + J-Linker
这个就是我自己的方法了,用现成的MDK(keil for ARM) 环境+J-Linker移植contiki到我的LPC1788开发板上。由于之前网上都没有这样的资料,因此移植的难度可想而知。不过通过自己的努力,还是达到了预期的效果。
我这里有contiki大神Jelline的移植笔记的PDF板,大家可以百度Contiki学习笔记.pdf,如果找不到,可以发邮件告诉我(我的邮箱:hurryliu28@gmail.com),我会在邮箱中,把文档发给需要的你。
--------------------- 下面是原作者的相关信息
作者:hurry_liu
来源:CSDN
原文:https://blog.csdn.net/hurry_liu/article/details/11908127
版权声明:本文为博主原创文章,转载请附上博文链接!
【转】hurry_liu 大神STM32移植contiki入门之一:系统介绍和开发环境搭建的更多相关文章
- 大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建
大数据应用之Windows平台Hbase客户端Eclipse开发环境搭建 大数据应用之Windows平台Hbase客户端Eclipse环境搭建-Java版 作者:张子良 版权所有,转载请注明出处 引子 ...
- 【JAVA零基础入门系列】Day1 开发环境搭建
[JAVA零基础入门系列](已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day ...
- Unix/Linux环境C编程入门教程(7) OPENBSDCCPP开发环境搭建
1. 年发起了OpenBSD 专案,希望创造一个注重安全的操作系统. 2.创建一个虚拟机. 3.选择默认的workstation10.0 4.我们选择稍后安装操作系统. 5.我们选择FreeBSD64 ...
- Unix/Linux环境C编程入门教程(18) kali-linuxCCPP开发环境搭建
1. Kali linux是BT5的晋级版本,用于信息安全.基于Debian7内核.新建虚拟机. 2. 选择默认虚拟机 3. 选择稍后安装操作系统 4.选择Linux Debian7 64位,因为Ka ...
- Unix/Linux环境C编程入门教程(15) BT5开发环境搭建
1. Backtrack 是处于世界领先地位的渗透测试和信息安全审计发行版本.有着上百种预先安装好的工具软件,并确定能完美运行,Backtrack5 提供了一个强大的渗透测试平台--从Web hack ...
- Eclipse + CDT + YAGARTO + J-Link,STM32开源开发环境搭建与调试
Eclipse+CDT+YAGARTO+J-Li:开源开发环境搭建与调试:作者:Chongqing:邮箱:ycq.no1@163.com:文档版本:V1.0:发布日期:2014-08-04:前言:此文 ...
- 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子
本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...
- Cocos2dx-3.0版本 从开发环境搭建(Win32)到项目移植Android平台过程详解
作为重量级的跨平台开发的游戏引擎,Cocos2d-x在现今的手游开发领域占有重要地位.那么问题来了,作为Cocos2dx的学习者,它的可移植特性我们就需要掌握,要不然总觉得少一门技能.然而这个时候各种 ...
- 【转】Xamarin.Android 入门之:Xamarin+vs2015 环境搭建
Xamarin.Android 入门之:Xamarin+vs2015 环境搭建 一.前言 此篇博客主要写了如何使用搭建xamarin开发的环境,防止我自己万一哪天电脑重装系统了,可以直接看这篇博客 ...
随机推荐
- 数据库系统概论学习2-《关系数据库与 E/R 模型》
-----------------------------一直更新学习内容------------------------------------ 建立一个关系数据库需要几步? 2.关系数据库与 E/ ...
- awk之腾迅面试题1
1.题目如下: 3 5 6 72 3 1 04 5 6 92 3 4 42 2 1 04 5 0 9假如把2列和3列的值作为新的第5列,第5列的平均值为avg5,求第5列中大于avg5的行数. aw ...
- JSP--内置对象&动作标签介绍
1.JSP中常用的9大内置对象? 内置对象:在JSP页面中能直接使用的对象就是JSP内置对象,事实上,JSP底层就是一个java类,可以在JSP中直接使用的,必然存在JSP翻译后的java类 下面简单 ...
- linux下常用FTP命令 1. 连接ftp服务器[转]
1. 连接ftp服务器 格式:ftp [hostname| ip-address]a)在linux命令行下输入: ftp 192.168.1.1 b)服务器询问你用户名和密码,分别输入用户名和相应密码 ...
- javascript(jquery)_匿名函数
一.什么是匿名函数 匿名函数:就是没有函数名的函数 二.为什么使用匿名函数 1.最大的用处就是创建闭包 三.匿名函数定义(怎么使用匿名函数) 1.这种方法使用了Function构造函数,把参数列表和函 ...
- 关于UML方法学图中类之间的关系:依赖,泛化,关联
类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. 2) 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什 ...
- 安装rackspace private cloud --3 Deployment host
on deploy host: 在deploy host上安装 Ubuntu Server 14.04 (Trusty Tahr) LTS 64-bit # apt-get install aptit ...
- Tensorflow搭建神经网络及使用Tensorboard进行可视化
创建神经网络模型 1.构建神经网络结构,并进行模型训练 import tensorflow as tfimport numpy as npimport matplotlib.pyplot as plt ...
- 代码题(45)— 下一个排列、第k个排列
1.31. 下一个排列 实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列. 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列). 必须原地修改,只 ...
- 如何做好App的测试工作
记得刚开始接触app测试时,可谓是一脸懵状,拿到一个功能不知道该测些什么,会因为测试范围确认不足.测试点考虑不全等导致线上问题,吃一堑才会长一智,栽过几次坑后就学会了如何避免.现总结App测试点如下, ...