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

正文內(nèi)容

單片機(jī)串口通信設(shè)計(jì)方案-wenkub

2023-05-10 13:37:31 本頁(yè)面
 

【正文】 當(dāng)兩次采樣為低電平時(shí),就認(rèn)為接收的是“0”,兩次采樣為高電平,就認(rèn)為接收是“1”。因此,兩邊的波特率必須一致。一個(gè)字符發(fā)送完畢,串行口控制寄存器中的發(fā)送中斷標(biāo)志位T1置位。 51單片機(jī)串行傳送示意圖發(fā)送數(shù)據(jù)時(shí),當(dāng)執(zhí)行一條向SBUF寫(xiě)入數(shù)據(jù)時(shí)把數(shù)據(jù)寫(xiě)入串口發(fā)送數(shù)據(jù)寄存器,就啟動(dòng)發(fā)送過(guò)程。輸入數(shù)據(jù)先逐位進(jìn)入輸入移位寄存器,再送入接收SBUF,在此采用了雙緩沖結(jié)構(gòu),這是為了避免在接收到第二幀數(shù)據(jù)之前,CPU未及時(shí)響應(yīng)接收器的前一幀的中斷請(qǐng)求而把前一幀數(shù)據(jù)讀走,造成兩幀數(shù)據(jù)重疊的錯(cuò)誤。根據(jù)對(duì)其寫(xiě)控制字決定工作方式,從而決定波特率發(fā)生器的時(shí)鐘來(lái)自系統(tǒng)時(shí)鐘還是來(lái)自定時(shí)器T1或T2。不同的工作方式,其波特率不一樣,方式0和方式2的波特率直接由系統(tǒng)時(shí)鐘產(chǎn)生,方式1和方式3的波特率由定時(shí)器/計(jì)數(shù)器T1或T2的溢出頻率決定[7]。51單片機(jī)的串口也可以作為同步移位寄存器。當(dāng)然,也可以用用T2作為波特率發(fā)生器[7]。為了提高采樣的分辨率,準(zhǔn)確地測(cè)定數(shù)據(jù)位的上升沿或下降沿,時(shí)鐘頻率總是高于波特率若干倍,這個(gè)倍數(shù)稱(chēng)為波特率因子。例如:每秒鐘傳輸120個(gè)字符,每個(gè)字符由10個(gè)二進(jìn)制位(其中1個(gè)起始位、8個(gè)數(shù)據(jù)位和一個(gè)停止位),其波特率為120字符/秒10位/字符=1200位/秒。同步字符1同步字符2數(shù)據(jù)塊校驗(yàn)字符1校驗(yàn)字符1 串行同步通信數(shù)據(jù)格式同步通信方式的軟硬件的復(fù)雜程度也隨之上升,價(jià)格比較昂貴,一般只在傳輸速率要求較高系統(tǒng)使用。異步串行通信方式是將傳輸?shù)臄?shù)據(jù)按照某種位數(shù)進(jìn)行分組(通常以8位的字節(jié)為單位),在每組數(shù)據(jù)的前面和后面分別加上一位起始位和一位停止位,根據(jù)需要還可以在停止位前加一位校驗(yàn)位,并且停止位的長(zhǎng)度還可以增加。在實(shí)際應(yīng)用中,盡管多數(shù)串行通信接口電路具有全雙工功能,單一般情況下,多工作于半雙工方式下。(b)所示,通信方甲機(jī)和通信方乙機(jī)都可以作為發(fā)送方或接收方,但在任一時(shí)刻,不能同時(shí)作為發(fā)送方和接收方,通軟件或硬件設(shè)定。串行通信按照信息在設(shè)備間的傳輸方向,還可分為單工、半雙工和全雙工三種方式。 并行通信與串行通信 并行通信的特點(diǎn)就是將多個(gè)數(shù)據(jù)位同時(shí)進(jìn)行傳輸。為了很好地在Proteus虛擬實(shí)驗(yàn)平臺(tái)上展示51單片機(jī)串行通信的結(jié)果,需要自行設(shè)計(jì)方案。 系統(tǒng)硬件PCB設(shè)計(jì) 完成串行通信單片機(jī)最小系統(tǒng)原理圖設(shè)計(jì)與PCB繪制。系統(tǒng)的方案選擇主要包括控制器的選擇、串行通信方式比較與方案選擇、顯示方案比較與選擇、編寫(xiě)程序語(yǔ)言比較和選擇、串行控制方案確定以及系統(tǒng)框圖繪制。 本論文要求在理解串行通信基本知識(shí)、學(xué)習(xí)并掌握51單片機(jī)的結(jié)構(gòu)組成、指令系統(tǒng)、C語(yǔ)言程序設(shè)計(jì)、熟悉Keil軟件的編程與調(diào)試環(huán)境以及掌握Proteus仿真軟件的使用環(huán)境、元器件調(diào)用、虛擬儀器應(yīng)用、原理圖設(shè)計(jì)、仿真調(diào)試的基礎(chǔ)上,完成以下4項(xiàng)任務(wù): 總結(jié)單片機(jī)串口通信的基本知識(shí)和設(shè)計(jì)要求,對(duì)單片機(jī)串口通信的各種控制 方案進(jìn)行比較,選擇一個(gè)合適的控制方案; 根據(jù)課題的設(shè)計(jì)要求,在Proteus仿真環(huán)境中設(shè)計(jì)單片機(jī)串口通信硬件電路; 在Keil環(huán)境中編制串口通信控制程序,并進(jìn)行編譯調(diào)試; 在Proteus仿真環(huán)境中調(diào)用硬件電路,加載控制程序,并進(jìn)仿真調(diào)試。51系列單片機(jī)自身有全雙工的異步串行通信接口,實(shí)現(xiàn)串行通信極為方便。他們一致認(rèn)為該軟件在教學(xué)中的應(yīng)用有很大的幫助,其靈活自主的設(shè)計(jì)方式使學(xué)生更能體驗(yàn)到電子設(shè)計(jì)的魅力,學(xué)生對(duì)單片機(jī)以及電子設(shè)計(jì)的興趣大大提升,知識(shí)的掌握和應(yīng)用當(dāng)然也有了很大的提高。 軟件本身支持?jǐn)?shù)百種51系列單片機(jī)機(jī)芯,可以用來(lái)編譯C源碼、匯編程序、連接和重定位目標(biāo)文件和庫(kù)文件、創(chuàng)建HEX文件、調(diào)試目標(biāo)程序等,是一種集成化文件管理編譯環(huán)境。同時(shí),當(dāng)硬件調(diào)試成功后,利用Proteus ARES軟件,很容易獲得其PCB圖,為今后的系統(tǒng)制造提供了方便。Proteus軟件已有近20年的歷史,在全球已得到相當(dāng)廣泛的使用。EDA設(shè)計(jì)思路是:從元器件的選取到連接、直至電路的調(diào)試、分析和軟件的編譯,都是在計(jì)算機(jī)中完成,所用的工作都是虛擬的。而51系列的單片機(jī),隨著半導(dǎo)體技術(shù)的發(fā)展,其處理速度更快,性能更優(yōu)越,在工業(yè)控制領(lǐng)域上占據(jù)十分重要的地位,通過(guò)對(duì)51系列單片機(jī)的學(xué)習(xí)而掌握單片機(jī)開(kāi)發(fā)的過(guò)程是一種不錯(cuò)的選擇。其發(fā)展速度之快、應(yīng)用范圍之廣已達(dá)到了驚人的地步,它已滲透到生產(chǎn)和生活的各個(gè)領(lǐng)域,應(yīng)用非常廣泛。在汽車(chē)、通信、智能儀表、家用電器和軍事設(shè)備的智能化以及實(shí)時(shí)過(guò)程控制等方面,單片機(jī)都扮演著非常重要的角色[1]。然而單片機(jī)是一門(mén)綜合性、實(shí)踐性都很強(qiáng)的學(xué)科,其學(xué)習(xí)涉及的實(shí)驗(yàn)環(huán)節(jié)比較多,硬件設(shè)備投入比較大,對(duì)于大多數(shù)人而言很難投入大筆資金去購(gòu)買(mǎi)實(shí)驗(yàn)器件。雖然現(xiàn)在的電路設(shè)計(jì)軟件已經(jīng)很多,諸如PROTEL、ORCAD、EWB 、Multisim等,不過(guò)這些軟件之間的差別都不大:都有原理圖和PCB制作功能,都能進(jìn)行諸如頻率響應(yīng),噪音分析等電路分析,主要用于模擬電路、數(shù)字電路、模數(shù)混合電路的性能仿真與分析,但對(duì)于單片機(jī)設(shè)計(jì)及軟件編程,最重要的是兩者的聯(lián)調(diào),這些軟件都無(wú)法實(shí)現(xiàn),所以造成了單片機(jī)系統(tǒng)設(shè)計(jì)周期長(zhǎng)、設(shè)計(jì)費(fèi)用高等缺點(diǎn)[2]。Proteus 軟件集成了高級(jí)原理布圖、混合模式SPICE 電路仿真、PCB 設(shè)計(jì)以及自動(dòng)布線來(lái)實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)系統(tǒng)。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,是彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象[3][4]。它集成了文件編譯處理、編譯連接、項(xiàng)目管理,窗口、工具引用和軟件仿真調(diào)試等多種功能,是相當(dāng)強(qiáng)大的的開(kāi)發(fā)工具[5]。雖然Proteus在單片機(jī)的學(xué)習(xí)和應(yīng)用系統(tǒng)的開(kāi)發(fā)上有著諸多的優(yōu)點(diǎn),但是在國(guó)內(nèi)的發(fā)展才幾年的時(shí)間,其應(yīng)用還未普及。既可通過(guò)一臺(tái)計(jì)算機(jī)來(lái)控制和監(jiān)視多臺(tái)單片機(jī)系統(tǒng),也可實(shí)現(xiàn)多臺(tái)單片機(jī)之間的互聯(lián),組成不同的控制系統(tǒng),適應(yīng)不同的應(yīng)用場(chǎng)合[6]。 在本論文中,設(shè)計(jì)的主要內(nèi)容有五個(gè)方面:一是串行通信控制系統(tǒng)方案的選擇;二是系統(tǒng)硬件電路的設(shè)計(jì);三是系統(tǒng)軟件設(shè)計(jì);四是系統(tǒng)軟件設(shè)計(jì);五是系統(tǒng)仿真與調(diào)試;六是系統(tǒng)硬件PCB設(shè)計(jì)。 系統(tǒng)硬件設(shè)計(jì) 根據(jù)控制系統(tǒng)方案在Proteus ISIS原理圖編輯環(huán)境中繪制系統(tǒng)硬件電路,主要包括原理圖文件的創(chuàng)建、圖紙大小的設(shè)置、原理圖中元器件的選取、元器件的放置、電源、地、和輸入輸出終端的放置、原理圖連線、器件統(tǒng)一編號(hào)、電氣檢測(cè)以及元器件屬性設(shè)置等內(nèi)容。通過(guò)以上六個(gè)方面的闡述說(shuō)明,將會(huì)對(duì)單片機(jī)串行通信控制系統(tǒng)基于Proteus的設(shè)計(jì)、開(kāi)發(fā)與仿真過(guò)程以及電路板制作有一個(gè)清晰全面的認(rèn)識(shí)。單片機(jī)串行通信在本系統(tǒng)設(shè)計(jì)中十分重要,是設(shè)計(jì)的核心部分,為此需要在此對(duì)通信部分做一些介紹。通信速度快,但傳輸?shù)臄?shù)據(jù)有多少位,就相應(yīng)地有多少根傳輸線,傳輸信號(hào)線多,傳輸距離較遠(yuǎn)時(shí)線路復(fù)雜,成本高,較適合于短距離的數(shù)據(jù)通信。在串行通信中,通信雙方在任一時(shí)刻,只能單方向的傳送數(shù)據(jù),這樣的傳送方法稱(chēng)為單工方式。通信雙方通過(guò)兩條傳輸線進(jìn)行互連,兩者之間的數(shù)據(jù)可以同時(shí)進(jìn)行發(fā)送和接收,這樣的通信方式稱(chēng)為全雙工方式。因此,為了能夠綜合展示單片機(jī)串行通信的的應(yīng)用,本系統(tǒng)采用半雙工方式。這樣組合而成的一組數(shù)據(jù)被稱(chēng)為一幀。因此本系統(tǒng)采用異步串行通信。在異步串行通信中,波特率一般為509600bps。在單片機(jī)中,發(fā)送/接收時(shí)鐘可以由系統(tǒng)時(shí)鐘產(chǎn)生,其波特率因子可為132和64,根據(jù)方式而不同。 51系列單片機(jī)串行口的功能51單片機(jī)的串口是一個(gè)可編程的全雙工串行通信接口,通過(guò)軟件編程,它可以作為通用異步接收和發(fā)送UART使用,可以同時(shí)發(fā)送、接收數(shù)據(jù)。51單片機(jī)的串口有4種工作方式,分別是方式0、方式方式方式3。 51系列單片機(jī)的串行結(jié)構(gòu)51系列的單片機(jī)串行口主要由發(fā)送數(shù)據(jù)寄存器、發(fā)送控制器、輸出控制門(mén)、接收數(shù)據(jù)寄存器、接收控制器和輸入移位寄存器等組成,: 51單片機(jī)串行口結(jié)構(gòu)圖 串行通信數(shù)據(jù)寄存器SBUF,字節(jié)地址為99H,實(shí)際對(duì)應(yīng)兩個(gè)寄存器:發(fā)送數(shù)據(jù)寄存器、接收數(shù)據(jù)寄存器。特殊功能寄存器PCON的最高位SMOD為串行口波特率的倍增控制位。對(duì)于發(fā)送器,因?yàn)榘l(fā)送時(shí)CPU是主動(dòng)的,不會(huì)產(chǎn)生寫(xiě)重疊的問(wèn)題,一般不需要雙緩沖器結(jié)構(gòu),為了保持最大的傳送速率,僅用了SBUF一個(gè)緩沖器。串行通信中,甲機(jī)CPU向SBUF寫(xiě)入數(shù)據(jù)(MOV SBUF,A),就啟動(dòng)發(fā)送過(guò)程。(對(duì)于方式2和方式3,當(dāng)發(fā)送完數(shù)據(jù)位后,要把串行口控制寄存器SCON中的TB8位發(fā)送出去后才能發(fā)送停止位)。當(dāng)甲機(jī)一幀數(shù)據(jù)發(fā)送完畢(或稱(chēng)發(fā)送緩沖器空),硬件置位發(fā)送中斷標(biāo)志位TI(),該位可作為查詢(xún)標(biāo)志,如果設(shè)置為允許中斷,則將引起中斷,甲機(jī)的CPU可發(fā)送下一幀數(shù)據(jù)。如果接收是起始位的值不是“0”,則起始位無(wú)效,復(fù)位接收電路;如果起始位為“0”,則開(kāi)始接受其它數(shù)據(jù)。無(wú)論是單片機(jī)之間,還是單片機(jī)和PC機(jī)之間,串行通信雙方的波特率必須相同,才能完成數(shù)據(jù)的正確傳送[7]。上級(jí)主機(jī)則根據(jù)接收的下級(jí)子系統(tǒng)的信息,進(jìn)行判斷,產(chǎn)生相應(yīng)的處理命令傳送給下級(jí)子系統(tǒng)。在多機(jī)通信中,為了保證主機(jī)能夠正確識(shí)別所選是從機(jī)并進(jìn)行通信,主,從機(jī)需要正確地設(shè)置和判斷多機(jī)通信控制位SM2和發(fā)送/接收的第9位信息,TB8,RB8。當(dāng)從機(jī)的SM2=1時(shí),該從機(jī)只接受地址幀,對(duì)數(shù)據(jù)幀不進(jìn)行處理,即只有接收的RB8位等于1數(shù)據(jù)時(shí),接收才有效,RI才置1,對(duì)接收的RB8位等于0的數(shù)據(jù)不進(jìn)行處理。 多機(jī)通信線路圖單片機(jī)多機(jī)通信的過(guò)程如下:1. 所有從機(jī)復(fù)位,置SM2=1,使其處于準(zhǔn)備接收一幀地址數(shù)據(jù)的狀態(tài);2. 主機(jī)設(shè)置第9位TB8=1,發(fā)送一幀地址信息,與所需要的從機(jī)進(jìn)行聯(lián)系;3. 各從機(jī)接收到地址信息后,分別于自己的地址進(jìn)行比較,對(duì)于地址相符的從機(jī),置SM2=0,以便于接收主機(jī)隨后發(fā)送的所有信息;對(duì)于地址不相符的從機(jī),仍保持SM2=1,對(duì)主機(jī)隨后發(fā)送的數(shù)據(jù)不進(jìn)行處理。多機(jī)通信協(xié)議約定:主機(jī)為了正確地和指定的從機(jī)正確的通信,雙方需要對(duì)各種數(shù)據(jù)、地址、指令和狀態(tài)等進(jìn)行明確的約定。對(duì)于地址FFH定義為對(duì)所有從機(jī)都有效的控制命令,用于將各從機(jī)恢復(fù)到復(fù)位狀態(tài),即SM2=1。為了能夠?qū)崿F(xiàn)多單片機(jī)之間的數(shù)據(jù)傳送,本系統(tǒng)采用多機(jī)通信模式[8][9][10]。但是,MCS51系列單片機(jī)在實(shí)際應(yīng)用中使用較少。采用Flash ROM,內(nèi)部具有4KB ROM 存儲(chǔ)空間,能于3V的超低壓工作,而且與MCS51系列單片機(jī)完全兼容,可反復(fù)進(jìn)行系統(tǒng)實(shí)驗(yàn)[12]。方案三:采用LCD液晶顯示屏,液晶顯示屏的顯示功能強(qiáng)大,可顯示大量文字、圖形、符號(hào)顯示多樣,清晰可見(jiàn)。但是匯編語(yǔ)言可讀性差,而且不同的CPU,其匯編語(yǔ)言可能有所差異,也不易移植。 用C語(yǔ)言來(lái)編寫(xiě)目標(biāo)系統(tǒng)軟件,會(huì)大大縮短開(kāi)發(fā)周期,且明顯地增加軟件的可讀性,便于改進(jìn)和擴(kuò)充,從而研制出規(guī)模更大、性能更完備的系統(tǒng)。三個(gè)下位機(jī)系統(tǒng)的構(gòu)成完全相同主要有AT89C51單片機(jī)串行通信最小系統(tǒng)、LCD1602顯示器和中斷數(shù)據(jù)加1按鈕組成。 串行通信系統(tǒng)框圖 本系統(tǒng)主要完成的功能是上位機(jī)和下位機(jī)的半雙工通信,可以通過(guò)接收/發(fā)送選擇開(kāi)關(guān)來(lái)控制上位機(jī)是處于接收狀態(tài)還是發(fā)送狀態(tài)。根據(jù)總體設(shè)計(jì)方案框圖,總系統(tǒng)由4個(gè)分系統(tǒng)組成,1個(gè)上位機(jī)系統(tǒng),3個(gè)下位機(jī)系統(tǒng)。功能強(qiáng)大AT89C51單片機(jī)可提供許多高性?xún)r(jià)比的應(yīng)用場(chǎng)合,可靈活應(yīng)用于各種控制領(lǐng)域。(4)程序計(jì)數(shù)器PC,是獨(dú)立的16位專(zhuān)用寄存器,內(nèi)容為將要執(zhí)行的指令地址。(8)2個(gè)16位定時(shí)器/計(jì)數(shù)器。GND(20):接地端。作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流(IIL)。P3口:是一組帶有內(nèi)部上拉電阻的8位雙向I/O口,P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門(mén)電路。(4)控制線引腳RST(9):復(fù)位輸入端。(29):外部ROM讀選通信號(hào)。當(dāng)保持高電平時(shí),先訪問(wèn)片內(nèi)ROM,當(dāng)PC的值超過(guò)4KB時(shí),自動(dòng)轉(zhuǎn)向執(zhí)行片外ROM中的程序。1602液晶模塊帶標(biāo)準(zhǔn)字庫(kù),內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM)已經(jīng)存儲(chǔ)了160個(gè)57點(diǎn)陣字符圖形,32個(gè)510點(diǎn)陣字符圖形。1602采用標(biāo)準(zhǔn)的16引腳接口,其功能如表3所示。 1602引腳圖 表3 1602引腳使用說(shuō)明編號(hào)符號(hào)引腳說(shuō)明使用方法1VSS電源地2VDD電源3V0對(duì)比度信號(hào)調(diào)整端外接分壓電阻,調(diào)節(jié)屏幕亮度4RS數(shù)據(jù)/命令選擇端RS=1時(shí)選擇數(shù)據(jù)寄存器,RS=0時(shí)選擇指令寄存器5RW讀/寫(xiě)選擇端RW=1時(shí)執(zhí)行讀操作,RW=0時(shí)執(zhí)行寫(xiě)操作6E使能信號(hào)端高電平使能714D0D7數(shù)據(jù)I/O雙向數(shù)據(jù)輸入與輸出15BLA背景光源正極接到或通過(guò)10Ω左右電阻接到VDD16BLK背景光源負(fù)極接到VSS對(duì)1602顯示字符控制,通過(guò)訪問(wèn)1602內(nèi)部RAM地址實(shí)現(xiàn),1602內(nèi)部控制具有80 字節(jié)RAM。具體的電路模塊設(shè)計(jì)說(shuō)明將在本文第六部分AT89C51最小系統(tǒng)的外圍電路中詳細(xì)介紹,在此不再累述。原理圖中所有器件及其標(biāo)稱(chēng)值、數(shù)量和代號(hào)如表5所示。單擊菜單欄中的“FILE/NEW DESIGN”,(Create New Design)對(duì)話框。單擊“System/Set Sheet Size”,,選擇“User(自定義)”復(fù)選框,定義長(zhǎng)為16in,寬位8in,點(diǎn)擊“OK”。同樣的方法把原理圖中的其他器件放入對(duì)象選擇器中,以備畫(huà)原理圖時(shí)調(diào)用。單擊自動(dòng)布線圖標(biāo) ,自動(dòng)布線有效,根據(jù)原理圖中器件的接線,單擊要連線的起點(diǎn)和終點(diǎn),系統(tǒng)便會(huì)自動(dòng)以直角走線,成連線。在字符名稱(chēng)后中輸入網(wǎng)絡(luò)標(biāo)號(hào)“L0”,單“OK”即可完成“L0網(wǎng)絡(luò)編號(hào)”。 電氣檢測(cè)結(jié)果對(duì)于串行通信原理圖中的每一個(gè)元器件,都有對(duì)應(yīng)的編號(hào)。至此完成了仿真原理圖的繪制工作,完整的原理圖見(jiàn)附件一。本系統(tǒng)的程序采用C51模塊化程序編寫(xiě),主要包括串行通信初始化、L
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1