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

正文內(nèi)容

基于msp430g2231實(shí)現(xiàn)的溫度控制器(參考版)

2025-06-26 20:49本頁面
  

【正文】 5. 如何提高測溫精度? 29 。2. 如何測負(fù)壓?3. 試編寫函數(shù),利用LCD繪制溫度變化曲線(使用LCD繪圖函數(shù),已給出)。中斷的使用,教我們節(jié)能與環(huán)保,時代的必然要求……,收獲頗豐,不是么?本實(shí)例的開發(fā)過程,單片機(jī)的學(xué)習(xí),原理圖的設(shè)計,PCB的繪制,軟硬件的調(diào)試,數(shù)據(jù)手冊、程序范例的利用,都是技術(shù)。學(xué)會使用LCD,把你的感知的信息分享給大家,這一直觀的表現(xiàn)形式讓交流變得簡單。當(dāng)你把個模塊都用會了,證明你學(xué)懂了。學(xué)習(xí)一款單片機(jī)首先要了解它的內(nèi)部資源,了解他能干什么,要實(shí)現(xiàn)我們的功能要用到他的什么資源,怎么用。最后,本作品溫度上下限固定,可以添加按鍵設(shè)計菜單程序調(diào)節(jié)上下限,這樣可實(shí)現(xiàn)一機(jī)多用的效果,當(dāng)然,具體應(yīng)用場合可能不需要改變上下限,G2有限的內(nèi)存資源能否支持菜單程序的開銷也還需要實(shí)驗(yàn)考證。另外,對于低功耗設(shè)計,可去掉液晶背光,選取一款白屏液晶,還可將電源芯片換成帶使能端的,可人工控制通斷,程序上也可進(jìn)一步更改,如每秒鐘只讓AD采樣8次,只進(jìn)行一遍計算,這樣在溫度實(shí)時性要求不高的情況下也可進(jìn)一步降低功耗。同時本模塊依然存在許多缺點(diǎn)有待改進(jìn)。通過液晶顯示也簡單直觀,交互性強(qiáng)。本作品采用最基本的熱電阻傳感器測溫,測溫電路簡單,溫度計算過程也相對簡單??梢圆杉瘮?shù)據(jù),可以做簡單的數(shù)據(jù)處理,可以控制外設(shè)狀態(tài),可以精確定時,可以驅(qū)動液晶,可以與計算機(jī)通信……,這款超低價位的單片機(jī)值得我們動手動腦玩一玩??梢哉fLaunchpad讓我學(xué)會了節(jié)儉,然我體會到了最優(yōu),這正是我們在校學(xué)生最欠缺的。由局部到整體,出現(xiàn)錯誤的機(jī)會就會小得多。調(diào)試方法前面已經(jīng)大致介紹過,主要是寄存器窗口和觀察窗口的使用,以及斷點(diǎn)、單步、全速、數(shù)據(jù)探針的使用等。另外,由于該款單片機(jī)存儲空間有限,程序編譯時,可能會出現(xiàn)RAM或Flash空間不足的情況,RAM不足時,注意檢查個函數(shù)變量使用,去掉可以不用的變量,在不沖突的前提下多使用全局變量,避免重復(fù)定義變量等;Flash不足時,注意精簡語段,去掉不必要的軟件延時,用宏定義代替函數(shù),較短且僅使用一次的函數(shù)直接用語句替代,去掉不必要的操作,精簡常量數(shù)組等措施。TI的程序框架大都較為成熟實(shí)用,值得借鑒。 } 完整監(jiān)控軟件程序的調(diào)試方法介紹將各個模塊程序調(diào)通后,就可組合起來,實(shí)現(xiàn)整體功能。 set_position(1,0)。 } set_position(3,6)。 sta[2]=0x20。 } else if(status==on) { sta[0]=0xbf。 sta[2]=0x20。 if(status==off) { sta[0]=0xb9。 set_position(2,5)。amp。 if(temp1[0]==0x30) // 消隱無效0 temp1[0]=0x20。 temp1[4]=(temp[1]/10)+0x30。 temp1[2]=temp[0]%10+0x30。 } //將測量結(jié)果轉(zhuǎn)化為字符并存于數(shù)組中,以便LCD顯示 temp1[0]=temp[0]/100+0x30。 clk_h。 clk_l。amp。 // delay(100)。 delay(5)。(status==on)) { status=off。 // CCR0數(shù)據(jù)重裝 if((temp[0]=30)amp。 // 時鐘源ACLK,連續(xù)計數(shù)模式}定時中斷處理:pragma vector=TIMERA0_VECTOR__interrupt void Timer_A (void){ P1OUT ^= BIT0。 // CCR0 中斷允許 CCR0 = 12000。 } 定時器中斷定時器模塊用于定時時使用較為簡單,定時器的配置也主要參考TI的例程編寫,主要包括初始化和中斷處理。 clk_h。 //繼電器狀態(tài)翻轉(zhuǎn) clk_l。amp。 // delay(100)。 delay(5)。(status==on)) //溫度比較與當(dāng)前繼電器狀態(tài)讀取 { //高于上限且繼電器當(dāng)前狀態(tài)為開 status=off。 }根據(jù)溫度控制繼電器動作:if((temp[0]=30)amp。初始化函數(shù):void ConfigECtrl(void){ P1OUT|=BIT5。 繼電器控制程序繼電器控制較為簡單,只需進(jìn)行簡單的I/O操作,即將I/O輸出拉高稍加延時再拉低形成脈沖,作為JK觸發(fā)器的時鐘源,使其輸出狀態(tài)翻轉(zhuǎn)即可。我在調(diào)試過程中發(fā)現(xiàn)采樣值正常時顯示結(jié)果不對,通過以上過程找到錯誤,因數(shù)據(jù)處理函數(shù)是從4系列移植過來的,4系列的ADC為16位,移植過來不改變參數(shù)導(dǎo)致轉(zhuǎn)換過來的電阻值小于100歐,溫度為負(fù)值,故出現(xiàn)亂碼。在程序中設(shè)置斷點(diǎn),觀察ADC10MEM的值,是否有值,電壓變化時采樣值是否隨之改變,采樣值是否正確等,我在調(diào)試中發(fā)現(xiàn)ADC10MEM的值一直為0,而測量發(fā)現(xiàn)電壓不為0且可以正常變化,故采不到電壓值,修改后該寄存器值正常。 // 將溫度值保存在數(shù)組中,溫度整數(shù)部分,兩位小數(shù) temp[1]=tep%100。 tep=TemperatureExc(res)。 // 采樣值轉(zhuǎn)化為電阻值res=ResExc(vo)。 // 除8獲取平均值 tav=(int)tempAverage。 i++) tempAverage +=(long)tempMeasured[i]。 for (i = 0。 if (tempMeasuredPosition == 8) tempMeasuredPosition = 0。 // 開始取樣和轉(zhuǎn)換過程 __bis_SR_register(CPUOFF + GIE)。 // 開總中斷并進(jìn)入LPM0模式}ADC中斷處理函數(shù):pragma vector=ADC10_VECTOR__interrupt void ADC10_ISR (void){ __bic_SR_register_on_exit(CPUOFF)。 // 等待ADC參考源穩(wěn)定 ADC10CTL0 |= ENC + ADC10SC。 // 通道四,八分頻ADC10CTL0 = SREF_1 + ADC10SHT_3 + REFON + ADC10ON + ADC10IE。初始化函數(shù):void ConfigureAdcTempSensor(void){P1SEL|=BIT4。 AD采樣程序AD采樣程序采用TI所給的范例中的函數(shù),并稍加修改??上葒L試整屏顯示,再顯示單獨(dú)一行,再嘗試在某一位置顯示一個字。i++) wr_
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1