新闻中心

EEPW首页>嵌入式系统>设计应用> 可编程数字电位器与AVR单片机的通信说明

可编程数字电位器与AVR单片机的通信说明

作者: 时间:2013-12-09 来源:网络 收藏

START:
LDI R16,$A4;设置I2C总线控制寄存器
OUT TWCR,R16;软件清除TWINT标志WAIT1:
IN R16,TWCR;读取控制寄存器TWCR
SBRS R16,7;等待硬件置位TWINT标志
RJMP WAIT1;TWINT标志没置位,循环检查等待
IN R16,TWSR;读取状态寄存器TWSR
ANDI R16,$F8;屏蔽无效位
CPI R16,$08:检查"START"信号是否发送成功
BRNE ERROR;"START"信号发送未成功,转入出错处理
LDI R16,$56;发送X9221器件地址56="5"器件标识,"6"器件地址
OUT TWDR,R16
LDI R16,$84
OUT TWCR,R16;软件清除TWINT标志
IN R16,TWSR
ANDI R16,$F8
CPI R16,$18;检查X9221器件地址是否发送成功
BRNE ERROR;X9221器件地址发送未成功,转入出错处理
LDI R16,$2F;设置所发送的数据(0~63有效,例中为47)
OUT TWDR,R16;数据输出到数据寄存器TWDR
LDI R16,$84
OUT TWCR,R16;软件清除TWINT标志;检查数据"2F"是否发送完成,类似于上述循环继续
.
.
LDI R16,$94;发送"STOP"信号,一次'$2F'数据发送完成
OUT TWCR,R16
ERROR:···;出错处理过程
END

  在此例程中,器件的地址对X9221来说为56,其中"5"是器件本身固有的以区别于其它类型的设备,而"6"是设计硬件时规定的,可以是"0~F"任何十六进制数值;例程中仅作为主机使用且向X9221发送数据,其实从X9221中读取当前数据也是一样的。本例程采用查询方式,程序显得繁琐,但是如果采用中断方式的话,程序就会显得简单多,只要标志SREG寄存器中"I"位和I2C总线控制寄存器中的"TEWIE"置"1",即中断使能有效,当"TWINT"标志置"1"立即产生中断请求,表明完成当前数据发送完成,可以准备下一个字节数据发送或停止发送等操作。

4 X9221在半导体专用设备一些应用研究

4.1用于测量微小电压变化

  图4是微小电压测量电路模型,用于芯片键合设备中去检测吸头上是否有芯片吸附以及吸头是否堵塞、或者芯片是否丢失等现象。当内径为大约0.1~0.15 mm的吸头去吸附一个小芯片时,如果芯片较透明,光敏传感器检测出来的电压变化较小,一般在10~50 mV间;同样当吸头吸附一个小芯片时,气路真空的压力也会产生变化,这种压力的变化以传感器电压变化输出。为了改变电位器"中间抽头"以便与传感器检测输入电压相匹配,计算机通过RS232接口向单片机发送数据,单片机收到数据后转发给X9221以改变基准电压值。比较基准电压U∑+按下式确定:可编程数字电位器与AVR单片机的通信说明

U∑+是LM393运放同相输入端电压(在这种状态下,考虑到前级传感器输出基本上处于放大状态,所用传感器电源电压为+5 V,最高输出电压按3.5 V计算)

  N是0~63共64种状态变化值,那么,当U∑+从0~3.5 V变化时,最小分辨率可以达到55 mV左右,用手工进行一般电位器调节达到这样的分辨率是难以掌控的。

  基准电压(即U∑+)通过机器的人机界面可以"直接调节",如果将电位器数值进行标定,随时还可以看到当前的基准电压大小。传感器输出电压与基准电压比较,使电压比较器输出反应当前的状态,不同的时刻高低电平代表不同的意义,如"吸头阻塞"、"芯片丢片"、"真空不足"等。

4.2测量微小电流变化

  图5是微小电流测量电路模型,用于引线键合设备中去检测断线、连线、短路等情况,被测器件是一个半导体元件,当在焊盘上键合上一根金线时,通过检测漏电流来判断这条金线与芯片键合过程中是否存在"断线"、"连线"、"短路"等情况。计算机通过界面操作发送指令以改变X9221的阻值,进而改变电压源的放大倍数以改变加在被测元件的电压,从而达到适应不同品种的半导体器件性能要求。可编程数字电位器与AVR单片机的通信说明

设:信号源的输出为Us,运放LM324输出为U0,X9221电阻为Rx,被测元件阻抗为Rz,被测元件流过的漏电流为I0,则用以下两个表达即可表达它们之间的关系:

通过主机界面改变Rx可编程电阻值,即可以改变U0,U0的改变等于改变了I0,而I0的改变等于改变了流过被测器件的最大允许电流,从而保护了被测器件不会因为检测漏电流而损坏,通过检测被测器件上施加的电压和U0之差值即可判断漏电流大小,从而检测金线是否与被测器件焊盘点键合上。I0是根据不同器件在工艺参数上需要经常调节的量,以适应不同场合的要求。

5 结束语

  可编程数字电位器的最大优点在于直接可以和带有I2C总线单片机相连而无需特殊设计,上位机可以随机读取电位器当前设定值。利用它的这些优点,可以提高设备仪器的智能化水平,特别是在带有I2C总线的嵌入式单片机中应用十分灵活简单。随着电子技术的飞速发展,人们对设备、仪器以及家用电器的追求已不再仅仅满足功能使用上,而是在产品应用的人性化上要求越来越高,由于大多数自动化设备上,都具有友好的人机界面,人们通过计算机界面想完成所有操作,比如调节一个电位器以调节电流、电压或者电机速度、转矩、频率等物理量,利用可编程数字电位器完全可以通过界面完成。适时采用可编程数字电位器不但可以降低成本、简化电路设计、提高可靠性,而且可以使设计更加人性化。另外,可以通过JTAG接口完成仿真调试、下载程序;片内有FLASH和E2ROM存储单元,有标准的串行接口、I2C总线接口、SPI接口增强了其硬件功能;支持C语言编程,便于掌握C语言者无需太多地了解硬件就能进行一些编程。本文探讨了AVR单片机、X9221可编程数字电位器及其接口和软件编程的一些实际应用,许多问题是笔者在应用中的经验,可能会有些错误,希望读者批评指正。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭