《嵌入式系统开发》课程设计
图2.4 网络层参考模型
3.3.4 应用层
对于应用层(APL),又包括了应用支持子层(APS)、ZigBee设备对象(ZDO)和由制造商制订的应用对象。应用支持层的功能包括维持绑定表、在绑定的设备之间传送消息。ZigBee设备对象的功能包括:定义设备在网络中的角色、发起和响应绑定请求、在网络设备之间建立安全机制。
图2.5 应用支持子层参考模型
3.4 ZigBee协议栈
在ZigBee协议栈中,任何通信数据都是采用帧的格式来组织完成的。协议的每一层都有特定的帧结构。当应用程序需要发送数据时,将通过APS数据实体发送数据请求到APS,下面的每一层都会为数据附加相应的帧头,组成要发送的帧信息,其帧结构之间的关系如图2.6所示。
《嵌入式系统开发》课程设计
图2.6 ZigBee各层帧结构
在分层的通信协议中,层与层之间通过服务接入点(SAP)相连接。SAP是层与层之间的唯一接口,其具体的服务是以通信原语的形式供上层调用的。在上层调用下层服务时,只要遵循统一的原语规范,并不需要去了解如何处理原语,这样就做到了数据层与层之间的透明传输。层与层之间的通信原语可以为Requst、Indication、Reponse、Confirm四种,它们之间的关系如图2.7所示。采用通信原语,简化了程序设计的难度、提高了系统的稳定性。
图2.7 ZigBee各层之间的通信原语
3.5本章小结
本章介绍了 ZigBee 协议体系结构, TI 的 ZigBee 协议栈 Z-Stack 的基本原理和应用方法, 并给出了 ZigBee了路由器算法及其实现过程。ZigBee 协议较为复杂,大部分的设计都是基于现有的开放式协议的基础之上的开发。因此,在了解 ZigBee 协议体系结构的基础上深入理解 Z-Stack 的含义和透明调用方法是 ZigBee设备开发的关键。
《嵌入式系统开发》课程设计
4 音乐盒软硬件介绍
利用KEIL软件编音乐盒写程序,将编写好的程序下载进51单片机内,利用
单片机控制歌曲及闪烁花样,之后将所需要播放的歌曲烧录进单片机,利用由蜂鸣器和三极管放大电路来实现音乐的播放,再通过无线控制实现歌曲的播放和花样的切换。
4.1 音乐盒的设计
(1)硬件设计方面
在硬件设计方面所采用的是ATMEL公司所生产出来的AT89C51单片机,这也是整个音乐盒的核心部分,所采用的是12MHz晶体,并且在P3.2口接上一个播放的开关,P3.7口是输出音乐端口,加一级三极管放大之后就直接对扬声器进行驱动作用[10]。
图3.1 硬件(系统)总体设计构图
(2)程序编写方面
1. 主程序:对于主程序来说,首先主要作用的就是对一个音乐盒的一个播放或者是停止状态的一个控制,通过按下播放或者是停止的按键来对播放的状态进行一个控制。
2. T2中断:T2的中断主要负责的就是曲谱的读取以及对节拍的一个控制情况,并且将曲谱转换完之后,作为T0 的一个定时器的一个基于单片机的音乐盒设计。
(3)软件技术
《嵌入式系统开发》课程设计
音乐盒的系统结构是以STC89C51单片机位控制核心,加上2个按键、蜂鸣器、LED灯显示和数码管显示组成。单片机负责接收按键的输入,根据输入控制音乐播放和数码管显示歌曲序号以及扬声器发音。
D3C1U130P19XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617P8P9P10P11P12P13P14P15P0P1P2P3P4P5P6P7D4P9P10VCCVCCD2P8VCCBLUEP15D16D1GREENP0VCCVCCBLUED15P1VCCD14VCCGREEND13P2REDREDGREEND5P11VCCBLUED6P12VCCREDP13NET=P7C230PR110kCRYSTAL18XTAL2BLUED12P4VCC9RSTD7VCCGREENP14VCCBLUEP7REDD11P5REDVCCC310uF293031PSENALEEAD8D10D9P6VCCBLUEGREENVCC1234567123456712345678K1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C519876543276543211K2RP2RESPACK-8CQ1NPNLS1BSOUNDEREVCCX1P3VCC 3.2 proteus仿真图
4.2最小系统电路设计
4.2.1 复位电路
复位电路:由两个电容串联电阻构成,由图3.2并结合\电容电压不能够突变\的性质,可以知道,当系统一上电时,RST脚将会出现高电平,并且,这个高电平持续的时间是由电路中的RC值来决定的。典型的51单片机中当RST脚的高电平持续两个机器周期以上时就将复位,所以,适当的组合RC的取值就可以保证可靠的复位。 a.复位操作
复位是单片机里的初始化操作。其主要的功能是把PC初始化为0000H,使得单片机从0000H单元开始来执行程序。除了在进入系统的正常初始化之外,当由于程序运行时出错或是操作错误使系统处于死锁状态时,为了摆脱困境,也需要按复位键重新启动。
b.复位信号
《嵌入式系统开发》课程设计
RST引脚是复位信号的输入端。复位信号是高电平时有效,其有效时间是应持续24个振荡周期(即二个机器周期)以上。若是使用频率为6MHz的晶振,则其复位信号持续时间要超过4us才能够完成复位操作[11]。 4.2.2 晶振电路
晶振电路:典型的晶振取11.0592MHz(因为是可以准确的得到9600波特率和19200波特率,用在有串口通讯的场合)/12MHz(产生精确的uS级时歇,来方便定时操作)[6]。
单片机:一片STC89C52/S51或其他51系列兼容单片机。 4.2.3时钟电路
STC89C52内部有一个可用于构成振荡器的高增益反相放大器,而引脚RXD与TXD分别是这个放大器的输入端和输出端。时钟可由内部方式产生或外部方式产生。内部方式的时钟电路在RXD和TXD引脚上可外接定时元件,而内部振荡器就能产生自激振荡。定时元件通常是采用石英晶体及电容组成的并联谐振回路。晶体的振荡频率可以在1.2~12MHz之间选择,一般电容值在5~30pF之间选择,电容值的大小可以对频率起到微调的作用[12]。
4.3 本章小结
经过以上步骤对实物音乐盒的设计、调试。任务要求基本达成。不仅有原来的播放音乐的要求,还可以扩展为多首音乐,具有按键选曲,按键切换花样,数码管显示当前播放乐曲段位等附加功能,预期功能基本达成。