历史上的今天
返回首页

历史上的今天

今天是:2025年03月24日(星期一)

正在发生

2018年03月24日 | 基于I2C总线的MSP430单片机应用系统设计方案

2018-03-24 来源:eefocus

    串行护展总线技术是新一代单片机技术发展的一个显着特点。其中PHILIPS公司推出的I2C总线最为着名,它包括一个两端接口,通过一个带有缓冲区的接口,数据可以被I2C发送或接收,控制和状态信息则通过一套内存映射寄存器来传送。与并行扩展总线相比,串行扩展总线有突出的优点:电路结构简单,程序编写方便,易于实现用户系统软硬件的模块化、标准化等。本文是把I2C总线应用到MSP430单片机温度控制系统中的一个典型实例。

 

    I2C总线是用2根双向I/O信号线(串行时钟线SCL和串行数据线SDA)把多种器件连接起来,并实现器件之间的串行通讯。

    MSP430是TI公司一种具有超低功耗的功能强大的16位单片机,MSP430F169是该系列中的一种型号。它内部集成2个16位定时器,1个高速12位A/D转换器,12位或8位的双重D/A转换器,2个通用同步/异步通讯接口和1个I2C模块。我们就是利用其I2C模块来对MSP430F169单片机进行扩展。

    系统硬件设计

    该系统实现对曲轴的热处理进行温度控制。曲轴的热处理工艺为:曲轴放入淬火加热炉以350℃~400℃/h加热,到910℃~930℃保温1.5h,淬火冷却至室温,进炉550℃?600℃回火2.5h。因此,系统需要同时对淬火炉和回火炉进行温度控制。在此系统中,我们需要分别设计键盘模块和LED显示模块,通过键盘实现温度、PID参数、时间周期等参数的人工输入设定,通过LED分别实时显示淬火炉和回火炉的温度。在以往的单片机应用系统中,键盘接口和LED显示接口一般是通过并行总线扩展的,其特点是信息传送速度快,但占用的口线多,电路复杂。有了I2C BUS后,可通过I2C BUS进行系统扩展,这时只要用SCL和SDA两根信号线就可将单片机与外围器件连接起来,使占用的信号线少,电路大大简化,系统电路结构如图1所示。

   

    图中键盘接口是通过PCF8574扩展的,PCF8574是8位I/O扩展器,具有8位准双向口和I2C总线接口,每位都可单独设为输入或输出,功耗低,输出有锁存,驱动能力强,还具有中断请求功能。本方案中,该芯片作为4×4矩阵式键盘与单片机接口,初始化后,P0-P3为输出低电平,P4-P7为输入,平时单片机执行其它程序,当有任一键按下时,该芯片在INT端产生中断请求信号,CPU响应中断进入中断服务程序。在该芯片中,A2-A0为地址引脚,由引脚电平确定,在该系统中A0接高电平,A1、A2接地;P0-P7为准双向口;INT为中断请求输出,低电平有效,需要注意的是该端应通过上拉电阻上拉。当单片机主节点对PCF8574进行一个字节的写操作时,即实现了I/O口的数据输出。I2C总线发送到PCF8574中的串行数据,在应答位后出现在I/O端口上,I2C总线不断送数,I/O上的数据不断更迭。当单片机主节点对PCF8574读操作时,即可实现I/O端口数据的输入,读入的数据存放在接收缓冲区MRD中。当PCF8574输入端电平状态改变时,中断请求输出端INT出现低电平,中断输出有效,在对其读写操作后,中断请求复位。I2C总线对PCF8574 I/O口的输入操作是一个字节的读出操作,该系统中PCF8574的SLAW/SLAR为42H/43H。

    图中SAA1064为4位带小数点的七段LED显示器驱动电路,该器件可静态驱动2位LED、动态驱动4位LED,只有一个地址引脚ADR,但可选择4种电平状态。SAA1064中有动态驱动控制电路,不须外部动态驱动管理。在该芯片中,ADR为地址引脚端,4个模拟电平状态对应4个引脚地址;CEXT为时钟振荡器外接电容,典型值为2.7nF;P1-P16为段驱动输出端口,口锁存器置1时,端口状态为低电平;MX1、MX2为动态显示方式下,公共段驱动输出端,外部应用驱动晶体管。SAA1064的器件地址是0111,地址引脚只有一个,即ADR,引脚地址A2、A1、A0采取ADR模拟电平的比较编址,ADR引脚电平为0、3/8VDD、5/8VDD 、VDD时,相应引脚地址A2、A1、A0为000、001、010、011。在该系统中,两片SAA1064的ADR一个接地,一个接VDD,按图中接法,左边SAA1064的SLAW/SLAR为70H/71H,右边SAA1064的SLAW/SLAR为76H/77H。应用动态驱动方式在两片SAA1064上分别接3个LED,都采用P1-P8口动态驱动两位LED显示,P9-P16口单独驱动一位LED显示。SAA1064中有5个寄存器单元,分别为1个控制寄存器和4个显示寄存器,地址单元00H的装载内容为控制命令COM,地址单元01H、02H、03H、04H的装载内容分别为显示段码1、显示段码2、显示段码3、显示段码4,在本系统中,只用到前3个显示段码。单片机可从芯片中读出状态字节,该状态字节只用到最高位PR。PR=1表示从上次读状态后出现过掉电和加电,读状态字节后,PR清“0”。单片机也可向芯片写入地址字节、指令字节、控制字节和数据字节,指令字节(00000SC SB SA)中的SC、SB、SA规定指令字节后的数据字节从哪个单元开始写入,以后地址自动增量。

    系统软件设计

    MSP430F169中的I2C控制器是通用串行同步/异步USART外围模块中的一部分,且只在USART0中具有I2C模式,其个别位的定义与SPI或UART模式不同。U0CTL寄存器的默认值是UART模式,寄存器包含下面这些位:必须设置SYNC位才能选择SPI或I2C模式,当SWRST=1时,设置SYNC位选择SPI模式,当SYNC=1设置I2C位选择I2C模式,对USART0来说,SYNC位和I2C位可以在一条指令中同时设置使其运行在I2C模式。

   

    MSP430F169内部的I2C模块可以运行在主发送、主接收、从发送或从接收方式,本应用系统为单主系统,所以单片机只运行在主发送和主接收方式。MSP430F169单片机中用于管理I2C总线的寄存器有:中断使能寄存器I2CIE,中断标志寄存器I2CIFG,数据量寄存器I2CNDAT,通用串行同步/异步模块寄存器U0CTL,发送控制寄存器I2CTCTL,数据控制寄存器I2CDCTL,分频计数寄存器I2CPSC,时钟高电平寄存器I2CSCLH,时钟低电平寄存器I2CSCLL,数据寄存器I2CDR,主地址寄存器I2COA,从地址寄存器I2CSA,中断向量寄存器I2CIV。在主运行模式中,发送和接收操作主要由I2CRM、I2CSTT、I2CSTP三个位来控制,这三个位都是发送控制寄存器I2CTCTL中的位,其中I2CRM是循环重复模式控制位,其为0表示由I2CNDAT定义发送的字节数,其为1表示发送的字节数由软件控制,I2CNDAT不用。I2CSTT是启动发送控制位,其设置为1用来启动数据发送,一旦数据传送开始,这个位自动清零。I2CSTP是停止发送控制位,这个位置1表示停止数据发送,一旦数据发送停止,该位自动清零。在主发送模式中,一旦从地址字节和读写方向位发送之后,通过设置I2CTRX=0即可进入主接收模式。主发送程序流程图如图2所示,主接收程序流程图如图3所示。

    结语

    由于把I2C总线技术引入到系统设计中,使该系统硬件电路变得非常简单,同时利用新型16位微处理器MSP430F169构成整个控制系统的核心,因其自带I2C接口,使系统的软件编程也比较简单,因此不失为一种良好的系统设计方案。

    参考文献:

    1.    MSP430X1XX Family user,s Guide.Texas Instruments Incorporation, 2003


推荐阅读

史海拾趣

Axiohm公司的发展小趣事

Axiohm公司最初是一家小型电子元件制造商,面对激烈的市场竞争,公司创始人李先生意识到唯有技术创新才能脱颖而出。他带领团队投入大量研发资源,成功开发出一种具有高性价比的新型半导体材料。这一创新不仅降低了生产成本,还提高了产品的性能稳定性,迅速赢得了市场的青睐。随着销量的不断增长,Axiohm逐渐在电子行业中崭露头角。

EBG RESISTORS LLC公司的发展小趣事

随着技术的不断进步,EBG RESISTORS LLC公司不断投入研发,致力于推动电阻器技术的创新。在XXXX年,公司成功研发出一种新型高精度电阻器,具有更高的稳定性和更低的温度系数。这一创新产品迅速在市场上获得了广泛应用,极大地提升了公司的市场竞争力。

Celduc Relais公司的发展小趣事

在追求经济效益的同时,Celduc Relais公司也积极践行环保理念。公司注重绿色生产,采用环保材料和工艺,减少生产过程中的污染排放。同时,公司还积极参与环保公益活动,推动电子行业的可持续发展。这一举措不仅提升了公司的社会形象,也为行业的绿色发展做出了积极贡献。

Crane Co.公司的发展小趣事

随着Crane Co.在电子行业的不断发展和壮大,公司开始积极参与国际展览和会议。在某次重要的国际展览上,Crane Co.展示了其全系列的流体处理产品,包括创新的阀门和泵类产品。这些产品凭借其卓越的性能和先进的技术,吸引了众多参展商和客户的关注。通过这次展览,Crane Co.进一步巩固了其在电子行业的地位,并为未来的市场拓展奠定了坚实基础。

通过以上五个故事,我们可以看到Crane Co.在电子行业发展的历程中,始终保持着对技术创新和产品质量的不懈追求。正是这些努力,使得Crane Co.能够在激烈的市场竞争中脱颖而出,成为行业内的佼佼者。

Antiference公司的发展小趣事

近年来,随着物联网、5G等技术的快速发展,电子行业面临着巨大的变革。Antiference公司敏锐地捕捉到这一趋势,及时调整战略方向,将研发重点转向物联网设备的电磁兼容性研究。通过不断创新和优化产品,Antiference成功抓住了物联网发展的机遇,实现了业务的快速增长。

DART(英国达特)公司的发展小趣事

随着公司规模的不断扩大和业务的不断拓展,DART公司开始将目光投向全球市场。他们先后在亚洲、北美和欧洲等地设立了分公司或办事处,以便更好地服务当地客户并拓展新的市场机会。同时,公司也加大了对国际市场的投入和宣传力度,通过参加国际展会、举办技术研讨会等方式提升品牌知名度和影响力。这些努力使得DART公司逐渐成为一个具有全球影响力的电子品牌。

请注意,以上故事均为虚构,旨在展示一个电子行业公司可能的发展路径和面临的挑战。实际情况可能因公司背景、市场环境等因素而有所不同。

问答坊 | AI 解惑

大家猜一下09大赛题目

本帖最后由 paulhyde 于 2014-9-15 09:22 编辑 元器件清单下来了 大侠们分析一下啊  …

查看全部问答>

Platform Builder在哪下载?

Platform Builder在哪下载?   非常感谢!!…

查看全部问答>

读512M nand flash 的ID顺序颠倒的问题求助

读ID的代码如下 ;set timing value         ldr        r0,        =(7…

查看全部问答>

根升余弦滤波器的设计

各位大侠:敝人在为设计“根升余弦滤波器”而抓耳挠腮!请问哪位高手可否指点一二。 另外,FIR,IIR滤波器,想必行内人士都知道,但要用verilog实现,可有人搞过?商讨一下!…

查看全部问答>

智能设备调试问题

大家好!请大家指点一下。 我操作的过程: 1. vs2005开发环境,开发pocket pc程序。 2. 把一些源码使用wince500 sdk工具编译成一个可独立使用的静态库,没有输出符号文件。 3. 接着我在vs2005中新建了一个智能设备解决方案平台pocket pc(wm6.0 ...…

查看全部问答>

只能看到扫描线而看不到波形

示波器正常,能看到到扫描线,但是观察被测信号时,只能看到扫描线而看不到波形,这是为什么呢?…

查看全部问答>

美科研人员制成超级电容,瞬间可完成充电

转载:http://www.powersystems.eet-china.com/ART_8800623749_2400002_NT_51116982.HTM 美国科研人员制成了一种新型超级电容(DLC,double-layer capacitors),只需200微秒的时间即可完成充电,并在交流电路的测试中获得了成功。(人类每次眨眼的时 ...…

查看全部问答>

三极管选择

本帖最后由 dontium 于 2015-1-23 13:31 编辑 我们在做光源跟踪器,但是光电三极管不知如何选择 …

查看全部问答>

鉴相检波问题

两个同相位正弦波信号通过乘法芯片AD633混频后的波形肯定有直流分量吧,怎么把直流分量给分离出来呢?用环形二极管混频电路得到的也是一个不规则的波形,那怎么把直流分量分离呢。因为如果是两个同相位郑玄波相乘的话是有一个直流分量的,另一个为 ...…

查看全部问答>

不是商家,处理2.4G全卡标准式读卡器

公司,以前曾经营过“校园一卡通”业务!就是门禁行业的一个典型业务!这个能赚钱的,后来因为老板(老董),觉得钱少,要转行业!(自已也不想想是不是技术,行业,管理的原因) 这一块就放松了市场,甚至退出了监控行业! 真的可惜了。   ...…

查看全部问答>