芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

飞芯科技-芯片解密|单片机解密|IC解密|芯片破解|芯片复制| PCB抄板|软件开发

芯片解密DS3231温度读取实验

芯片解密DS3231作为一个走时精准的RTC芯片,内部带有温度补偿电路,此例将读取其中11H和12H寄存器,提取测得的温度值并传送到串口输出。
芯片解密1.根据DS3231的芯片手册,其温度传感器的精度为±3℃,毕竟不是专用的温度传感器,在使用中可以作为一个参考,且仅此而已。
2.根据DS3231的芯片手册,其温度分辨率为±0.25℃,所以其小数部分读出的值只能是.00、.25、.50、.75这四种,如果读出的值不是这四种,则数据处理有误。
3.本实验使用一个float型数据直接接收了转换的温度值,没有对补码的符号位进行判断等。

注明:本程序没有使用CONV位进行强制转换,但是实际上温度值的刷新速度还是很令人满意(用手按住芯片,温度值更改速度很快,下面的测试图片是恒温下检测的,故无变化)。
测试程序:

  1. #include<STC15.H>
  2. #include"stdio.h"
  3. #include<intrins.h>
  4. //位定义
  5. sbit DS3231_SDA=P3^3;
  6. sbit DS3231_SCL=P3^2;

  7. //运行数组
  8. unsigned char DS3231_Time_Buffer[7]={0x00,0x48,0x11,0x02,0x12,0x02,0x19};
  9. unsigned char temp[2]={0,0};
  10. char buf[20]={0};
  11. //运行标志位
  12. bit busy=0;
  13. //运行变量
  14. float v;

  15. /*##############################################################################
  16. 芯片解密
  17. ##############################################################################*/

  18. /*###################以下为给DS3231定义的IIC通信函数################*/
  19. void DS3231_Delay()//使用空操作进行短暂的延时
  20. {
  21.         _nop_();
  22.         _nop_();
  23.         _nop_();
  24.         _nop_();
  25. }

  26. void DS3231_IIC_Start()//IIC总线的开始信号
  27. {
  28.         DS3231_SCL=1;
  29.         DS3231_SDA=1;
  30.         DS3231_Delay();
  31.         DS3231_SDA=0;
  32.         DS3231_Delay();
  33.         DS3231_SCL=0;
  34. }

  35. void DS3231_IIC_Stop()//IIC总线的停止信号
  36. {
  37.         DS3231_SCL=0;
  38.         DS3231_SDA=0;
  39.         DS3231_Delay();
  40.         DS3231_SCL=1;
  41.         DS3231_Delay();
  42.         DS3231_SDA=1;
  43.         DS3231_Delay();
  44. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.feixindz.com
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信