freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì):基于stc12c5a60s2單片機(jī)的數(shù)字溫濕度計(jì)設(shè)計(jì)(存儲(chǔ)版)

  

【正文】 也可通過(guò)寄存器設(shè)置到 P42 CCP1P14 也可通過(guò)寄存器設(shè)置到 P43 16 PWM 2 路 PCA 可編程計(jì)數(shù)器陣列 2 路 也可用來(lái)當(dāng) 2 路 DA 使用 也可用來(lái)再實(shí)現(xiàn) 2 個(gè)定時(shí)器 也可用來(lái)再實(shí)現(xiàn) 2 個(gè)外部中斷 上升沿中斷 下降沿中斷均可分別或同時(shí)支持 17 AD 轉(zhuǎn)換 10 位精度 ADC 共 8 路轉(zhuǎn)換速度可達(dá) 250KS 每秒鐘 25 萬(wàn)次 18 通用全雙工異步串行口 UART 由于 STC12 系列是高速的 8051 可再用定時(shí)器或 PCA 軟件實(shí)現(xiàn)多串口 19 STC12C5A60S2 系列有雙串口后綴有 S2 標(biāo)志的才有雙串口 RxD2P12 可通過(guò)寄存器設(shè)置到 P42 TxD2P13 可通過(guò)寄存器設(shè)置到 P43 20 工作溫度范圍 40 85℃ 工業(yè)級(jí) 0 75℃ 商業(yè)級(jí) 21 封裝 PDIP40LQFP44LQFP48 IO 口不夠時(shí)可用 2 到 3 根普通 IO 口線外接 74HC164165595 均可級(jí)聯(lián)來(lái)擴(kuò)展 IO 口還可用 AD 做按鍵掃描來(lái)節(jié)省 IO 口或用雙 CPU三線通信還多了串口 167。 溫濕度傳感器 測(cè)濕模塊選用濕度傳感器 SHT15而溫度傳感器則用 PT100本來(lái) SHT15也有測(cè)溫的功能但是它不能滿足設(shè)計(jì)的要求且他的線性度沒(méi)有 PT100 好因此測(cè)溫傳感器就用 PT100 測(cè)濕的傳感器用 SHT15 下面圖說(shuō)明它的線性度好 SHTxx 系列單芯片傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器它應(yīng)用專利的工業(yè) COMS 過(guò)程 微加工技術(shù) CMOSens 具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性傳感器包括一個(gè)電容式聚合體測(cè)濕元件和一個(gè)能隙式測(cè)溫元件并與一個(gè) 14位的 AD器以及串行接口電路在同一芯片上實(shí)現(xiàn)無(wú)縫鏈接從而具有超快響應(yīng)抗干擾能力強(qiáng)性價(jià)比高等優(yōu)點(diǎn)其內(nèi)部機(jī)構(gòu)圖如下圖 22 所示 圖 22 SHT15 結(jié)構(gòu)圖 167。 數(shù)據(jù)傳輸和指令集 后續(xù)命令包含三個(gè)地址位目前只支持 000 和五個(gè)命令位 DTH 91 會(huì)以下述方式 表示已正確地接收到指令在第 8個(gè) SCK 時(shí)鐘的下降沿之后將 DATA 下拉為低電平 ACK 位在第 9個(gè) SCK 時(shí)鐘的下降之后釋放 DATA恢復(fù)高電平發(fā)布一組測(cè)量命令00000101 表示相對(duì)濕度 RH00000011 表示溫度 T 后控制器要等待測(cè)量結(jié)束這個(gè)過(guò)程需要大約 2080320ms 分別對(duì)應(yīng) 81214bit 測(cè)量確切時(shí)間隨內(nèi)部晶振速度的變化而變化最多可能有 30的變化 DTH91 通過(guò)下拉 DATA 至低電平并進(jìn)入空閑模式表示測(cè)量的結(jié)束控制器在再次觸發(fā) SCK 時(shí)鐘前必須等待這個(gè)數(shù)據(jù)備妥信號(hào)來(lái)讀出數(shù)據(jù)檢測(cè)數(shù)據(jù)可以先被存儲(chǔ) 這樣控制器可以繼續(xù)執(zhí)行其它任務(wù)在需要時(shí)再讀出數(shù)據(jù)接著傳輸 2個(gè)字節(jié)的測(cè)量數(shù)據(jù)和 1個(gè)字節(jié)的 CRC 奇偶校驗(yàn) uC 需要通過(guò)下拉 DATA 為低電平以確認(rèn)每個(gè)字節(jié)所有的數(shù)據(jù)從 MSB 開(kāi)始右值有效例如對(duì)于12bit 數(shù)據(jù)從第 5 個(gè) SCK 時(shí)鐘起算作 MSB 而對(duì)于 8bit 數(shù)據(jù)首字節(jié)則無(wú)意義 用 CRC 數(shù)據(jù)的確認(rèn)位表明通訊結(jié)束如果不使用 CRC8 校驗(yàn)控制器可以在測(cè)量值 LSB 后通過(guò)保持確認(rèn)位 ack 高電平來(lái)中止通訊在測(cè)量和通訊結(jié)束后 SHT15自動(dòng)轉(zhuǎn)入休眠模式 SHT15 的指令集如下表 41 所示 表 41 命令集 167。 畢業(yè)設(shè)計(jì) c 是主函數(shù)做了溫度的算法 include 狀態(tài)寄存器默認(rèn)溫度 14bit 濕度 12bit include 剛開(kāi)始要復(fù)位寄存器且轉(zhuǎn)換時(shí) 12bit 為 80ms define uint unsigned int 80ms 可不理會(huì)主機(jī)處于檢測(cè)狀態(tài) define uchar unsigned char sbit du_choice P20 sbit we_choice P21 sbit we_choice1 P22 第二個(gè)位選信號(hào) sbit DATA P23 sbit SCK P24 sbit tem_inc P11 溫度加 sbit tem_dec P12 溫度減 sbit hum_inc P13 濕度加 sbit hum_dec P14 濕度減 sbit tem_led P25 sbit hum_led P26 extern uchar code table[] extern uchar code table1[] uchar key 0 按鍵全局變量 uint idata tem_dault 25hum_dault 500 溫度濕度賦初值 溫度 25 濕 度50 uchar idata aj_fuhao 0aj_bai 0aj_shi 0aj_ge 0 uchar idata aj_qian_hum 0aj_bai_hum 0aj_shi_hum 0aj_ge_hum 0 typedef union unsigned int i float f value uint aa2 0 定時(shí)中斷 1 中的加數(shù)用 uchar idata bai 0shi 0ge 0fuhao 0qian_hum 0bai_hum 0shi_hum 0ge_hum 0 unsigned long get_ad1 0get_ad3 0float get_ad2 0 uint get_ad 0uint humidity_dat 0 void display uchar fuhaouchar baiuchar shiuchar ge void display_hum uchar qianuchar baiuchar shiuchar ge void adjust_display uchar fuhaouchar baiuchar shiuchar ge void adjust_display uchar aj_fuhao uchar aj_bai uchar aj_shi uchar aj_ge void aj_display_hum uchar aj_qian_hum uchar aj_bai_hum uchar aj_shi_hum uchar aj_ge_hum void aj_display_hum uchar qian_humuchar bai_humuchar shi_humuchar ge_hum void serial_initial void init void send_byte uchar x void send_two uint y unsigned int get_ad_result unsigned char channel void delay1ms uint z 1ms 延時(shí) void delayms unsigned int n 延時(shí) 10 n 毫秒程序 unsigned int ij for i 0i ni for j 0j 2021j void delay unsigned int m 延時(shí)程序 unsigned int ij for i 0i mi for j 0j 10j value humi_valtemp_val 定義兩個(gè)共用體變量 enum TEMPHUMI char s_measure unsigned char p_value unsigned char p_checksum unsigned char mode void calc_sth11 floatp_humidity float p_temperature void s_connectionreset void void s_transstart void char s_read_byte unsigned char ack char s_write_byte unsigned char value void main float dew_pointunsigned int humi_val2 0 unsigned char errorchecksum unsigned int iuchar a 0 init_uart init hum_inc 0 hum_dec 0 tem_inc 1 tem_dec 1 s_connectionreset we_choice1 0 tem_led 0 hum_led 0 while 1 error 0 error s_measure unsigned char humi_valichecksumHUMI measure humidity error s_measure unsigned char temp_valichecksumTEMP measure temperature if error 0 s_connectionreset 如果出錯(cuò)的話重新讀數(shù)據(jù) else humi_valf float humi_vali converts integer to float temp_valf float temp_vali converts integer to float calc_sth11 humi_valftemp_valf calculate humiditytemperature humi_val2 humi_valf10 for i 0i 50000i for i 0i 50000i qian_hum humi_val21000 bai_hum humi_val21000100 shi_hum humi_val2100010010 ge_hum humi_val2100010 溫度數(shù)據(jù)采集算法 for a 0a 200a get_ad get_ad_result 0 get_ad1 get_ad1get_ad get_ad1 get_ad1200 send_two get_ad1 get_ad2 get_ad1 477001023 ee 500001023 1000 send_two get_ad2 if get_ad2 1150 溫度臨界點(diǎn) 0 1150 get_ad3 get_ad222300 23 1 負(fù)溫度轉(zhuǎn)為正溫度 else get_ad3 get_ad222300 23 send_two get_ad3 if get_ad3 1000 fuhao 0 bai get_ad31000 shi get_ad31000100 ge get_ad3100010010 qian get31000 bai get_ad31000100 shi get_ad31000100 ge get_ad3100010 else if get_ad2 1150 模擬量如果小于 1150 則為負(fù)溫度 fuhao 10 else fuhao 0 否 則為正溫度 bai get_ad3100 shi get_ad310010 ge get_ad310 if tem_dault 0 溫度設(shè)置小于 0 則為負(fù)溫度 aj_fuhao 10 else aj_fuhao 0 否則為正溫度 aj_bai
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1