导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[xiao_die]请问:谁用过温度传感器AD7416!



No.36605
作者:xiao_die
邮件:zhy_2003_3_26@163.com
ID:10469
登陆:12次
文章数:50篇
最后登陆IP:221.217.187.168
最后登陆:2004/11/2 17:19:56
注册:2003/3/24 11:18:03
财富:232
发帖时间:2003/7/9 14:39:09
发贴者IP:202.108.235.206
标题:xiao_die:请问:谁用过温度传感器AD7416!
摘要:No.36605请问:谁用过温度传感器AD7416! 问题:在数据处理程序怎样把读出来的数据变成两个字节的二进制数呢?
(数据放在ADCH,ADCL中)
温度值寄存器
温度值寄存器是一个16位只读寄存器,它的高10位D15~D6由A/D转换器送来的数字量以补码格式储存,低6位D5~D0未用.
温度数据格式见表4(小数点在D8、D7之间)。该表中显示了A/D转换器的全部理论范围-128℃至+127℃。实际应用中,温度的测量范围将取决于器件的正常工作温度范围.

利用单片机测量温度:
ad7416的地址A0A1A2为111:
ADSCL BIT P1.1
ADSDL BIT P1.7
.............
;程序初始化
............
;AD7416的采样参考程序:
SAMPLE74:MOV ADCNUM,#8 ;连续采样8次
SEO74: MOV R6,#9EH ;片选AD7416的地址写操作
MOV R5,#1 ;选中配置寄存器
MOV R4,#28H ;给配置寄存器赋值
LCALL WRCOM ;三字节写操作
MOV R6,#10011110B
MOV R5,#3 ;选中温度上限寄存器
MOV R4,#40H ;上限温度=64
LCALL WRCOM
MOV R6,#10011110B
MOV R5,#2 ;选中温度下限寄存器
MOV R4,#20H ;下限温度=32
LCALL WRCOM
MOV R6,#10011110B
MOV R5,#0 ;选中温度寄存器
LCALL WREXE ;两字节写操作
MOV DATA1,#10011110B ;片选AD7416.读操作
LCALL RDCOM
................
;数据处理
............... 
DJNZ ADCNUM,SE074 ;采样没完,返回
RET
WRCIM: LCALL BEGIN ;三字节的写操作
MOV DATA1,R6
LCALL OUTBYTE ;输出字节
MOV DATA1,R5
LCALL OUTBYTE
MOV DATA1,R4
LCALL OUTBYTE
LCALL STOP
RET
WREXE: LCALL BEGIN ;两字节的写操作
MOV DATA1,R6
LCALL OUTBYTE
MOV DATA1,R5
LCALL OUTBYTE
LCALL STOP
RET
RDCOM: LCALL BEGIN ;读操作
LCALL OUTBYTE
LCALL INBYTE ;输入字节
MOV ADCH,DATA1 
LCALL NACK ;MCU使ADSDA数据线变为低电平
LCALL INBYTE
MOV ADCL,DATA1
LCALL ACK ;MCU使ADSDA数据线变为高电平
LCALL STOP
RET
OUTBYTE: MOV R7,#8 ;输出字节
OE1: MOV A,DATA1
RLC A
MOV ADSDA,C
MOV DATA1,A
LCALL CLOCK ......

>>返回讨论的主题



  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:78531毫秒 查询6次