<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 基于DS18B20與TMS320LF2407A的測溫系統

基于DS18B20與TMS320LF2407A的測溫系統

作者: 時(shí)間:2010-02-26 來(lái)源:網(wǎng)絡(luò ) 收藏

  這些匯編語(yǔ)句所占用的時(shí)間可以計算成公式:DELAY=(9N+4)*單個(gè)指令周期。

  3、測試出一個(gè)指令周期

  系統所用晶振為20M,倍頻以后的時(shí)鐘頻率為40M,定時(shí)器1的分頻為1,也就是說(shuō)定時(shí)器的計時(shí)周期為25ns。開(kāi)啟定時(shí)器,單步運行上面的匯編語(yǔ)句,看定時(shí)器每次運行后所增加的數值。測試得到,在每次單步運行占一個(gè)指令周期的匯編語(yǔ)句后,定時(shí)器的數值增加10。也就是說(shuō),每個(gè)單指令周期的指令占用的時(shí)間為:25ns*10=250ns,也就是0.25us。

  4、延時(shí)程序的最終計算公式為:

  DELAY =(9n+4)*0.25us。

  由公式可以看出,當n=0時(shí),DELAY=1us,當n=65535時(shí),DELAY= 150ms。

3.2 主要程序

  由于文章篇幅的關(guān)系,這里只給出復位程序、讀字節程序和整個(gè)讀溫度的主程序,寫(xiě)命令字的程序可以根據上面所述的時(shí)序自行編寫(xiě)。

#define nop() {asm( nop );}
#define DATA_PORT PADATDIR
#define DATA_MODE 0x0040
#define DATA_OUT 0x4000
#define DATA_BIT 0x0040
#define PIN_HIGH() {PADATDIR=PADATDIR|DATA_OUT|DATA_BIT;}
#define PIN_LOW() {DATA_PORT=(PADATDIR|DATA_OUT)(~DATA_BIT);}
#define PIN_LEAVE() {DATA_PORT=DATA_PORT(~DATA_OUT)|DATA_BIT;}
/* 傳感器復位程序 */
unchar reset(void)
{ unchar retval;
unint loopindex=0;
PIN_HIGH();
nop();nop();nop();nop(); /* 延時(shí)1us*/
PIN_LOW();
for(loopindex=0;loopindex213;loopindex++){;} /*置總線(xiàn)為低電平并保持至少480us */
PIN_HIGH();
for(loopindex=0;loopindex26;loopindex++){;} /*等電阻拉高總線(xiàn)并保持15-60us */
PIN_LEAVE(); /*接受應答信號*/
nop();
if((DATA_PORT DATA_BIT) == 0x0000)
{ retval = 0; }
else
{ retval = 1; }
PIN_HIGH();
for(loopindex=0;loopindex106;loopindex++){;} /*延時(shí)60-240us */
return(retval); /*返回應答信號 */
}



關(guān)鍵詞: 2407A 2407 18B B20

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>