测试使用的MCU 型号
- STC15F104W
- 内部架构
传感器型简介
传感器原理图
TSIC506 主驱动代码
#ifndef __CONFIG_H
#define __CONFIG_H
#include "STC15Fxxxx.H"
#define MAIN_Fosc 11059200L
typedef bit BOOL;
typedef unsigned char uchar;
typedef unsigned int uint;
#define TRUE 1
#define FALSE 0
#define Main_Fosc_KHZ (MAIN_Fosc / 1000)
#endif
- tsic506.h 文件:声明tsic506外部公开的函数
#ifndef __TSIC506_H
#define __TSIC506_H
#include "config.h"
sbit DQ = P3^3;
BOOL tsic506_init(void);
BOOL Check_Parity(uint value);
uint read_byte(void);
BOOL getTSIC_Temp (uint *temp_value16);
#endif
- tsic506.c 文件:定义tsic06相关驱动代码
#include <tsic506.h>
#include <delay.h>
BOOL tsic506_init()
{
DQ = 1;
while(!DQ);
return TRUE;
}
uint read_byte(void)
{
uchar i;
uint temp_value = 0;
while(DQ == 1);
while(DQ == 0);
for (i = 0; i < 9; i++)
{
while(DQ == 1);
delay_5us(12);
if (DQ == 1)
{
temp_value |= 1 << (8-i);
}
else
{
while(DQ == 0)