【51單片機系列】DS18B20溫度傳感器模塊

本文是關(guān)于溫度傳感器的相關(guān)內(nèi)容海渊。

一、 DS18B20數(shù)字溫度傳感器介紹

DS18B20是 DALLAS半導體公司推出的一種“一線總線(單總線)”接口的溫度傳感器星虹。與傳統(tǒng)的熱敏電阻等測溫元件相比驱富,DS18B20是一種新型的、體積小猎拨、使用電壓寬膀藐、與微處理器接口簡單的數(shù)字化溫度傳感器屠阻。

1.1、 DS18B20溫度傳感器的特點

DS18B20溫度傳感器具有如下特點:

1额各、使用電壓范圍更寬国觉,電壓范圍:3.0V ~ 5.5V,在寄生電源方式下可由數(shù)據(jù)線供電虾啦。

2麻诀、獨特的單線接口方式,DS18B20在與微處理器連接時僅需要一條口線即可實現(xiàn)微處理器與DS18B20的雙向通訊傲醉。

3蝇闭、DS18B20支持多點組網(wǎng)功能,多個DS18B20可以并聯(lián)在唯一的三線上硬毕,實現(xiàn)組網(wǎng)多點測溫呻引。

4、DS18B20在使用中不需要任何外圍元件吐咳,全部傳感器元件及轉(zhuǎn)換電路集成在一只形如三極管的集成電路內(nèi)逻悠。

5、溫度范圍支持-55°C~+125°C韭脊,在-10 ~ +85°C時精度為±0.5°C童谒。

6、可編程的分辨率為9 ~ 12位沪羔,對應的可分辨溫度分別為0.5°C饥伊、0.25°C、0.125°C和0.0625°C蔫饰,可實現(xiàn)高精度測溫琅豆。

7、在9位分辨率時最多在93.75ms內(nèi)把溫度轉(zhuǎn)換為數(shù)字死嗦,12位分辨率時最多在750ms內(nèi)把溫度值轉(zhuǎn)換為數(shù)字趋距,速度更快。

8越除、測量結(jié)果直接輸出數(shù)字溫度信號节腐,以“一根總線”串行傳送給CPU,同時可傳送CRC校驗碼摘盆,具有極強的抗干擾糾錯能力翼雀。

9、負壓特性:電源極性接反時孩擂,芯片不會因發(fā)熱而燒毀狼渊,但不能正常工作。

1.2、DA18B20內(nèi)部結(jié)構(gòu)

DS18B20外觀實物如下圖所示:

DS18B20外觀實物圖

從上圖中可以看出來狈邑,當正對傳感器切面(上圖中間)時圣絮,傳感器的管腳順序從左到右排列:管腳1為GND淑履,管腳2為數(shù)據(jù)DQ振峻,管腳3為VDD忍啸。如果傳感器插反,電源將短路蘸嘶,傳感器會發(fā)燙良瞧,容易損壞。

通常在開發(fā)板上會標出傳感器的凸起處训唱,所以只需要把傳感器凸起的方向?qū)χ_發(fā)板凸起方向插入即可褥蚯。

DS18B20內(nèi)部結(jié)構(gòu)如下圖所示:

DS18B20內(nèi)部結(jié)構(gòu)
  • ROM中的64位序列號是出廠前被光刻好的,可以看作是該DS18B20的地址序列號况增。64位光刻ROM的排列是:開始8位(28H)是產(chǎn)品類型標號赞庶,接著的48位是該DS18B20自身的序列號,最后8位是前面56位的循環(huán)冗余校驗碼巡通。光刻ROM的作用是使每一個DS18B20都各不相同尘执,這樣就可以實現(xiàn)一根總線上掛接多個DS18B20。當接多個DS18B20時宴凉,通過64位的序列號可以確定使用的是哪個溫度傳感器

64位光刻ROM組成如下:

8位CRC 48位序列號 8位類型標號(28H)

1.3表悬、 DS18B20的溫度轉(zhuǎn)換規(guī)則

DS18B20的核心功能是它可以直接讀出數(shù)字的溫度數(shù)值弥锄。

溫度傳感器的精度是用戶可編程功能的9、10蟆沫、11或12位籽暇,精度分別為0.5、0.25饭庞、0.125戒悠、0.0625,單位°C舟山。

上電狀態(tài)下默認精度是12位绸狐。

DS18B20啟動后保持低功耗等待狀態(tài),當需要執(zhí)行溫度測量和AD轉(zhuǎn)換時累盗,總線控制器必須發(fā)出[44h]命令寒矿。轉(zhuǎn)換完以后,產(chǎn)生的溫度數(shù)據(jù)以兩個字節(jié)的形式被存儲到告訴暫存器的溫度寄存器中若债,DS18B20繼續(xù)保持等待狀態(tài)符相。讀取溫度寄存器中的數(shù)據(jù),再根據(jù)精度就可以得到當前測得的溫度蠢琳。

1.4啊终、 DS18B20的ROM指令表

指令 約定代碼 功能
讀ROM 33H 讀DS18B20溫度傳感器ROM中的編碼镜豹,即64位序列號
符合ROM 55H 發(fā)出此命令之后,接著發(fā)出64位ROM編碼蓝牲,訪問單總線上與該編碼相對應的DS18B20使之做出響應趟脂,為下一步對DS18B20的讀寫作準備
搜索ROM 0F0H 用于確定掛接在同一總線上DS18B20的個數(shù)和識別64位ROM地址,為操作各器件做好準備
跳過ROM 0CCH 忽略64位ROM地址搞旭,直接向DS18B20發(fā)送溫度變換命令散怖,適用于單片機工作
告警搜索命令 0ECH 執(zhí)行后只有溫度超過設定值上限或下限才做出響應

1.5、 DS18B20的RAM指令表

指令 約定代碼 功能
溫度變換 44H 啟動DS18B20進行溫度轉(zhuǎn)換肄渗,12位轉(zhuǎn)換時最長為750ms镇眷,結(jié)果存入內(nèi)部9字節(jié)RAM中
讀暫存器 0BEH 讀內(nèi)部RAM中9字節(jié)的內(nèi)容
寫暫存器 4EH 發(fā)出向內(nèi)部RAM的3、4字節(jié)寫上翎嫡、下限溫度數(shù)據(jù)命令欠动,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)惑申。
復制暫存器 48H 將RAM中第3具伍、4字節(jié)的內(nèi)容復制到EEPROM中
重調(diào)EEPROM 0B8H 將EEPROM中內(nèi)容恢復到RAM中的第3、4字節(jié)
讀供電方式 0B4H 讀DS18B20的供電模式圈驼,寄生供電時DS18B20發(fā)送0人芽,外接電源供電DS18B20發(fā)送1

1.6、 計算溫度

DS19B20溫度傳感器的內(nèi)部存儲器包括一個高速的暫存器RAM和一個非易失性的可電擦除的EEPROM绩脆,后者存放高溫度和低溫度觸發(fā)器TH萤厅、TL和結(jié)構(gòu)寄存器。

配置寄存器是配置不同的位數(shù)來確定溫度和數(shù)字的轉(zhuǎn)化靴迫,配置寄存器結(jié)構(gòu)如下:

TM R1 R0 1 1 1 1 1

低五位是1惕味。

TM是測試模式位,用于設置DS18B20在工作模式還是在測試模式玉锌。DS18B20出廠時該位被設置為0名挥,用戶不需要去改動。

R1和R0用來設置DS18B20的精度(分辨率)主守,可設置為9禀倔、10、11或12位丸逸,對應的分辨率溫度是0.5°C蹋艺、0.25°C、0.125°C和0.0625°C黄刚。R0和R1配置如下:

R1 R0 精度 最大轉(zhuǎn)換時間
0 0 9-bit 93.75ms (t_{CONV}/8)
0 1 10-bit 187.5ms (t_{CONV}/4)
1 0 11-bit 375ms (t_{CONV}/2)
1 1 12-bit 750ms (t_{CONV})

初始狀態(tài)默認精度是12位捎谨,即R1R0=11。

高速暫存存儲器由9個字節(jié)組成,分配如下:

寄存器內(nèi)容 字節(jié)地址
溫度值低位(LS Byte) 0
溫度值高位(MS Byte) 1
高溫限值(TH) 2
低溫限值(TL) 3
配置寄存器 4
保留 5
保留 6
保留 7
CRC校驗位 8

當溫度轉(zhuǎn)換命令(44H)發(fā)布后涛救,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在高速暫存存儲器的第0和第1個字節(jié)畏邢。存儲的兩個字節(jié),高字節(jié)的前5位是符號S检吆,單片機可通過單線接口讀到該數(shù)據(jù)舒萎,讀取時低位在前,高位在后蹭沛,數(shù)據(jù)格式如下:

寄存器 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
LS Byte 2^3 2^2 2^1 2^0 2^{-1} 2^{-2} 2^{-3} 2^{-4}
MS Byte S S S S S 2^6 2^5 2^4

如果測得的溫度大于0臂寝,符號位S=0,將測試得到的數(shù)值乘以0.0625(默認精度)即可得到實際溫度摊灭;

如果測得的溫度小于0咆贬,符號位S=1,將測到的數(shù)據(jù)取反加1再乘以0.0625即可得到實際溫度帚呼。

溫度與數(shù)據(jù)對應關(guān)系如下:

溫度°C 數(shù)據(jù)輸出(二進制) 數(shù)據(jù)輸出(十六進制)
+125 0000 0111 1101 0000 07D0H
+85 0000 0101 0101 0000 0550H
+25.0625 0000 0001 1001 0001 0191H
+10.125 0000 0000 1010 0010 00A2H
+0.5 0000 0000 0000 1000 0008H
0 0000 0000 0000 0000 0000H
-0.5 1111 1111 1111 1000 FFF8H
-10.125 1111 1111 0101 1110 FF5EH
-25.0625 1111 1110 0110 1111 FE6EH
-55 1111 1100 1001 0000 FC90H

上電復位時溫度寄存器默認值為+85°C掏缎。

比如測試到的數(shù)據(jù)為0x0550,高5位是0表示測試到的溫度是正溫度煤杀,0x0550十進制是1360眷蜈,將1360乘以0.0625等于85就是得到的溫度值,即0x0550對應的是85°C沈自。

1.7酌儒、 讀寫時序

由于DS18B20是單總線器件,所有的單總線器件都要求采用嚴格的信號時序枯途,以保證數(shù)據(jù)的完整性今豆。

DS18B20時序包括:初始化時序、寫(0和1)時序柔袁、讀(0和1)時序。

DS18B20發(fā)送所有的命令和數(shù)據(jù)都是字節(jié)的低位在前异逐。

(1) 初始化時序

單總線上的所有通信都是以初始化序列開始的捶索。

主機輸出低電平,保持低電平時間至少480us(該時間的時間范圍可以從480到960us)灰瞻,以產(chǎn)生復位脈沖腥例。

接著主機釋放總線,外部的上拉電阻將單總線拉高酝润,延時15~60us燎竖,并進入接收模式。

接著DS18B20拉低總線60~240us要销,以產(chǎn)生低電平應答脈沖构回,若為低電平,還要做延時,其延時時間從外部上拉電阻將單總線拉高算起算起最少要480us纤掸。

初始化時序圖如下:

DS18B20初始化時序圖

① 數(shù)據(jù)線拉到低電平0脐供;

②延時480us;

③ 數(shù)據(jù)線拉到高電平1借跪;

④ 延時等待80us政己,如果初始化成功則在15~60us內(nèi)產(chǎn)生一個由DS18B20返回的低電平,根據(jù)該狀態(tài)可以確定它存在掏愁;

⑤ 如果CPU讀到了數(shù)據(jù)線上的低電平0后歇由,還要延時,其延時時間從發(fā)出的高電平算起(第③步)的時間算起果港,最少要480us沦泌。

根據(jù)上述時序,可以編寫對應的初始化代碼京腥,如下:

/*************************************************************************
* 函數(shù)名:      DS18B20Init
* 函數(shù)功能: DS18B20溫度傳感器初始化
* 輸入:           void
* 輸出:           初始化成功返回1赦肃,失敗返回0
**************************************************************************/
uchar DS18B20Init()
{
    uchar i;
    DSPORT=0;  // 數(shù)據(jù)線拉低
    i=80;
    while(i--);  // 延時480us
    DSPORT=1;  // 數(shù)據(jù)線拉高
    i=0;
    while(DSPORT)
    {
        delay1ms(1);  // 數(shù)據(jù)線拉高后延時至少480us
        i++;
        if(i>5)
        {
            return 1;
        }
        
    }
    return 0;
}

其中DSPORT定義如下:

sbit DSPORT = P3^7; // DS18B20的數(shù)據(jù)線連接到P3.7口

(2) 寫時序

寫時序包括寫0時序和寫1時序。

所有寫時序至少需要60us公浪,且在2次獨立的寫時序之間至少需要1us的恢復時間他宛,兩種寫時序均起始于主機拉低總線。

寫1時序:主機輸出低電平欠气,延時2us厅各,然后釋放總線,延時60us预柒。

寫0時序:主機輸出低電平队塘,延時60us,然后釋放總線宜鸯,延時2us憔古。

寫時序圖如下:

DS18B20寫時序圖

① 數(shù)據(jù)線先置低電平0;

② 延時15us淋袖;

③ 按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)送一位)鸿市;

④ 延時60us;

⑤ 將數(shù)據(jù)線拉到高電平即碗。

⑥ 重復1~5步驟焰情,直到發(fā)送完整的字節(jié);

⑦ 最后將數(shù)據(jù)線拉高剥懒。

根據(jù)上述時序編寫出DS18B20寫數(shù)據(jù)的代碼内舟,如下:

/*************************************************************************
* 函數(shù)名:      DS18B20WriteByte
* 函數(shù)功能: DS18B20按照時序?qū)懸粋€字節(jié)
* 輸入:           dat:寫入的數(shù)據(jù)
* 輸出:           void
**************************************************************************/
void DS18B20WriteByte(uchar dat)
{
    uchar i, j;
    j=0;
    for(i=0;i<8;i++)
    {
        DSPORT=0;  // 數(shù)據(jù)線拉低
        j++;  // 延時15us
        j++;
        DSPORT=dat&0x01;
        j=10;  // 延時60us
        while(j--);
        DSPORT=1;
        dat=dat>>1;
    }
}   

(3) 讀時序

單總線器件僅在主機發(fā)出讀時序時,才向主機傳輸數(shù)據(jù)初橘,所以充岛,在主機發(fā)出讀數(shù)據(jù)命令后批狱,必須馬上產(chǎn)生讀時序,以便從機能夠傳輸數(shù)據(jù)炒俱。

所有讀時序至少需要60us,且在2次讀時序之間至少需要1us的恢復時間权悟。

每個讀時序都由主機發(fā)起,至少拉低總線1us推盛。主機在讀時序期間必須釋放總線峦阁,并且在時序起始后的15us內(nèi)采樣總線狀態(tài)。

讀時序圖如下:

DS18B20讀時序圖

① 將數(shù)據(jù)線拉低0耘成;

② 延時1us榔昔;

③ 將數(shù)據(jù)線拉高1,釋放總線準備讀數(shù)據(jù)瘪菌;

④ 延時10us撒会;

⑤ 讀數(shù)據(jù)線的狀態(tài)得到1個狀態(tài)位,并進行數(shù)據(jù)處理师妙;

⑥ 延時45us诵肛;

⑦ 重復1~6步驟,直到讀完一個字節(jié)默穴。

根據(jù)上述時序可以編寫DS18B20讀數(shù)據(jù)的時序怔檩,如下:

/*************************************************************************
* 函數(shù)名:      DS18B20ReadByte
* 函數(shù)功能: DS18B20按照時序讀一個字節(jié)
* 輸入:           void
* 輸出:           返回讀取到的一個字節(jié)的數(shù)據(jù)
**************************************************************************/
uchar DS18B20ReadByte()
{
    uchar i, j;
    uchar bi, dat;
    j=0;
    dat=0;
    for(i=0;i<8;i++)
    {
        DSPORT=0;  // 數(shù)據(jù)線拉低
        j++;  // 延時1us
        DSPORT=1;
        j++;  // 延時10us
        j++;
        bi=DSPORT;
        dat= (dat>>1)|(bi<<7);
        j=7;
        while(j--);
    }
    
    return dat;
}

(4) DS18B20讀取溫度

根據(jù)ROM指令表,當總線上只有一個DS18B20時蓄诽,首先發(fā)送CCH指令薛训,然后發(fā)送RAM溫度轉(zhuǎn)換指令44H,

那么如果總線上只掛接了一個DS18B20仑氛,那么DS18B20典型溫度讀取過程為:復位→發(fā)SKIP ROM命令(0xCC)→發(fā)開始轉(zhuǎn)換命令(0x44)→延時→復位→發(fā)送SKIP ROM命令(0xCC)→發(fā)讀存儲器命令(0xBE)→連續(xù)讀出兩個字節(jié)數(shù)據(jù)(即溫度)→結(jié)束许蓖。

二、DS18B20使用示例

本示例實現(xiàn)的功能為:系統(tǒng)運行時调衰,插上DS18B20溫度傳感器,數(shù)碼管顯示檢測的溫度值自阱。用到的資源包括數(shù)碼管和DS18B20嚎莉,proteus設計如下:

proteus設計數(shù)碼管顯示檢測到的溫度

根據(jù)上面介紹的時序及讀溫度流程,DS18B20讀取溫度代碼如下:

// DS18B20轉(zhuǎn)換溫度沛豌,復位->發(fā)送0xcc跳過ROM命令->發(fā)送0x44溫度轉(zhuǎn)換命令
void DS18B20ChangeTemp()
{
    DS18B20Init();
    delay1ms(1);
    DS18B20WriteByte(0xcc);  // 發(fā)送0xcc命令
    DS18B20WriteByte(0x44);  // 發(fā)送0x44命令
}

// DS18B20發(fā)送讀取溫度命令趋箩,復位->發(fā)送0xcc跳過ROM命令->發(fā)送0xBE讀存儲器命令
void DS18B20ReadTempCom()
{
    DS18B20Init();
    delay1ms(1);
    DS18B20WriteByte(0xcc);  // 發(fā)送0xcc命令
    DS18B20WriteByte(0xBE);  // 發(fā)送0xBE命令
}

// DS18B20讀取檢測到的溫度赃额,溫度轉(zhuǎn)換->發(fā)送讀溫度命令->讀取數(shù)據(jù)
int DS18B20ReadTemp()
{
    int temp;
    uchar tmH, tmL;
    DS18B20ChangeTemp();
    DS18B20ReadTempCom();
    tmL=DS18B20ReadByte();
    tmH=DS18B20ReadByte();
    temp=tmH;
    temp = (temp<<8)|tmL;
    return temp;
}

主函數(shù)main.c如下:

/*
    實現(xiàn)功能:使用DS18B20溫度傳感器檢測當前溫度,并將結(jié)果顯示到數(shù)碼管中
    [2023-12-25] zoya
*/
#include <reg52.h>
#include "TempDS18B20.h"

typedef unsigned char u8;
typedef unsigned int u16;

#define GPIO_LED P0
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;

u8 code smg[]={0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f};
u8 display[6];

// 延時函數(shù)
void delay(u16 i)
{
    while(i--);
}

// 數(shù)碼管顯示函數(shù)
void DigDisplay()
{
    u8 i;
    for(i=0;i<6;i++)
    {
        switch(i)
        {
            case 0: LSA=1; LSB=1; LSC=1; break;  // Y7
            case 1: LSA=0; LSB=1; LSC=1; break;  // Y6
            case 2: LSA=1; LSB=0; LSC=1; break;  // Y5
            case 3: LSA=0; LSB=0; LSC=1; break;  // Y4
            case 4: LSA=1; LSB=1; LSC=0; break;  // Y3
            case 5: LSA=0; LSB=1; LSC=0; break;  // Y2
            case 6: LSA=1; LSB=0; LSC=0; break;  // Y1
            case 7: LSA=0; LSB=0; LSC=0; break;  // Y0
        }
        
        GPIO_LED=display[i];
        delay(500);
        GPIO_LED=0x00;
    }
}

// 溫度處理函數(shù)
void TempPros(int temp)
{
    float tp;
    if(temp<0)
    {
        display[0]=0x40;  // -
        temp=temp-1;
        temp=~temp;
        tp=temp;
        temp=tp*0.0625*100+0.5;
    }
    else
    {
        display[0]=0x00;
        tp=temp;
        temp=tp*0.0625*100+0.5;
    }
    
    display[1]=smg[temp%10000/1000];
    display[2]=smg[temp%1000/100]|0x80;  // |0x80顯示小數(shù)點
    display[3]=smg[temp%100/10];
    display[4]=smg[temp%10/1];
    display[5]=0x39;
    
}

void main()
{
    while(1)
    {
        TempPros(DS18B20ReadTemp());
        DigDisplay();
    }
}

仿真結(jié)果叫确,DS18B20默認溫度是85°跳芳,所以系統(tǒng)初始運行時顯示85度飞盆。

數(shù)碼管顯示DS18B20檢測到的溫度
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市票腰,隨后出現(xiàn)的幾起案子杏慰,更是在濱河造成了極大的恐慌缘滥,老刑警劉巖完域,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件凹耙,死亡現(xiàn)場離奇詭異肠仪,居然都是意外死亡,警方通過查閱死者的電腦和手機意述,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來潮针,“玉大人,你說我怎么就攤上這事瓣戚∽涌猓” “怎么了?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵宴倍,是天一觀的道長啊楚。 經(jīng)常有香客問我恭理,道長颜价,這世上最難降的妖魔是什么周伦? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任专挪,我火速辦了婚禮寨腔,結(jié)果婚禮上迫卢,老公的妹妹穿的比我還像新娘乾蛤。我一直安慰自己捅僵,他們只是感情好庙楚,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布醋奠。 她就那樣靜靜地躺著窜司,像睡著了一般塞祈。 火紅的嫁衣襯著肌膚如雪议薪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天,我揣著相機與錄音坯临,去河邊找鬼恋昼。 笑死液肌,一個胖子當著我的面吹牛嗦哆,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播吝秕,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼容客,長吁一口氣:“原來是場噩夢啊……” “哼缩挑!你這毒婦竟也來了供置?” 一聲冷哼從身側(cè)響起绽快,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎擅耽,沒想到半個月后物遇,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體询兴,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡警儒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年冷蚂,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片隆夯。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡蹄衷,死狀恐怖愧口,靈堂內(nèi)的尸體忽然破棺而出类茂,到底是詐尸還是另有隱情厚骗,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站冲秽,受9級特大地震影響锉桑,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一杉武、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧旦部,春花似錦士八、人聲如沸婚度。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至饭寺,卻和暖如春阻课,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背佩研。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工柑肴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人旬薯。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓晰骑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子硕舆,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容