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

正文內(nèi)容

單片機(jī)的簡(jiǎn)易計(jì)算器畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-01-04 10:26 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 首地址。運(yùn)算主程序框圖如 34 所示: 第 17 頁(yè) 圖 44 運(yùn)算主程序框圖 第 18 頁(yè) 第五章 仿真及調(diào)試 在程序設(shè)計(jì)方法上,模塊化程序設(shè)計(jì)是單片機(jī)應(yīng)用中最常用的程序設(shè)計(jì)方法。設(shè) 計(jì)的中心思想是把一個(gè)復(fù)雜應(yīng)用程序按整體功能劃分成若干相對(duì)獨(dú)立的程序模塊,各模塊可以單獨(dú)設(shè)計(jì)、編程和調(diào)試,然后組合起來(lái)。這種方法便于設(shè)計(jì)和調(diào)試,容易實(shí)現(xiàn)多個(gè)程序共存,但各個(gè)模塊之間的連接有一定的難度。根據(jù)需要我們可以采用自上而下的程序設(shè)計(jì)方法,此方法先從主程序開始設(shè)計(jì),然后再編制各從屬程序和子程序,層層細(xì)化逐步求精,最終完成一個(gè)復(fù)雜程序的設(shè)計(jì)。這種方法比較符合人們的日常思維,缺點(diǎn)是一級(jí)的程序錯(cuò)誤會(huì)對(duì)整個(gè)程序產(chǎn)生影響。 功能和操作:加減乘除運(yùn)算和顯示。 ① 上電后,屏幕初始化。 ② 計(jì)算。按下數(shù)字鍵,屏幕顯示要運(yùn)算 的第一個(gè)數(shù)字,再按下符號(hào)鍵,然后再按下 數(shù)字鍵,屏幕顯示要運(yùn)算的第二個(gè)數(shù)字,最后按下 “﹦ ”號(hào)鍵,屏幕上顯示出計(jì)算結(jié)果。 ③ 如果要再次計(jì)算,可以按下 “ON/C”鍵清零,或者按下單片機(jī)的復(fù)位鍵,重新初始化。 第 19 頁(yè) 總 結(jié) 經(jīng)過近兩個(gè)月的努力,終于順利完成了畢業(yè)設(shè)計(jì)。剛開始,我們頭緒不是很清楚,不知道從哪里入手,但通過老師的耐心指導(dǎo)并和同學(xué)認(rèn)真研究設(shè)計(jì)課題,跑圖書館查資料、確定基本設(shè)計(jì)方案、對(duì)所用芯片功能進(jìn)行查找、調(diào)試、上機(jī)仿真等,經(jīng)歷了一次次的困難,卻積累了很多寶貴的經(jīng)驗(yàn)。在整個(gè)設(shè)計(jì)的過程中遇到的問題主要有以下 三點(diǎn),第一:基礎(chǔ)知識(shí)掌握的不牢固,主要表現(xiàn)在一些常用的電路的形式和功能不清楚,對(duì)書本上的內(nèi)容理解不夠透徹。第二:對(duì)一些常用的應(yīng)用軟件缺少應(yīng)用,體現(xiàn)在畫電路圖和系統(tǒng)的仿真的時(shí)候,對(duì)這些軟件的操作不熟練,浪費(fèi)了很 多 時(shí)間。第三:相關(guān)知識(shí)掌握的不夠全面,缺少系統(tǒng)設(shè)計(jì)的經(jīng)驗(yàn)。 這次設(shè)計(jì)進(jìn)一步端了我的學(xué)習(xí)態(tài)度,學(xué)會(huì)了實(shí)事求是,嚴(yán)謹(jǐn)?shù)淖黠L(fēng),對(duì)自己要嚴(yán)格要求,不能夠一知半解,要力求明明白白。急于求成是不好的,我有所感受。如果省略了那些必要的步驟,急于求成,不僅會(huì)浪費(fèi)時(shí)間,還會(huì)適得其反。我覺得動(dòng)手之前,頭腦里必須清楚該怎么做 ,這一點(diǎn)是很重要的。就目前來(lái)說,我的動(dòng)手能力雖然差一點(diǎn),但我想,通過我的不懈努力,在這方面,我總會(huì)得到提高。這一點(diǎn),我堅(jiān)信。因?yàn)閯e人能做到的,我也一定能做到。 在此次的 畢業(yè) 設(shè)計(jì)中我最大的體會(huì)就是進(jìn)一步認(rèn)識(shí)到了理論聯(lián)系實(shí)踐的重要性。一份耕耘,一份收獲。通過 這段時(shí)間的設(shè)計(jì) ,讓我明白科學(xué)的思維方法和學(xué)習(xí)方法是多么重要,只有這樣才能夠有很高的效率,才能夠讓自己的工作更完美??偠灾?,此次 畢業(yè) 設(shè)計(jì)讓我學(xué)到了好多平時(shí)在課堂上學(xué)不到的東西,增加了我的知識(shí)運(yùn)用能力,增強(qiáng)我的實(shí)際操作能力。謝謝老師給我們提供這么好的機(jī)會(huì),為我 們之后走向社會(huì)奠定了一個(gè)好的基礎(chǔ)。 本次畢業(yè)設(shè)計(jì)讓我學(xué)到了很多,也學(xué)會(huì)到了要怎么樣去面對(duì)困難,不要對(duì)知識(shí)一知半截,要有的求實(shí)的能力,通過老師的幫助我學(xué)到了很多在平時(shí)的沒有注意到的動(dòng)?xùn)|西及知識(shí),更美沒有深入的的去理解,通過這次我要更加的明確自己。更要注重自己在各方面的鍛煉能力,把握機(jī)會(huì)。這次的設(shè)計(jì)非常的感謝老師們。 第 20 頁(yè) 參考文獻(xiàn) [1] 胡 輝 . 單片機(jī)原理與應(yīng)用 . 北京 :中國(guó)水利水電出版社, 2020 [2] 林志琦 . 單片機(jī)原理接口及應(yīng)用( C 語(yǔ)言版) . 北京 :中國(guó)水利水電出版社, 2020 [3] 趙克林 . C 語(yǔ)言實(shí)例教程 . 北京 :人民郵電出版社, 2020 [4] 姜承昊 . 最新 LED 驅(qū)動(dòng)電路設(shè)計(jì)、應(yīng)用與制造新技術(shù)新工藝實(shí)用手冊(cè) .北京 :中國(guó)科學(xué)技術(shù)文獻(xiàn)出版社 ,2020 [5] [6] 第 21 頁(yè) 附錄 1 簡(jiǎn)易計(jì)算器源程序 //**程序名 :多功能計(jì)算器 //**功能 :可以進(jìn)行 6 位數(shù)以內(nèi)正整數(shù)的加減乘除運(yùn)算,以及計(jì)時(shí)器和自定義倒計(jì)時(shí)功能 。 //* 頭文件及宏定義 include define TIME0H 0xFC define TIME0L 0x18 //定時(shí)器 0溢出時(shí)間: 5ms define TIME1H 0x44 define TIME1L 0x80 //定時(shí)器 1溢出時(shí)間: 48ms //*全局變量 //定時(shí)器 0定時(shí)刷新 LED 計(jì)數(shù) unsigned long ul_Number=0。 //LED 實(shí)時(shí)顯示數(shù)字 unsigned char uca_ShowCustom[6]={0x88,0x83,0xC6,0xA1,0x86,0x84}。 //存放自定義顯示字符 unsigned char uc_DisCount=1。 //L ED時(shí)事刷新計(jì)數(shù) bit b_ShowMode=0。 //顯示模式標(biāo)志位 //0數(shù)字模式,將要顯示的數(shù)字賦給 ul_Number 便可時(shí)事顯示數(shù)值 // 默認(rèn)為數(shù)字模式 //1自定義模式,該模式下自定義字符顯示 //定時(shí)器 1計(jì)數(shù)刷新定時(shí) (計(jì)時(shí)模式 ) unsigned char uc_TimeCount=1。 //定時(shí)器 1 定時(shí)計(jì)數(shù)。 bit b_ClockStart=0。 //定時(shí)器 1 顯示計(jì)數(shù)標(biāo)志位 extern bit b_ClockOppose。 // extern unsigned long ul_ClockOppose。 //防抖動(dòng)標(biāo)志 bit b_KeyShock=0。 //鍵盤防抖動(dòng)標(biāo)志位。 //當(dāng)按鍵中斷產(chǎn)生時(shí),首先判斷此位 //0執(zhí)行鍵盤掃描及鍵碼處理程序; 1不執(zhí)行 bit b_KillShock=0。 //防抖標(biāo)志清除位: 0不清除; 1清除 unsigned char uc_KillCount=1。 //抖動(dòng)標(biāo)志清除計(jì)數(shù),使用定時(shí)器 1 bit b_LCDClean=0。 //通過設(shè)置 b_LCDClean 為 1 便可啟動(dòng)延時(shí)清空 LED顯示 unsigned char uc_CleanCount=1。 //延遲時(shí)間可在 T1 中斷中設(shè)定 unsigned char uc_ReportSymbol。 bit b_ReportFlash=0。 unsigned char uca_FlashBlank[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}。 //* 主函數(shù) 第 22 頁(yè) void main() { P2=0x0F。 //初始化鍵盤接口 TMOD=0x11。 //定時(shí)器 0:模式一 。定時(shí)器 0:模式一 . //定時(shí)器 0,用于 LCD刷新 TH0=TIME0H。 TL0=TIME0L。 TR0=1。 //開啟定時(shí)器 0 ET0=1。 //開 定時(shí)器 0中斷 //定時(shí)器 1,用于 1s計(jì)時(shí) TH1=TIME1H。 TL1=TIME1L。 TR1=1。 //開啟定時(shí)器 1 ET1=1。 //開定時(shí)器 1中斷 //外部中斷 0,用于執(zhí)行鍵盤掃描和鍵處理程序 IT0=1。 //外部中斷 0,中斷方式:下降沿 EX0=1。 //開啟外部中斷 0 PT0=1。 //把定時(shí)器 0溢出中斷設(shè)為高優(yōu)先級(jí) EA=1。 //開啟總中斷 while(1)。 } //* 外部中斷 0,調(diào)用鍵盤掃描程序 void vINT0(void) interrupt 0 { EX0=0。 //在鍵掃描處理時(shí),關(guān)閉外部中斷 0,防抖動(dòng) if(b_KeyShock==0) { vKeyProcess(ucKeyScan())。 //當(dāng)判斷有按鍵按下時(shí),掃描鍵盤,并把掃描結(jié)果進(jìn)行處理 b_KeyShock=1。 //設(shè)置防抖動(dòng)標(biāo)志。 } else b_KeyShock=0。 //如果有抖動(dòng)則不執(zhí)行鍵掃描,恢復(fù)防抖動(dòng)標(biāo)志 //設(shè)置防抖動(dòng)清除標(biāo)志位 if(b_KeyShock==1) b_KillShock=1。 //如果防抖動(dòng)標(biāo)志位開啟則開啟防抖動(dòng)標(biāo)志清除位 //300ms 后清除防抖動(dòng)標(biāo)志。 //恢復(fù)鍵掃描處理前初始狀態(tài) P2=0x0F。 //恢復(fù) P2 口 EX0=1。 //恢復(fù)按鍵中斷。 } //* 定時(shí)器 1中斷,用于計(jì)時(shí)功能和防抖動(dòng)標(biāo)志清除以及顯示報(bào)告 void vTimer1(void) interrupt 3 { //計(jì)時(shí)模式計(jì)數(shù)刷新 if(b_ClockStart==1) //當(dāng)計(jì)時(shí)模式開啟式,如計(jì)時(shí)處于運(yùn)行狀態(tài)則執(zhí)行定時(shí)計(jì)數(shù)增加 第 23 頁(yè) { if(b_ClockOppose==0) //正常計(jì)時(shí) { if(uc_TimeCount%21==0) { uc_TimeCount=1。 ul_Number++。 } else uc_TimeCount++。 } else { //倒計(jì)時(shí)模式 if(uc_TimeCount%21==0) { uc_TimeCount=1。 if(ul_ClockOppose0) { ul_ClockOppose。 ul_Number=ul_ClockOppose。 } else { b_ClockStart=0。 uc_ReportSymbol=7。 b_LCDClean=1。 } } else uc_TimeCount++。 } } //防抖動(dòng)標(biāo)志清除 if(b_KillShock==1) { if(uc_KillCount%5==0) //當(dāng)防抖動(dòng)標(biāo)志位 為 1 時(shí),計(jì)時(shí) 300ms 后清除抖動(dòng)標(biāo)志位 { b_KeyShock=0。 b_KillShock=0。 uc_KillCount=1。 } else uc_KillCount++。 } //LCD 顯示報(bào)告
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1