当前位置:文档之家› 利用MSP430扫描接口使用GMR传感器

利用MSP430扫描接口使用GMR传感器

利用MSP430扫描接口使用GMR传感器
利用MSP430扫描接口使用GMR传感器

摘要

MSP430F42x系列微控制器的扫描接口SIF(Scan Interface,)提供了一种新颖的、低功耗的方法来供多种类型传感器测量旋转(rotation)。许多传感器结构产生一个正交信号序列,但是有些不产生。SIF可适应多种输入信号——而不只是正交信号。

该应用报告描述了旋转检测器的实现,该旋转检测器使用一对可检测磁场的巨磁阻GMR(Giant Magneto-Resistive,)传感器。传感器的分布使它们不使用正交信号序列,这提供了讨论非正交情况如何配置SIF的机会。讨论了调试SIF应用程序的技术,提供了一个设计非正交进程状态机(processing state machines)的工具。

目录

摘要 (1)

目录 (1)

图目录 (2)

表目录 (2)

1 引言 (3)

2 硬件 (3)

2.1 磁铁与传感器有关的选择和配置 (4)

2.2 GMR传感器配置和它们与SIF的接口 (5)

3 软件 (6)

3.1 校准 (7)

3.1.1 概述 (7)

3.1.2 控制寄存器设置 (7)

3.1.3 TSM (8)

3.1.4 PSM (8)

3.2 主操作 (9)

3.2.1 控制寄存器修改 (9)

3.2.2 TSM (9)

3.2.3 PSM (9)

3.2.4 采样率 (11)

4 功率分析 (12)

5 调试 (13)

5.1 PSM跟踪功能 (13)

5.2 PSM电子数据表 (14)

5.2.1 设计和人工分析 (14)

5.2.2 联合PSM跟踪功能和电子数据表 (15)

5.2.3 PSM仿真器 (16)

附录A 电路原理图 (18)

图目录

图1 SIF/GMR 硬件 (3)

图2 SIF/GMR 硬件(不带转轮) (4)

图3 转轮装置 (4)

图4 传感器响应磁场的输出 (5)

图5 基本SIF代码结构 (6)

图6 传感器/磁铁配置与S2/S1的值 (9)

图7 PSM状态机图解 (10)

图8 角场宽度 (12)

图9 PSM电子数据表(设计和人工分析) (15)

图10 PSM仿真器 (17)

表目录

表1 控制寄存器在校准中的设置 (7)

表2 时序状态机概要 (8)

表3 进入主操作时控制寄存器的修改 (9)

表4 PSM状态机入口 (10)

表5 理论功耗(1) (2) (3) (12)

1 引言

MSP430FW42x系列的扫描接口(SIF)外设模块是一种测量装置旋转的新方法。它的优点在于电源效率和适应性。因为它在CPU睡眠时运行,所以需要很低的平均电流,通常小于50 μA(取决于使用的传感器,待检测的最大转速等)。

就适应性而言,它可用于多种类型的传感器。虽然设计初衷是用于测量旋转,但这不是必要的;线性运动同样可以测量。实际上,SIF可用于一到四个传感器产生循环输出流的多种应用中。

该应用报告讨论了带GMR传感器的SIF接口的使用。GMR传感器是一种相对较新型的、用于检测磁场的新型固态器件,在很多应用中正在取代霍尔效应传感器(Hall Effect Sensors)。该应用报告中描述的项目所使用的进程状态机(PSM:processing state machine)不同于大多数SIF应用中普遍使用的正交进程状态机(quadrature PSM)。

这里假设读者已经学习了用户指南中的SIF章节,并且熟悉SIF的基本功能和结构。

2 硬件

该项目中使用的硬件是一个带定制连接子卡的标准MSP430 64脚FET板(可从TI网站https://www.doczj.com/doc/246156398.html,获得)。图1是该装置的图像。

图1 SIF/GMR 硬件

图2是不带转轮的图片,露出了下面的传感器IC。

图 2 SIF/GMR 硬件(不带转轮)

图3是转轮装置的侧面图并且标出了它的组件。

图 3 转轮装置

由上面的照片和图例可以看出,一个标准FR4 PCB 材料的转轮由一个尼龙螺栓和两个螺母安装在板面之上。该转轮通过手动转动,MSP430对旋转进行测量。在转轮的最上面安装了两个小磁铁。GMR 传感器位于转轮的下方的子板之上。该项目中使用的传感器是AA002-02器件,由NVE 制造。它们按这种方法安装是为了对磁场的改变最敏感。(更多信息参见制造商的数据手册。)这个转轮机械的精度不足以用于大多数产品应用,但是为SIF 功能产生一个可靠的示例是足够的。

子板的电路原理图在附录A 中。再版这块板子的Gerber 文件在与该文档一起的代码文件中。注意电路原理图中画出了四个GMR 传感器,但是代码中只使用了两个。在这个项目中,连接到SIFCH0和SIFCH1的IC 焊盘是组装好的,焊盘之间相距90o。然而,这两个传感器可以位于四个焊盘中的任意两个。(使用另一个通道的话代码需要调整。)

2.1 磁铁磁铁与传感器有关与传感器有关与传感器有关的选择和配置的选择和配置

该装置中传感器和磁铁之间的距离大约为3/16英寸(0.5厘米)。

尽管GMR 传感器和各种类型磁铁之间相互作用的完整分析不在该文档讨论范围之内,

磁铁的选择和配置的深远影响还是应该受到关注。比如,较大的磁铁产生较大的磁场,当给定最大旋转速度时,可以减少SIF需要的采样率,从而节省能量。换句话说,如果磁铁的磁场覆盖转盘10o的角空间而不是只有5o,那么传感器只需以一半的频率检查磁场的存在(见章节4)。

另一个例子是磁铁/传感器配置——即使用的磁铁和传感器的数量以及它们放置的位置——影响软件实现中使用的进程状态机(PSM)。这可能会影响鲁棒性,也可能会影响粒度,因为磁铁/传感器可以配置来对于整个旋转的小部分敏感而不是只检测整个或半个旋转。如果只使用了一个传感器和一个磁铁,只有在一个方向上的整个旋转能够被捕获。如果使用了一个传感器和两个位于转轮上对边位置的磁铁,一个方向上的半个旋转能够被测量。

2.2 GMR传感器配置和它们与SIF的接口

该实现中选择的特定GMR传感器使用的是惠斯通电桥配置。电桥一边的上拉电阻有一个护罩,用于保护它不被磁场干扰;另一边的下拉电阻有一个护罩。如果加上一个差分运算放大器,这样的配置可以加倍传感器的灵敏度。一个运算放大器在传感器的单端输出(即只使用电桥的一边)相对较小的情况下同样有用;在该装置中,它接近100mV,即使相对靠近磁铁。使用差分信号并且增加合适的数量的放大器可以使信号明确的区分出磁铁的存在与否。

然而在某些设计中并不需要运算放大器。惠斯通电桥(定义上是一个简单的分压器)的一边直接与SIFCHn电桥(SIFCH0和SIFCH1,分别表示连接传感器1和2)连接。通过测试发现,在实验条件下不用差分放大器也可以完成可靠的运算。在较高温度,较弱磁场,或者较大传感器/磁铁距离情况下的运算可能需要这些额外的差分处理。

图4是当磁场通过一个传感器上方时传感器的输出在示波器中的显示。

图4 传感器响应磁场的输出

在图4中,每个冲激表示一个传感器被激活(SIFCOM被拉低)的时间周期。图4中的基线电压是没有磁铁时的电平。当磁铁通过传感器上方时可以看到一个接近120mV的偏差。

如果只考虑功能,分压器可以直接连接到V CC和地,这样可以尽可能快地对传感器的输出进行采样。然而,在设计上也非常关注最小化功耗。因为MSP430的重点仍然是超低功耗,并且考虑到SIF的设计也有相同的目标,所以考虑如何配置GMR装置来降低功耗是有意义的。

分压器的底部连接到SIFCOM而不是地面。SIFCOM的一个默认配置是当SIF的时序状态机TSM(Timing State Machine)需求时把它接地(SIFVSS),不接地的时候,它处于高阻抗状态。因此,当SIF在采样之间处于睡眠模式时分压器并不消耗电流,也就是说大多数时间它是不消耗电流的。因为每个传感器消耗的电流超过0.5mA,是该设计中最大的消耗,这是一个非常可观的节省。

如果使用了运算放大器来放大信号,那么使用一个可由SIFCOM驱动的(如果可能的话设置为低电平有效)带睡眠模式输入的运算放大器是很重要的。这也将允许它在不使用的时候关掉电源。在这些情况下,能够在很短的时间完成快速是有益的,它可以使总的采样时间保持到最小限度。

3 软件

SIF的主要优点在于,一旦被配置和使能,CPU可以处于休眠模式,并且只在计数达到某特定值时或者处理错误时被唤醒。因此,旋转检测被委托给SIF。

SIF的一个基本的软件实现在图5中以伪代码的形式列出。

图5 基本SIF代码结构

3.1 校准

3.1.1 概述

SIF的集成DAC驱动门限电压,集成比较器使用门限电压来确定传感器在SIFCHn的电压是高还是低。为DAC寻找一个能始终对传感器信号准确评估的门限值非常重要。不准确的评估导致PSM错误,或者迫使CPU根据发生的情况去猜测(导致潜在的误差),或者用户必需参与决定如何处理。这些都是不可取的。

本项目使用的方案相对简单。当用户快速转动转轮时采样和分析大量的采样点。假设在这些样本中,至少有一些表示极高和极低值附近的值。第二个假设是两种极值的均值是所有信号均值的典型值。为了量化这些样本,DAC的输出被CPU提高或降低直到比较器输出翻转。CPU读取结果并且保存极高极低值。

当该过程结束,会进行一个检查来确保极高极低值之间的最小差距被检测到。如果该差距没有出现,表明找到的极值不正确,校准过程重复进行。当差距足够时,求极高极低值的平均来找到每个传感器的平均门限,并且添加迟滞来产生DAC0/1和DAC2/3对。

在校准过程中,LEDs通知用户校准进程。有四个LEDs;在校准时,它们以二进制形式向上计数。当代码确定已经达到可接受的DAC水平,所有四个LEDs一起闪烁几次。此时,推荐将转轮置于任何传感器都不接近磁铁的位置,因为这是PSM期望的起始条件。

在该项目使用的方案中,校准的目标是尽可能保持比较器输出实时,而不是最小化功耗。因此,采样率设置到最低的可能分频(最快时钟)。每两个ACLK周期采一次样。

当然,这不是唯一可能的SIF校准方案。有大量的选择提供给工程师。一些方案允许在主操作中周期校验,这可以补偿温度诱发的或时间引起的传感器对磁场响应的能力的改变。用户介入校准过程可以带来更好的校准,但是要求用户介入可能是麻烦的。

如果“高”(存在磁铁)和“低”(不存在磁铁)之间的差距大那么校准会容易一些。再次重复,添加差分运算放大器或者使用较强磁场的磁铁可以增加灵敏度。

3.1.2 控制寄存器设置

表1列出了控制寄存器,它们在校准中的设置,以及为什么选择这样的设置。

表1 控制寄存器在校准中的设置

注意SMCLK作为高频SIFCLK源。内部振荡器也可以使用,但是在本应用中使用4-MHz 选项没什么价值,而1-MHz选项消耗的电流和工作在默认频率1.048-MHz的DCO消耗的电流基本相同。(如果DCO被配置到更高的速度,从而消耗更多电流,SIF内振荡器将会是有利的。)

SIF能够唤醒DCO;因此,可以配置设备为LPM3而不用禁用SIF。SIF只有在TSM工作时唤醒DCO,当完成TSM时禁用它。这意味着当TSM未被激活时,设备消耗很少的0.9μA,而不是消耗大约92μA的基极电流——这是巨大的能量节省。MSP430 DCO的极快速启动使之成为可能。

3.1.3 TSM

GMR的TSM在一个相对较短的时间周期内保持活动状态,这个时间周期是十个SMCLK周期。如果SMCLK处于默认频率(1.048 MHz)没有分频,十个SMCLK周期为10/1048000或者说稍微低于10μs。

表2列出TSM的步骤,并且提供它们功能和持续时间的解说。

表2 时序状态机概要

建议在软件中研究TSM的值,这些软件在用户指南中有描述。

3.1.4 PSM

在校准中不使用PSM;取而代之的是,CPU直接读取比较器输出。不过,没有办法禁

用PSM,因此创建一个“虚拟”PSM并且分配给SIFPSMV寄存器。

3.2 主操作

3.2.1 控制寄存器修改

在很大程度上,控制寄存器在校准和主操作中的设置相同。

表3列出了所做的修改。

表3 进入主操作时控制寄存器的修改

采样率的选择参看章节3.2.4。

3.2.2 TSM

TSM与校准中使用的完全相同。

3.2.3 PSM

一旦校准结束,DAC的值就位以估计传感器的输出。逆时针方向旋转转轮形成一个S2/S1信号序列:00->10->00->01->00->10(见图6)。

图6 传感器/磁铁配置与S2/S1的值

这里导致了一个问题:有两种S2/S1对应“00”状态。状态从“10”或者“01”的迁移总是会到状态“00”。这就产生了一个重要问题。如果PSM遇到一个10->00的迁移,它如何得知转轮转动的方向?这点很重要,因为它指示了PSM应该期待一个“01”还是“10”作为下一个S2/S1状态。PSM应该在获得下一个样本时立即做出判决。但是,如果下一个样本有错误,错误不会被发现。

因此,此时必须判断是否允许这类错误未检测出,或者假设所有的运动坚持一个方向或另一个方向。该设计的实现是假设所有运动都是逆时针方向。实施该机制必须确保反方向是不可能的。

该问题的另一个解决方案是改变传感器/磁铁配置来反映其它SIF应用中常用的正交序列:00->10->11->01->00->10。这可以通过移动磁铁使得它们之间相距90o而不是180o来实现。

图7 PSM状态机图解

注意现在这里有两种类型的“00”:一种是离开S2/S1状态“01”,一种是离开S2/S1状态“10”。每一个在PSM内存中有它自己的状态组(图7中的“000xx”和“100xx”)。PSM数据字节Q4中的一个可用的地址位,被用于State 8的下一个信号入口。(就是状态组“100xx”中的“1”。)

表4表明了图7中的状态机图在内存中的实现方法。

表4 PSM状态机入口

一个基本的正交PSM将只包含地址入口0x00-0xFF。在该PSM中,0x0C->0x0F状态分组被位于0x10->0x13的分组替代。为了定向到这些状态,之前的S2/S1对必需是“00”。事实上这里是第二个“00”状态。注意状态0x08有Q4,这将它定向到0x10而不是0x00。

注意如果遇到了一个S2/S1信号对“11”,它导致一个错误状态(0x03,0x07,0x0B,等)。同样的,状态0x0C->0x0F被看作错误状态因为为了到达这些状态,前一个S2/S1对必需是“11”。因为在这个项目的传感器/磁铁配置中“11”永远不可能出现,这些都被看成是错误。(磁铁彼此之间距离180o,而传感器彼此之间距离90o。)

由入口“00”开始,假设遇到一个S2/S1对“10”。在计算下一个状态时,它们替代该行最右端的“??”,致使下一个状态偏移0x02。假设遇到另一个“10”样本;这将PSM发送给偏移地址0x0A。另外两个“10”样本(每个重定向回0x0A)之后,将会遇到一个“00”。将0x0A行中的“??”替换成“00”会使下一个状态为0x08,而另一个“00”样本会使下一个状态为0x10。该模式继续回到初始状态入口0x00。

3.2.4 采样率

该文档中讨论的“采样率”是指TSM被触发的频率,这引发一个新的S2/S1对发送给PSM。它由SIFCTL4寄存器中的SIFDIV3Bx/Ax域和SIFDIV2x域联合控制。它们一起根据ACLK选择一个分频,产生一个子时钟驱动TSM。分频值范围从ACLK/2(典型的16.4 kHz)到ACLK/3600(~9 Hz)。

一般来说,特定应用要求的采样率是下面参数的函数:a) 装置的最大角速度b) 磁场

强度足以使比较器能指出磁场的存在时的角宽度。当然,后者也取决于所选的DAC的值。

图8 角场宽度

在该项目使用的装置中,可检测的磁场宽度相当窄。经验观察表明角范围大约为2o宽度。对一个给定的角速度,磁场越宽,为了成功检测到它要求的采样率越低,反之亦然。

角速度可以表示成rotations/second(转/秒),磁场宽度可以表示成小数转数——在这个例子中,为2/360 = 55.6×10-4 rotations(转)。后者除以前者得到一个单位为senconds的结果;它是在该速度下磁铁/传感器联合在比较器输出端产生一个正结果使用的时间。

假设磁场宽度是55.6×10-4rotations,作为一个例子,假设最大角速度是10rotations/second。任何低于1799Hz的采样率都有可能错过传感器窗口。增加10%的错误余地,SIFDIV3Bx/Ax中的分频值应该设为18或者更小。

4 功率分析

正如前面提到的,通过使用SIFCOM激活/停用传感器非常有利于减小功耗。使用上一章的例子,假设使用分频ACLK/18产生TSM的触发频率。这将产生大约1820Hz的采样率。同样假设一个需要10μs来执行的TSM周期。传感器的激活系数为1.8%,每个传感器的平均电流消耗从600μA(假设3.3-V供电)到10μA。

表10列出了每个SIF TSM状态,它对应的理论功耗,和它的持续时间。理论平均电流消耗可以计算。

表5 理论功耗(1) (2) (3)

(1)典型值,假定3-V AVcc

(2)假定2340-Hz采样率

(3)SMCLK周期调整至1μs

微安-微秒总数除以一个周期的微秒数,就是每个样本(TSM周期加上停机时间)的平

均电流(单位μA)。因为周期是无限重复的,该平均值在整个操作中仍然是正确的。

当CPU被唤醒后处理计数更新时需要额外的功耗。看起来似乎会明显增加总的功率消耗,但是因为这是伴随占空比发生的,这个量简直微不足道。假设SIFCNT1的每增加四次CPU被唤醒一次,并且保持200个MCLK周期来处理事件。同样假设MCLK = SMCLK = 1.048 MHz,并且角速度是连续的10 rotations/sencond,如该项目一样是两个磁铁的方案。这意味着SIFCNT1每秒增加20次,在这一秒中CPU必需被唤醒5次。对1.048 MHz,200个MCLK周期需要190μs,每秒五次意味着CPU每秒运行时间稍少于1 ms,占空比低于0.1%。当Vcc = 3V,在激活模式下,设备消耗300μA;因此,周期的CPU唤醒在设备功耗上增加了额外的0.3μA的负荷。很明显这个量受SIFCNT中断设置的影响(每1,4或64个计数唤醒),也受到选择用两个磁铁代替一个的影响。

该列表总结了在SIFGMR应用中可以降低功耗的所有措施。注意有些措施在其它领域中可能需要与对性能的影响进行折中,这些领域在该文档中其它地方有谈到。

减小最大角速度,使得采样率可以降低

使用更强的磁铁,使得传感器窗口增加以及采样率可以降低

使用差分运算放大器(一个额外的功耗源,但是可能增加传感器窗口从而降低采样率)

使用消耗电流较少的传感器

减少传感器数量

最小化TSM的活动时间,最小化TSM中DAC和比较器的活动时间

降低CPU被唤醒处理计数的频率

5 调试

因为SIF的自主性质,它的工作无需CPU介入,所以它的调试面临挑战。TSM合适的驱动传感器的能力可以通过探测传感器的输出来验证。但是一旦被证实,大多数剩余的工作都在SIF内部进行。调试通常依赖于与SIFDEBUG寄存器的联合,实验方法,和对SIF工作的扎实理解。

如果检测到某些错误(比如,SIFCNT寄存器没有计数),PSM通常是用于跟踪到错误原因的最好方法。该数据可由SIFDEBUG寄存器获得。下面的章节描述可用于跟踪PSM功能的两种工具。

5.1 PSM跟踪功能

错误出现后,只简单的在调试环境中人工检查SIFDEBUG寄存器最多可看出目前PSM 处于错误状态。为了通过PSM跟踪确定一切,有必要捕获引起错误的一系列状态。如同任何种类的信号跟踪,获取长时间的数据有利于快速的定位错误。

PSM的跟踪功能包含在和该文档一起的代码文件的main函数中,在下面列出以供参考。

被激活后,该函数在main函数初始化SIF后连续执行。它循环执行,检查SIFDEBUG 寄存器。如果发现一个值不同于之前的值,它记录新的值到存储器。如此,它会在stateList[]数组中记录下一系列状态,忽略重复样本。

因为SIF中断被使能,该跟踪函数被周期的中断。理论上这可能导致丢失状态,但是这是不太可能的,因为ISR操作很简短,而且在大多数情况下同一个S2/S1对会有多重采样,使得特定状态出现多重序列,增加了被捕获到的机会。

从TI获得的,使能SIF后发送设备到LPM3的代码行是没有注释的。这意味着PSM跟踪函数从来没运行到。如果LPM3行在代码外被注释,这将激活PSM跟踪函数。如果测量功耗,有必要解除LPM3行的注释以使CPU在测量中不处于活动状态。(没有看懂!)

5.2PSM电子数据表

该项目包含了一个excel电子数据表,它可用于设计和分析大多数不超过32个状态表入口的SIF PSMs。该电子数据表可被用于两种基本功能:设计和人工分析状态改变,和PSM 仿真。PSM仿真器输入一系列S2/S1值然后根据定义的PSM执行它们,显示将会出现的状态改变。

该电子数据表配有帮助文件。表格中右上角带有红三角的项有帮助文件。

5.2.1设计和人工分析

这一部分电子数据表用于协助组织状态信息和产生一个完整的PSM。它也可以用于协助人工跟踪被提出的PSM的状态迁移,基于S2/S1信号对。它仍然需要对PSM有好的理解,但是可以在很大程度上帮助学习PSM和观察一个特定的状态机。

没有灰色阴影的单元格可以编辑,有阴影的是根据PSM的工作计算出来的。每个状态必需输入的基本信息为:

状态的文本标签

指示状态是否为错误状态(Q6)

指示迁移到该状态是否应该增加/减少计数器(Q2/Q1)

配置没有使用上述指示的地址位(Q7,Q5,Q4)

这部分电子数据表的摘录列于图9以供简单参考。

图9 PSM电子数据表(设计和人工分析)

如果为一个给定的状态设置了Q6,该行整个被涂成红色。这在跟踪错误时有利于分析。

如果PSM只有16个入口,所有Q7,Q5,Q4比特都是0。这是最简单的配置。设置其它位域仍然需要对PSM的工作非常了解,也需要一个好的状态图来获得迁移序列。一旦输入了这些,PSM自动生成在名为“Hex”的列中。它可以直接转换成MSP430代码。

置位任意状态入口的Q4比特都会引起另外16个入口的打开;或者至少增加足够的入口以扩展地址到入口当前指向的地址。

“Next State Address”列的设置可以用于人工分析和状态迁移。该列表示在计算下一个状态时对PSM执行比特的记录。“??”表示AFE向SIF传递的新的S2/S1值。为了找到下一个状态,假想将“??”修改成新的S2/S1值然后将结果从二进制转换到十六进制。这就是新的PSM偏移。在“Table Index”列中应用该值定位到下一个状态。

“PSM in Memory”列从三个不同的角度表示每个PSM入口。第一个是相对于PSM基地址的偏移或索引,PSM基地址在SIFPSMV寄存器中。第二个是该入口的绝对存储器地址,它是基地址和偏移地址的和。(为了正确的计算该列,必需在该列顶端输入基地址。)最后一个是地址里存放的数据,这里说的地址是“Hex”列中的地址。下一章描述该列的使用技巧,这对SIF调试非常有用。

5.2.2联合PSM跟踪功能和电子数据表

PSM一旦输入电子数据表,PSM跟踪功能放入stateList[]的数据可以与“PSM in Memory”列一起使用,以跟踪运行和判断错误是如何发生的。

首先,有必要根据SIFPSMV寄存器的值更新“Base PSM Addr”项。注意任何时候代码被修改那么该指针也会改变,因为它的地址是在编译时候被安排的。该项只包含地址的最后两个十六进制数字,去掉最前面两个。

然后,运行SIF应用程序。如果它只用于跟踪正常的状态迁移流,代码可以在任何时候停止。如果要定位错误,确保SIFCTL1寄存器的SIFIE5比特被设置为优先处理,并且包含

如下程序:

在清除SIFIFG5的行设一个断点。该代码只有在遇到错误状态时才会执行。

运行停止时,stateList[]将会包含一个状态迁移表(假设它们出现了)。假设运行在该数组被填充之前停止,那么跟踪的结尾很容易被确认,因为该数组中没有被写过的地址里的值是“FF”。SIFDEBUG包含可能还没写入stateList[]的最后一个值。从数组中的第一个值开始,比较它与“Absolute”列中的值。如此,第一个状态可以被定位。在这一行中可以找到状态索引(表偏移)和该行中的数据。如果状态是一个错误状态,它被标示为红色。考虑下一个可能出项的S2/S1信号,人工跟踪到下一个可能的PSM状态,然后将它与实际出现在stateList[]里的状态比较。

如果出现了错误,该错误状态可能要么在SIFDEBUG里,要么接近stateList[]数组的结尾。定位到第一个错误状态将它与它之前的非错误状态比较。可以清楚的确认导致错误的S2/S1对。这可以为寻找错误的根源提供线索——比如,采样率不够快以致没能捕获到传感器窗口,或者DAC值设置不合适。

如果代码运行了足够长的时间,stateList[]数组不断填充然后从开始重新填充。如果数据仍然正确,很难在最后一个存储值出现的时候就定位到它,因为指针的下一个值不再是“FF”而是之前的数据。函数可以在移动指针之前重新写入“FF”,但是这样可能花费多于一个TSM周期的时间,从而可能导致SIF数据的丢失。

仿真器器

5.2.3PSM仿真

PSM仿真器可以用于分析一个给定的S2/S1对出现时将会发生什么。这在PSM设计时很有用,用于在遇到“完美”S2/S1序列时确保合适的操作,也用于遇到潜在“问题”序列时检查鲁棒性——比如,传感器发生了“弹跳。”(弹跳是指:转轮没有改变方向,因为传感器处于两磁场边界而引起的方向的短暂改变。类似于设备开关出现的弹跳。)使用仿真器时,首先在电子数据表的左边输入一个完整的PSM,如章节5.2所述。输入初始化PSM状态表索引。然后,输入在传感器/磁铁配置中理论上可能出现的S2/S1信号对(“00”,“01”,“10”或“11”)。引起的状态迁移会在“Next PSM Index" (binary and hex)中列出。如果出现迁移到错误状态,它会被标示为红色。使用这种方法,PSM中的错误和弱点会被识别出。

图10为PSM仿真器。

图10 PSM仿真器

左边列是在电子数据表当前部分中输入的PSM数据的重编译。红色入口表示错误状态。“S2/S1”列包含从传感器得到的数据。在底部可以看到,从传感器接收到一个“11”后,

出现了一个错误状态,PSM列变成红色。这一个错误状态引起了后面连续的错误状态。

附录A 电路原理图

MSP430程序库十一定时器TA的PWM输出

MSP430程序库<十一>定时器TA 的PWM 输出 定时器是单片机常用的其本设备,用来产生精确计时或是其他功能;msp430的定时器不仅可以完成精确定时,还能产生PWM 波形输出,和捕获时刻值(上升沿或是下降沿到来的时候)。这里完成一个比较通用的PWM 波形产生程序。 ? 硬件介绍硬件介绍:: MSP430系列单片机的TimerA 结构复杂,功能强大,适合应用于工业控制,如数字化电机控制,电表和手持式仪表的理想配置。它给开发人员提供了较多灵活的选择余地。当PWM 不需要修改占空比和时间时,TimerA 能自动输出PWM ,而不需利用中断维持PWM 输出。 MSP430F16x 和MSP430F14x 单片机内部均含有两个定时器,TA 和TB ;TA 有三个模块,CCR0-CCR2;TB 含有CCR0-CCR67个模块;其中CCR0模块不能完整的输出PWM 波形(只有三种输出模式可用);TA 可以输出完整的2路PWM 波形;TB 可以输出6路完整的P WM 波形。 定时器的PWM 输出有有8种模式: 输出模式0 输出模式:输出信号OUTx 由每个捕获/比较模块的控制寄存器CCTLx 中的OUTx 位定义,并在写入该寄存器后立即更新。最终位OUTx 直通。 输出模式1 置位模式:输出信号在TAR 等于CCRx 时置位,并保持置位到定时器复位或选择另一种输出模式为止。 输出模式2 PWM 翻转/复位模式:输出在TAR 的值等于CCRx 时翻转,当TAR 的值等于CCR0时复位。 输出模式3 PWM 置位/复位模式:输出在TAR 的值等于CCRx 时置位,当TAR 的值等于CCR0时复位。 输出模式4 翻转模式:输出电平在TAR 的值等于CCRx 时翻转,输出周期是定时器周期的2倍。 输出模式5复位模式:输出在TAR 的值等于CCRx 时复位,并保持低电平直到选择另一种输出模式。 输出模式6PWM 翻转/置位模式:输出电平在TAR 的值等于CCRx 时翻转,当TAR 值等于CCR0时置位。 输出模式7PWM 复位/置位模式:输出电平在TAR 的值等于CCRx 时复位,当TAR 的值等于CCR0时置位。 下图是增计数模式下的输出波形(本程序使用的是增模式3和7): 计数模式计数模式:: 增计数模式 捕获/比较寄存器CCR0用作Timer_A 增计数模式的周期寄存器,因为CCR0为16位寄存器,所以该模式适用于定时周期小于65 536的连续计数情况。计数器TAR 可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。 连续计数模式 在需要65 536个时钟周期的定时应用场合常用连续计数模式。定时器从当前值计数到0FFFFH 后,又从0开始重新计数 增/减计数模式 需要对称波形的情况经常可以使用增/减计数模式,该模式下,定时器先增计数到CCR0的值,然后反向减计数到0。计数周期仍由CCR0定义,它是CCR0计数器数值的2倍。

MSP430单片机最小系统

第八章MSP430F249单片机最小系统 8.1 MSP430单片机下载方式 当单片机程序利用IAR开发环境编译和proteus仿真通过以后,还需要把程序生成的二进制代码烧录进单片机内部闪存中运行,这个过程称为下载或者编程。MSP430单片机支持多种FLASH编程方法:BSL和JTAG。其中BSL是启动加载程序(BootStrap Loader)的简称,该方法允许用户通过标准的RS-232串口访问MSP430单片机的FLASH和RAM。在单片机的地址为(0C00H-1000H)的ROM区内存放了一段引导程序,给单片机的特定引脚加上一段特定的时序脉冲,就可以进入这段程序,让用户读写、擦除FLASH程序。通过BSL无条件擦除单片机闪存,重新下载程序,还可以通过密码读出程序。 另外一种下载程序的方式为JTAG(Joint Test Action Group ,联合测试行动小组),JTAG是一种国际标准测试协议,主要用于芯片内部测试及对系统进行仿真、调试。JTAG 技术是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路TAP(Test Access Port,测试访问口),通过专用的JTAG 测试工具对内部节点进行测试。目前大多数比较复杂的器件都支持JTAG 协议,如ARM 、DSP 、FPGA 器件等。标准的JTAG 接口是4 线:TMS、TCK、TDI、TDO,分别为测试模式选择、测试时钟、测试数据输入和测试数据输出。目前JTAG 接口的连接有两种标准,即14 针接口和20 针接口,MSP430单片机使用的是14针的接口,其定义分别如表8-1所示。 表8-1 14针JTAG接口定义引脚名称描述 管脚编号功能说明 2 、4 VCC 电源 9 G ND 接地 11 nTRST 系统复位信号 3 TDI 数据串行输入 7 TMS 测试模式选 9 TCK 测试时钟 1 TDO 测试数据串行 输 6、8、10、12 NC 未连接 下面分别介绍BSL和JTAG方式下编程器设计,可以用在实际系统编程中。 8.2 BSL编程器原理 启动程序载入器(BootStrap)是一种编程方法,允许通过串行连接和MSP430通讯,在Flash Memory 被完全擦除时也能正常工作。MSP430的启动程序载入器(Bootstrap)在单片机正常复位时不会自动启动,当需要对单片机下载程序代码时候,对RST/NMI和TEST引脚设置特殊的顺序。当MSP430单片机的TEST 引脚为低电平而RST/NMI引脚有上升沿时,用户程序从位于内存地址0FFFEh 复位向量开始执行,用户程序正常启动,如图8-1所示

CSR8670开发板使用说明书

CSR8670开发板 使 用 说 明 书

一、开发板资源介绍 开发板是针对蓝牙免提,蓝牙音响应用设计的一款多媒体蓝牙开发套件。开发板采用英国CSR 公司CSR8670 蓝牙芯片,可以用来开发单声道蓝牙耳机,立体声蓝牙耳机,蓝牙车载免提,蓝牙音频适配器,蓝牙虚拟串口(SPP), 蓝牙人机交互接口(HID),蓝牙文件传输(FTP)等。开发板带有USB,UART,I2C,PCM,音频输入、输出等接口,并引出PIO 和AIO 接口,方便用户扩展,进行二次开发。I开发板支持程序在线调试以及参数修改。 1、硬件资源: ◆标配CSR8670 蓝牙芯片,内置kalimba DSP ,支持蓝牙协议V4.0+EDR ◆集成16Mb FLASH ◆7个按键(1个复位键,1个开机键,5个用户按键) ◆16个PIO 接口(其中PIO6、PIO7作为I2C) ◆2个AIO 接口 ◆3个LED 指示灯

◆ 1个USB 接口 ◆ 音频输出接口 ◆ 音频输入接口 ◆ 板载麦克风 ◆ RS232 接口 ◆ SPI 调试接口 ◆ IIC 接口(PIO 复用) ◆ 64Kbit E2PROM 【注意】:板载的部分资源会因为芯片所采用的芯片的不同而未被使用到,具体请参考原理图。

二、硬件连接和使用 1、请参照上图,将下载线通过10PIN的排线和开发板连接,将MINI-USB线连接下载线并接到电脑,此时板子左上方的红色LED灯会亮,说明开发板已经正常上电。 【注意】: 1. 本开发板将VREN 开机信号单独连接到一个按键作为开机用,所以在使用bluelab或pstool连接开发板时,请务必按下改开机键不放,否则将会导致软件无法读取芯片的现象,bluelab 会提示"Unable to query BlueCore over SPI" 错误。 2. 使用bluelab下载调试程序时,请务先设置【Debug】菜单下的【Tansport】是否设置为USB,否则bluelab 将会提示"Unable to query BlueCore over SPI" 错误

MSP430 定时器A

上次Cloud和大家一起学习完了MSP430的时钟配置,这一篇,我们来学习MSP430 单片机的TimerA(定时/计数器A)。MSP430单片机的TimerA具有非常强大的功能,相关的寄存器配置也相当复杂,Cloud花了好久才逐步理清学习思路,尤其是学习数据手册的相关描述。在这里Cloud提醒大家,虽然现在网上有中文汉化版的数据手册,但Cloud阅读英文原版后对比发现还是英文原版对器件特性描述得更加清楚,而中文汉化版的省略掉了一些内容。好吧,扯远了。下面进入正题: 一、MSP430的Timer结构 首先让我们通过官方描述来初步了解一下MSP430单片机的Timer资源: 定时器A是一个16位的定时/计数器。定时器A支持多重捕获/比较,PWM输出和内部定时。定时器还有扩展中断功能,中断可以由定时器溢出产生或由捕获/比较寄存器产生。 定时器A的特性包括: ·四种运行模式的异步16位定时/计数器 ·可选择配置的时钟源 ·可配置的PWM输出 ·异步输入和输出锁存 ·对所有TA中断快速响应的中断向量寄存器 MSP430G2553单片机共有两个TimerA,分别是Timer0A和Timer1A。 OK,零零总总说了这么多,大家一定带有很多的疑惑,比如什么叫“捕获/比较”等,这里Cloud先不作解释,会用才是王道。我们呢先找来定时器A的结构图给大家初步了解一下定时器A的结构: 我们先从上面部分开始解释。中间红色的是一个16位的TimerA,TAR,这其实就是MSP430单片机内部的一个定时计数器了,类似于51中的TH0和TL0的合体。既然可以拿来计时,那么肯定可以有时钟信号输入,让我们最左边黄色的框,是一个选择器,由上面的TASSEL来选择TACLK、ACLK、SMCLK、INCLK的其中一种时钟。上次我们已经学习过ACLK和SMCLK,也知道如何配置这两个时钟了(这也是为什么先学习时钟的原因),另外两个是外部时钟源,其中TACLK可以由P1.0输入。跟在时钟源后面的是一个分频器,由ID来控制,将时钟源的时钟信号1、2、4、8分频后作为定时/计数器的时钟源。TAR右边的蓝色框代表TimerA在计数模式下由MC来控制TAR的四种计数方式。同时我们还注意到TAR的左下方有一个TACLAR连接至TAR的Clear端,显然是清零作用的,数据手册还告诉我们置位TACLAR,不但会清零TAR的计数值还会清除时钟分频信息。TACLAR 一旦置1,会自动归零,所以可以当做是TimerA的复位按钮。

MSP430g2553原理图

MSP-EXP430G2LaunchPad Evaluation Kit User's Guide Literature Number:SLAU318E July2010–Revised March2014

Contents 1MSP-EXP430G2LaunchPad Overview (4) 1.1Overview (4) 1.2Features (5) 1.3Kit Contents (5) 1.4Revisions (6) 2Installation (6) 2.1Download the Required Software (6) 2.2Install the Software (6) 2.3Install the Hardware (6) 3Getting Started With MSP-EXP430G2LaunchPad (7) 3.1Getting Started (7) 3.2Demo Application,Internal Temperature Measurement (7) 4Develop an Application With the MSP-EXP430G2LaunchPad (8) 4.1Developing an Application (8) 4.2Program and Debug the Temperature Measurement Demo Application (8) 4.3Disconnect Emulator From Target With Jumper J3 (9) 4.4Program Connected eZ430Target Boards (10) 4.5Connecting a Crystal Oscillator (10) 4.6Connecting a BoosterPack (11) 4.7Supported Devices (11) 4.8MSP-EXP430G2On-Board Emulator (13) 5MSP-EXP430G2Hardware (13) 5.1Device Pinout (13) 5.2Schematics (14) 5.3PCB Layout (20) 5.4Bill of Materials(BOM) (23) 6Suggested Reading (24) 7Frequently Asked Questions(FAQ) (24) Revision History (26) 2Table of Contents SLAU318E–July2010–Revised March2014 Submit Documentation Feedback Copyright?2010–2014,Texas Instruments Incorporated

单片机开发板使用手册

目录 第一章:开发板简介 (3) 1-1.SY_07011开发板的特性简介 (3) 1-2.SY_07011开发板的构成和工作原理 (4) 第二章:开发板使用说明 (5) 2-1.系统操作软件安装 (5) 2-2.开发板键盘设置 (9) 2-3.开发板连接安装 (9) 2-4.运行调试软件 (10) 第三章:开发板用器件资料及说明 (15) 3—1.TIMSP430F1121 (15) 3-2.DTLED-6 (16) 第四章:开发板器件表附件清单 (19) 4—1.调试用源程序 (19) 4-2.原理图....................................................附录插页4-2.包装清单. (30) 第五章:其它51类实验板简介 (32) 5-1.51DEMO I/O板简介 (32) 5-2.A/D89C51数模转换实验板简介 (23) 5-3.流水灯控制器(12路) (34) 5-4.SY0606开发板 (35) 5-5.Atmel_ISP下载线(选配自购件) (37)

5-6.Altera_ISP下载线(选配自购件) (37) 5-7.SY03091开发板 (38) 5-8.MSP430Flash Emulation Tool工具 (39) *********公司其它产品简介见软件盘中电子版文件*********

第一章:MSP430开发板简介 1-1.SY_07011开发板的特性简介 标准的TI的JTAG和BOOTST接口,适用与TI的MSP430 Flash Enulation Tool工具配合使用。 1. 电源适应性强,可随意使用无极性8~15V电源或DC+5V电源 供电。 2. 可用MSP430 Flash Enulation Tool工具一连串的完成编程,调 试,程序的在线烧录(自下载),和设计功能的演示等。 3. 自带3*4标准键盘输入,便于学习者掌握键盘输入和程序编 写。 4. 用串行驱动方式,驱动6位数码管显示,大大节省了单片机 的接口资源(祥见后面“DTLED-6”芯片介绍)。提供数码管字符显示驱动模块的接口,只用三根线就可以驱动6个数码

MSP430 定时器A的使用

第四讲定时器A的使用 MSP430F413芯片中含有TimerA3模块,如图1-2所示。其常用的外引线有三条:TACLK、TA1和TA2。 TACLK:定时器_A输入时钟(48脚),与P1.6和ACLK输出共用同一引脚。 TA1:定时器_A的第一通道输入、输出引脚(51脚)。捕获方式:CCI1A输入;比较方式:OUT1输出。 TA2:定时器_A的第二通道输入、输出引脚(45脚)。捕获方式:CCI2A输入;比较方式:OUT2输出。 1.定时器A功能及结构 定时器A基本结构是一个十六位计数器,由时钟信号驱动工作,结构框图如图4-1所示。 图4-1 定时器A结构图 定时器A具有多种功能,其特性如下: (1)输入时钟可以有三种选择,可以是慢时钟(ACLK)、快时钟(SMCLK与单片机主时钟同频)和外部时钟。 (2)能产生的定时中断、定时脉冲和PWM(脉宽调制)信号,没有软件带来的误差。

(3)不仅能捕获外部事件发生的时间,还可选择触发脉冲沿(由上升沿或下降沿触发)。 定时器A功能模块主要包括: (1)计数器部分:输入的时钟源具有4种选择,所选定的时钟源又可以1、2、4或8分频作为计数频率,Timer_A可以通过选择4种工作模式灵活的完成定时/计数功能。 (2)捕获/比较器:用于捕获事件发生的时间或产生时间间隔,捕获比较功能的引入主要是为了提高I/O 端口处理事务的能力和速度。不同的MSP430单片机,Timer_A模块中所含有的捕获/比较器的数量不一样,每个捕获/比较器的结构完全相同,输入和输出都取决于各自所带控制寄存器的控制字,捕获/比较器相互之间完全独立工作。 (3)输出单元:具有可选的8种输出模式,用于产生用户需要的输出信号,支持PWM输出。 2.定时器工作模式 (1)停止模式:停止模式用于定时器暂停,并不发生复位,所有寄存器现行的内容在停止模式结束后都可用。当定时器暂停后重新计数时,计数器将从暂停时的值开始以暂停前的计数方向计数。例如,停止模式前,Timer_A工作于增/减计数模式并且处于下降计数方向,停止模式后,Timer_仍然工作于增/减计数模式,从暂停前的状态开始继续沿着下降方向开始计数。如果不需这样,则可通过TACTL中的CLR控制位来清除定时器的方向记忆特性。 (2)增计数模式:捕获/比较寄存器CCR0用作Timer_A增计数模式的周期寄存器,因为CCR0为16位寄存器,所以该模式适用于定时周期小于65536的连续计数情况。计数器TAR可以增计数到CCR0的值,当计数值与CCR0的值相等(或定时器值大于CCR0的值)时,定时器复位并从0开始重新计数。增计数模式的计数过程如图4-2所示。通过改变CCR0值,可重置计数周期。 图4-2增计数模式示意图 (3)连续计数模式:在需要65536个时钟周期的定时应用场合常用连续计数模式。定时器从当前值计数到单增到0FFFFH后,又从0开始重新计数如图4-3所示。 图4-3 连续计数模式 (4)增/减计数模式

LaunchPad-MSP430入门系列4-定时器模块(定时、计数、捕获)

LaunchPad-MSP430入门系列4-定时器模块 (定时、计数、捕获) Version 1.2 文先,介绍几个英文缩写的意思以及一些注意的地方。 1.Timer0/1 定时器0/1,在User's Guide中用的是TimerA/B,所指的也是Timer0/1 。 G2553Datasheet中用的是Timer0/1 ,本文以G2553Datasheet为准。全文以Timer0 为例,Timer1类同。 2.TAxR(x = 0/1)定时器x对应的计数器,这是一个只读寄存器。硬件自动驱动计数。 3.EQUy(y = 0/1/2)计数事件发生寄存器,当TAxR = TAxCCRy时EQUy置1。 4. 定时器简介 MSPG2553共有两个定时器,Timer0、Timer1,他们都是十六位的定时、计数器,内含三个捕获、比较寄存器。两个定时器均支持多个捕获、PWM输出、间歇性计时,定时器包含多个中断源,可以是计数溢出中断、捕获中断等等。 定时器包含: ●同步十六位定时、计数器运行模式。 ●时钟源可从MCLK、SMCLK、ACLK任意选择。 ●三个比较、捕获寄存器。 ●中断向量寄存器能快速解码的所有定时器中断 本文以Timer0为例详细介绍430的定时器模块,下图是Timer0组成框图

0-1定时器0组成框图 下面简要介绍一下该硬件框图的意思,从左上角看,首先是一个时钟源选择寄存器TASSELx,通过该寄存器选择定时器的时钟源,选择了时钟源后有一个分频器Divider,相应的设置寄存器是IDx,再过来就到一个定时器的核心部分,一个16位的定时器TAR。其右侧有一个定时器的计数模块,MCx寄存器用来设置计数模式。 接下来,TAR正下方有三个横线,右侧标有CCR0、CCR1、CCR2,意思是CCR1、CCR0的框图和下方CCR2的框图是一样的。此处省略不写。在CCR中,左上角为一个捕获源选择寄存器。可以从CCI2A、CCI2B、GND或者VCC选择捕获源,选择捕获源后有一个选择捕获模式寄存器Capture Mode,然后过来有一个捕获溢出状态寄存器COV,SCS同步/异步捕获模式选择位,然后连接到捕获比较寄存器。下方为模式选择寄存器,具体设置可以查看相应的寄存器设置。 这里仅是大概介绍一下Timer0的寄存器,具体的设置使用还看参考相应的寄存器并结合例程慢慢学习理解。 定时器运行方式 下面简要重点介绍定时器计数模块的四种模式以及7种输出模式。 Timer0有一个在不断计数的只读寄存器TA0R。计数器的计数模式共有四种,

FPGA开发板使用说明书

目录 第一章综述 (1) 第二章系统模块 (2) 第三章软件的介绍 (11) 第四章USB 电缆的安装与使用 (28)

第一章综述 THSOPC-3型FPGA开发板是根据现代电子发展的方向,集EDA和SOPC系统开发为一体的综合性实验开发板,除了满足高校专、本科生和研究生的SOPC教学实验开发之外,也是电子设计和电子项目开发的理想工具。 一、实用范围: ●自主创新应用开发; ●单片机与FPGA联合开发; ●IC设计硬件仿真; ●科研项目硬件验证与开发; ●高速高档自主知识产权电子产品开发; ●毕业设计平台; ●研究生课题开发; ●电子设计竞赛培训; ●现代DSP开发应用; ●针对各类CPU IP核的片上系统开发; ●DSP Biulder系统设计。 二、硬件配置: THSOPC-3型FPGA开发板基于Altera Cyclone II 器件的嵌入式系统开发提供了一个很好的硬件平台,它可以为开发人员提供以下资源: ●支持+5V 电源适配器直接输入或者USB接口供电,5V、3.3V、1.2V混合电压源; ●FPGACycloneII FPGA EP2C8,40万门,2个锁相环; ●isp单片机AT89S8253。isp单片机AT89S8253及开发编程工具,MCS51兼容,12KB isp可编程Flash ROM,2KB ispEEPROM,都是10万次烧写周期;2.7-5.5V工作电压;0-24MHz工作时钟;可编程看门狗;增强型SPI串口,9个中断源等。此单片机可与FPGA联合开发,十分符合实现当今电子设计竞赛项目的功能与指标实现; ●EPM3032 CPLD; ● 4 Mbits 的EPCS4 配置芯片; ●512KB高速SRAM; ●20MHz 高精度时钟源(可倍频到300MHz); ● 4 个用户自定义按键; ●8 个用户自定义开关; ●8 个用户自定义LED; ● 2 个七段码LED; ●标准AS 编程接口和JTAG调试接口; ●两个标准2.54mm扩展接口,供用户自由扩展;

KR-51开发板使用说明

KR-51/AVR开发板使用说明 声明: 本指导教程和配套程序仅在开发和学习中参考,不得用于商业用途,如需转载或引用,请保留版权声明和出处。 请不要在带电时拔插芯片以及相关器件。自行扩展搭接导致不良故障,本公司不负任何责任。产品不定时升级,所有更改不另行通知,本公司有最终解释权。 一、开发板硬件资源介绍 1 .开发板支持USB 程序下载(宏晶科技STC系列单片机) 2. 开发板支持AT89S51 ,AT89S52 单片机下载(需要配合本店另外下载器下载) 3. 开发板支持ATmega16,ATmega32 AVR 单片机下载(需要配合本店另外转接板和下载器使用) 4. 开发板供电模式为:电脑USB 供电(USB 接口)和外部5V 电源供电(DC5V接口) 5. 开发板复位方式:上电复位和51按键复位 6. 外扩电源:通过排针外扩5路5V 电源,3路3.3V电源方便连接外部实验使用 7. 所有IO 引脚全部外扩,方便连接外部实验使用 8. 开发板集成防反接电路,防止接反,保护开发板 二、开发板功能模块介绍 (1 )8 位高亮度贴片led 跑马灯; (2) 4 位共阳数码管显示; (3)LCD1602 和LCD12864液晶屏接口; (4) 1 路无源蜂鸣器; (5) 1 路ds18b20 温度测量电路(与DHT11 温湿度接口共用); (6) 1 路红外接口电路 (7) 4 路独立按键 (8) 1 路CH340 USB转串口通讯电路(全面支持XP/WIN7/WIN8系统); (9)1路蓝牙模块接口(可做蓝牙测试板,USB转蓝牙); (10)1路2.4G模块接口; (11)1路WiFi模块接口(可做WiFi测试板,USB转WiFi) 三开发板跳线选择 本开发板接线简单,适合初学者使用,开发板各模块的跳线使用注意事项:烧写程序时,拔掉蓝牙模块,WiFi模块,J10处用跳线帽短接1,3和2,4。蓝牙模块和WiFi模共用串口,不能同时使用。使用1602、12864液晶接口时请拔下数码管J4 跳线帽。以下是几个主要跳线的使用说明;

MSP430教程10:MSP430单片机WDT看门狗定时器解析

看门狗定时器用来防止程序因供电电源、空间电磁干扰或其它原因引起的强烈干扰噪声而跑飞的事故。程序中设置看门狗清零指令 WDTCTL=WDTPW+WDTCNTCL,当程序跑飞不能及时清零看门狗,导致看门狗溢出复位,这样程序可以恢复正常运行状态。 一、WDT寄存器包括WDTCNT和WDTCTL,两个寄存器在上电和系统复位内容全部清零 1.记数单元WDTCNT:WDTCNT是16位增记数器,由MSP430选定的时钟电路产生的固定周期脉冲信号对记数器进行加法记数。WDTCNT不能直接软件存取,必须通过看门狗定时器的控制寄存器WDTCTL来控制。 2.控制寄存器WDTCTL:WDTCTL由两部分组成,高8位用作口令,即5AH(头文件中定义为WDTPW),低8位是对WDT操作的控制命令。写入WDT控制命令时先写入口令WD TPW,口令写错将导致系统复位。读WDTCTL时不需口令,低字节WDTCTL的值,高字节读出始终为69H。 bit 15-8 7 6 5 4 3 2 1 0 口令HOLD NMIES NMI TMSE L CNTCL SSEL IS1 IS0 IS1 SI0 选择看门狗定时器的定时输出,T为WDTCNT的输入时钟源周期。 TMSEL W DT工作模式选择 0 0 T*2的15次 方 0 看门狗模式 0 1 T*2的13次

方 1 定时器模式 1 0 T*2的9次 方 NMI 选择RST/NMI 引脚功能 1 1 T*2的6次 方 RST/NMI为复位端 SSEL 选择WDTCNT的时钟 源 1 RST/NMI为非屏蔽中断输入 0 SMCL K 1 ACLK NMIES 选择NMI中断的边沿触发方 式 HOLD 停止看门狗定时器工作 0 上升沿触发NMI中 断 0 看门狗功能激活 1 下降沿触发NMI中 断 1 时钟禁止输入,记数停止

RK3188开发板使用手册v1.0

RK3188开发板使用手册v1.0 一.安装RockUsb驱动 (2) 二.查看串口输出信息 (5) 三.烧写/下载固件 (8) 四.Kernel开发 (11) 五.Android开发 (12) 六.制作固件升级包update.img (13) 七.Recovery系统 (14) 八.Android系统USB操作 (17)

一.安装RockUsb驱动 Rockusb驱动放在RK3188\tools\RockusbDriver文件夹中 当你第一次使用RK3188SDK开发板时,接好USB线,按住“VOL+(RECOVERY)”按键上电,会要求安装驱动,按下面的图示步骤进行安装: 图1 选择“否,暂时不(T)”,点击“下一步”进入图2所示界面

图2 选择“从列表或指定位置安装(高级)”,点击下一步,进入图3界面 图3 选择你的驱动所存放的目录,点击“下一步”开始安装驱动,如图4所示

图4 完成以后可以在设备管理器看到设备已经安装成功 图5

二.查看串口输出信息 RK3188SDK开发板没有使用普通的串口,而是使用USB口来输出串口信息,你可以用一根特殊的USB调试线将开发板上的USB口连接到你的电脑中来查看串口信息。 1、在连接USB口之前,请先安装PL-2303USB转串口驱动 2、驱动安装完成后,再使用USB线将开发板上名为“UART0”的USB口连接到PC 中,然后你应该可以在设备管理器中看到一个新设备,如下所示: 3、使用串口工具查看开发板的输出信息。 在这边我以Windows自带的超级终端为例说明串口的配置: a、点击开始->所有程序->附件->通讯->超级终端 点击确定 b、选择正确的COM口:

MSP430定时器A捕捉脉实例

MSP430定时器A捕捉脉实例[调试通过,很好用] 微控论坛原创主贴作者:fangth Microcontrol CODE /***************************************************************** //功能:利用定时器A的捕捉能测量脉冲信号的脉宽 // // // MSP430F449 // ----------------- // /|\| XIN|- // | | | 32kHz // --|RST XOUT|- // | | // | P1.5/ACLK|---+ // | | | // | P2.0/TA2|<--+ // | | // | | //说明:ACLK要进行8分频(4K),并将其作为外部的要捕获的脉冲; //MCLK=SMCLK=8M; *****************************************************************/ #include int pwm_start,pwm_end,pwm_wide=0; void main(void) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT P1DIR = 0x20; // P1.5 输出 P1SEL = 0x20; // P1.5输出ACLK P2SEL|=BIT0; //P2.0 CCI2A SCFI0 |= FN_4; SCFQCTL = 121; // (121+1) ×32768 *2= 7.99Mhz FLL_CTL0=DCOPLUS+OSCCAP1; //MCLK=SMCLK=8M FLL_CTL1 |= FLL_DIV_8; //ACLK要进行8分频,ACLK=4K TACCTL2 =CAP+CM_3+CCIS_0+SCS+CCIE; //捕获模式,上升和下降都捕获,选择CCI2A,同步,捕获中断开 //Capture input select: 0 - CCI2A

51单片机开发板使用手册

STU_MAIN单片机开发板使用手册 第一章STU_MAIN 单片机开发板简介 (2) 1.1 单片机开发板概述 (2) 1.2 单片机开发板载资源介绍 (2) 1.3 STU_MAIN 单片机开发板接口说明 (4) 1.4 如何开始学习单片机 (5) 第二章软件使用方法 ......................... . (6) 2.1 KEIL 软件的使用方法 (6) 2.2 STC-ISP 软件的安装与使用 (13) 2.3 使用USB 口下载程序时设置步骤 (18) 第三章STU_MAIN 开发板例程详细介绍 (21) 3.1 准备工作 (21) 3.2 安装STC-ISP下载程序 (21) 3.3 闪烁灯 (22) 3.4 流水灯 (23) 3.5 单键识别 (25) 3.6 利用定时器和蜂鸣器唱歌 (28) 3.7 DS18B20 温度测量显示实验 (31) 3.8 LCD1602 字符液晶显示 (36) 3.9 串口通讯实验 (39) 3.10 基于DS1302的多功能数字钟实验 (41) 3.11 EEPROM X5045 实验 (47)

第一章STU_MAIN 单片机开发板简介 1.1 单片机开发板概述 STU_MAIN 单片机开发板是经过精心设计开发出的多功能MCS-51 单片 机开发平台。该开发板集常用的单片机外围资源、串口调试下载接口于一身,可以让您在最短的时间内,全面的掌握单片机编程技术。该开发板特别适合单片机初学者、电子及通信等专业的课程设计以及电子爱好者自学使用。 STU_MAIN 单片机开发板可作为单片机课程的配套设备,课程从最基本的预备知识开始讲起,非常详细的讲解KEIL 编译器的使用,包括软件仿真、测定时间、单步运行、全速运行、设置断点、调试、硬件仿真调试、变量观察等,整个过程全部用单片机的C 语言讲解,从C 语言的第一个主函数MAIN 讲起,一步步一条条讲解每一个语法、每条指令的意思,即使对单片机一巧不通,对C 语言一无所知,通过本课程的学习也可以让你轻松掌握MCS-51 单片机的C 语言编程。全新的讲课风格,跳过复杂的单片机内部结构知识,首先从单片机的应用讲起,一步步深入到内部结构,让学生彻底掌握其实际应用方法,把MCS-51单片机的所有应用、每个部分都讲解的非常清晰明了,授课教师在教室前面用电脑一条一条写程序,旁边用STU_MAIN 单片机开发板逐个实验的演示,给学生解释每条指令的意思及原理,通过一学期的学习让学生完全掌握单片机的C 语言编程及单片机外围电路设计的思想。以实践为主、学生现场写程序、直接下载到开发板观察现象。 1.2 单片机开发板载资源介绍 一. STU_MAIN单片机开发板(串口直接下载程序) 本开发板以STC 公司生产的STC90C54RD+ 单片机做核心控制芯片,它是 一款性价比非常高的单片机,它完全兼容ATMEL 公司的51/52系列单片机,除此之外它自身还有很多特点,如:无法解密、低功耗、高速、高可靠、强抗静电、强抗干扰等。 其次STC 公司的单片机内部资源比起ATMEL 公司的单片机来要丰富的多,它内部有1280 字节的SRAM、8-64K 字节的内部程序存储器、2-8K 字节的ISP 引导码、除P0-P3 口外还多P4 口(PLCC封装)、片内自带8路8位AD(AD 系列)、片内自带EEPROM、片内自带看门狗、双数据指针等。目前STC 公司的单片机在国内市场上的占有率与日俱增,有关STC 单片机更详细资料请查阅相关网站。 STU_MAIN单片机开发板可完全作为各种MCS-51单片机的开发板,用汇编语言或C 语言对其进行编程。当用STC 公司的单片机时,直接用后面介绍的串口线将开发板与计算机串口相连,按照STC 单片机下载操作教程便可下载程序,

关于MSP430G2系列Launchpad的作品开发实例教程编写和制作说明

关于MSP430G2系列Launchpad的作品开发实例教程编写和制作说明 文字版实例教程编写说明:(要求在2012年12月25日前完成并提交) 封面:1.作品名称、制作单位、作者姓名、制作时间 教程内容:第一章作品概述 第一节作品基本情况介绍(主要介绍所用单片机芯片型号、作品功能)

第二节结合系统组成框图进行作品的软硬件总体设计方案进行介绍 第二章作品硬件系统设计 第一节 MSP430G2系列Launchpad开发板组成及硬件资源情况介绍 第二节对传感器选型及性能指标参数进行介绍 第三节分别对各单元电路进行介绍 第四节给出系统同组成原理图及元器件清单(含元器件型号、数量、封装等)并进行说明 第五节对PCB板设计的要求和注意事项进行说明 第六节对硬件安装调试注意事项和调试、测试方法进行说明 第三章作品软件系统设计 第一节对监控程序总体流程图进行介绍 第二节对各功能子程序在CCS环境下的设计与调试方法进行介绍 第三节对完整监控软件程序的调试方法进行介绍 第四章总结与思考 对该作品从技术性能指标等方面进行技术总结,并提出3—5个扩展和发挥的思考题 PPT实例教程制作说明:(要求在2012年12月25日前完成并提交) 封面:作品名称、制作单位、作者姓名、制作时间 教程内容:1.作品基本情况介绍(主要语音讲解所用单片机芯片型号、作品功能); 2.作品功能展示视频并配有语音讲解; 3. MSP430G2系列Launchpad开发板组成及硬件资源情况语音讲解; 4.在作品实物板上对器件及布局、传感器型号及使用方法、与开发板连接关系、显示方式等进行图 示和语音讲解; 5.结合系统组成框图对整个系统的工作原理进行语音讲解; 6.分别结合硬件单元电路原理图进行语音讲解; 7.结合PCB板裸图,对PCB板设计方法和注意事项进行语音讲解; 8.结合实物图对安装、调试、连接方法进行语音讲解 9.对监控程序总体流程图进行语音讲解; 10.结合软件调试过程,对各功能子程序在CCS环境下的设计与调试方法进行语音讲解; 11.在完整实物板上对整个监控程序的调试方法进行讲解并展示各项功能; 12.总结; 13.提出3—5个扩展和发挥的思考题; 封底:致谢、制作单位(美国TI公司上海分公司、西安电子科技大学测控工程与仪器系)联系方式 PPT实例教程制作注意事项: 1.作品实物照片要保证足够的清晰度; 2.要保证视频的清晰度和镜头的稳定性; 3.语音讲解语速不要快,要清晰流畅,要与图文配合密切; 4.原理图要清晰,大小可根据画面调整,可在PROTEL环境下介绍; 5.实物演示环境要整洁,不要周边有杂物影响; 6.程序设计和调试可在CCS环境下进行; 7.PPT中标题均用黑体字、28号字,正文均用楷体字,24号字; 8.采用统一的PPT文本形式。

Atmega128开发板使用说明书

Atmega128开发板使用说明书 概要介绍 Atmega128开发板上硬件资源丰富,接口齐全,基本上涵盖了Atmega128单片机所能涉及到的所有功能,可以满足单片机开发工程师和电子爱好者的开发实验的需求,或者高校电子、计算机专业学生的学习实验的需要。 按照正规产品的要求设计,不纯粹是实验样品,器件选型、原理图、PCB设计的时候都充分考虑了可靠稳定性。 Atmega128的IO口资源丰富,板上所以接口都是独立使用的,不需要任何跳线进行设置, IO口外围扩展使用了2片锁存器74HC574,既可以使实验变得更加简单方便,又能让实验者掌握更多的单片机设计知识。 提供配套软件源代码,学习板的每个实验都有与其相对应的软件代码,是版主从多年的工作经验中提取出来的,并经过优化,具有较高的参考价值。 编程简单,学习板编程不需要专用烧录器,利用计算机的并口即可进行编程,速度快、操作简单。

1.产品清单 Atmega128开发板的配件清单如下,当您第一次拿到产品的时候,请参照下图认真核对包装内配件是否齐全,以及各配件是否完好无损。 请按照下图安装122*32 LCD,lCD的一脚对准122*32 LCD插座的一脚,切记不要插反

2.硬件布局说明 步 进 电 机 接 口 直 流 电 机 接 口 数 字 温 度 传 感 器 SD 卡 插 座 光 敏 电 阻 ADC 输 入 电 位 器 NTC 热 敏 电 阻 JTAG 接 口 继 电 器 接 口 9V电源输入接口 DAC输出接口 RS485接口 RS232接口 红 外 发 射 管 ISP 编 程 接 口 LCD 对 比 度 调 节 电 位 器 122 * 32 点 阵 LCD 接 口 16 * 2 字 符 LCD 接 口 红 外 接 收 管 433M 射 频 模 块 接 口 3 * 4 矩阵键盘

MSP430定时器A说明

MSP430的定时器A有比较\捕获两种工作模式 比较模式: 这是定时器的默认模式,当在比较模式下的时候,与捕获模式相关的硬件停止工作,如果这个时候开启定时器中断,然后设置定时器终值(将终值写入TACCRx),开启定时器,当TAR的值增到TACCRx的时候,中断标志位CCIFGx置1,同时产生中断。若中断允许未开启则只将中断标志位CCIFGx置1。 例子:比较模式就像51单片机一样,要能够软件设置定时间隔来产生中断处理一些事情,如键盘扫描,也可以结合信号输出产生时序脉冲发生器,PWM信号发生器。如:不断装载TACCRx,启动定时器,TAR和TACCRx比较产生中断,输出时序脉冲。 捕获模式: 利用外部信号的上升沿、下降沿或上升下降沿触发来测量外部或内部事件,也可以由软件停止。捕获源可以由CCISx选择CCIxA,CCIxB,GND,VCC。完成捕获后相应的捕获标志位CCIFGx置1。 捕获模式的应用: 利用捕获源来触发捕获TAR的值,并将每次捕获的值都保存到TACCRx中,可以随时读取TACCRx的值,TACCRx是个16位的寄存器,捕获模式用于事件的精确定位。如测量时间、频率、速度等。 利用MSP430单片机定时器A和捕获/比较功能模块结合使用,实现脉冲宽度的测量。 本例程用到了定时器A的CCI1A端口(例如MSP430F14X的P1.2引脚)作捕获外部输入的脉冲电平跳变,同时结合简单的软件算法就能实现脉冲宽度的测量。在实际应用中可根据例程中的start,end,overflow三个变量来计算脉冲宽度。此功能模块在实际产品应用中体现出有较高的应用价值。 具体例程 #include unsigned int start,end; unsigned char overflow; void main (void) { WDTCTL = WDTPW+WDTHOLD; //关闭看门狗定时器 P1DIR = BIT0+BIT4; //设置P1.0和P1.4方向为输出 P1SEL = BIT2; //设置P1.2端口为功能模块使用 TACTL = TASSEL0+TACLR+TAIE+MC1; //定时器A时钟信号选择ACLK,同时 //设置定时器A计数模式为连续增计模式

最新FPGA开发板使用说明书

F P G A开发板使用说明 书

目录 第一章综述 (1) 第二章系统模块 (2) 第三章软件的安装与使用 (11) 第四章USB 电缆的安装与使用 (28) 仅供学习与交流,如有侵权请联系网站删除谢谢36

第一章综述 THSOPC-3型 FPGA开发板是根据现代电子发展的方向,集EDA和SOPC系统开发为一体的综合性实验开发板,除了满足高校专、本科生和研究生的SOPC教学实验开发之外,也是电子设计和电子项目开发的理想工具。 一、实用范围: ●自主创新应用开发; ●单片机与FPGA联合开发; ●IC设计硬件仿真; ●科研项目硬件验证与开发; ●高速高档自主知识产权电子产品开发; ●毕业设计平台; ●研究生课题开发; ●电子设计竞赛培训; ●现代DSP开发应用; ●针对各类CPU IP核的片上系统开发; ●DSP Biulder系统设计。 二、硬件配置: THSOPC-3型 FPGA开发板基于Altera Cyclone II 器件的嵌入式系统开发提供了一个很好的硬件平台,它可以为开发人员提供以下资源: ●支持+5V 电源适配器直接输入或者USB接口供电, 5V、3.3V、1.2V混合电压源; 仅供学习与交流,如有侵权请联系网站删除谢谢36

●FPGACycloneII FPGA EP2C8,40万门,2个锁相环; ●isp单片机AT89S8253。isp单片机AT89S8253及开发编程工具,MCS51兼容,12KB isp可编程Flash ROM,2KB ispEEPROM,都是10万次烧写周期;2.7-5.5V工作电压;0-24MHz工作时钟;可编程看门狗;增强型SPI串口,9个中断源等。此单片机可与FPGA联合开发,十分符合实现当今电子设计竞赛项目的功能与指标实现; ●EPM3032 CPLD; ● 4 Mbits 的EPCS4 配置芯片; ●512KB高速SRAM; ●20MHz 高精度时钟源(可倍频到300MHz); ● 4 个用户自定义按键; ●8 个用户自定义开关; ●8 个用户自定义LED; ● 2 个七段码LED; ●标准AS 编程接口和JTAG调试接口; ●两个标准2.54mm扩展接口,供用户自由扩展; ●RS-232 DB9串行接口; ●PS/2键盘接口; ●VGA接口; ●4X4键盘; 仅供学习与交流,如有侵权请联系网站删除谢谢36

相关主题
文本预览
相关文档 最新文档