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

正文內(nèi)容

基于單片機(jī)設(shè)計(jì)的電子萬年歷畢業(yè)論文-閱讀頁

2024-09-17 17:47本頁面
  

【正文】 模塊的設(shè)計(jì) 下圖是 DS18B20 器件圖, 1腳是地, 2 腳是數(shù)據(jù)輸入 /輸出, 3腳是電源端,一般接到 +5V 的電源上。 單總線通常要求外接一個約為 5 KΩ的上拉電阻 。存儲器能完整的確定一線端口的通訊,數(shù)字開始用寫寄存器的命令寫進(jìn)寄存器,接著也可以用讀寄存器的命令來確認(rèn)這些數(shù)字。當(dāng)修改過寄存器中的數(shù)時,這個過程能確保數(shù)字的完整性。 64 位光刻 ROM 的排列是:開始 8 位 ( 28H)是產(chǎn)品類型標(biāo)號,接著的 48位是該 DS18B20 自身的序列號,最后 8位是前面 56位的循環(huán)冗余校驗(yàn)碼( CRC=X8+X5+X4+1)。64位的光刻 ROM 又包括 5個 ROM的功能命令:讀 ROM,匹配 ROM,跳躍 ROM,查找 ROM 和報(bào)警查找。第三和第四個字節(jié)是復(fù)制 TH和 TL,同時第三和第四個字節(jié)的數(shù)字可以更新;第五個字節(jié)是復(fù)制配置寄存器,同時第五個字節(jié)的數(shù)字可以更新;六、七、八三個字節(jié)是計(jì)算機(jī)自身使用。 18 下表 列出了溫度數(shù)據(jù)在高速暫存器 RAM 的第 0和第 1 個字節(jié)中的存儲格式 溫度數(shù)據(jù)存儲格式 DS18B20 在出廠時默認(rèn)配置為 12 位,其中最高位為符號位,即溫度值共 11位,單片機(jī)在 讀取數(shù)據(jù)時,一次會讀 2 字節(jié)共 16 位,讀完后將低 11 位的二進(jìn)制數(shù)轉(zhuǎn)化為十進(jìn)制后再乘以 便為所測的實(shí)際溫度值。前 5個數(shù)字為符號位,這 5 位同時變化,我們只需要判斷 11 位就可以啦,前 5 位為 1 時,讀取的溫度為負(fù)值,且測到的數(shù)值需要取反加 1 再乘以 才可以得到實(shí)際溫度值。 下圖是 DS18B20 與單片機(jī)的連接圖 1GND2DQ3VCCU9DS18B20R2GNDVCCP13 DS18B20 連接圖 畫軸旋轉(zhuǎn)模塊的設(shè)計(jì) 利用 ULN2803 達(dá)林頓管驅(qū)動步進(jìn)電機(jī) , ULN2803 是八路的 NPN 達(dá)林頓 連接晶體管陣系列 , 特別適用于低邏輯電平數(shù)字電路(諸如 TTL, CMOS 或PMOS/NMOS)和較高的電流 /電壓要求之間的接口,廣泛應(yīng)用于計(jì)算機(jī),工業(yè)用和消費(fèi)類產(chǎn)品中的燈、繼電器、打印錘或其它類似負(fù)載中。驅(qū)動能力 500mA /50V。輸入的電平信號為 0,或 5V。輸入為 5V 電平時,輸出達(dá)林頓飽和。 步進(jìn)電機(jī)作為執(zhí)行元件,是機(jī)電一體化的關(guān)鍵產(chǎn)品之一,廣泛應(yīng)用在各種自動化設(shè)備中。 這個設(shè)計(jì)使用的是 二 相步進(jìn)電機(jī), 它有四條勵磁信號引線 A, A\, B, B\,通過控制這四條引線上勵磁脈沖產(chǎn)生的時刻,即可控制步進(jìn)電機(jī)的轉(zhuǎn)動 。因此,只要依序不斷送出脈沖信號,步進(jìn)電機(jī)就能實(shí)現(xiàn)連續(xù)轉(zhuǎn)動 。其中全步勵磁又有一相勵磁和二相勵磁之分;半步勵磁又稱一二相勵磁。簡要介紹如下。每送一個勵磁信號,步進(jìn)電機(jī)旋轉(zhuǎn) 176。 其 特點(diǎn)是:精確度好、消耗電力少,但輸出轉(zhuǎn)矩最小,振動較大。表中的 1和 0表示送給電機(jī)的高電平和低電平。沒送一個勵磁信號,步進(jìn)電機(jī) 旋轉(zhuǎn) 176。如果以該方式控制步進(jìn)電機(jī)正轉(zhuǎn),對應(yīng)的勵磁順序見下表。 STEP A B A\ B\ 1 1 1 0 0 2 0 1 1 0 3 0 0 1 1 4 1 0 0 1 二相勵磁順序表 勵磁順序說明: 1→ 2→ 3→ 4→ 1 如此循環(huán) 3)一二相勵磁 —— 為一相勵磁與二相勵磁交替導(dǎo)通的方式。 其特點(diǎn)是: 分辨率高,運(yùn)轉(zhuǎn)平滑,故應(yīng)用也很廣泛。若勵磁信號反向傳送,則步進(jìn)電機(jī)反轉(zhuǎn)。 下圖是 ULN2803 和單片機(jī)的連接圖 21 IN11IN22IN33IN44IN55IN66IN77IN88OUT118OUT316OUT415OUT514OUT613OUT712OUT811OUT217COM D10GND9U8ULN2803AGNDVCCP34P35P36P3712345P2Header 5VCC ULN2803 與單片機(jī)的連接圖 顯示模塊的設(shè)計(jì) 74HC573 是一種數(shù)字芯片,為八進(jìn)制 3 態(tài)非反轉(zhuǎn)透明鎖存器,是一種高性能的 CMOS 器件, 下圖是它的管腳圖 OE1D02D13D24D35D46D57D68D79GND10LE11Q712Q613Q514Q415Q316Q217Q118Q019VDD20U174HC573 74HC573 管腳圖 OE\為三態(tài)允許控制端(低電平有效),通常叫做輸出使能端,或輸出允許端都可以; 1D~8D 為數(shù)據(jù)輸入端; 1Q~8Q 為數(shù) 據(jù)輸出端; LE為鎖存允許端,或叫鎖存控制端。很明顯,此時該芯片處于不可控狀態(tài),而我們將 74HC573 接入 22 電路是必須要控制它的,因此在設(shè)計(jì)電路時也就必須將 OE\接低電平,所以在設(shè)計(jì)中的三個鎖存器的 OE\端全部接地。這也就是說,當(dāng) LE 為高電平時, Q端數(shù)據(jù)狀態(tài)緊 隨 D 端數(shù)據(jù)狀態(tài)變化;而當(dāng) LE為低電平時,Q 端數(shù)據(jù)將保持住 LE 端變化為低電平之前 Q 端的數(shù)據(jù)狀態(tài)。 通過這個鎖存器驅(qū)動數(shù)碼管來顯示所要顯示的信息。本設(shè)計(jì)中采用的是單位共陰數(shù)碼管,共十六個。紅外遙控系統(tǒng)一般由紅外發(fā)射裝置和紅外接收設(shè)備兩大部分組成。 在電路設(shè)計(jì)中加入了一個蜂鳴器,當(dāng)沒接收到一個紅外信號時,蜂鳴器響一下,來提示這次按鍵成功。 下邊是單片 機(jī)向 DS1302 寫入一個字節(jié)數(shù)據(jù)的子程序 void Write_A_byte_to_ds1302(uchar x) //向 DS1302 寫入一個字節(jié) { uchar i。 for(i=0。i++) { IO=xamp。 CLK=1。 CLK=0。 for(i=0。i++) { b=1。 b|=t7。 CLK=0。 //BCD 碼轉(zhuǎn)換 } 下邊是單片機(jī)從 DS1302 指定位置讀取數(shù)據(jù)的子程序 uchar read_data(uchar addr) //從 DS1302 指定位置讀數(shù)據(jù) { uchar dat。 RST=1。 dat=Get_A_byte_from_ds1302()。 RST=0。 } 下邊是單片機(jī)向 DS1302 指定位置寫入數(shù)據(jù)的子程序 27 void Write_ds1302(uchar addr,uchar dat) //向 DS1302 某地址寫入數(shù)據(jù) { reset_ds1302()。 Write_A_byte_to_ds1302(addr)。 CLK=0。 } 讀 寫 DS18B20 子程序的編寫 DS18B20 初始化 主機(jī)總線在 TO時刻從電源降到 0并保持 480960US時間 .然后再上升到電源大約在 1560US后 ,18B20輸出低電平并保持 .完成初始化 . 下邊是 DS18B20 初始化的子程序 uchar init_ds18b20() //18B20 初始化 { uchar status。 delayxus(8)。 delayxus(90)。 delayxus(8)。 delayxus(100)。 return status。延時時間為 45us,將數(shù)據(jù)線拉到高電平 1,重復(fù)上邊的步驟,知道發(fā)送完整個字節(jié),最 后將數(shù)據(jù)線拉高到 1。 for(j=0。j++) { DQ=0。0x01。 DQ=1。 } } 從 DS18B20 讀數(shù)據(jù) 將數(shù)據(jù)線拉高到 1,延時 2us,將數(shù)據(jù)線拉低到 0,延時 6us,將數(shù)據(jù)線拉高到 1,延時 4us,讀數(shù)據(jù)線的狀 態(tài)得到一個狀態(tài)位,并進(jìn)行數(shù)據(jù)處理,延時 30us,重復(fù)上述步驟,知道讀完一個字節(jié)。 dat=0。 _nop_()。i8。 dat=1。 _nop_()。 if(DQ) dat|=0x80。 DQ=1。 } 紅外接收子程序的編寫 紅外接收芯片的輸出引腳接到單片機(jī)的外部中 斷 0上,設(shè) 置成 下降沿觸發(fā)中斷 。紅外信號的高電平和低電平的時間間隔不同,根據(jù)一個時間的不同來判斷一個字節(jié)是高電平還是低電平。 一個紅外信號發(fā)出后包括 33 位數(shù) 據(jù),一位引導(dǎo)碼,八位地址碼,八位地址反碼,八位數(shù)據(jù)碼,八位數(shù)據(jù)反碼,我們需要的只是八位數(shù)據(jù)碼,且一個遙控器發(fā)出的地址碼和地址反碼都是一樣的。 30 下面是紅外接收中斷的子程序 void wai0() interrupt 0 { //P0=0xaa。 } irdata[bitnum]=irtime。 bitnum++。 ir_receive_ok=1。 } } else { irtime=0。 } } 下面是處理紅外信號的子程序 void irchuli() //對接受的紅外信號進(jìn)行處理 { uchar i,j,k。 k=1。j4。i8。 if(irdata[k]5) value=value|0x80。 } ircode[j]=value。 } 作品總結(jié) 通過這次設(shè)計(jì),加深了對 51單片機(jī)的了解, 對其內(nèi)部資源和 IO 口的使用有了更近一步的認(rèn)識,并通過對這些模塊的設(shè)計(jì),熟知了具體怎么使用,對以后的應(yīng)用具有很大的幫助,而且 自己親自編程來實(shí)現(xiàn)這些功能,使自己對 C語言的 有了更近一步的了解,對以后使用 C 語言編程打下良好的基礎(chǔ)。 且自己通過在公司實(shí)習(xí)學(xué)會了刻板技術(shù),將自己的設(shè)計(jì)做出來,并焊接 出來,使其成為一個真實(shí)的系統(tǒng),并將自己的程序下載進(jìn)去,調(diào)試成功 。 本文的撰寫是在劉立山教授的悉心指導(dǎo)和熱誠關(guān)懷下完成 的。在近一段時間的課題研究工作中,劉老師對我嚴(yán)格要求、悉心教導(dǎo),這些都將使我終生難忘。 這里我還要深深感謝養(yǎng)育我長大成人的父母,是他們的無私奉獻(xiàn)和全力支持幫助我安心完成了學(xué)業(yè)! 四年的大學(xué)生活也即將結(jié)束了。我所取得的成績都與老師的教誨和同學(xué)們的幫助分不開的,在此對所有曾經(jīng)給予我關(guān)心和幫助的老師和同學(xué)們以及參考文獻(xiàn)的作者表示誠
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1