10 2016 档案

摘要:4、第四部分 (1) 自定义函数,$(1)表示调用oname这个函数的第一个参数,patsubst是make内置函数,即模式字符串替换函数。 oname函数实现的功能是: 将第一个参数中符合%.s模式的替换成%.o 再继续将上述结果中符合%.c模式的替换成%.o 也就是把所有 .s 和 .c文件名替 阅读全文
posted @ 2016-10-30 19:23 我是老邱 阅读(577) 评论(0) 推荐(0) 编辑
摘要:3、第三部分 这里我们假设TARGET为native (1) 定义OBJECTDIR变量为obj_native,这个是存放object文件的目录 定义LOWERCASE和UPPERCASE变量,分别存放字母的小写,大些。 TARGET_UPPERCASE看名字就知道,应该是将native转换为NAT 阅读全文
posted @ 2016-10-29 23:15 我是老邱 阅读(943) 评论(0) 推荐(0) 编辑
摘要:2、第二部分 这里的usage,targets,savetarget,savedefines都是伪目标。 和all不同,这些伪目标不会被执行,除非显式指定这些目标。 这里有两个目标savetarget,savedefines前边我们提过。 通过命令 make TARGET=esb savetarge 阅读全文
posted @ 2016-10-29 20:59 我是老邱 阅读(732) 评论(0) 推荐(0) 编辑
摘要:二、Makefile.include 1、第一部分 (1) 含义: 如果没有定义CONTIKI变量,make停止运行。 并产生一个致命的错误信息,CONTIKI not defined! You must specify where Contiki resides。 hello-world这个例子在 阅读全文
posted @ 2016-10-29 20:56 我是老邱 阅读(813) 评论(0) 推荐(0) 编辑
摘要:一、主控Makefile 这里以hello-world例子为主线,从其工程Makefile开始,解析整个build过程。 (1)CONTIKI_PROJECT = hello-world 定义变量CONTIKI_PROJECT为 hello-world (2)all: $(CONTIKI_PROJE 阅读全文
posted @ 2016-10-29 20:54 我是老邱 阅读(750) 评论(0) 推荐(0) 编辑
摘要:The Contiki build system http://contiki.sourceforge.net/docs/2.6/a01796.html 先看官方文档的说明,对contiki的构建系统有个总体的概览。 The Contiki build system The Contiki buil 阅读全文
posted @ 2016-10-28 15:50 我是老邱 阅读(724) 评论(0) 推荐(0) 编辑
摘要:一、协议栈 主要有两大网络协议栈,uIP和Rime这两大协议栈(network stack): The uIP TCP/IP stack, which provides us with IPv4 networking。 The uIPv6 stack, which provides IPv6 net 阅读全文
posted @ 2016-10-23 18:26 我是老邱 阅读(3479) 评论(1) 推荐(0) 编辑
摘要:Contiki源码结构 apps目录下,用于存放Application,也就是我们的应用程序放在这个目录下。如webserver,webrowser等,如下图所示。 core目录是contiki操作系统的内核所在。 其中cfs是contiki file system interface 模块,pro 阅读全文
posted @ 2016-10-23 12:03 我是老邱 阅读(3861) 评论(1) 推荐(0) 编辑
摘要:一、rtimer概述 The Contiki rtimer library provides scheduling and execution of real-time tasks (with predictable execution times) 数据结构: 1、rtimer_init rtim 阅读全文
posted @ 2016-10-13 21:03 我是老邱 阅读(1500) 评论(0) 推荐(0) 编辑
摘要:Ctimer 提供和Etimer类似的功能,只是Ctimer是在一段时间后调用回调函数,没有和特定进程相关联。 而Etimer是在一段时间后发送PROCESS_EVENT_TIMER事件给特定的进程。 一、Ctimer数据结构 全局变量ctimer_list: 采用库LIST来实现链表的各种操作。 阅读全文
posted @ 2016-10-13 16:26 我是老邱 阅读(2122) 评论(0) 推荐(0) 编辑
摘要:一、Etimer概述 Etimer提供产生时间事件(timed event)的机制,当设定好的timer到期时,将会给设定etimer的process发送一个PROCESS_EVENT_TIMER 事件。 Etimer模块调用clock_time获得当前系统的时间。 The Contiki etim 阅读全文
posted @ 2016-10-13 10:07 我是老邱 阅读(2346) 评论(0) 推荐(0) 编辑
摘要:一、Timer API The Contiki timer library provides functions for setting, resetting and restarting timers, and for checking if a timer has expired. An app 阅读全文
posted @ 2016-10-12 15:22 我是老邱 阅读(1478) 评论(0) 推荐(0) 编辑
摘要:一、functions for handling system time 这些函数都是platform dependent的,我们是在stm8中实现的。 其中我们的clock_time_t是unsigned long型的,在stm8中unsigned long是32bit,最大数值是42949672 阅读全文
posted @ 2016-10-12 11:30 我是老邱 阅读(1104) 评论(0) 推荐(0) 编辑
摘要:Contiki有一个clock模块和一系列timer模块:timer,stimer,ctimer,etimer,和rtimer。 一、clock模块 clock模块提供一些处理系统时间的函数,还有一些用来阻塞CPU的函数。 timer模块的实现以clock模块为基础。 二、timer和stimer模 阅读全文
posted @ 2016-10-12 10:22 我是老邱 阅读(1321) 评论(0) 推荐(0) 编辑
摘要:最近遇到了这个比较奇葩的问题。 有两个设备,分别和电脑的串口助手进行串口通信,都没问题,都可以正常通信。 但是,把这两个设备连接起来,却不能通信!! 检查了一下,电平转换没问题,都是符合RS232标准的,否则也不可能跟电脑串口进行通信。 检查是否直通和交叉线的问题,也不是,连线是正常的。 用示波器查 阅读全文
posted @ 2016-10-11 17:14 我是老邱 阅读(4442) 评论(0) 推荐(0) 编辑
摘要:一、RS-232引脚定义(DB9) 一般只关注三个管脚,即RX,TX,GND 1、RS-232(母头/孔型) 引脚2:TX 引脚3:RX 引脚5:GND 2、RS-232(公头/针型) 引脚2:RX 引脚3:TX 引脚5:GND 注:公头和母头的TX和RX调转了,因为串口通信时发送端的TX要连接接收 阅读全文
posted @ 2016-10-11 16:46 我是老邱 阅读(1071) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示