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

正文內(nèi)容

電子信息技術(shù)畢業(yè)設(shè)計論文-文庫吧

2025-06-12 15:17 本頁面


【正文】 片機(jī)的應(yīng)用幾乎無處不在。從形形色色的家用電器、電子玩具、數(shù)碼產(chǎn)品,到各種醫(yī)療器械、智能儀器儀表、通信設(shè)備,大到航空航天、雷達(dá)、導(dǎo)彈等現(xiàn)代化武器裝備,單片機(jī)的身影無處不在。復(fù)雜的工業(yè)控制系統(tǒng)中甚至有數(shù)百臺單片機(jī)在同時工作。單片機(jī)的應(yīng)用從根本上改變了傳統(tǒng)的控制系統(tǒng)的設(shè)計思想和設(shè)計方法,可以說,單片機(jī)技術(shù)的出現(xiàn)和發(fā)展給現(xiàn)代電子技術(shù)和控制領(lǐng)域帶來了一場新的革命。以往由硬件電路實現(xiàn)的大部分控制功能現(xiàn)在都能夠使用單片機(jī)通過軟件方式來實現(xiàn),這種以軟件取代硬件并能夠提高系統(tǒng)性能的微控制技術(shù),隨著單片機(jī)應(yīng)用的推廣普及,不斷發(fā)展,日益完善。因此,學(xué)習(xí)單片機(jī),掌握其應(yīng)用和開發(fā)技術(shù),也成為當(dāng)今職業(yè)院校電子信息專業(yè)的學(xué)生必須具備的一項基本技能。下面談?wù)剢纹瑱C(jī)的發(fā)展情況及其常用系列。雖然單片機(jī)出現(xiàn)的歷史并不長,至今也不到四十年的時間,但其發(fā)展卻十分迅猛。1976年,美國的Intel公司在8位微處理器的基礎(chǔ)上首先研制成功了最早的單片機(jī)產(chǎn)品——MCS48系列單片機(jī),這是一種低檔的8位單片機(jī),但它以其體積小、功能全、價格低、容易嵌入到其他控制產(chǎn)品中等特點(diǎn)得到了廣泛的應(yīng)用?,F(xiàn)在MCS48系列單片機(jī)已經(jīng)完全退出了歷史舞臺。20世紀(jì)80年代,Intel公司在總結(jié)MCS48系列單片機(jī)的基礎(chǔ)上推出了8位單片機(jī)的第二代產(chǎn)品——MCS51系列單片機(jī)。雖然它仍然是8位單片機(jī),但其功能有了很大的增強(qiáng)。其系列產(chǎn)品包括基本型8031/8051/8751/89580C31/80C51,增強(qiáng)型8032/8052,改進(jìn)型8044/8344/8744等,其中80C31/80C51采用CHMOS工藝制造,功耗更低。上述單片機(jī)產(chǎn)品的內(nèi)核均是8051內(nèi)核,它們是高檔的8位單片機(jī)。由于Intel公司主要致力于計算機(jī)的CPU的研究和開發(fā),所以該公司在推出MCS51體系結(jié)構(gòu)后不久,開放了8051內(nèi)核技術(shù),授權(quán)一些廠商以MCS51系列單片機(jī)為核心生產(chǎn)各自的單片機(jī),為單片機(jī)的發(fā)展起了很大作用。隨后世界各大半導(dǎo)體公司依靠自己的優(yōu)勢,爭相研究和開發(fā)單片機(jī),發(fā)展了MCS51單片機(jī),創(chuàng)造了許多各具特色的單片機(jī)產(chǎn)品,成為事實上的8位單片機(jī)主流和經(jīng)典。這些單片機(jī)統(tǒng)稱MCS51系列單片機(jī),它們與MCS51單片機(jī)兼容,又各具特點(diǎn)。目前,全世界生產(chǎn)單片機(jī)的廠家不計其數(shù),單片機(jī)的型號也五花八門。值得一提的是,本設(shè)計中所采用的AT89S52單片機(jī)是Atmel公司的產(chǎn)品,它擁有與MCS51單片機(jī)同樣的內(nèi)核和引腳排列,它除了具有和MCS51單片機(jī)的全部功能外,還內(nèi)置了一些非常實用的功能。例如,它采用Flash ROM、支持ISP(在系統(tǒng)可編程)功能,可以反復(fù)快速擦寫,因此程序?qū)懭牒驼{(diào)試非常方便,使得我們在寫入程序時不需再依靠傳統(tǒng)的編程器,只需使用它所支持的專用ISP軟件就可輕易將程序?qū)懭?,它改變了單片機(jī)應(yīng)用系統(tǒng)的結(jié)構(gòu)模式和開發(fā)運(yùn)行條件,此外它還增加了一些外部接口功能,內(nèi)置有看門狗。AT89S52是目前占有較大市場份額、性能卓越的典型的51系列單片機(jī)。AT89S52單片機(jī)的主要參數(shù)如下:l 8KB在系統(tǒng)可編程Flash ROM存儲器。l 片內(nèi)256B RAM存儲器。l 工作電源電壓:~。l 可重復(fù)擦寫1000次。l 時鐘頻率0Hz~33MHz。l 加密結(jié)構(gòu):三級。l 可編程并行I/O口:48位。l 定時/計數(shù)器:3個16位可編程定時/計數(shù)器。l 中斷源:8個可編程中斷源。l 全雙工UART串行通道。l 具有低功耗空閑工作模式和掉電保持模式。l 內(nèi)置看門狗定時器和復(fù)位電路。l 雙數(shù)據(jù)指針。 51單片機(jī)引腳功能介紹單片機(jī)就是一塊集成電路,在使用其之前,必須先了解其外部引腳功能。51單片機(jī)有多種封裝方式,下面以DIP40封裝為例介紹其引腳功能。DIP40封裝的AT89S52單片機(jī)實物圖如圖31所示。圖31 DIP40封裝的AT89S52單片機(jī)實物圖由于受到集成電路芯片引腳數(shù)目的限制,許多引腳具有雙重功能。AT89S52單片機(jī)的引腳排列如圖32所示。按其功能類別來劃分,這40個引腳可分為以下四類:電源引腳、時鐘引腳、I/O接口引腳、編程控制引腳。各引腳功能介紹如下。(1) 電源引腳Vcc和GND集成電路都需要電源供電才能正常工作,單片機(jī)也不例外。采用DIP40封裝的AT89S52單片機(jī)的第40腳Vcc為電源正極輸入端,一般接+5V,第20腳GND為電源負(fù)極輸入端,接電源負(fù)極,也作為電路中的公共接地端。圖32 DIP40封裝的AT89S52單片機(jī)外部引腳圖(2) 時鐘引腳XTAL1和XTAL2第19腳XTAL1為片內(nèi)振蕩電路輸入端,第18腳XTAL2為片內(nèi)振蕩電路輸出端。在使用片內(nèi)時鐘發(fā)生電路時,這兩個引腳用于外接石英晶體和振蕩電容(取值一般為10p~30p),此時晶振頻率即為時鐘振蕩頻率;在使用片外時鐘電路時,這兩個引腳用于外接外部時鐘源。需要說明的是:本設(shè)計采用單片機(jī)內(nèi)部時鐘振蕩電路,所以這兩個引腳外接石英晶體和振蕩電容。為便于計算定時器的初始值及定時時間,晶振頻率為12MHz。(3) 并行I/O接口引腳AT89S52單片機(jī)共有4個8位并行I/O口,分別為P0、PPP3(字母P為英文單詞Port(意為“端口”)的第一個字母),每個I/O口均有8位,(m=0,1,2,3;n=0,1,2,3,4,5,6,7),在用C語言寫程序時則應(yīng)寫成Pm^n的形式。P0口(第39~30腳,即最低位,即最高位,其余依此遞推)為8位雙向三態(tài)I/O口。值得注意的是,P0口內(nèi)部沒有上拉電阻,不能正常輸出高電平,因此P0口在作為通用I/O口作基本輸入輸出使用時必須外接上拉電阻,否則應(yīng)輸出高電平時為高阻態(tài),無法正常輸出高電平。上拉電阻阻值一般取10KW。P0口除了作為I/O口使用外,在系統(tǒng)擴(kuò)展時還作為低8位地址總線和數(shù)據(jù)總線分時復(fù)用。本設(shè)計中的1602液晶顯示器的數(shù)據(jù)總線就是與P0口連接的,已外接上拉電阻。P1口(第1~8腳,即最低位,即最高位,其余遞推)為8位準(zhǔn)雙向并行I/O口。P1口內(nèi)部已接有上拉電阻,故在使用時無需再接上拉電阻。P1口功能較為簡單,僅作基本I/O口使用,沒有第二功能。本設(shè)計中用P1口作為矩陣式按鍵接口使用。P2口(第21~28腳,即最低位,即最高位,其余遞推)為8位準(zhǔn)雙向并行I/O口。P2口內(nèi)部也已接有上拉電阻,故在使用時無需再接上拉電阻。P2口除了作為I/O口使用外,在系統(tǒng)擴(kuò)展時還作為高8位地址總線使用。P3口(第10~17腳,即最低位,即最高位,其余遞推)作為第一功能使用時為普通的8位并行I/O口,在使用時也無需再接上拉電阻。需要強(qiáng)調(diào)的是:P3口的每個引腳又各自具有非常重要的第二功能。P3口的每個引腳的第二功能如表31所示。注意:P3口每個引腳各自具有的第二功能都是比較重要的控制信號,在實際應(yīng)用中應(yīng)優(yōu)先滿足第二功能使用需要,然后再用剩余的口線作為數(shù)據(jù)的輸入和輸出使用。由于本設(shè)計中不涉及到P3口第二功能的使用,故不再對P3口的第二功能作詳細(xì)介紹。以上四個I/O口既可字節(jié)操作(8位同時并行輸入輸出),亦可位操作(即每根口線均可獨(dú)立控制)表31 AT89S52單片機(jī)P3口的第二功能引腳名稱第二功能功能描述RXD串行數(shù)據(jù)輸入TXD串行數(shù)據(jù)輸出外部中斷0中斷請求輸入外部中斷1中斷請求輸入T0定時/計數(shù)器0外部時鐘輸入T1定時/計數(shù)器1外部時鐘輸入外部RAM寫選通信號外部RAM讀選通信號(4) 編程控制引腳第9腳RST/Vpd為復(fù)位信號輸入端。當(dāng)RST端保持兩個機(jī)器周期以上的高電平時即可使單片機(jī)進(jìn)入復(fù)位狀態(tài),完成一系列初始化操作。單片機(jī)復(fù)位時,使片內(nèi)各特殊功能寄存器的內(nèi)容復(fù)位到初始狀態(tài),程序計數(shù)器PC的值歸零,即指向ROM的第一個單元。復(fù)位操作還使4個并行I/O口的每根口線都置為高電平狀態(tài)。除作為復(fù)位信號輸入外,該引腳也具有不太常用的第二功能,即作為片內(nèi)RAM的備用電源輸入端。一旦電源斷電或者電壓降到一定值時,可通過該引腳為片內(nèi)RAM供電,以保護(hù)片內(nèi)RAM中的數(shù)據(jù)不丟失,且上電后能夠繼續(xù)工作。第29腳為外部ROM的讀選通信號,當(dāng)訪問片外擴(kuò)展ROM時,只有該引腳為低電平有效信號,才能選通片外程序存儲器對其進(jìn)行讀操作。本設(shè)計中無外接擴(kuò)展ROM,不涉及對該引腳的使用,故懸空。第30腳ALE/為地址鎖存使能/片內(nèi)ROM編程脈沖信號輸入端。在單片機(jī)擴(kuò)展外部存儲器時,該引腳作第一功能使用,用于控制把P0口提供的低8位地址送鎖存器鎖存起來,以實現(xiàn)低8位地址和數(shù)據(jù)的隔離。在沒有訪問外部存儲器時,該引腳以時鐘周期頻率的6分頻固定頻率輸出,因此可作為外部時鐘,或可作為外部定時脈沖使用。該引腳的第二功能為片內(nèi)ROM的編程脈沖輸入端。這是為兼容以往的低版本單片機(jī)而設(shè)置的。以往低版本單片機(jī)的片內(nèi)ROM要靠編程脈沖才能將程序?qū)懭?,而AT89S52支持ISP功能,無需編程脈沖輸入。本設(shè)計中既沒有擴(kuò)展外部存儲器,往片內(nèi)ROM寫入程序時也無需編程脈沖輸入,故不涉及該引腳的使用,故閑置。第31腳/Vpp具有雙重功能。其第一功能為訪問片內(nèi)、片外ROM的控制信號,當(dāng)該引腳接低電平時,CPU對ROM的訪問限定在片外ROM(對于片內(nèi)沒有ROM的單片機(jī),如8031,CPU只能訪問片外ROM,則該引腳一直是接低電平的);當(dāng)該引腳接高電平時,CPU對ROM的訪問方式為,如果地址不超過片內(nèi)ROM的存儲單元范圍,則訪問片內(nèi)ROM(低端地址),當(dāng)?shù)刂沸盘査鶚?biāo)志的存儲單元超出片內(nèi)ROM范圍時(高端地址),則自動延伸至片外ROM(即只能訪問片外ROM的高端存儲單元)。該引腳的第二功能Vpp用于對片內(nèi)含有EPROM的單片機(jī)(如8751),對其內(nèi)部EPROM寫入程序時作編程電壓輸入端。本設(shè)計中采用的AT89S52單片機(jī)片內(nèi)含有8KB Flash ROM,其存儲容量已能滿足需求,無需擴(kuò)展片外ROM,且AT89S52單片機(jī)支持ISP(在系統(tǒng)可編程)功能,無需編程電壓輸入,故此引腳直接接高電平(與第40腳電源正極相連),僅限于對片內(nèi)程序存儲器的訪問。 由已知日期推算星期幾數(shù)碼日歷鐘顯示的年份如果是閏年,則2月為29天,否則為28天。在本設(shè)計任務(wù)中,無論是日期的調(diào)整,還是星期幾的推算,都涉及到閏年的判斷。查閱相關(guān)資料可知,如果一個年份是閏年,則該年份必然滿足以下兩個條件其中之一:(1) 年份是4的整數(shù)倍但不是100的整數(shù)倍;(2) 年份是400的整數(shù)倍。只要年份能滿足以上兩個條件其中之一,便可判定是閏年,否則不是閏年。于是,不難寫出判斷一個年份是否閏年的函數(shù)如下: bit leap(int year) //判斷是否閏年函數(shù){ return(year%4==0amp。amp。year%100!=0||year%400==0)。 }//閏年的條件該函數(shù)的類型為C51中擴(kuò)展的bit型(即位類型),這種類型的函數(shù)的返回值只能是0或1,不能為其它值。具體到本函數(shù),若年份能滿足閏年的條件則返回1,否則返回0。我們在日常生活中經(jīng)常會遇到這樣的問題,忘記了某年某月某日是星期幾,特別是一些重大節(jié)日或是一些值得紀(jì)念的日子,這就是星期幾的推算問題。那么,如何由一個已知日期推算出是星期幾呢?人們一般會采用這樣的方法:從一個已知星期幾的某天開始推算,先計算已知星期幾的這一天距要推算的那天共相差幾天,由于星期是7天一輪回的,故可以將相差的天數(shù)除以7取余數(shù),再用已知的那天星期幾加上余數(shù),就可以推算出要計算的這天是星期幾了。在此,我們也采用類似的方法進(jìn)行推算。已知公元元年1月1日正好是星期一,那么,只需計算出從公元元年1月1日到要推算的這一天總共多少天(s),再用天數(shù)s除以7取余數(shù),余0則說明正好夠整數(shù)個星期,則要推算的這一天正好就是一個星期的最后一天,也就是星期日;余1則說明整數(shù)個星期還多一天,那么要推算的這一天就是星期一了;依次類推,余2就是星期二,余3就是星期三.……。但是我們在計算天數(shù)時會發(fā)現(xiàn)由于中間會經(jīng)歷平年(365天)、閏年(366天),每年的不同月份天數(shù)也不相同,這樣算來,計算量是很大的,計算也十分不便。有沒有改進(jìn)的方法呢?我們不妨這樣來考慮:如果一個年份是平年,則該年有365天,也就是52個星期多一天;如果一個年份是閏年,則該年有366天,也就是52個星期多兩天;于是,對于以前的年份,如果是平年,則只計為一天(扣除其中的整數(shù)個星期),同理,如果是閏年,則計為兩天。這樣一來,則計算量大大減少。再進(jìn)一步,把要推算的這一年之前的所有年份都先按平年計算,則之前有多少年,就有多少天(一個平年只計一天,其中的整數(shù)個星期已扣除)。設(shè)要推算的年份為y,則之前有y1個年份,就計為y1天。其中y1個年份中有若干個年份是閏年,由于閏年比平年多一天(平年2月28天,閏年2月29天,閏年和平年的其它相應(yīng)月份的天數(shù)是一樣的,只有2月份不同),則需再加上閏年的個數(shù),于是可以算出y年之前有(y1) +(y1)/4(y1)/100+(y1)/400天。注意:先把之前y1年中凡是4的整數(shù)倍的年份都暫按閏年計算,然后再去掉是100的整數(shù)倍的年份,再加上是400的整數(shù)倍的年份,即可算出y年之前有之少天了(整數(shù)個星期已扣除)。然后再計算要推算的這一天是當(dāng)年的第多少天,這個不難計算。如果要推算的日子在該年的前兩個月,則與該年是否閏年無關(guān);如果是2月份以后的月份,可以先按平年計算,如果是閏年,則再加上一天(因為閏年的2月份比平年的2月份多一天)。這樣,就可以對要推算的日子所在的月份進(jìn)行測試,并按各種情況計算出要推算的這一天所在的月份之前當(dāng)年已過了多少天,再加上要推算的這一天是當(dāng)月的第幾天,就可以算出要推算的這一天是當(dāng)年的第多少天了。用之前所算出的當(dāng)年之前的總天數(shù)加上要推算的這一天是當(dāng)年的多少天,如此計算出總天數(shù),再用這個總天數(shù)除以7取余數(shù),余0則是星期日,余1則是星期一,余2則是星期二,……如此等等。由已知日期推算星期幾的函數(shù)的參考源代碼如下:char tuisuan(int y, char m, char d) //根據(jù)已知日期推算
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1