全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 通信网络 >

如何解释DS1847/DS1848温度读数-How to I

时间:2009-04-22 12:03

人气:

作者:admin

标签: DS1847  DS1 

导读:如何解释DS1847/DS1848温度读数-How to I-Abstract: The DS1847 and DS1848 have an on-chip direct-to-digital temperature sensor. The temperature is stored in address locations E2h and E3h. This application note explains how to convert th...
Abstract: The DS1847 and DS1848 have an on-chip direct-to-digital temperature sensor. The temperature is stored in address locations E2h and E3h. This application note explains how to convert the digital temperature data into a decimal degrees Celsius value.

Translating Temperatures from Hex to Decimal

The procedure for converting temperature values for the DS1847 and DS1848 begins with reading the hex values stored in bytes E2h (the MSB of the temperature) and E3h (the LSB of the temperature). These two bytes contain the most recent temperature reading. Once the two bytes have been read, they can be translated into binary. The bit weights are shown in Table 1.

Table 1. Bit weight from page 5 of the DS1847 and DS1848 data sheets
E2h (Temperature MSB) E3h (Temperature LSB)
S 27 26 25 24 23 22 21 20 2-1 2-2 2-3 2-4 0 0 0

The temperature is stored in the 13 MSBs of the binary data. The MSB is the sign bit and indicates whether or not the 2's complement binary number is positive or negative. If the MSB is 0, then the value is positive. If the MSB is 1, then the value is negative. The next 12 bits contain the value of the temperature and are translated into decimal by different methods for positive and negative values.

Positive Temperature Translation

The following is an example of how to translate a positive temperature. In this example, address locations E2h and E3h contain 2Ah and 88h, respectively. Combine these two bytes to get 2A88h. Next, translate the hex data into binary. The binary equivalent of 2A88h is 0010 1010 1000 1000. Since the MSB is 0, the temperature is positive. The lower 3 bits of the binary data are ignored, so they are masked with 0s. Table 2 shows the translation from hex to binary and the masking of the lower 3 bits.

Table 2. Positive number (MSB = 0) translation
HEXIDECIMAL DATA BINARY DATA MASKED BINARY DATA
2A88h 0010 1010 1000 1000 0010 1010 1000 1000

Because the temperature is positive, no 2's complement transformation is required. The data can be translated directly into a decimal number using a calculator. The binary number 0010 1010 1000 1000 is equal to the decimal value of 10888. Because the data contains a fractional component, the decimal value has to be divided to attain the true temperature. The decimal value must be divided by 128 (or multiplied by 2-7) to calculate the correct decimal temperature value. Dividing the decimal value 10888 by 128 results in a decimal temperature value of 85.0625°C.

Negative Temperature Translation

Converting a negative temperature value (MSB = 1) is a little more involved. As an example, addresses E2h and E3h contain the data F8h and 08h. The first step would be to convert the hex values into binary. Again, the lower 3 bits are ignored, so they will be masked with 0s. Table 3 shows the translation from hex to binary and the masking of the 3 lower bits.

Table 3. Negative number (MSB = 1) translation
HEXIDECIMAL DATA BINARY DATA MASKED BINARY DATA
F808h 1111 1000 0000 1000 1111 1000 0000 1000

The next step is to take the 2's complement of the masked binary value. This is done by first inverting the masked binary number, then adding 1 to it. Inverting the binary number 1111 1000 0000 1000 results in the binary number 0000 0111 1111 0111. Adding 1 gives the binary number 0000 0111 1111 1000. This value is equal to the decimal number 2040. Like in the positive temperature example, the translated decimal value is divided by 128, but is also made negative because the temperature is negative as indicated by the MSB. So, when the decimal value 2040 is divided by -128, the result is a decimal temperature value of -15.9375°C.

Conclusion

This application note demonstrates the two methods of translating the hex data found in addresses E2h and E3h into a decimal degrees Celsius temperature value. Any questions about this document can be directed to the Mixed-Signal Applications Group at MixedSignal.Apps@dalsemi.com.

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信