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

正文內(nèi)容

畢業(yè)設(shè)計-基于stc89c52單相電度表的測量的設(shè)計(編輯修改稿)

2025-07-12 15:30 本頁面
 

【文章內(nèi)容簡介】 2 液晶顯示模塊 本次設(shè)計的單相電度表中,單片機通過液晶的串口向液晶寄存器寫命令,進而實現(xiàn)對液晶顯示的控制,圖 是單片機與液晶模塊連接圖。該模塊用于顯示電壓,電流和功率。通過讀取顯示的數(shù)值再乘以變比系數(shù)則可以得到被測器件真實的電壓,電流和功率值。在本次設(shè)計系統(tǒng)中 五.程序設(shè)計 單片機 C51程序設(shè)計的優(yōu)點 因為本次系統(tǒng)設(shè)計中雖然采用 C52 單片機,但鑒于其二者引腳功能基本一致,故采用 C51 的編程方法即可。 現(xiàn)在有許多可以對 80C51 單片機硬件進行操作的 C 語言,它們通 常統(tǒng)稱為 C51。當(dāng)系統(tǒng)規(guī)模較大時,設(shè)計人員都趨于采用 C 語言,這是因為 C 語言具有良好的可讀性、易維護性、可移植性和硬件操作能力。采用 C51 進行單片機應(yīng)用系統(tǒng)的程序開發(fā),編譯器能自動完成變量的存儲單元的分配,編程者可以專注于應(yīng)用程序的設(shè)計,可以對常用的接口芯片編寫通用的驅(qū)動函數(shù),對常用的功能模塊和算法編寫相應(yīng)的函數(shù),可以方便地進行信號處理算法和程序的移植等等,從而加快了單片機應(yīng)用系統(tǒng)的開發(fā)速度。 目前, C51 的代碼長度已經(jīng)達到了匯編程度水平的 倍 倍。當(dāng)代碼長度超過4KB 以上時, C51 比匯編語言具有較 為明顯的優(yōu)勢。另外,還可以借助于仿真器,對應(yīng)用程序的關(guān)鍵代碼進一步進行優(yōu)化,以減少代碼的長度,提高運行的速度。同時,由于單片機生產(chǎn)工藝的發(fā)展,單片機的運行速度和內(nèi)部存儲器容量都有了較大的提高,這些都為 C51 應(yīng)用程序的應(yīng)用創(chuàng)造了更為有利的條件。 : STC89C52 的 INTO 接到 CS5460 的 INT 端,當(dāng)有中斷申請時,通過讀取內(nèi)部狀態(tài)寄存器,以獲得 CS5460 的工作情況,經(jīng)判斷執(zhí)行相應(yīng)的處理程序。 CS5460 驅(qū)動程序 CS5460的設(shè)置和啟動 步驟: 1) 復(fù)位 CS546,對 CS5460的復(fù)位腳發(fā)復(fù)位脈沖,脈沖不少于 10MS。 2) 寫同步控制命令字。 3) 從外部存儲器讀原來保存的校準(zhǔn)值,并將讀出的值寫入相應(yīng)的校準(zhǔn)寄存器。 4) 寫控制寄存器,設(shè)置各寄存器參數(shù)。 5) 清狀態(tài)寄存器。 6) 啟動 CS5460A開始轉(zhuǎn)換。 7) 讀 CS5460A的 AD轉(zhuǎn)換值或計算結(jié)果。 讀寫 CS5460 步驟: 1) 讀能量寄存器。 2) 讀電流有效值寄存器。 3) 讀電壓有效值寄存器。 4) 讀狀態(tài)寄存器,回寫狀態(tài)寄存器。 5) 設(shè)置中斷。 寫 CS5460 void wr5460(uchar mand,uchar wh_byte,uchar wm_byte,uchar wl_byte) { CS=0。 wr5460byte(mand)。 wr5460byte(wh_byte)。 wr5460byte(wm_byte)。 wr5460byte(wl_byte)。 CS=1。 } 寫 CS5460一個字節(jié) void wr5460byte(uchar wrbyte) { uchar i。 for (i=0。i8。i++) { SCLK=0。 if((wrbyte amp。 0x80) == 0x80) SDI=1。 else SDI=0。 wrbyte=wrbyte 1。 SCLK=1。 } SCLK=0。 SDI=1。 } 讀 CS5460 void rd5460(uchar mand) { CS=0。 wr5460byte(mand)。 rh_byte=rd5460byte()。 rm_byte=rd5460byte()。 rl_byte=rd5460byte()。 CS=1。 } 讀 CS5460一個字節(jié) uchar rd5460byte(void) { uchar i,val。 val=0。 for (i=0。i8。i++) { val=val1。 if(SDO) val=val | 0x01。 if (i==7) SDI=0。 else SDI=1。 SCLK=1。 _nop_()。 SCLK=0。 _nop_()。 } return(val)。 } 結(jié)果顯示程序 步驟: 1)將顯示緩存清零。 2)初始化 單片機。 3)設(shè)置時鐘。 4)六位數(shù)碼管顯示程序。 顯示程序代碼: void display(void) //六位數(shù)碼管顯示程序, disdat[]是要顯示的內(nèi)容(是 0~ 9的數(shù)字), xsd是在那一位顯示小數(shù)點 { uchar i,disa,disb,disc。 disb = 0x00。 //顯示第 n位 for (i=0。i6。i++) //共顯示 6個數(shù)據(jù) { disa = disdat[i]。 //顯示數(shù)據(jù) if (disa 10) { P2 = disb。 disc = tab[disa]。 //顯示段碼 if ((xsd != 5) amp。amp。 (xsd == i)) disc = disc | 0x80。 //增加小數(shù)點顯示 P0 = disc。 //送顯示 delay ()。 //延時 P0 = 0x0。 disb++。 //下一個要顯示的位置 } } P2 = 0xff。 } 總 結(jié) CS5460 代表了新一代的電能專用芯片,用它設(shè)計出來的專用電度表具有成本低,精 度高,調(diào)教簡單,與微處理器接口方便等優(yōu)點,使電量管理者能夠獲得更有用的數(shù)據(jù),且用戶投入費用低,具有廣闊的市場前景。本文所研究的基于 CS5460 的單相電度表測量系統(tǒng)設(shè)計就是一個高精度芯片和單片機的應(yīng)用。系統(tǒng)以 89C52 單片機和芯片 CS5460為核心,利用該芯片及外圍電路實現(xiàn)信號的模擬 數(shù)字轉(zhuǎn)換和功率計量,并通過單片機的程序設(shè)置很好的完成了數(shù)據(jù)的累加,從而計算得到總的能量。本系統(tǒng)有兩個主要模塊組成 :第一個是數(shù)據(jù)采樣及功率的計算,主要由芯片 CS5460 和外圍電路組成。外圍電路將輸入電壓信號轉(zhuǎn)換為 CS5460 可以接 受的 小電壓信號。 CS5460 則完成電壓信號的采樣及功率計算,并將結(jié)果通過串行接口輸入給單片機。第二個是結(jié)果顯示模塊,它主要由單片機及數(shù)碼管及外圍電路組成。該模塊將第一個模塊得到的結(jié)果顯示到數(shù)碼管上, 并存入存儲器內(nèi),同時累計得到電能,再乘以相應(yīng)的比例系數(shù)則可以得到所測的真實值。 本設(shè)計的主要難點: 1)前端調(diào)理模塊中外圍電路電阻阻值的選取,電阻阻值應(yīng)盡量精確,且阻值的選取應(yīng)很好的滿足 CS5460 對輸入電壓信號大小的要求。 2)程序的編寫。本設(shè)計中的程序包括芯片 CS5460 的參數(shù)設(shè)置、 CS5460 內(nèi)部寄存器的讀寫,數(shù)碼管顯示函數(shù)等。雖然我們系統(tǒng)的學(xué)習(xí)了 單片機原理及應(yīng)用 ,對 51 系列單片機有了一定的了解,但在實驗中多數(shù)應(yīng)用匯編語言進行程序的編寫,現(xiàn)在用 C 語言編寫程序有一定的困難,最后參考老師所給程序才能很好的完成本次設(shè)計。 謝 辭 時光匆匆飛逝,四年多的努力與付出,本設(shè)計的完成既為大學(xué)四年劃上了一個完美的句號,也為將來的人生之路做了一個很好的鋪墊。 本設(shè)計得以完成,要感謝的人實在太多了,首先要感謝龍海南老師,因為本設(shè)計是在龍老師的悉心指導(dǎo)下完成的。龍老師淵博的專業(yè)知識、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、一絲不茍的作 風(fēng)、誨人不倦的高尚師德對我影響深遠,一直是我工作、學(xué)習(xí)中的榜樣,他的循循善誘的教導(dǎo)和不拘一格的思路也給予了我無盡的啟迪。 在整個設(shè)計過程中,龍老師每星期都定時與我們交流,聽取我們的設(shè)計進展,為我們解答設(shè)計過程中遇到的各種問題,并安排布置下一步的設(shè)計任務(wù)。在我做畢業(yè)設(shè)計的三個月里,龍老師指導(dǎo)我完成了外文文獻的翻譯、開題報告、中期報告的撰寫等等,每次他都認(rèn)真地給我們修改,指出其中的不當(dāng)之處。龍老師要指導(dǎo)很多同學(xué)的畢業(yè)設(shè)計,加上本來就有的教學(xué)任務(wù),工作量之大可想而知。 三個多月的畢業(yè)設(shè)計即將結(jié)束,在龍老師的悉心指 導(dǎo)和幫助下,加上我個人的努力,完成了本課題的設(shè)計與論文撰寫。在完成設(shè)計的過程中,我綜合運用四年來所學(xué)的專業(yè)知識,并且翻閱了大量的參考資料。通過查資料和搜集有關(guān)的文獻,培養(yǎng)了我的自學(xué)能力和動手能力,并且由原先的被動地接受知識轉(zhuǎn)換為主動地尋求知識,這可以說是學(xué)習(xí)方法上有了很大的突破。同時,我學(xué)會了如何將學(xué)到的知識真正轉(zhuǎn)化為自己的東西,怎么更好地處理理論和實踐相結(jié)合的問題。 四年的大學(xué)學(xué)習(xí)生活即將結(jié)束,在論文即將完成之際,向四年來辛勤培養(yǎng)、教育、關(guān)心和幫助過我的老師們表示最誠摯的敬意和感謝!同時,設(shè)計的順利完成也 離不開各位同學(xué)和朋友的關(guān)心和幫助,他們積極的幫助我查資料和提供有利于本設(shè)計的建議和意見,使得本設(shè)計在一定程度上得到完善。我也從各位同學(xué)身上學(xué)到了很多東西,在此也向他們表示最誠摯的謝意! 參看文獻 [1] 李全利,仲偉峰,徐軍.單片機原理及應(yīng)用.北京:清華大學(xué)出版社, 2021, [2] 陳龍三. 8051 單片機 C 語言控制與應(yīng)用.北京:清華大學(xué)出版社, 1999 [3] 張培仁.基于 C 語言編程: MCS51 單片機原理與應(yīng)用.北京:清華大學(xué)出版社, 2021 [4] 譚浩強. C 語言程序設(shè)計.北 京:清華大學(xué)出版社, 2021 [5] 鄭文,趙偉等,電能自動抄表技術(shù)及相關(guān)思考、電測與儀表【 J】、 2021 [6] 趙偉,龐海波等,電能表的發(fā)展歷史、電測和儀表 [J], 1999 [7] 劉樂善,微型計算機接口技術(shù)原理及應(yīng)用 [M],華中理工大學(xué)出版社, 1999 [8] 付先學(xué),智能電力監(jiān)測系統(tǒng)設(shè)計方案 [J],電測與儀表, 2021 [9] Henzinger T, Kirsch C, Majumdar R, et al. Timesafety checking for embedded programes. in the Intl. Workshop on Embedded Software of Lecture Notes in Computer Science, 2021. [10] Henzinger A Thomas, Benjamin Horowitz, Christoph Meyer Kirsch. Embedded Control Systems Development with Giotto. the Proceedings of the ACM Workshop on Languages, Compliers and Tools for Embedded Systems (LCTES), 2021. 附 錄 附錄 1 附錄 2 程序源代碼: pragma db oe include include include include include include define uint unsigned int define uchar unsigned char define ulong unsigned long void wr5460(uchar mand,uchar wh_byte,uchar wm_byte,uchar wl_byte)。 void rd5460(uchar mand)。 void wr5460byte(uchar wrbyte)。 uchar rd5460byte(void)。 void delay(uint n)。 void initport(void)。 uchar rh_byte。 uchar rm_byte。 uchar rl_byte。 sbit SCLK = P1^0。 sbit SDO = P1^1。 sbit SDI = P1^2。 sbit CS = P1^3。 sbit RESET= P1^4。 sbit INT= P3^2。 void initport(void) { RESET=0。 //cs5460 復(fù)位 delay(100)。 RESET=1。 INT=1。 SDO=1。 EA=0。 wr5460(0xff,0xff,0xff,0xfe)。 /*同步 */ wr5460(0x40,0,0,1)。 /*配置寄存器 */ wr5460(0x5e,0xff,0xff,0xff)。 /*清狀態(tài)寄存器 */ wr5460(0x74,0x80,0x00,0x00)。 /*寫中 斷屏蔽寄存器 */ rd5460(0x1e)。 /*讀狀態(tài)寄存器 */ wr5460(0x5e,rh_byte,rm_byte,rl_byte)。 /
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1