文档库 最新最全的文档下载
当前位置:文档库 › ZigBee学习之23—— zmain_vdd_check()

ZigBee学习之23—— zmain_vdd_check()

ZigBee学习之23—— zmain_vdd_check()
ZigBee学习之23—— zmain_vdd_check()

ZigBee学习之23—— zmain_vdd_check()

zmain_vdd_check();//确认VDD是否达到运行处理器的要求,如果没有达到就会闪烁LED //【ZMain.c】line210左右

//重复检测VDD的状态,直到成功检测的次数达到规定过的要求为止。估计是等

电源稳定吧,呵呵

static ZSEG void zmain_vdd_check( void )

{

uint8 vdd_passed_count = 0;

bool toggle = 0;

while ( vdd_passed_count < MAX_VDD_SAMPLES )

//#define MAX_VDD_SAMPLES 3; 【ZMain.c】

//循环检测3次

{

if ( HalAdcCheckVdd (ZMAIN_VDD_LIMIT) )

//【ZMain.c】

//#define ZMAIN_VDD_LIMIT HAL_ADC_VDD_LIMIT_4

//【hal_adc.h】

//#define HAL_ADC_VDD_LIMIT_4 0x04

{

vdd_passed_count++; // Keep track # times Vdd passes in a row

MicroWait (10000); // 延时10毫秒

//微秒级延时函数【OnBoard.h】

//#define MicroWait(t) Onboard_wait(t)

//void Onboard_wait( uint16 timeout )

{

while (timeout--)

{

asm("NOP");

asm("NOP");

asm("NOP");

}

}

}

else

{

vdd_passed_count = 0; // Reset passed counter

MicroWait (50000); // Wait 50ms

MicroWait (50000); // Wait another 50ms to try again

}

// H alAdcCheckVdd ()【hal_adc.c】函数用来检查VDD是否大于或等于最小的要求

bool HalAdcCheckVdd (uint8 limit)

uint16 value;

//如果芯片修订版本号小于REV_D(0x03)就直接完成电压检测并返回TRUE。CHVER是修订版本号寄存器,此寄存器是只读的。

if (CHVER < REV_D)

//检查芯片版本【hal_mcu.h】

//#define REV_A 0x00

//#define REV_D 0x03

{

return TRUE;

}

//清除ADC中断标志

ADCIF = 0;

//设置新的转换状态

//【hal_adc.c】

//使用内部1.25参考电压

//#define HAL_ADC_REF_125V 0x00

//#define HAL_ADC_DEC_064 0x00 /* Decimate by 64 : 8-bit resolution */8位精度

//#define HAL_ADC_CHN_VDD3 0x0f /* VDD/3 */以AVDD _SOC/3为输入,检测电压

ADCCON3 = (HAL_ADC_REF_125V | HAL_ADC_DEC_064 | HAL_ADC_CHN_VDD3);

//等待转换完成

while ( !ADCIF );

//取得转换值

value = ADCL;

value |= ((uint16) ADCH) << 8;

//检测

return ( value >= HalAdcVddLimit[limit] );

}

// H alAdcVddLimit为一个数组

static __code const uint16 HalAdcVddLimit[] =

{

0x369C, /* VDD Limit - 1.6v */

0x3A06, /* VDD Limit - 1.7v */

0x3D70, /* VDD Limit - 1.8v */

0x40D9, /* VDD Limit - 1.9v */

0x4443, /* VDD Limit - 2.0v */

0x47AD, /* VDD Limit - 2.1v */

0x4B17, /* VDD Limit - 2.2v */

0x4E81, /* VDD Limit - 2.3v */

0x51EA, /* VDD Limit - 2.4v */

//关于电池电压的测量与计算在文档:Using the ADC to Measure Suppl y Voltage.pdf中有详细的示例和说明,现在摘录其中一段解说一下:

// Max ADC input voltage = reference voltage =>

// (VDD/3) max = 1.25 V => max VDD = 3.75 V

// 12 bits resolution means that max ADC value = 0x07FF = 2047 (dec)

// (the ADC value is 2’s complement)

// Battery voltage, VDD = adc value * (3.75 / 2047)

//其中有两点很重要:1、最大的ADC输入值=参考电压;2、ADC的值以2的补码形式储存,也就是说12位的精度因为有1位是符号位所以相对于精度为11,即2^11= 2048。因为以VDD/3为输入电压,以内部1.25为参考电压,所以VDD/3最大值=1.25,得出最大的VDD=3.75;以12位精度计算,电压值划分为2.47等分,所以测出来的电压值为ad c value*(3.75/2047)

//注意这里并没有操作ADCCON1来启动ADC转换。让我们来看看原因:

//数据手册133页ADCCON3中ECH的说明:

// Extra channel select. Selects the channel number of the extra conversion that is carried out after a conversion sequence has

ended. This bit field must be written for an extra conversion to be

performed. If the ADC is not running, writing to these bits will

trigger an immediate single conversion from the selected extra

channel. The bits are automatically cleared when the extra

conversion has finished.

//这3位是用来选择转换序列完成以后额外的一次转换。其中有一句:If th e ADC is not running, writing to these bits will trigger an immediate single co nversion from the selected extra channel.(若ADC没有运行,对这几位的写入操作将会立即开始一个对指定通道的转换),这就是关键了,即使ADC没有运行,我们只要往这3位中写入我们希望转换的通道,那么ADC会马上开始运行,当然执行完毕后这几位会被清除。

//切换LED1和LED2

if (vdd_passed_count == 0)

{

if ((toggle = !(toggle)))

HAL_TOGGLE_LED1();

//【hal_board_cfg.h】

//#define HAL_TOGGLE_LED1() st( if (LED1_SBIT) { LED1_SBIT = 0; }

else { LED1_SBIT = 1;} )

//这句很明显了,就是切换LED1的状态。这里一直没有改变toggle的值,为什

么还要对它做一个判断呢?搞不明白

else

HAL_TOGGLE_LED2();

}

}

//关闭LED

//【hal_board_cfg.h】

//#define HAL_TURN_OFF_LED1() st( LED1_SBIT = LED1_POLARITY

(0); )

//#define HAL_TURN_OFF_LED2() st( LED2_SBIT = LED2_POLARITY

(0); )

//#define LED1_POLARITY ACTIVE_HIGH

//#define LED2_POLARITY ACTIVE_LOW

//#define ACTIVE_LOW !

//#define ACTIVE_HIGH !! /* double negation forces result to be '1' */

//这里的宏定义真的是太繁琐了,真不晓得TI这样弄有多大的意义,转了两个弯

才看明白原来LED1是高电平点亮

HAL_TURN_OFF_LED1();

HAL_TURN_OFF_LED2();

}

作者:Free

原文来源:61IC中国电子在线

(完整版)模拟电子技术基础-知识点总结

模拟电子技术复习资料总结 第一章半导体二极管 一.半导体的基础知识 1.半导体---导电能力介于导体和绝缘体之间的物质(如硅Si、锗Ge)。 2.特性---光敏、热敏和掺杂特性。 3.本征半导体----纯净的具有单晶体结构的半导体。 4. 两种载流子 ----带有正、负电荷的可移动的空穴和电子统称为载流子。 5.杂质半导体----在本征半导体中掺入微量杂质形成的半导体。体现的是半导体的掺杂特性。 *P型半导体: 在本征半导体中掺入微量的三价元素(多子是空穴,少子是电子)。 *N型半导体: 在本征半导体中掺入微量的五价元素(多子是电子,少子是空穴)。 6. 杂质半导体的特性 *载流子的浓度---多子浓度决定于杂质浓度,少子浓度与温度有关。 *体电阻---通常把杂质半导体自身的电阻称为体电阻。 *转型---通过改变掺杂浓度,一种杂质半导体可以改型为另外一种杂质半导体。 7. PN结 * PN结的接触电位差---硅材料约为0.6~0.8V,锗材料约为0.2~0.3V。 * PN结的单向导电性---正偏导通,反偏截止。 8. PN结的伏安特性 二. 半导体二极管 *单向导电性------正向导通,反向截止。 *二极管伏安特性----同PN结。 *正向导通压降------硅管0.6~0.7V,锗管0.2~0.3V。 *死区电压------硅管0.5V,锗管0.1V。 3.分析方法------将二极管断开,分析二极管两端电位的高低: 若 V 阳 >V 阴 ( 正偏 ),二极管导通(短路); 若 V 阳

高频电子线路重点知识总结

1、什么是非线性电子线路。 利用电子器件的非线性来完成振荡,频率变换等功能。完成这些功能的电路统称为非线性电子线路。 2、简述非线性器件的基本特点。 非线性器件有多种含义不同的参数,而且这些参数都是随激励量的大小而变化的,以非线性电阻器件为例,常用的有直流电导、交流电导、平均电导三种参数。 分析非线性器件的响应特性时,必须注明它的控制变量,控制变量不同,描写非线性器件特性的函数也不同。例如,晶体二极管,当控制变量为电压时,流过晶体二极管的电流对电压的关系是指数律的;而当控制变量为电流时,在晶体二极管两端产生的电压对电流的关系则是对数律的。 分析非线性器件对输入信号的响应时,不能采用线性器件中行之有效的叠加原理。 3、简述功率放大器的性能要求。 功率放大器的性能要求是安全、高效率和不失真(确切地说,失真在允许范围内)地输出所需信号功率(小到零点几瓦,大到几十千瓦)。 4、简述乙类推挽电路中的交叉失真现象以及如何防止交叉失真。 在乙类推挽电路中,考虑到晶体管发射结导通电压的影响,在零偏置的情况下,输出合成电压波型将在衔接处出现严重失真,这种失真叫交叉失真。为了克服这种失真,必须在输入端为两管加合适的正偏电压,使它们工作在甲乙类状态。常见的偏置电路有二极管偏置、倍增偏置。 5、简述谐振功率放大器的准静态分析法。 准静态分析法的二个假设: 假设一:谐振回路具有理想的滤波特性,其上只能产生基波电压(在倍频器中,只能产生特 定次数的谐波电压),而其它分量的电压均可忽略。v BE =V BB + V bm cosωt v CE =V CC - V cm cosωt 假设二:功率管的特性用输入和输出静态特性曲线表示,其高频效应可忽略。谐振功率放大器的动态线 在上述两个假设下,分析谐振功率放大器性能时,可先设定V BB 、V bm 、V CC 、V cm 四个电量的数 值,并将ωt按等间隔给定不同的数值,则v BE 和v CE 便是确定的数值,而后,根据不同间 隔上的v BE 和v CE 值在以v BE 为参变量的输出特性曲线上找到对应的动态点和由此确定的i C 值。 其中动态点的连线称为谐振功率放大器的动态线,由此画出的i C 波形便是需要求得的集电 极电流脉冲波形及其数值。` 6、简述谐振功率放大器的三种工作状态。 若将ωt=0动态点称为A ,通常将动态点A处于放大区的称为欠压状态,处于饱和区的称为 过压状态,处于放大区和饱和区之间的临界点称为临界状态。在欠压状态下,i C 为接近余弦 变化的脉冲波,脉冲高度随V cm 增大而略有减小。在过压状态下,i C 为中间凹陷的脉冲波, 随着V cm 增大,脉冲波的凹陷加深,高度减小。 7、简述谐振功率放大器中的滤波匹配网络的主要要求。 将外接负载变换为放大管所要求的负载。以保证放大器高效率地输出所需功率。 充分滤除不需要的高次谐波分量,以保证外接负载上输出所需基波功率(在倍频器中为所需 的倍频功率)。工程上,用谐波抑制度来表示这种滤波性能的好坏。若设I L1m 和I Lnm 分别为通过 外接负载电流中基波和n次谐分量的振幅,相应的基波和n次谐波功率分别为P L 和P Ln ,则对n 次谐波的抑制制度定义为H n =10lg(P Ln /P L )=20lg(I Lnm /I L1m )。显然,H n 越小,滤波匹配网络对n 次谐波的抑制能力就越强。通常都采用对二次的谐波抑制制度H 2 表示网络的滤波能力。 将功率管给出的信号功率P o 高效率地传送到外接负载上,即要求网络的传输效率η K =P L /P O 尽可 能接近1。

ZigBee学习笔记CC2530

已入门选手进一步学习的重点 我发现最近群里很多人已经可以算是大致入门了,能够在原有例子的基础上进行一些简单工作,实现数据传输。但是我也发现很多人开始把精力投入到钻研协议栈代码细节上面去了,实际上这种学习方式是有问题的。第一:如果从应用的角度看,协议栈的一些实现细节是没有必要钻研的,这就好比是现在的PC机,已经有了Windows系统了,我们在这个系统之上实现自己应用程序的时候其实并不需要对Windows内部实现细节过多地关注,只要能够自由地在Windows下开发应用程序(其实就是调用大量的API函数)就可以了;第二:如果想从协议栈本身入手去做一些深入的工作,Zstack是不适合的,因为它不是完全开源,真想在路由算法、加密算法等方面做工作的话,目前TinyOS这样的开源协议栈才是首选。所以,进一步学习的重点应该是:在什么时间什么地点调用什么函数的问题! 那么如何来提高这方面的技能呢? 1、浏览ZDP和ZDO相关代码,熟悉一下都有什么函数,这两个部分都做了什么,学习的过程中千万不要去钻研代码实现的细节,只要了解其流程以及都作了什么就可以了,否则你一定会迷失在那成千上万行的代码之中而不能自拔。ZDP和ZDO的实现文件里面 有大量的函数在以后具体应用中可以去调用。 2、典型例子中的ZDO消息使用其实只有那么几个例子,比如: ZDO_RegisterForZDOMsg(TaskID,End_Device_Bind_rsp)这样的,这是讲底层的一些事件消息引入到应用层的注册方法。在深入应用的时候那么几个典型的消息注册是不够 用的,比如我在一个应用中就注册了以下: ZDO_RegisterForZDOMsg( TaskID, End_Device_Bind_rsp ); // 我自己解析 End_Device_Bind_rsp ZDO_RegisterForZDOMsg( TaskID, Match_Desc_rsp ); //我自己解析 Match_Desc_rsp ZDO_RegisterForZDOMsg( TaskID, Device_annce); //我自己解析 Device_annce ZDO_RegisterForZDOMsg( TaskID, Active_EP_rsp); //我自己解析 Active_EP_rsp ZDO_RegisterForZDOMsg( TaskID, Simple_Desc_rsp); //我自己解析 Simple_Desc_rsp ZDO_RegisterForZDOMsg( TaskID, NWK_addr_rsp); //我自己解析 NWK_addr_rsp 在具体应用中,你会根据不同的网络需求去调用很多协议栈的设置好的req和处理rsp消息,那么协议栈都有那些req和rsp是你进一步学习所应该深入认识的。 3、在自己使用系统的req和rsp的时候,如果你不知道该如何处理,你最好去看看MT是如何实现的,在MT功能模块中,对协议栈的绝大多数req和rsp都有调用和实现的例子可以参考,虽然我们在自己的应用中很少回去使用MT,但是Mt 的实现代码却是最好

ZigBee网络拓扑结构显示

实验二ZigBee网络拓扑结构显示 【实验目的】 1、熟悉Qt编写程序的方法; 2、了解Qt显示ZigBee网络拓扑结构的工作原理; 【实验设备】 1、装有RedHat AS5系统或装有RedHat AS5虚拟机的PC机一台; 2、物联网开发设计平台一套; 【实验要求】 使用Qt为ZigBee网络编写拓扑结构; 1、编程要求:使用提供的API函数编写应用程序; 2、实现功能:构建ZigBee网络拓扑结构; 3、实验现象:显示网络的拓扑结构; 【实验原理】 本实验箱针对Qt下,将服务程序的API做了一定的封装,并提供了非常方便使用的接口函数,可以让用户在Qt环境下绘制Zigbee网络的拓扑结构。这些函数都被封装在一个叫做TopologyWidget的类中,它们的详细介绍如下: 【函数原型】void TopologyWidget::SetTopologyArea(const QString &ip, QScrollArea *area); 【功能】设置用来显示拓扑图的滚动区域控件 【参数】ip: 运行服务程序的网关(计算机)的IP地址area: 用来显示拓扑图的滚动区域控件【返回值】无 【头文件】使用本函数需要包含"topologywidget.h" 【函数原型】void TopologyWidget::UpdateTopologyArea(QScrollArea *area); 【功能】立即刷新滚动区域控件中的拓扑图 【参数】area: 用来显示拓扑图的滚动区域控件 【返回值】无 【头文件】使用本函数需要包含"topologywidget.h" 在实际应用中,用户需要首先在界面中放置一个,假设其名称为“scrollArea”,只需要在窗体的构造函数中,完成了setupUi的操作之后,调用TopologyWidget::SetTopologyArea函数即可使拓扑图显示在这个滚动区域中,参考下面的代码。 Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); // 将界面中的scrollArea设置为用来显示拓扑图 TopologyWidget::SetTopologyArea("127.0.0.1", ui->scrollArea); } 【实验步骤】 1.双击打开桌面上的VMware Player。如图 2.1所示;

物联网专业需要看的书籍

物联网专业需要看的书籍

课程1、物联网产业与技术导 论使用电子工业出版社《物联网:技术、应用、标准、安全与商业模式》等等教材。在学完高等数学,物理,化学,通信原理,数字电路,计算机原理,程序设计原理等课程后开设本课程,全面了解物联网之RFID、M2M、传感网、两化融合等技术与应用。 课程2、C语言程序设计使用清华大学出版社《C语言程序设计》等教材。物联网涉及底层编程,C语言为必修课,同时需要了解OSGi,OPC,Silverlight等技术标准 课程3、Java程序设计,使用机械工业出版社《Java语言程序设计教程》等教材。物联网应用层,服务器端集成技术,开放Java技术也是必修课,同时需要了解Eclips e,SWT, Flash, HTML5,SaaS等技术 课程4、无线传感网络概论,使 用无线龙通讯科技出版社《现代无线传感器网络概论》、北京航空航天大学出版社《短距离无线通讯入门与实战》等教材。学习各种无线

RF通讯技术与标准,Zigbee, 蓝牙,WiFi,GPR S,CDMA,3G, 4G, 5G等等 课程5、TCP/IP网络与协议,《TCP/IP网络与协议》,清华大学出版社,等教材。TCP/IP以及OSI网络分层协议标准是所有有线和无线网络协议的基础,Socket 编程技术也是基础技能,为必修课 课程6、嵌入式系统技,《嵌入式系统技术教程》,人民邮电出版社等教材。嵌入式系统是物联网感知层和通讯层重要技术,为必修课 课程7、传感器技术概论,《传感器技术》,中国计量出版社,等教材。物联网专业学生需要对传感器技术与发展,尤其是在应用中如何选用有所了解,但不一定需要了解传感器的设计与生产,对相关的材料科学,生物技术等有深入了解 课程8、RFID技术概论,《射频识别(RFID)技术原理与应用》,机械工业出版社,

《电力电子技术基础》读书笔记

电力电子器件的发展对电力电子技术的发展起着决定性的作用,因此,电力电子技术的发展史是以电力电子器件的发展史为纲的。而电力电子技术的不断发展,新材料、新结构器件的陆续诞生,计算机技术的进步为现代控制技术的实际应用提供了有力的支持,在各行各业中的应用越来越广泛。电力电子技术在电力系统中的应用研究与实际工程也取得了可喜成绩。 电力电子技术是应用于电力领域的电子技术。具体地说,就是使用电力电子器件对电能进行变换和控制的技术,主要用于电力变换。目前所用的电力电子器件均用半导体制成,故也称电力半导体器件。通常把电力电子技术分为电力电子器件制造技术(理论基础是半导体物理)和变流技术(理论基础是电路理论)两个分支。电力电子器件的制造技术是电力电子技术的基础,而变流技术则是电力电子技术的核心。 电力电子技术的发展史 自 20 世纪50 年代末第一只晶闸管问世以来,电力电子技术开始登上现代电气传动技术舞台,以此为基础开发的可控硅整流装置,是电气传动领域的一次革命,使电能的变换和控制从旋转变流机组和静止离子变流器进入由电力电子器件构成的变流器时代,这标志着电力电子技术的诞生。在随后的40 余年里,电力电子技术在器件、变流电路、控制技术等方面都发生了日新月异的变化,在国际上,电力电子技术是竞争最激烈的高新技术领域。 电力电子器件的发展对电力电子技术的发展起着决定性的作用,因此,电力电子技术的发展史是以电力电子器件的发展史为纲的。1957年美国通用电气公司研制出第一个晶闸管为电力电子技术的诞生奠定了基础。晶闸管自诞生以来,电力电子器件已经走过了五十多年的概念更新、性能换代的发展历程。 第一代电力电子器件 以电力二极管和晶闸管(SCR)为代表的第一代电力电子器件,以其体积小、功耗低等优势首先在大功率整流电路中迅速取代老式的汞弧整流器,取得了明显的节能效果,并奠定了现代电力电子技术的基础。电力二极管对改善各种电力电子电路的性能、降低电路损耗和提高电源使用效率等方面都具有非常重要的作用。目前,硅整流管已形成普通整流管、快恢复整流管和肖特基整流管三种主要类型。晶闸管诞生后,其结构的改进和工艺的改革,为新器件的不断出现提供了条件。由晶闸管及其派生器件构成的各种电力电子系统在工业应用中主要解决了传统的电能变换装置中所存在的能耗大和装置笨重等问题,因而大大提高电能的利用率,同时也使工业噪声得到一定程度的控制。 第二代电力电子器件 自20世纪70 年代中期起,电力晶体管(GTR)、可关断晶闸管(GTO)、电力场控晶体管(功率MOSFET)、静电感应晶体管(SIT)、MOS 控制晶闸管(MCT)、绝缘栅双极晶体管(IGBT)等通断两态双可控器件相继问世,电力电子器件日趋成熟。一般将这类具有自关断能力的器件称为第二代电力电子器件。全控型器件的开关速度普遍高于晶闸管,可用于开关频率较高的电路。 第三代电力电子器件 进入20 世纪90 年代以后,为了使电力电子装置的结构紧凑、体积减少,常常把若干个电力电子器件及必要的辅助元件做成模块的形式,这给应用带来了很大的方便。后来,又把驱动、控制、保护电路和功率器件集成在一起,构成功率集成电路(PIC),也就是说,电力电子器件的研究和开发已进入高频化、标准模块化、集成化和智能化时代。电力电子器件的高频化是今后电力电子技术创新

E1线路知识点总结

1、一条E1是2.048M的链路,用PCM编码。 2、一个E1的帧长为256个bit,分为32个时隙,一个时隙为8个bit。 3、每秒有8k个E1的帧通过接口,即8K*256=2048kbps。 4、每个时隙在E1帧中占8bit,8*8k=64k,即一条E1中含有32个64K。 E1帧结构 E1有成帧,成复帧与不成帧三种方式,在成帧的E1中第0时隙用于传输帧同步数据,其余31个时隙可以用于传输有效数据;在成复帧的E1中,除了第0时隙外,第16时隙是用于传输信令的,只有第1到15,第17到第31共30个时隙可用于传输有效数据;而在不成帧的E1中,所有32个时隙都可用于传输有效数据. 一.E1基础知识 E1信道的帧结构简述 在E1信道中,8bit组成一个时隙(TS),由32个时隙组成了一个帧(F),16个帧组成一个复帧(MF)。在一个帧中,TS0主要用于传送帧定位信号(FAS)、CRC-4(循环冗余校验)和对端告警指示,TS16主要传送随路信令(CAS)、复帧定位信号和复帧对端告警指示,TS1至TS15和TS17至TS31共30个时隙传送话音或数据等信息。我们称TS1至TS15和TS17至TS31为“净荷”,TS0和TS16为“开销”。如果采用带外公共信道信令(CCS),TS16就失去了传送信令的用途,该时隙也可用来传送信息信号,这时帧结构的净荷为TS1至TS31,开销只有TS0了。

由PCM编码介绍E1: 由PCM编码中E1的时隙特征可知,E1共分32个时隙TS0-TS31。每个时隙为64K,其中TS0为被帧同步码,Si, Sa4, Sa5, Sa6,Sa7,A 比特占用, 若系统运用了CRC校验,则Si比特位置改传CRC校验码。TS16为信令时隙, 当使用到信令(共路信令或随路信令)时,该 时隙用来传输信令, 用户不可用来传输数据。所以2M的PCM码型有①PCM30 : PCM30用户可用时隙为30个, TS1-TS15, TS17-TS31。TS16传送信令,无CRC校验。 ②PCM31: PCM30用户可用时隙为31个, TS1-TS15, TS16-TS31。TS16不传送信令,无CRC校验。 ③PCM30C: PCM30用户可用时隙为30个, TS1-TS15, TS17-TS31。TS16传送信令,有CRC校验。 ④PCM31C: PCM30用户可用时隙为31个, TS1-TS15, TS16-TS31。TS16不传送信令,有CRC校验。 CE1,就是把2M的传输分成了30个64K的时隙,一般写成N*64,你可以利用其中的几个时隙,也就是只利用n个64K,必须接在 ce1/pri上。 CE1----最多可有31个信道承载数据timeslots 1----31 timeslots 0 传同步

二.接口 G.703非平衡的75 ohm,平衡的120 ohm2种接口 三.使用E1有三种方法,

高频电子线路笔记

绪论一、通信系统模型 二、发送设备组成框图 三、接收设备组成框图

第1章 高频小信号放大器 §1.1 分散选频 一、高频电压放大器的作用:放大+选频 二、选频电路分类 三、分散选频电路 1、LC 串联选频电路 主要参数:谐振频率 LC f π210= C L R C R R L Q 1100= = =ωω Q f f BW 02=?= 2、LC 并联选频电路 主要参数:谐振频率 LC f π210= L C R C R L R Q === 00ωω Q f f BW 0 2=?= 3、耦合选频(了解)

§1.2 集中选频 1.石英晶体滤波器 石英晶体滤波原理:逆压电效应 压电效应:当晶片两面加机械力时,晶片两面将产生电荷,电荷的多少与机械力所引起的变形成正比,电荷的正负将取决于所加机械力是张力还是压力。 逆压电效应:当在晶片两面加不同极性的电压时,晶片会产生机械形变,其形变大小正比于所加的电压强度;形变是压缩还是伸张,则决定于所加电压的极性。 Lq 为石英晶片的动态等效电感 Cq 为石英晶片的动态等效电容 Rq 为石英晶片的动态等效电阻 C 0为石英谐振器的静态电容 品质因数: q q q C L R Q 1 = fs :串联谐振频率,即石英晶片本身的自然频率: q q 21C L f s π= fp :和石英谐振器的并联谐振频率: q S q 0q 0q p 121C C f C C C C L f + = =+π 2. 陶瓷滤波器 原理与参数同石英晶体滤波器 3. 声表面波滤波器 原理:电声效应 4.螺旋滤波器

ZigBee学习Z-stack外部中断

ZigBee学习Z-stack外部中断 硬件抽象层:就是对硬件层做好了各种初始化,用户不用考虑硬件的初始配置,直接使用即可。 hal_driver.c文件: HalDriverInit():用户可在此函数中添加硬件的初始化操作,如定时器、ADC、DMA、FLASH、AES、LCD、LED、UART、KEY、SPI、HID等(还有用于配置外部中断,类似按键的中断方式查询键值) Hal_ProcessEvent(): 处理HAL发生的事件、如:KEY、LED、电源管理等,用户可以在此添加处理自己的HAL事件,此事件ID必须是唯一的,定义在hal_driver.h中。如:HAL_KEY_EVENT(按键轮询与抖动)、HAL_LED_BLINK_EVENT(LED闪烁)、HAL_SLEEP_TIMER_EVENT(Power saving). Hal_ProcessPoll(): 被osal_start_system()调用,用于HAL_Timer和HAL_UART的事件轮询,关于系统编译连接,只要没有定义相关的宏定义,相应的驱动就不会编译进去,减少代码占用的空间。有以下的宏定义: 具体操作是: Options->C/C++ Options->Preprocessor->Defined Symbols->enter:HAL_XXX=TRUE; when XXX is ADC,UART,LED,LCD,KEY 不编译进代码,只要将其定义成FALSE 如何定做适合自己的HAL处理的程序 ①修改原文件的方式: 1、HAL\include下的头文件应该保留一样。 2、在HAL\Target\hal_xxx.c修改相应的驱动函数,hal_adc.c, hal_key.c, hal_lcd.c, hal_led.c, hal_timer.c, and hal_uart.c 3、硬件驱动配置可以被修改在hal_board_cfg.h ②增加用户自己的目标驱动 1、增加新的头文件,在hal\include 2、在hal\Target\hal_xxx.c添加自己运行函数,xxx为自己的目标 3、如果GPIO有冲突或者没用到,应该保证驱动不被编译,否则后果严重。 4、检查GPIO有没有正确设置或冲突,通过hal_board_cfg.h 5、不想被编译,或者是老的文件,没用到的文件,可以通过选择options->"Exclude form build" 外部中断程序中断处理函数的定义:可以查看 hal\Target\hal_XXX.c\hal_mcu.h HAL_ISR_FUNCTION(f,v) HAL_ISR_FUNCTION (prototype, vector) { /* Do something when this interrupt happens!!! */ }

zigbee学习笔记讲解

关于ZIGBEE技术 Zigbee的由来 在蓝牙技术的使用过程中,人们发现蓝牙技术尽管有许多优点,但仍存在许多缺陷。对工业,家庭自动化控制和遥测遥控领域而言,蓝牙技术显得太复杂,功耗大,距离近,组网规模太小等,而工业自动化对无线通信的需求越来越强烈。正因此,经过人们长期努力,Zigbee协议在2003年中通过后,于2004正式问世了。 Zigbee是什么 Zigbee是一个由可多到65000个无线数传模块组成的一个无线数传网络平台,十分类似现有的移动通信的CDMA网或GSM网,每一个Zigbee网络数传模块类似移动网络的一个基站,在整个网络范围内,它们之间可以进行相互通信;每个网络节点间的距离可以从标准的75米,到扩展后的几百米,甚至几公里;另外整个Zigbee网络还可以与现有的其它的各种网络连接。例如,你可以通过互联网在北京监控云南某地的一个Zigbee控制网络。 不同的是,Zigbee网络主要是为自动化控制数据传输而建立,而移动通信网主要是为语音通信而建立;每个移动基站价值一般都在百万元人民币以上,而每个Zigbee―基站‖却不到1000元人民币;每个Zigbee 网络节点不仅本身可以与监控对对象,例如传感器连接直接进行数据采集和监控,它还可以自动中转别的网络节点传过来的数据资料; 除此之外,每一个Zigbee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。 每个Zigbee网络节点(FFD和RFD)可以可支持多到31个的传感器和受控设备,每一个传感器和受控设备终可以有8种不同的接口方式。可以采集和传输数字量和模拟量。 Zigbee技术的应用领域 Zigbee技术的目标就是针对工业,家庭自动化,遥测遥控,汽车自动化、农业自动化和医疗护理等,例如灯光自动化控制,传感器的无线数据采集和监控,油田,电力,矿山和物流管理等应用领域。另外它还可以对局部区域内移动目标例如城市中的车辆进行定位. 通常,符合如下条件之一的应用,就可以考虑采用Zigbee技术做无线传输:1.需要数据采集或监控的网点多; 2.要求传输的数据量不大,而要求设备成本低; 3.要求数据传输可性高,安全性高; 4.设备体积很小,不便放置较大的充电电池或者电源模块; 5.电池供电; 6.地形复杂,监测点多,需要较大的网络覆盖; 7.现有移动网络的覆盖盲区; 8.使用现存移动网络进行低数据量传输的遥测遥控系统。 9.使用GPS效果差,或成本太高的局部区域移动目标的定位应用。 Zigbee 技术的特点 省电:两节五号电池支持长达6个月到2年左右的使用时间。 可靠:采用了碰撞避免机制,同时为需要固定带宽的通信业务预留了专用

2016年度秋物联网技术基础学习知识本科试卷

2016年秋|物联网技术基础|本科(试卷) 1. 以下关于EPC-96I型编码标准的描述中错误的是( )。 (A) 用来标识是哪一类产品的对象分类字段长度为24位 (B) 用来标识产品是由哪个厂家生产的域名管理字段长度为28位 (C) 用来标识每一件产品的序列号字段长度为36位 (D) 用来标识编码标准版本的版本号字段长度为6位 分值:2 2. 以下关于入侵检测系统特征的描述中,错误的是( )。 (A) 监测和发现可能存在的攻击行为,采取相应的防护手段 (B) 重点评估DBMS系统和数据的完整性 (C) 检查系统的配置和漏洞 (D) 对异常行为的统计分析,识别攻击类型,并向网络管理人员报警 分值:2 3. 基于物联网的智能安防系统不具有的特点是( )。 (A) 覆盖范围更

小 (B) 更实时 (C) 更全面 (D) 更智慧 分值:2 4. 以下关于ADSL接入技术的描述中错误的是( )。 (A) 从互联网下载文档的信道称为上行信道 (B) 数字用户线是指从用户家庭、办公室到本地电话交换中心的一对电话线 (C) 家庭用户需要的下行信道与上行信道的带宽是不对称的 ADSL技术可以最大限度地保护电信运营商在组建电话交换网方面的投 (D) 资 分值:2 5. 以下关于数据增长特点的描述中错误的是( )。 新的数据种类与新的数据来源在不断增 (A) 长

(B) 同一类数据的数据量在快速增长 (C) 数据量单位的增长在加快 (D) 数据增长的速度在加快 分值:2 6. 基于物联网技术的环境监测网络不具有的特点是( )。 监测更加精 (A) 细 监测更加全 (B) 面 监测数据更 (C) 少 监测更加实 (D) 时 分值:2 7. 下面关于智能医疗环境中的医院信息系统的描述中错误的是( )。

模拟电子技术基础_知识点总结

第一章半导体二极管 1.本征半导体 ?单质半导体材料是具有4价共价键晶体结构的硅Si和锗Ge。 ?导电能力介于导体和绝缘体之间。 ?特性:光敏、热敏和掺杂特性。 ?本征半导体:纯净的、具有完整晶体结构的半导体。在一定的温度下,本征半导体内的最重要的物理现象是本征激发(又称热激发),产生两种带电性质相反的载流子(空穴和自由电子对),温度越高,本征激发越强。 ◆空穴是半导体中的一种等效+q的载流子。空穴导电的本质是价电子依次填补本征晶体中空位, 使局部显示+q电荷的空位宏观定向运动。 ◆在一定的温度下,自由电子和空穴在热运动中相遇,使一对自由电子和空穴消失的现象称为 复合。当热激发和复合相等时,称为载流子处于动态平衡状态。 2.杂质半导体 ?在本征半导体中掺入微量杂质形成的半导体。体现的是半导体的掺杂特性。 ◆P型半导体:在本征半导体中掺入微量的3价元素(多子是空穴,少子是电子)。 ◆N型半导体:在本征半导体中掺入微量的5价元素(多子是电子,少子是空穴)。 ?杂质半导体的特性 ◆载流子的浓度:多子浓度决定于杂质浓度,几乎与温度无关;少子浓度是温度的敏感函数。 ◆体电阻:通常把杂质半导体自身的电阻称为体电阻。 ◆在半导体中,存在因电场作用产生的载流子漂移电流(与金属导电一致),还才能在因载流子 浓度差而产生的扩散电流。 3.PN结 ?在具有完整晶格的P型和N型半导体的物理界面附近,形成一个特殊的薄层(PN结)。 ?PN结中存在由N区指向P区的内建电场,阻止结外两区的多子的扩散,有利于少子的漂移。 ?PN结具有单向导电性:正偏导通,反偏截止,是构成半导体器件的核心元件。 ◆正偏PN结(P+,N-):具有随电压指数增大的电流,硅材料约为0.6-0.8V,锗材料约为0.2-0.3V。 ◆反偏PN结(P-,N+):在击穿前,只有很小的反向饱和电流Is。 ◆PN结的伏安(曲线)方程: 4.半导体二极管 ?普通的二极管内芯片就是一个PN结,P区引出正电极,N区引出负电极。

高频电子线路(知识点整理) (2)

127.02ωωω-=?高频电子线路重点 第二章 选频网络 一. 基本概念 所谓选频(滤波),就是选出需要的频率分量和滤除不需要的频率分量。 电抗(X)=容抗( )+感抗(wL) 阻抗=电阻(R)+j 电抗 阻抗的模把阻抗看成虚数求模 二.串联谐振电路 1.谐振时,(电抗) ,电容、电感消失了,相角等于0,谐振频率: ,此时|Z|最小 =R ,电流最大 2.当ww 0时,电压超前电流,相角大于0,X>0阻抗是感性; 3.回路的品质因素数 (除R ),增大回路电阻,品质因数下降,谐振时,电感和电容两端的电位 差大小等于外加电压的Q 倍,相位相反 4.回路电流与谐振时回路电流之比 (幅频),品质因数越高,谐振时的电流越大,比值越大,曲线越尖,选频作用越明显,选择性越好 5.失谐△w=w (再加电压的频率)-w (回路谐振频率),当w 和w 很相近时, , ξ=X/R=Q ×2△w/w 是广义失谐,回路电流与谐振时回路电流之比 6.当外加电压不变,w=w =w 时,其值为1/√2,w-w 为通频带,w ,w 为边界频率/半功率点,广义失谐为±1 7. ,品质因数越高,选择性越好,通频带越窄 8.通频带绝对值 通频带相对值 9.相位特性 Q 越大,相位曲线在w 0处越陡峭 10.能量关系 电抗元件电感和电容不消耗外加电动势的能量,消耗能量的只有损耗电阻。 回路总瞬时储能 回路一个周期的损耗 , 表示回路或线圈中的损耗。 就能量关系而言,所谓“谐振”,是指:回路中储存的能量是不变的,只是在电感与电容之间相互转换;外加电动势只提供回路电阻所消耗的能量,以维持回路的等幅振荡,而且谐振回路中电流最大。 11. 电源内阻与负载电阻的影响 Q L 三. 并联谐振回路 1.一般无特殊说明都考虑wL>>R ,Z 反之w=√[1/LC-(R/L)2]=1/√RC ·√1-Q 2 2.Y(导纳)= 电导(G)= 电纳(B)= . 与串联不同 3.谐振时 , 回路谐振电阻R= =QwL=Q/wC )1(C L ωω- 01 0=-=C L X ωωLC 10=ωCR R L Q 0 01 ωω= =) (j 0 )() ( j 11 ω ψωω ω ωωe N Q =- +=Q 702ωω=??2 1 11)(2 =+=ξξN Q f f 0702=??Q f f 1207.0= ?ξ ωωωωψ arctan arctan 00-=??? ? ??-?-=Q ??? ??-+≈C L R C L ωω1j ??? ?? -+=L C L CR ωω1j 1 ??? ??-+L C L CR ωω1j L CR ??? ?? -L C ωω 101= -=L C B ωωLC 1p =ωCR R L Q P P p 1ωω= =C R L R p p p p ωω==C ω1 - + – C V s L R I s C L R CR L 2222222 1cos 21sin 21sm sm sm V CQ t V CQ t V CQ w w w C L 22=+=+=ωω2 sm 02sm 21π2121π2CQV R V w R ?=??=ωQ CQV V CQ w w w R C L ?=?=+π212 1π2212sm 2 sm 2每周期耗能回路储能π2 =Q 所以R R R R Q L S 0 1++=

ZigBee学习电子笔记

第一讲

第二讲 https://www.wendangku.net/doc/f58007349.html,2530通用I/O口有21个:P0/P1/口个8个;P2口5个,其中,P1_0、P_1 有20mA的驱动能力,其余只有4mA 2.IO口配置相关的寄存器(3个) PxSEL: P0SEL、P1SEL、P2SEL,每个寄存器是1byte,分别用来设定3个口的工作模式。

IO的两种工作模式: 1.普通IO口模式:点灯、监测按键输入 2.片上外设模式:作为串口或者其他非普通IO口 PxDIR:P0DIR/P1DIR/P2DIR,每个寄存器占一个字节,用来设定IO口作为输入还是输出

PxINP:P0INP/P1INP/P2INP: 输入情况下,注意P2INP寄存器后3位的用法(见下图):

输出示例(以P0_0为例): 1)设置P0_0为普通IO口工作模式,非片上外设:P0SEL=0xFE(&11111110) 2)让P0_0作为输出用,非输入监测用:P0DIR=0x01(+ 00000001) 3)输出(如P0_0=0或P0_0=1等)。 输入示例(让P1_2作为输入): 1)设置P1_2为普通IO口工作模式,非片上外设:P1SEL=0xfd(11111011) 2)让P1_2作为输入检测用,非输出用P1DIR=0xfd(11111011) 3)选择上拉、下拉或三态中的一种输入(因为上电的时候寄存器默认为0,所以IO口都默认工作在普通IO口输入、上下拉模式) 4)检测用: If (P1_2= =0 or 1) { } Else { } 总结:由此可见,当芯片上电初始化后,3组IO口默认工作在普通IO口下的输入监测、上拉输入模式。 自己编程示例:

CC2530开发环境搭建与快速入门攻略

OHY研修笔记之“物联网应用技术”01 CC2530单片机开发技术开发环境搭建与快速入门攻略 广东职业技术学院 2017年4月15日

【引言】 在本次笔记中讲述2部分内容: 第一部分:CC2530的开发环境搭建。 第二部分:建立第一个工程-LED跑马灯程序。 通过这两部分的学习,完成掌握了CC2530单片机的开发流程,通过一个LED 跑马灯程序,快速掌握IAR开发环境下CC2530单片机的工程创建、代码编写、程序编译、仿真调试和代码烧写,达到快速入门的目的。 第一部分:CC2530的开发环境搭建 由于CC2530使用的是8051内核,需要选用IAR的IAR Embedded Workbench for 8051版本,作为开发环境。这里需要安装四个内容:IAR软件、CC Debugger 仿真器驱动、烧写软件SmartRF Flash Programmer和Z-Stack协议栈。 一、IAR开发环境的安装 1、打开“IAR-EW8051-8101”文件中的“ew8051”文件夹,运行setup.exe程序,安装8.10.1版本的IAR软件,点击下一步即可License输入界面。 2、因为在要输入License的对话框中要输入序列号,先运行“IAR-EW8051-8101”文件中keygen.exe软件,生成相关的信息。

3、先输入License number,然后下一步。 4、再输入对应的License Key,点击下一步。 5、选择Custom安装。

6、选择所需要安装的组件。 7、如有需要可以更改安装的路径。 8、然后一直下一步到Install,开始安装

高频电子线路读书笔记

高频电子线路读书笔记 【篇一:晶体管放大电路设计读书笔记】 一、放大电路的工作 1、功率开关mos管结构:在内部将大量fet并联连接起来的,每 一个单元中流过的电流很小,防止局部的电流集中,同时改善高频 特性。 2、耦合电容:使输入信号与电路或电路与者电路与电路的耦合。 3、电源的去耦电容:降低电源对gnd的交流阻抗的电容(旁路电容),当没有这个电容时,电路的交流特性变的很奇特,严重时电路 产生震荡。 4、在低频电路中,去耦电容的安装位置不是问题;但在高频电路中,安装位置比什么都重要,引线也要短。 5、 npn型的ttl三极管可以理解为:由集电极进行输出的电流源。 6、在共射电路中,发射极接个电阻re,可以认为在改电路中加了负 反馈,由于负反馈,re有抑制hfe(电流放大系数)的分散性和vbe的 温度变化而产生的发射极电流变化的作用。 7、 ttl三极管共射电路中:发电极电位设定在vcc与ve的中点。 二、增强输出电路 1、ttl三极管工集电路中:集电极电位设定在vcc与gnd的中点。 2、射机跟随器大多数用在电路的输出极,因为需要经常处理大电流,所以必须注意晶体管和电阻的发热问题。 3、将射极跟随器组合在共发射极放大电路上来降低输出阻抗的放大 电路。 4、由于集电极电容接地,故不会发生密勒效应,因此频率特性变好。 5、在晶体管电路中,通常越提高放大率,噪音就越增加,这是由于 进行放大的同时,电路内部产生的噪音也被放大的缘故。 6、当op放大器需要驱动大的负载时,需要将op放大器与射极跟 随器相互结合。 三、功率放大器的制作与设计 1、功率放大器的一般规律:首先电压放大得到必要的输出;之后放 置能驱动低阻抗负载的电流缓冲放大器。 2、解决发热问题是制作功率放大器的重点。 3、用一个晶体管进行工作的集电极电流的适当值为最大电流的1/3 左右。

zigbee学习笔记3-通信例程之GenericApp

zigbee学习笔记3-通信例程之GenericApp 2011-09-22 11:02 刚入手的朋友,对Z-Stack 非常迷糊的时期,如果能够跑通几个例子、看几个演示,那么可以大大提高学习兴趣;另外如果知道某个例子的大致功能及实现,那么在去看具体实现过程目的性就非常明确。 首先来看看TI 究竟有哪些例子:可以看出其例子是非常丰富的。 GenericApp(设备互相绑定传送信息-hellow world),Location(定位),SampleApp(设备发送和接收LED灯信息),SimpleApp(温度和灯开关,和智能家居结合使用的,have Profile),HomeAutomation(智能家居的应用,have Profile),SerialApp(串行传输的应用),Transmit(发送应用),ZLOAD(协议文件夹中只有Source)。这样看来还是不少的。其中SampleApp 例子已经在前面的学习中有所涉及,可以说前面的所有学习都是基于这个例子的,所以这里就不测试它了。Location 是定位的测试例子,这里我的硬件是不够的,所以也不做测试。其他我都做点测试,能成功的就成功,不能成功的就失败,这个我也没办法。 1、GenericApp 这个实验是两个模块相互绑定后可以对传数据,模块绑定之后,两个模块之间相互传输字符串"Hello World"。 实验说明:首先启动一个网络协调器,协调器如果建立网络成功后,会在LCD 上显示该节点为协调者同时显示网络ID号。然后打开一个终端节点或路由器的电源,此时节点会自动加入网络。加入网络成功后,节点会显示自己的节点类型、网络地址和父节点的网络地址。 节点加入网络成功后,首先把主机模块的摇杆往右拔一下,然后把要绑定模块的RIGHT按一下,如果两边的LED4 都熄灭或是点亮后马上熄灭,表示绑定成功。绑定成功后,两个节点就开始相互定时发送数据,并在对方的LCD屏上显示出来,发送的数据为"Hello World"。此时如果把相互绑定模块中的left 按一下,可以发送Match Description Request命令,对方则显示Match Description Request信息。(以上无线龙手册提供) 2 关键函数分析: 我开始没搞清楚,功能是个啥大约浏览了下,这个例子似乎还与设备的所以还决定看看程序来判断这个例子的功能。绑定有关系,在key control 描述中发现 //***************** Key control**************************// SW2: initiates end device binding //--初始化中断设备绑定 SW4: initiates a match description request //--初始化一个匹配描述请求 2.1 按建处理程序中发现: if ( keys & HAL_KEY_SW_2 ) { HalLedSet ( HAL_LED_4, HAL_LED_MODE_OFF ); // Initiate an End Device Bind Request for the mandatory endpoint dstAddr.addrMode = Addr16Bit; dstAddr.addr.shortAddr = 0x0000; // Coordinator ZDP_EndDeviceBindReq( &dstAddr, NLME_GetShortAddr(), GenericApp_epDesc.endPoint, GENERICAPP_PROFID, GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList, GENERICAPP_MAX_CLUSTERS, (cId_t *)GenericApp_ClusterList, FALSE ); } 很明显这里按键2(右键)是发送绑定请求的命令。 if ( keys & HAL_KEY_SW_4 ) { HalLedSet ( HAL_LED_4, HAL_LED_MODE_OFF ); // Initiate a Match Deion Request (Service Discovery) dstAddr.addrMode = AddrBroadcast; dstAddr.addr.shortAddr = NWK_BROADCAST_SHORTADDR; ZDP_MatchDescReq( &dstAddr, NWK_BROADCAST_SHORTADDR, GENERICAPP_PROFID,

相关文档