?? tlc1543.c
字號:
#include "c51base.h"
void some_nop()
{
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
}
uint ADCRead(uchar port) //從TLC1543讀取采樣值,形參port是采樣的通道號
{
uint idata ad_value;
uchar i;
TCL1543_CLK=0;
TCL1543_CS=0;
port<<=4;
for (i=0;i<4;i++) //把通道號打入1543
{
TCL1543_IN = (bit)(port&0x80);
TCL1543_CLK=1;
some_nop();
TCL1543_CLK=0;
port<<=1;
}
for (i=0;i<6;i++) //填充6個TCL1543_CLK
{
TCL1543_CLK=1;
some_nop();
TCL1543_CLK=0;
}
TCL1543_CS=1;
some_nop();some_nop();some_nop();some_nop();some_nop();some_nop();
some_nop();some_nop();some_nop();some_nop();some_nop();some_nop();
some_nop();some_nop();some_nop();some_nop();some_nop();some_nop();
some_nop();some_nop();some_nop();
TCL1543_CS=0; //等待AD轉換
some_nop();some_nop();some_nop();
ad_value = 0;
for (i=0;i<10;i++) //取D9,D8
{
TCL1543_OUT=1;
TCL1543_CLK=1;
ad_value <<= 1;
if (TCL1543_OUT)
ad_value|=0x01;
TCL1543_CLK=0;
}
// ad_value >>= 2;
TCL1543_CS=1;
return (ad_value);
}
uchar GetTemper(uchar number)
{
uint idata value;
value = ADCRead(number);
// printf("溫度通道%d-%d\n",(int)number,(int)value);
if(value<=275)
value = 0;
else if(value>=275 && value < 415)//0-15度
value = (value-270)/10;
else if(value>=415 && value <580) //16-32度
value = (value-263)/10;
else if(value>=580 && value <639) //33-39度
value = (value-255)/10;
else if(value>=639 && value <679) //40-45度
value = (value-245)/10;
else if(value>=679 && value <709) //46-47度
value = (value-235)/10;
else if(value>=709 && value <737) //48-51度
value = (value-225)/10;
else if(value>=737 && value <756) //52-55度
value = (value-215)/10;
else if(value>=756 && value <769) //56-56度
value = (value-205)/10;
else if(value>=769 && value <786) //57-59度
value = (value-195)/10;
else if(value>=786 && value <798) //60-61度
value = (value-185)/10;
else if(value>=798 && value <808) //60-61度
value = (value-175)/10;
else if(value>=808 && value <818) //60-61度
value = (value-165)/10;
else if(value>=818 && value <865) //60-61度
value = (9*value-4656)/41;
else if(value>=865 && value <912) //75-90度
value = (value-639)/3;
//printf("溫度通道%d-%d\n",(int)number,(int)value);
return value;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -