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

正文內(nèi)容

單片機(jī)串口通信設(shè)計方案-在線瀏覽

2025-06-12 13:37本頁面
  

【正文】 移位寄存器的數(shù)據(jù)串行移位輸出;接收時,在接收時鐘的作用下將通信線上傳來的數(shù)據(jù)串行移入移位寄存器。為了提高采樣的分辨率,準(zhǔn)確地測定數(shù)據(jù)位的上升沿或下降沿,時鐘頻率總是高于波特率若干倍,這個倍數(shù)稱為波特率因子。此時波特率由決定,稱為固定方式頻率方式;也可由單片機(jī)內(nèi)部定時器T1產(chǎn)生,T1工作于自動再裝入8位定時方式(方式2)。當(dāng)然,也可以用用T2作為波特率發(fā)生器[7]。發(fā)送、接收數(shù)據(jù)可以通過查詢或中斷方式處理,使用十分靈活,能方便的與其他計算機(jī)或串行傳送信息的外部設(shè)備(如串行打印機(jī)、CRT終端)實(shí)現(xiàn)雙機(jī)、多機(jī)通信。51單片機(jī)的串口也可以作為同步移位寄存器。其中:方式0,為同步移位寄存器方式,一般用于外接移位寄存器芯片擴(kuò)展I/O接口;方式1,是8位的異步通信方式,通常用于雙機(jī)通信。不同的工作方式,其波特率不一樣,方式0和方式2的波特率直接由系統(tǒng)時鐘產(chǎn)生,方式1和方式3的波特率由定時器/計數(shù)器T1或T2的溢出頻率決定[7]。當(dāng)CPU向SBUF寫數(shù)據(jù)時對應(yīng)的是發(fā)送數(shù)據(jù)寄存器;當(dāng)CPU讀SBUF時,對應(yīng)的是接收數(shù)據(jù)寄存器。根據(jù)對其寫控制字決定工作方式,從而決定波特率發(fā)生器的時鐘來自系統(tǒng)時鐘還是來自定時器T1或T2。51單片機(jī)的串行口正是通過對上述專用寄存器的設(shè)置、檢測與讀寫來管理串行通信的。輸入數(shù)據(jù)先逐位進(jìn)入輸入移位寄存器,再送入接收SBUF,在此采用了雙緩沖結(jié)構(gòu),這是為了避免在接收到第二幀數(shù)據(jù)之前,CPU未及時響應(yīng)接收器的前一幀的中斷請求而把前一幀數(shù)據(jù)讀走,造成兩幀數(shù)據(jù)重疊的錯誤。TI和RI為發(fā)送和接收中斷標(biāo)志,無論哪個為1,只要中斷允許,都會引起中斷[8]。 51單片機(jī)串行傳送示意圖發(fā)送數(shù)據(jù)時,當(dāng)執(zhí)行一條向SBUF寫入數(shù)據(jù)時把數(shù)據(jù)寫入串口發(fā)送數(shù)據(jù)寄存器,就啟動發(fā)送過程。在發(fā)送時鐘控制下,先發(fā)送一個低電平的起始位,緊接著把A中的數(shù)據(jù)送入SBUF,在發(fā)送控制器的控制下,按設(shè)定的波特率,每來一個移位時鐘,數(shù)據(jù)移出移一位,由低位到高位一位一位發(fā)送到電纜線上,移出的數(shù)據(jù)位通過電纜線直達(dá)乙機(jī)。一個字符發(fā)送完畢,串行口控制寄存器中的發(fā)送中斷標(biāo)志位T1置位。乙機(jī)按設(shè)定的波特率,每來一個移位時鐘及移入一位,由低位到高位一位一位移入到SBUF。因此,兩邊的波特率必須一致。作為接受方的乙機(jī),需預(yù)先設(shè)置位REN(),即允許接收。為了減少干擾的影響,接收控制器在接收數(shù)據(jù)時,將一位的傳送時間分成16等分,用當(dāng)中的9三個狀態(tài)對接收數(shù)據(jù)線進(jìn)行采樣,三次采樣當(dāng)中,當(dāng)兩次采樣為低電平時,就認(rèn)為接收的是“0”,兩次采樣為高電平,就認(rèn)為接收是“1”。甲方的數(shù)據(jù)按設(shè)定的波特率由地位到高位順序進(jìn)入乙機(jī)的移位寄存器。該位可作為查詢標(biāo)志,如果設(shè)置為允許中斷,將引起接收中斷,乙機(jī)的CPU可通過讀SBUF(MOV A,SBUF),將幀數(shù)據(jù)讀入,從而完成了一幀數(shù)據(jù)的傳送。 51系列單片機(jī)多機(jī)通信多機(jī)應(yīng)用是指在一個系統(tǒng)中用到了多塊單片機(jī)。這時整個系統(tǒng)分成了多個子系統(tǒng),每個子系統(tǒng)是一個單片機(jī)系統(tǒng),用于完成本系統(tǒng)的工作,即從上級主機(jī)接收信息,并發(fā)送信息給上級主機(jī)。通過51單片機(jī)串口能夠?qū)崿F(xiàn)一臺主機(jī)與多臺從機(jī)進(jìn)行通信,主機(jī)和從機(jī)之間能夠相互發(fā)送和接收信息。單片機(jī)串行多機(jī)通信必須使用串口模式2和模式3。主機(jī)在發(fā)送信息時,依靠TB8標(biāo)志位來區(qū)分發(fā)送的信息為地址信息還是數(shù)據(jù)信息。從機(jī)主要依靠SM2標(biāo)志位的設(shè)置來實(shí)現(xiàn)對主機(jī)的響應(yīng)。當(dāng)SM2=0時,無論接收的是地址幀TB8=1還是數(shù)據(jù)幀RB8=0,接收都有效,RI都置1。處理時,地址信息的TB8位設(shè)為1,數(shù)據(jù)信息的TB8位設(shè)為0。4. 主機(jī)發(fā)送控制指令和數(shù)據(jù)給從機(jī),此時一幀數(shù)據(jù)的第9位TB8=0。6. 主機(jī)繼續(xù)發(fā)送其它地址幀,與其它從機(jī)進(jìn)行通信。本系統(tǒng)的通信協(xié)議作如下規(guī)定:主機(jī)的控制命令:01H表示主機(jī)請求從機(jī)接收數(shù)據(jù);02H表示主機(jī)請求從機(jī)發(fā)送數(shù)據(jù)。從機(jī)的地址定義在00H到FEH之間,即系統(tǒng)中最多允許連接255個從機(jī)。按照上面的協(xié)議規(guī)定:主機(jī)首先發(fā)送地址幀,被尋址的從機(jī)向主機(jī)回送本地地址。若主機(jī)判斷狀態(tài)正常,即開始發(fā)送或接收數(shù)據(jù),后面緊跟的便是數(shù)據(jù),若主機(jī)判斷不正常,需要重新聯(lián)系。 模塊化方案比較與選擇根據(jù)51單片機(jī)的串行通信的特點(diǎn),進(jìn)行了以下系統(tǒng)設(shè)計的方案比較與選擇。其結(jié)構(gòu)典型、總線完善、SFR集中管理,并且具有豐富的位操作系統(tǒng)和面向控制功能的指令系統(tǒng)[11]。方案二: 采用AT89C51芯片作為硬件核心,AT89系列機(jī)是ATMEL公司將先進(jìn)的Flash存儲器技術(shù)和Intel 80C51單片機(jī)相結(jié)合的產(chǎn)物,是與MCS51系列兼容的Flash單片機(jī)系列。AT89C51是AT89系列的標(biāo)準(zhǔn)型單片機(jī),是低功耗高性能的8位單片機(jī),使用的最高晶振頻率為24MHz。因此,采用該單片機(jī)作為主控制系統(tǒng)的芯片。方案二:采用點(diǎn)陣式數(shù)碼管顯示,點(diǎn)陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對于顯示文字比較適合,如采用在顯示數(shù)字顯得太浪費(fèi),且價格也相對較高,所以也不用此種作為顯示。由于本系統(tǒng)主機(jī)顯示4個數(shù)據(jù),從機(jī)顯示2個數(shù)據(jù),選擇的液晶顯示器皆可,所以在此設(shè)計中采用LCD1602液晶顯示屏。其主要優(yōu)點(diǎn)是占用資源少、程序執(zhí)行效率高。因此本系統(tǒng)軟件不采用匯編語言編寫。其優(yōu)點(diǎn)是可讀性好,移植容易,是普遍使用的一種計算機(jī)語言。缺點(diǎn)是占用資源較多,執(zhí)行效率沒有匯編高。本系統(tǒng)是由一個上位機(jī)系統(tǒng)和三個下位機(jī)系統(tǒng)構(gòu)成,上位機(jī)系統(tǒng)是由AT89C51單片機(jī)串行通信最小系統(tǒng)、LCD1602顯示器、中斷發(fā)送信號按鈕和接收/發(fā)送選擇開關(guān)組成。單片機(jī)最小系統(tǒng)是控制系統(tǒng)的核心,LCD1602液晶顯示器作為串行通信接收/發(fā)送數(shù)據(jù)以及單片機(jī)狀態(tài)的顯示。下位機(jī)系統(tǒng)始終處于串行中斷狀態(tài),是接收還是發(fā)送數(shù)據(jù)由上位機(jī)發(fā)送的控制命令決定。當(dāng)處于接收狀態(tài)時,主機(jī)循環(huán)接收下位機(jī)00、002三機(jī)的實(shí)時數(shù)據(jù),并進(jìn)行顯示;當(dāng)處于發(fā)送狀態(tài)時,主機(jī)將接收到的三機(jī)數(shù)據(jù)按從大到小的數(shù)據(jù)排列,然后依次發(fā)送到00、01和02機(jī)上,并進(jìn)行顯示。本章介紹了系統(tǒng)的方案選擇,主要對單片機(jī)串行通信的相關(guān)知識進(jìn)行了歸納整理和工作方式選擇,以及模塊化方案的比較與選擇,最后確定了串行通信控制系統(tǒng)要實(shí)現(xiàn)的功能并繪制了系統(tǒng)框圖。硬件主要由AT89C51微控制器、LCD1602液晶顯示器、開關(guān)和按鈕組成。 AT89C51的主要特點(diǎn)AT89C51是美國ATMEL公司生產(chǎn)的低電壓,高性能CMOS的 8位單片機(jī),采用單一+5V電源供電,片內(nèi)含4KB的可反復(fù)擦寫的只讀程序存儲器(PEROM)和128B的隨機(jī)存取數(shù)據(jù)存儲器(ROM),器件采用ATMEL公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS51指令系統(tǒng),片內(nèi)置通用8位中央處理器(CPU)和Flash存儲單元。AT89C51的主要部件:(1)一個以ALU為中心的8位中央處理器,完成運(yùn)算和控制功能。(3)21個特殊功能寄存器,離散分布于地址80HFFH中。(5)4KB Flash內(nèi)部程序存儲器(片內(nèi)ROM),用來存儲程序、原始數(shù)據(jù)、表格等。(7)一個UART串行通信口。(9)5個中斷源,兩個中斷優(yōu)先級的中斷控制系統(tǒng)。AT89C51的極限參數(shù)如表1所示:表1 AT89C51的極限參數(shù):工作溫度55℃到+125℃儲藏溫度65℃到+150℃任一引腳對地電壓+最高工作電壓直流輸出電流 ,其引腳說明如下:(1)電源引腳Vcc(40):接DC電源端,Vcc=+5V。(2)P0P3引腳P0口:是一組8位漏極開路型雙向I/O,也即地址/數(shù)據(jù)總線復(fù)用口。P1口:是一個帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。 AT89C51雙列直插式引腳圖P2口:是一個帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個TTL邏輯門電路。作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流(IIL)。作輸入端時,被外部拉低的P3口將用上拉電阻輸出電流(IIL)。XTAL2(18):振蕩器放大器的輸出端。此引腳出現(xiàn)至少兩個機(jī)器周期的高電平,將單片機(jī)復(fù)位。對Flash存儲器編程期間,該引腳用于輸入編程脈沖。當(dāng)AT89C51由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次有效,即輸出兩個脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,這兩次有效的信號不出現(xiàn)。為片內(nèi)外ROM選擇端。當(dāng)保持低電平時,只訪問片內(nèi)ROM。 LCD1602液晶顯示器模塊1602是一款常用的字符型液晶,可顯示2行16個字符。這些字符有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號、和日文假名等。比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時,只要將41H存入顯示數(shù)據(jù)存儲器DDRAM即可,液晶自動將地址41H中的中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A”。其中8位數(shù)據(jù)總線D0D7和RS、R/W、EN三個控制端口,個分解時序操作速度支持到1MHz,并且?guī)в凶址麑Ρ榷日{(diào)節(jié)和背光。1602LCD主要技術(shù)參數(shù):顯示容量:162個字符、芯片工作電壓:—、工作電流:()、模塊最佳工作電壓:、字符尺寸:(WH)mm。 1602的RAM地址與字符位置對應(yīng)關(guān)系1602的讀/寫操作,即顯示控制,是通過控制指令實(shí)現(xiàn)的,控制指令如表4所示[7][14]。但是在Proteus ISIS仿真環(huán)境中AT89C51微控制器和LCD1602的外圍電路可以不加,通過屬性設(shè)置對話框可以直接設(shè)置AT89C51的外部晶振頻率,加載程序即可實(shí)現(xiàn)仿真。本節(jié)主要介紹如何在Porteus ISIS環(huán)境中進(jìn)行原理圖繪制和原理圖電氣檢測。上位機(jī)系統(tǒng)接收/。表 5 元器件列表序號名稱標(biāo)稱數(shù)量代號1電阻470Ω7RRRRRRR72電阻10KΩ4RRRR313電容22pF8CCCCCCCC114電容100uF4CCCC125單片機(jī)AT89C514UUUU46液晶顯示器LM061L4LCDLCDLCDLCD478引腳排阻RESPACK84RPRPRPRP48晶振12M4XXXX4 基于Proteus ISIS系統(tǒng)原理圖設(shè)計Proteus ISIS 原理圖設(shè)計是具智能性和人性化的設(shè)計,過程簡明高效。本系統(tǒng)的原理圖繪制過程如下[3][12]: ISIS圖標(biāo) ,進(jìn)入ISIS窗口,: ISIS 窗口ISIS主要包括:菜單欄、工具欄、對象預(yù)覽窗口、編輯區(qū)、器件選擇按鈕、對象選擇器、仿真按鈕、方位控制按鈕、狀態(tài)欄等。單擊“OK”按鈕,則以默認(rèn)的模板(DEFAULT)建立一個新的空白文件。根據(jù)設(shè)計串行通信原理圖的大小,默認(rèn)的A4的原理圖紙不能滿足設(shè)計的要求,需要對圖紙的大小重新設(shè)置。 圖紙大小設(shè)置窗口“P”按鈕。從列表中選中AT89C51行后,再雙擊,便將AT89C51選入對象選擇器中。 元器件選擇框 選取元件按鈕,即可將元器件AT89C51放置在原理圖編輯區(qū)中。 放置AT89C51 對象選擇器 、地、和輸入輸出終端單擊繪圖工具中的終端按鈕 ,在對象選擇器中單擊終端符號POWER,放置電源,單擊GROUND放置地,單擊DEFAULT放置普通端子。 原理圖連線結(jié)果 放置電源、地和端子單擊Toos /Global Anntator,,在范圍框中選擇整體設(shè)計,在模式中選擇Toal,單擊“OK”即可將原理圖中所有器件進(jìn)行編號。雙擊原理圖中的普通端 。兩個或多個相對應(yīng)端子的網(wǎng)絡(luò)標(biāo)號要相同。 網(wǎng)絡(luò)標(biāo)號結(jié)果 編輯網(wǎng)絡(luò)標(biāo)號單擊菜單欄上的“Tools/Electrical Rule Check”,彈出檢測結(jié)果窗口,結(jié)果顯示本系統(tǒng)所設(shè)計的原理圖符合電氣規(guī)則,點(diǎn)擊“另存為”保存結(jié)果。電阻、電容等還有相應(yīng)的量值。按照同樣的方法設(shè)置串行通信原理圖中其他器件的屬性。 元器件屬性對話框 設(shè)置結(jié)果本章介紹了系統(tǒng)的硬件設(shè)計,首先對串行通信控制系統(tǒng)的核心器件AT89C51單片機(jī)與LCD1602液晶顯示器作了簡單介紹。最后,著重介紹在具智能性、人性化和過程簡明高效的Proteus ISIS編輯環(huán)境中進(jìn)行本系統(tǒng)電路原理圖的繪制過程。 為了使程序易于編寫和移植以及具有可讀行,結(jié)合本系統(tǒng)的功能特點(diǎn),模塊化子程序包括多機(jī)通信初始化程序、LCD液晶顯示模塊程序、 硬件接口定義模塊等部分組成。本系統(tǒng)的串行通信工作方式選擇模式3,模式3為11位異步發(fā)送接收方式。本系統(tǒng)的波特率設(shè)置為4800比特/秒,波特率倍增位置1,單片機(jī)的時鐘頻率=12MHz。代入下列公式得計數(shù)初值 。 //控制字001000,定時器T1工作于方式2作為波特率發(fā)生器 TL1=0xf3。 PCON=0x80。 SCON=0xd8。 //允許使用外中斷 IT0=1。 //CPU開總中斷 } LCD液晶顯示模塊程序本系統(tǒng)程序中包含“”和“”兩個文件,具體內(nèi)容見附件二,程序中包括了LCD1602液晶顯示器初始化程序和所有功能編程函數(shù),在需要顯示的時候,只需根據(jù)顯示要求,調(diào)用相應(yīng)的功能函數(shù),并加以修改相應(yīng)的參數(shù)即可完成數(shù)據(jù)、字符或圖形的顯示。其數(shù)據(jù)轉(zhuǎn)化函數(shù)如下:void DispTable( unsigned int t){ unsigned char a[5]。 //定義一個變量k a[0]=(t/10000)%10。 //取數(shù)據(jù)轉(zhuǎn)化成BCD后的十位到數(shù)組a[1] a[2]=(t/100)%10。 //取數(shù)據(jù)轉(zhuǎn)化成BCD后的千
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1