SoC已集成了很多数字功能,设计者们开始将目光投向复杂的模拟与 射频 功能。模拟模块不适用于构建SoC的标准IP(知识产权)集成策略,它们与设计中其他部分有太多的交互作用。
现在有许多公司已经开始推出混合信号微处理器,如 TI 的 MSP430 系列、 Cypress 的 PSoC 系列、SiliconLabs的C8051F系列。这些芯片不仅集成大量的数字IP核,而且集成了常用的模拟单元。
本文基于 TI 公司的混合信号处理器MSP430F5504设计了一款超低功耗、高性价比、高处理能力的 USB 混合信号处理器开发板(校园广播系统)。
1校园广播系统总体设计
校园广播系统的设计及实现更好地说明MSP430系列芯片的良好功能和开发方法,系统总体原理框图如图1所示。整个系统包括MSP430混合信号处理器模块、 电源模块 、输入模块、 液晶显示 模块、通用串口模块(包含 I2C 、S PI 、 UART )、JTAG调试模块、USB模块等。
2系统硬件设计
2.1主控 电路 设计
MSP430F5504是优秀的片上系统,只要外接1.8~3.6V电源,加上一个低频 晶振 就能工作。MSP430F5504有VQFN和LPFQ两种封装,这里采用LQFP48封装,方便 焊接 、安装、调试。
本系统由一个32.768kHz的低频晶振和一个4MHz的高频晶振构成。低频晶振和两个12pF的负载电容接在MSP430F5504的Xin和Xout端,当系统需要高频时钟时使用(供CPU高速运行、作为ADC的高速转换时钟等)。高频晶振需要更大的负载电容才能正常工作,系统采用了一个4MHz的高频晶振及其相匹配的两个47pF电容接在高频时钟引脚端(XT2IN和XT2OUT)。微处理器的数字电源和模拟电源都从3.3V的稳压电源获得。系统要正确地恢复到原始状态,必须有复位电路,MSP430F5504是低电平复位。
2.2LCD液晶电路设计
本系统采用Nokia5110LCD,此LCD由Philips公司生产的PCD8544驱动芯片控制。PCD8544是一块低功耗的CMOSLCD控制驱动器,设计为驱动48行×84列的 图形 显示。所有显示功能集成在一块芯片上,包括LCD电压及偏置电压发生器,只需很少外部元件且功耗低。
Nokia5110属于低功耗LCD,静态 电流 只有200μA。控制 接口 简单,通过SPI接口就可以轻松地进行控制,具有5根 信号线 、2根电源线。还可根据需要通过控制BL背光控制线来 开关 背光。在低功耗运行时,可通过此控制线关闭背光。
2.3调试电路设计
JTAG 测试 允许多个器件通过JTAG接口串联在一起,电路板上的很多芯片可以将它们的JTAG引脚通过DaisyChain的方式连在一起,并且Probe只需连接到一个JTAG端口就可以访问一块电路板上的所有IC。
MSP430F5504集成了JTAG调试接口,这极大地方便了程序的开发。MSP430采用了14引脚的JTAG调试接口。通过该接口不仅可以对程序进行在线调试,而且可以下载程序,让程序全速运行,并观测程序在实际电路上的运行效果。
2.4通用串口模块设计
串口是系统与外界联系的重要手段,在嵌入式系统开发和应用中,经常需要上位机实现系统调试及现场数据的采集和控制。一般是通过上位机本身配置的串口,通过串行通信技术和嵌入式系统进行通信。
通用串口模块是 TI 微处理器特有的设计,它在一个串口硬件模块中支持多个串口通信协议。 TI 的MSP430系列的通用串口模块支持的串口协议有UART、SPI、I2C总线协议。根据不同的 寄存器 配置,通用串口通信模块可以配置为上述的任意的一个串口,具有极大的灵活性,特别是对于小引脚数的 单片机 ,通过引脚复用大大地增强了单片机的功能。
2.4.1通用串口——UART模式
异步通信字符格式由4部分组成:起始位、数据位、奇偶校验位和停止位。其中,用户可以通过软件设置数据位、停止位的位数,还可以设置奇偶位的有无。通过选择时钟源的波特率寄存器的数据来确定位周期。
串行操作自动错误检测:USART模块接收字符时,能够自动进行校验错误、帧错误、溢出错误和打断状态检测。
在异步通信中,波特率是很重要的指标,表示为每秒传送二进制数码的位数。波特率反映了异步串行通信的速度。波特率发生器产生同步信号表明各位的位置。波特率部分由时钟输入选择、分频、波特率发生器、调整器和波特率寄存器组成。串行通信时,数据接收和发送的速率就由这些构件控制。
2.4.2通用串口——I2C模式
(1)I2C总线位传输
由于连接到I2C总线的器件有不同种类的工艺(CMOS、NMOS、双极性),逻辑0(低)和1(高)的电平不是固定的,它由VDD的相关电平决定,每传输一个数据位就产生一个时钟脉冲。
I2C总线模式支持任何从模式或主模式下的I2C总线兼容设备。每个I2C总线设备都有唯一的地址可供识别,并可以随意作为发送端或接收端对其操作。当进行数据传输时,I2C总线总线上的设备可以被视为主设备或者是从设备。主设备开始数据发送并产生时钟信号SCL,任何一个能被主设备寻址到的设备都可视为一个从设备。
I2C总线数据通过串行数据线(SDA)和串行时钟线(SCL)进行传输,SDA和SCL均为双向,它们必须通过一个上拉 电阻 连接到供电电源的正极。
(2)I2C总线的串行数据
每传输一个数据位,主设备都会产生一个时钟脉冲。I2C总线模式下进行的是字节操作,每个起始位发出之后的第一个字节包含有7位从地址和一个R/W位。当R/W=0时,主设备向从设备发送数据;当R/W=1时,主设备从从设备接收数据。应答位ACK是接收方对应第9个SCL时钟发出的握手信号。START起始条件和STOP停止条件都是由主设备产生。在SCL为高时,将SDA由高跳变至低,产生一个START起始条件。在SCL为高时,将SDA由低跳变至高,产生一个STOP停止条件。总线忙位UCBBUSY在START出现后置位,在STOP出现后清零。
(3)I2C总线寻址方式
I2C总线模式下支持7位和10位寻址方式。
7位寻址的格式如图2所示,第一个字节包括7位从地址和一个R/W读写控制位。应答位ACK是接收方在每个字节后发出的握手信号。
10位寻址的格式如图3所示,第一个字节由11110b加上10位从地址的高两位和R/W位构成。每个字节结束后,由接收方发送ACK应答信号。下一个字节是10位从地址剩下的8位数据,在这之后是ACK应答信号和8位数据。
主设备可以在不停止当前传输状态的情况下,通过再次发送一个起始位来改变SDA上数据流的传输方向,这被称为“再次起始”。再次起始位产生后,从设备的地址和标示数据流方向的R/W位需要重新发送。再次起始条件格式如图4所示。
(4)I2C总线模式下的操作方式
在I2C总线模式下USCI模块可以工作在主发送模式、主接收模式、从发送模式或者从接收模式。
主设备模式:选择I2C总线模式的同时设置UCMODEx=11,USCYNC=1,并置位UCMST位可以使USCI模块工作在I2C总线主模式。当主模块是一个多主设系统的一部分时,必须对UCMM置位,并通过编程将其本机地址写入寄存器UCBxI2COA中。当UCA10=0时,选择7位寻址模式。当UCA10=1时,选择10位寻址模式。若要响应广播,则可以置位UCGCEN位。
从设备模式:选择I2C总线模式的同时设置UCMODEx=11,USCYNC=1,并清零UCMST位可以使USCI模块工作在I2C总线从模式。
2.4.3通用串口——SPI模式
在同步模式下,USCI通过3个或者4个引脚把MSP430连接到一个外部系统中,这些引脚分别是:UCxSIMO、UCxSO MI 、UCxCLK和UCxSTE。选择SPI模式有两种情况:当“同步位”时置“1”;根据UC模式的位来选择。
4线的SPI主模式为控制本主机。当UCxSTE处于主模式不工作的状态中:
①UCxSIMO和UCxCLK被置“1”,用来输入信号,并且不再驱动总线。
②出错位UCFE被置“1”,用来报告通信整体性的错误需要用户处理。
③内部的状态为机器复位,移位工作被终止。
4线的SPI从模式为在4引脚的SPI从模式下,UCxSTE被从模式用来使发送和接收处于工作状态。当UCxSTE处于从模式活动状态时,从动器件处于正常工作的状态。
当UCxSTE处于停止状态时:
①任何在UCxSIMO口进行中的接收工作将会停止;
②UCxSOMI被置于输入的方向;
③移位工作也会停止,一直到UCxSTE过渡到从模式下的活动状态。
这种UCxSTE输入信号的功能不用于3引脚的模式当中。
2.4.4D/A转换模块的设计
特定型号的MSP430F5504芯片带有内置D/A转换器,但MSP430F5504不带有内置D/A转换器,而增加外部D/A转换器将增加了电路的复杂性。一般的条件下,只要求某一幅度的直流电压值同,所以采用低成本的PWM加外置无源器件来实现D/A转换器的功能。
PWM技术是一种对模拟信号电平的数字编码方法,通过使用高分辨率计数器(调制频率)调制方波的占空比,实现对一个模拟信号的电平进行编码。其最大的优点是,从处理器到被控对象之间的所有信号都是数字形式的,无需再进行数模转换过程;而且对噪声的抗干扰能力也大大增强(噪声只有在强到足以将逻辑值改变时,才可能对数字信号产生实质的影响),这也是PWM在通信等信号传输行业得到大量应用的主要原因。
通过调节PWM的占空比,可以产生等效幅度的电压,再通过低通 滤波器 产生相应的模拟输出。
在信号接收端,需将信号解调还原为模拟信号,目前在很多微型处理器内部都包含有PWM控制器模块。
2.4.5 LED 输出指示电路
有时为了电路调试方便,将引脚的状态通过LED灯来进行指示,也可以作为简单的测试使用,连接一个I/O口,并与LED和一个1kΩ电阻串联组成该电路。
2.4.6按键输入电路
通过按键来模拟用户的有效UI接口,把I/O引脚上拉到DVCC3.3数字电源,当有按键按下时把I/O口状态拉低。
2.4.7电源指示电路
当电源接通时给用户一个提示,这有利于改善用户的使用感受,给用户一个反馈,表明电源是否正确连接。
当在低功耗模式下,或用户已不需要电源指示功能时,可以通过去除跳帽来减少系统的功耗。
2.4.8电源隔离电路
高速的I/O口操作和I/O的上拉下拉,都会使系统的数字电源产生尖峰电流脉冲,这对系统的正常工作有很大影响。如果这些噪声引入系统的模拟设备,将影响系统的模拟外设。所以,对系统的数字电源和模拟电源进行隔离是非常必要的。
在系统的模拟电源AVCC33和数字电源DVCC33之间接入一个磁珠,能有效地提高系统的稳定性,保证系统的正常工作。数字地和模块之间通过0Ω电阻相连,也能有效地减小系统的干扰。
2.5程序下载电路设计
MSP430F5504可以通过多种接口对程序进行下载,通过JTAG和SBW接口不仅可以对程序进行调试和下载,而且还能够在调试完毕后通过一定的指令烧断保密熔丝,使调试接口自毁。自毁后JTAG或SBW接口失效,再也无法通过它读取内部代码,避免代码被他人读取或复制,从而保护知识产权。
在设计阶段和原理样机阶段,要对程序不断进行编写、修改、仿真和调试,只需要JTAG和SBW接口,不进行烧熔丝操作。一旦产品定型,在发布和量产阶段,不再需要调试程序,只需要烧写代码;如果要烧毁熔丝,则要保留BSL接口。
2.6电源电路设计
本系统可以通过单枚纽扣 电池 供电,也可以通过USB接口供电。
结语
MSP430F5504是混合信号处理器的一种,独特的设计和架构给用户很大的灵活性,并带来超低的功耗和强大的处理能力。现在已经广泛用于各种领域,如联网式气表、便携式 测量 仪器、医疗器械等。设计制作高性能、低成本MSP430系列开发板可以加快产品的开发速度,减短产品的上市时间,加大前端应用的普及性。因此,设计一款方便、稳定、可靠的开发板也就显得比较有意义。