【正文】
等教育出版社, 2020 [2]李哲英 .《電子技術(shù)及其應(yīng)用基礎(chǔ)》(數(shù)字部分)北京 : 高等教育出版社, 2020 [3]郭天祥 .《 十天學(xué)會(huì)單片機(jī)和 C 語言編程 》 北京;電子工業(yè)出版社, 2020 附錄 1 :原理圖 U18052P1B0T21P1B1T2EX2P1B23P1B34P1B45P1B5MOSI6P1B6MISO7P1B7SCK8RST9P3B0RXD10P3B1TXD11P3B4T014P3B5T115XTAL218XTAL119GND20P2B0A821P2B1A922P2B2A1023P2B3A1124P2B4A1225P2B5A1326P2B6A1427P2B7A1528P0B7AD732P0B6AD633P0B5AD534P0B4AD435P0B3AD336P0B2AD237P0B1AD139P0B0AD038VCC40P3B2INT012P3B3INT113P3B6WR16P3B7RD17PSEN29ALEPROG30EAVPP31U2U L N 2 0 0 3 _ D I P 1 6IN11IN22IN33IN44IN55IN66IN77COM9GND8OUT710OUT611OUT512OUT413OUT314OUT215OUT1161234V C C5V0V C CU3C R Y S T A L _ V I R T U A LC13 0 p FC23 0 p FC31 0 u FR110kΩV C C5V0V C C5VV C CV C C00675U4S O N A L E R T2 0 0 H z Q1B C 1 0 9 B PV C C5VV C C8R2100Ω90R31kΩ1011 s t e pm o t o rR410kΩK e y = A50%R510kΩK e y = A50%V C C5VV C C5VR6200kΩK e y = A50%A I N 0A I N 1A I N 2A I N 3A0A1A2VSSV D DA O U TV R E FA G N DE X TO S CS C LS D AP C F 8 5 9 1P 3 . 0P 3 . 115V C C140D S 1 8 B 2 0G N D I / OV C C5VP 3 . 3V C CG N DI R DP 3 . 2V C C5V 附錄 2 :部分子程序 unsigned int LowTime,HighTime。 BEEP=1。 SCL = 1。 SCL = 0。 delayNOP()。 // 否則數(shù)據(jù)的最后一位置 0 SCL = 0。 return。 _nop_()。 //E 置高電平 _nop_()。 //E 置高電平 _nop_()。 WriteInstruction(0x01)。0xf0)4)|((temp_data[1]amp。 //小數(shù)位數(shù)顯示 } void Compare() { // bit tempflag1。 } //if((settemptemp)amp。} while (!IR) {delay11(1)。 EX0 = 1。j4。 display[1]=display[1]%10 。 //十位數(shù)顯示 WriteAddress(0x4a) 。 //返回信號(hào), 0=presence,1= no presence } Disp_Temperature() { display[4]=temp_data[0]amp。 WriteInstruction(0x0c)。 _nop_()。 _nop_()。 E=1。 } iic_start()。 tdata =tdata1。 } void IICSendByte(unsigned char ch) { unsigned char idata n=8。 iic_stop()。 i++) //一個(gè)周期轉(zhuǎn) 30 度 { if(ii==1) P1 = ~FFF[i]。 } void delay11(unsigned char x) //x* { unsigned char i。 自動(dòng)窗簾控制系統(tǒng)具有以下幾個(gè)基本功能: 光照控制:根據(jù)光照強(qiáng)度值,通過感光器采集,自動(dòng)打開或關(guān)閉窗簾。 遙控器發(fā)射及其編碼 : 紅外線遙控采用自定義編碼方式 , 由發(fā)送單片機(jī)來完成。在非超載的情況下,電機(jī)的轉(zhuǎn)速、停止的位置只取決于脈沖信號(hào)的 頻率 和脈沖數(shù),而不受負(fù)載變化的影響 ,當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,稱為 “步距角 ”,它的旋轉(zhuǎn)是以固定的角度一步一步運(yùn)行的。這些制作材料具有在特定 波長(zhǎng) 的光照射下,其阻值迅速減小的特性。由于將多功能 8 位 CPU 和閃爍存儲(chǔ)器組合在單個(gè)芯片中, ATMEL 的AT89C51 是一種高效微控制器。 自動(dòng)控制窗簾基本功能 自動(dòng)窗簾控制系統(tǒng)具有以下幾個(gè)模塊: ( 1) 感光控制模塊:本模塊首先通過光敏電阻在外界光線強(qiáng)度的變化下阻值的改變,使得輸出電壓發(fā)生變化。 單片機(jī)在電子產(chǎn)品中的 應(yīng)用已經(jīng)越來越廣泛,在很多電子產(chǎn)品中也用到了紅外控制。 針對(duì)家居環(huán)境采光及避光問題,自動(dòng)窗簾控制系統(tǒng)將取代手動(dòng)控制,更加人性化。本文綜述了自動(dòng)窗簾系統(tǒng)的設(shè)計(jì)與控制系統(tǒng),介紹了設(shè)計(jì)制作一個(gè)完整的自動(dòng)窗簾控制系統(tǒng)所需要做的理論分析,以及各環(huán)節(jié)功能的實(shí)現(xiàn)。 結(jié)合感光系統(tǒng)和紅外遙控系統(tǒng)的智能窗簾系統(tǒng)具有較好的發(fā)展前景。變化的電 壓信號(hào)傳送到 PFC8591 八位的 AD/DA 轉(zhuǎn)換芯片,將模擬量轉(zhuǎn)化為數(shù)字量,進(jìn)而輸入到單片機(jī)處理器。AT89C 單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。這是由于光照產(chǎn)生的載流子都參與導(dǎo)電,在外加電場(chǎng)的作用下作漂移運(yùn)動(dòng),電子奔向 電源 的正極,空穴奔向電 源的負(fù)極,從而使 光敏電阻器 的阻值迅速下降。可以通過控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的 目的 ;同時(shí)可以通過控制 脈沖頻率 來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。遙控發(fā)射器專用芯片很多,根據(jù)編碼格式可以分為脈沖寬度調(diào)制和香味調(diào)制兩大類。即當(dāng)早晨光照強(qiáng)度增強(qiáng)到設(shè)定值,通過感光器采集,單片機(jī)控制步進(jìn)電機(jī)打開窗簾;當(dāng)夜晚光照強(qiáng)度減弱到設(shè)定值,通過感光器采集,單片機(jī)控制步進(jìn)電機(jī)關(guān)閉窗簾。 while(x) { for (i = 0。 //取數(shù)據(jù) ii 控制電機(jī)的正反轉(zhuǎn) ii=0 或者 ii=1 if(ii==2) P1 = ~FFZ[i]。 } void slave_ACK(void) { SDA = 0。 // 向 SDA 上發(fā)送一位數(shù)據(jù)字節(jié),共八位 while(n) { if((champ。 //左移一位 if(SDA == 1) tdata = tdata|0x01。 //重新發(fā)送開始命令 IICSendByte(PCF8591_READ)。 //E=1,才允許讀寫 _nop_()。 _nop_()。 _nop_()。 delay(5)。0x0f 。 WriteData(display[1]) 。 temp=display[0]+display[1]*10+display[2]*100。j++) { for (k=0。 } 。k++) { while (IR) {delay11(1)。 fzflag2=1。 WriteData(display[0]) 。//查表得小數(shù)位的值 display[4]=((temp_data[0]amp。 delay(5)。 //空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=1。 //空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=1。 _nop_()。 if(askflag == 1) { SystemError = 1。0xfe。 // 傳送位 1 SCL = 1。 delayNOP()。 //調(diào)節(jié)轉(zhuǎn)速 } } //} } void iic_start(void) { //時(shí)鐘保持高,數(shù)據(jù)線從高到低一次跳變, I2C 通信開始 SDA = 1。 i++) {} } } void beep() //蜂鳴器響一聲函數(shù) { unsigned char i。 紅外控制:當(dāng)光照強(qiáng)度未達(dá)到設(shè)定值,手動(dòng)操作紅外遙控器,由紅外接收系統(tǒng)接收信號(hào),單片機(jī)控制步進(jìn)電機(jī)打開或 關(guān)閉窗簾??梢愿鶕?jù)傳輸數(shù)據(jù)的不同來調(diào)節(jié)脈沖的寬度。 單總線通常要求接一個(gè)約 左右的上拉電阻,這樣,當(dāng)總線空閑時(shí),其狀態(tài)為高電平。由于不同材料的光敏, 電阻時(shí)延特性不同,所以它們的頻率特性也不同,硫化鉛的使用頻率比硫化鎘高得多,但多數(shù)光敏電阻的時(shí)延都比較大,所以,它不能用在要求快速響應(yīng)的場(chǎng)合。 MCS51 系列單片機(jī)內(nèi)部都有一個(gè)時(shí)鐘振蕩電路,只需外接晶振源,就能產(chǎn)生一定頻率的時(shí)鐘信號(hào)送到單片機(jī)的內(nèi)部的各個(gè)單元,決定單片機(jī)的工作速度。 ( 2) 溫度監(jiān)測(cè)模塊 :