ZigBee MAC层(上)】的更多相关文章

1. 介绍 ZigBee MAC层,即IEEE 802.15.4 MAC层,这里主要介绍了802.15.4-2003版本 MAC层处理所有对物理无线信道的访问控制,并负责下面的任务 - 为协调器生成网络信标 - 与网络信标同步 - 与PAN网络关联和解除关联 - 设备安全支持 - 使用CSMA-CA机制进行信道访问 - 处理和维护GTS机制 - 在两个对等MAC实体间提供可靠链路 2. 服务 MAC层通过MCPS-SAP和MLME-SAP提供SSCS(Service Specific Conve…
6. MAC功能描述 6.1 信道访问 802.15.4使用的物理无线电信道的访问机制有下面两种: - 基于竞争的访问机制: 设备使用CSMA-CA退避算法以分布式方式访问信道 - 无竞争的访问机制: PAN协调器通过使用GTS来控制 6.1.1 超帧结构 6.1.1.1 介绍 PAN协调器可以选择使用超帧结构(Superframe Struct)绑定其信道时间超帧以信标帧的传输为界,有活动部分和非活动部分协调器只能在超帧的活动部分与PAN交互,因此,在非活动部分可以进入低功耗(休眠)模式 超帧…
1. 介绍 ZigBee PHY层,即IEEE 802.15.4 PHY层,这里主要介绍了802.15.4-2003版本 PHY主要实现了如下功能 - 启动和关闭RF收发器 - 信道能量检测(Channel ED) - 接收数据包链路质量检测(LQI) - CSMA-CA的信道忙闲评估(CCA) - 信道频率选择 - 数据的发送和接收 需要注意区分:  收发器(transceiver).发射器(transmitter).接收器(receiver) 2. 服务 PHY通过RF固件和硬件为MAC层提…
    在上一篇博文中,我们见证了 IP 地址的诞生,机器一旦有了 IP,就可以在网络的环境里和其他的机器展开沟通了.     今天,我们来认识下 物理层 和 MAC 层.     日常生活中,身为 90 后的我们,如果不是通信相关专业出身的,应该从来没有接触过物理层和 MAC 层的设备.我们接触最多的,可能就是路由器了.而路由器实际上是第三层-网络层的设备了.     那咱们怎么认识物理层呢?就不扯那些深奥的理论了,从宿舍联机打魔兽说起吧.     要想宿舍里的几台电脑连接到一个局域网内,第一…
对于无线传感网 MAC,顾名思义,就是介质访问控制,是用来控制无线介质的访问的,由于无线传输是共享空中资源的,必然存在多个无线传感器节点对传输介质的争用,MAC层协议就是用来解决这个问题的,包括冲突的检测与处理.信道与通信资源的分配,等等 对于以太网 介质访问控制 它定义了数据帧怎样在介质上进行传输.在共享同一个带宽的链路中,对连接介质的访问是“先来先服务”的.物理寻址在此处被定义,逻辑拓扑(信号通过物理拓扑的路径)也在此处被定义.线路控制.出错通知(不纠正).帧的传递顺序和可选择的流量控制也在…
一.MAC 层的硬件地址 在局域网中,主机的硬件地址又称为物理地址,或 MAC 地址.6个字节. IEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(即高位 24 位,组织唯一标识符OUI).后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址. 一个地址块可以生成224个不同的地址.这种 48 位地址称为 MAC-48,它的通用名称是EUI-48.“MAC地址”实际上就是适配器地址,固化在网卡的ROM中. 第一个字节的最低位I/G(I…
今天遇到了ios手机下 弹出层上form表单 当收起键盘后,焦点错乱,无法再操作的问题 解决办法 function device() { const u = navigator.userAgent; const isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 const isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 i…
1. 介绍 本文主要介绍了802.11 MAC层 2. 访问机制 CSMA/CA:  Carrier Sense Multiple Access with Collision Avoidance WiFi采用带冲突避免的载波监听多路访问机制来控制对传输媒介的访问 不同于以太网,WiFi没有明确的冲突碰撞检测机制 WiFi MAC层指定了如下规则来检测冲突碰撞 - 使用介质前,speaker必须指示将使用多久,通知其他潜在speakers在使用介质所需要等待的时间 - 直到前一个speaker指示…
如上图,整个 mac 层分成两个部分——UMAC 和 LMAC.LMAC 分成 MAC 下半部分和硬件抽象层. 硬件抽象层和ath9k层的连接 在hw.h中的函数struct ath_hw_ops() ath9k层和mac层的连接 在mac80211.h中函数struct ieee80211_ops()可以看到这个函数非常重要,当然如果我们想ath9k和mac层通信,可以在这个函数上直接添加对应的模块. Mac层和cfg80211通信 在cfg80211.h 中的函数struct ieee802…
在上一篇博文中,我们见证了 IP 地址的诞生,机器一旦有了 IP,就可以在网络的环境里和其他的机器展开沟通了.     今天,我们来认识下 物理层 和 MAC 层.     日常生活中,身为 90 后的我们,如果不是通信相关专业出身的,应该从来没有接触过物理层和 MAC 层的设备.我们接触最多的,可能就是路由器了.而路由器实际上是第三层-网络层的设备了.     那咱们怎么认识物理层呢?就不扯那些深奥的理论了,从宿舍联机打魔兽说起吧.     要想宿舍里的几台电脑连接到一个局域网内,第一反应就是…
第一层(物理层)     如何用两台电脑构成最小的局域网(LAN)?     网线的水晶头1.2和3.6脚分别起着收.发信号的作用,随意只要将水晶头做交叉线1-3.2-6交叉法,然后连接两台电脑.除了网线交叉,还要配置两台电脑的IP地址.子网掩码和默认网关.如可以是一个192.168.0.2/24和192.168.0.5/24.          有一个叫Hub,也就是集线器,它有多个口,可以连接多台电脑,它和交换机不同,没有大脑,完全在物理层工作,将收到的每一个字节发到其他端口上.     …
故事就从我的大学宿舍开始讲起吧.作为一个八零后,我要暴露年龄了. 我们宿舍四个人,大一的时候学校不让上网,不给开通网络.但是,宿舍有一个人比较有钱,率先买了一台电脑.那买了电脑干什么呢? 首先,有单机游戏可以打,比如说<拳皇>.两个人用一个键盘,照样打得火热.后来有第二个人买了电脑,那两台电脑能不能连接起来呢?你会说,当然能啊,买个路由器不就行了. 现在一台家用路由器非常便宜,一百多块的事情.那时候路由器绝对是奢侈品.一直到大四,我们宿舍都没有买路由器.可能是因为那时候技术没有现在这么发达,导…
第一层(物理层) 水晶头要做交叉线,用的就是所谓的 1-3.2-6 交叉接法. 有一个叫做 Hub 的东西,也就是集线器.这种设备有多个口,可以将宿舍里的多台电脑连接起来.但是,和交换机不同,集线器没有大脑,它完全在物理层工作.它会将自己收到的每一个字节,都复制到其他端口上去.这是第一层物理层联通的方案. 第二层(数据链路层) MAC 的全称是 Medium Access Control,即媒体访问控制.控制什么呢?其实就是控制在往媒体上发数据的时候,谁先发.谁后发的问题.防止发生混乱.这解决的…
MAC层的硬件地址 在局域网中,硬件地址又称为物理地址或者MAC地址(因为这种地址用在MAC帧中) IEEE 802标准为局域网规定了一种48位(6字节)的全球地址,固化在适配器的ROM中. 如果计算机中或者路由器有多个适配器,那么这样的主机或者路由器就有多个"地址",更准确的说,这种48位"地址"应当是某个接口的标识符. IEEE的注册管理结构RA是局域网全球地址的法定管理机构,它负责分配地址字段6个字节中的前三个字节.世界上凡是要生产局域网适配器的厂家都必须向I…
概述 之前网络学习笔记主要讲解了IP的诞生,或者说整个操作系统的诞生,一旦有了IP,就可以在网络的环境里和其他的机器展开沟通了.现在开始给大家讲解关于网络底层的相关知识. 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏? 在买路由器还是很奢侈的时候,如果一个大学宿舍想联网打游戏,他们改怎么办呢?带这个问题我们进行学习本节课的知识. 第一层(物理层) 使用路由器,是在第三层上.我们先从第一层物理层开始说.物理层能折腾啥?现在的同学可能想不到,我们当时去学校配电脑的地方买网线,卖网线的师傅都会问…
众所周知的原因,google的很多网站在国内无法访问,苦逼了一堆天朝程序员,下是在mac本上折腾android 开发环境的过程: 一.先下载android sdk for mac 给二个靠谱的网址: a). http://down.tech.sina.com.cn/page/45703.html b). http://mac.softpedia.com/get/Developer-Tools/Google-Android-SDK.shtml 到这个面下载后,解压到某个目录 二.设置下载的代理服务…
在以前的Mac和iOS版本下,录制iPhone或者iPad屏幕操作是一件稍微复杂的事情.但是随着Yosemite的出现,在Mac电脑上为iPhone或iPad录屏的方法就变得简单了.下面就介绍一下具体的操作步骤: 操作系统的准备 Mac电脑:需要升级到Yosemite及其以上版本; iPhone或者iPad:需要升级到iOS8及其以上版本; 操作的步骤 1.首先将iPhone设备与Mac电脑连接; 2.打开QuickTime,选择“文件->新建影片录制”;或者快捷键“Option + Comma…
brew 即 Homebrew,是Mac OSX上的软件包管理工具,能在Mac中方便的安装软件或者卸载软件, 只需要一个命令, 非常方便. brew类似ubuntu系统下的apt-get的功能. 安装brew: curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1 安装软件:brew install cgdb 卸载软件:brew uninstall cgdb…
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Android studio,然后就可以安装下载sdk了.(as刚出的还不可以的,现在越来越方便了) 环境配置: 1. 安装adb客户端.你可以下载好最新版本的SDK,在platform-tools目录下有adb命令 2. 配置adb命令的环境变量.在.bash_profile中加入 export PATH=$…
在MAC服务器上搭建docker-registry 2014-03-14      0个评论    来源:在MAC服务器上搭建docker-registry   收藏    我要投稿 本文介绍如何在MAC下搭建docker的registry,我们在国内下载docker的镜像非常慢,因此为团队搭建一个基础的registry是非常有必要的,而在MAC中的docker实际上是基于虚拟机运 行的,因此如果想要持久化registry内的东西就要经过几个步骤,首先要将虚拟机和主机的磁盘做关联,其次是dock…
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i=arguments;t.queue.push(function(){t[config].apply(t,i)})}}var t={config:config},u=document,e=window,o="script",s=u.createElement(o),i,f;for(s.src…
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i=arguments;t.queue.push(function(){t[config].apply(t,i)})}}var t={config:config},u=document,e=window,o="script",s=u.createElement(o),i,f;for(s.src…
众所周知的原因,google的很多网站在国内无法访问,苦逼了一堆天朝程序员,下是在mac本上折腾android 开发环境的过程: 一.先下载android sdk for mac 给二个靠谱的网址: a). http://down.tech.sina.com.cn/page/45703.html b). http://mac.softpedia.com/get/Developer-Tools/Google-Android-SDK.shtml 到这个面下载后,解压到某个目录 二.设置下载的代理服务…
参考文章 1.Android 6.0 源代码编译实践 2.编译Android源码致命错误解决方案 实践过程 1.Mac下安装Ubuntu双系统 (1)Ubuntu版本:Ubuntu 15.10 注:实际上一开始我是从Ubuntu 16.04 LTS开始的,但编译过程中出现提示需要OpenJDK1.7的情况,但是Ubuntu 16.04 LTS的软件包里只有OpenJDK1.8 和OpenJDK1.9. 于是我换成了Ubuntu 15.10,虽然它不是LTS版本,但是它的OpenJDK版本比较齐全…
今天在Mac机器上使用了Flex Builder编辑了一个源代码文件,保存后使用vim命令去打开时发现系统自动在每一行的结尾添加了^M符号,其实^M在Linux/Unix中是非常常见的,也就是我们在Win中见过的/r回车符号.由于编辑软件的编码问题,某些IDE的编辑器在编辑完文件之后会自动加上这个^M符号.看起来对我们的源代码没有任何影响,其实并不然,当我们把源代码文件Check In到svn之类的版本控制软件之后,由于之前版本的文件并不存在这个符号,所以开发成员在使用diff工具来查看改动的内…
现在硬盘便宜,很多同学都有移动硬盘,如果你同时使用Windows与Mac OS的话,移动硬盘最好不要使用NTFS文件系统,否则在Mac OS上,你只能读你的移动硬盘,不能写. 但是实际上的情况是,移动硬盘上有很多东西了,且最初是格式化为了NTFS格式,这时候重新格式化是很麻烦的,要做数据移动. 这个问题有两种办法解决: 使用第三方软件. 使用mac os自带的mount_ntfs工具. 在Mac OS上mount NTFS文件系统的第三方软件,常用的是NTFS3G,这是一个开源软件,免费使用,不…
今天推荐 Mac OSX 下,方便高效的包管理工具 brew brew 的全名叫做 Homebrew 它的功能类似于 ubuntu 下同下 apt-get ,或者 Cent OS 下的 yum 等包管理工具. 我们可以很方便的 安装,更新,卸载软件 brew 的官网 http://brew.sh/index_zh-cn.html brew 安装 打开你的 mac 终端命令行工具,输入下面的脚本 ruby -e "$(curl -fsSL https://raw.githubusercontent…
Mac OS 上设置 JAVA_HOME 原文链接:http://han.guokai.blog.163.com/blog/static/136718271201301183938165/ 由于需要,前几天在 OS X 上安装了 Oracle 的 Java 7.安装之后,发现由于我原来设置的 JAVA_HOME 为 /Library/Java/Home ,导致我使用的还是原来苹果提供的 Java 6 而不是刚安装的 Java 7. 网上查了一下,发现网上普遍存在一种不太好的硬编码方式,比如以下这…
    MAC负责建立于网络的同步,支持关联和取消关联.MAC层的安全以及控制物理信道访问机制.信道访问机制主要有以下几种:       1. 有序的物理无线信道访问机制     2. 协调器启动和维护PAN信息机制     3. 允许设备加入或者离开PAN机制     4. 分配和释放保护时隙机制 基于非竞争机制的PAN协调器的GTS来访问信道 PAN协调器利用超帧结构来限定GTS的信道时间,超帧结构如下: 在CAP期间,发送帧使用CSMA-CA来访问信道. 在CFP期间,发送至使用GTS时隙…
最近打算将一些软件操作过程进行屏幕录制进行视频分享,所以寻思着找一块能在MAC上使用的屏幕录制软件.google了一番,没想到MAC系统自带的QuickTime Player已经内置屏幕录像功能,而且简单好用! 启动QuickTime Player 新建屏幕录制 如果想要在录制的过程中对鼠标点击的位置突出的话,可以勾选控制界面右边的倒三角,勾选“在录制中显示鼠标点按”,当然你还可以在这里设置麦克风输入,比如录制教程的时候,一边讲解一边录制,那么就可以把“内建输入:外置麦克风”勾上,还可以设置视频…