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

正文內(nèi)容

基于單片機的串口通信模塊設(shè)計-資料下載頁

2025-06-26 17:23本頁面
  

【正文】 ) T0(記時器0外部輸入) T1(記時器1外部輸入) /WR(外部數(shù)據(jù)存儲器寫選通) /RD(外部數(shù)據(jù)存儲器讀選通) P3口同時為閃爍編程和編程校驗接收一些控制信號。RST:復(fù)位輸入。當振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。 ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。 /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。/EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000HFFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。XTAL2:來自反向振蕩器的輸出。存儲器結(jié)構(gòu):MCS51 單片機內(nèi)核采用程序存儲器和數(shù)據(jù)存儲器空間分開的結(jié)構(gòu),均具64KB外部程序和數(shù)據(jù)的尋址空間。程序存儲器:如果EA引腳接地(GND),全部程序均執(zhí)行外部存儲器。在AT89S51,假如EA 接至Vcc(電源+),程序首先執(zhí)行地址從0000H-0FFFH (4KB)內(nèi)部程序存儲器,再執(zhí)行地址為1000H-FFFFH (60KB)的外部程序存儲器。數(shù)據(jù)存儲器:AT89S51的具128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或間接尋址方式訪問,堆棧操作可利用間接尋址方式進行,128字節(jié)均可設(shè)置為堆棧區(qū)空間。I/O口引腳:a:P0口,雙向8位三態(tài)I/O口,此口為地址總線(低8位)及數(shù)據(jù)總線分時復(fù)用;b:P1口,8位準雙向I/O口;c:P2口,8位準雙向I/O口,與地址總線(高8位)復(fù)用;d:P3口,8位準雙向I/O口,雙功能復(fù)用口。振蕩器特性:AT89S52一個用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2 分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器。外接石英晶體(或陶瓷諧振器)及電容Cl、C2 接在放大器的反饋回路 構(gòu)成并聯(lián)振蕩電路。對外接電容Cl、C2 雖然沒 十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程序及溫度穩(wěn)定性。如果使用石英晶體,我們推薦電容使用30pF177。10pF,而如使用陶瓷諧振器建議選擇40pF 177。10pF。用戶也可以采用外部時鐘。這種情況下,外部時鐘脈沖接到XTAL1端,即內(nèi)部時鐘發(fā)生器的輸入端,XTAL2則懸空。由于外部時鐘信號是通過一個2分頻觸發(fā)器后作為內(nèi)部時鐘信號的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)條件的要求。XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅(qū)動器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。芯片擦除:整個EPROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。此外,AT89C52設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個硬件復(fù)位為止。Flash 閃速存儲器的并行編程AT89C52單片機內(nèi)部8k字節(jié)的可快速編程的Flash存儲陣列。編程方法可通過傳統(tǒng)的EPROM編程器使用高電壓(+12V)和協(xié)調(diào)的控制信號進行編程。AT89C52的代碼是逐一字節(jié)進行編程的。 編程方法:編程前,須設(shè)置好地址、數(shù)據(jù)及控制信號,AT89C51 編程方法如下: 1.在地址線上加上要編程單元的地址信號。2.在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。3.激活相應(yīng)的控制信號。4.將EA /Vpp 端加上+12V 編程電壓。5.每對Flash 存儲陣列寫入一個字節(jié)或每寫入一個程序加密位,加上一個ALE /PROG編程脈沖。每個字節(jié)寫入周期是自身定時的,大多數(shù)約為50us。改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)1-5 步驟,直到全部文件編程結(jié)束。 單片機最小系統(tǒng)設(shè)計采用AT89C52單片機構(gòu)成了控制系統(tǒng)的核心,其基本模塊就主要包括復(fù)位電路和晶體震蕩電路。在本設(shè)計當中,單片機的P 0口、P 1口、P 2口、P 3口全部參與系統(tǒng)工作,: 單片機最小系統(tǒng)圖CH341T提供全速USB設(shè)備接口,外圍器件只需要電容和晶體,電路如附錄A所示。其中,電源電壓為5V,USB接口的差分數(shù)據(jù)線對與CH341T的UD和UD+直接相連。CH341T提供TTL電平,同AT89C51直接采用簡單的3線連接(RXD—TXD。TXD—RXD。GND—GND)。在5V電源的情況下。TEN為串口發(fā)送數(shù)據(jù)使能端,低電平有效。CH341T必須使用12Mhz晶振,否則無法正常工作。為保證單片機能夠產(chǎn)生與計算機匹配的波特率。在網(wǎng)站,在確認驅(qū)動程序和硬件電路無誤后,打開驅(qū)動程序。彈出安裝對話框后選擇INSTALL,設(shè)備將自動安裝驅(qū)動程序。安裝完成后計算機將提示安裝成功。將硬件電路通過USB接口連接至計算機,計算機自動識別并彈出新硬件安裝對話框,選擇自動安裝,驅(qū)動程序即可成功安裝至計算機。在計算機設(shè)備管理器中,可顯示剛剛安裝成功的USB串口。如圖43所示。圖43 安裝完成后的設(shè)備管理器 PC機與USB通信程序設(shè)計圖44為計算機與USB通信處理流程圖。開始USB設(shè)置是否為TRUE?檢查設(shè)備是否配置調(diào)用I2cWriteRead()。發(fā)送數(shù)據(jù)接收數(shù)據(jù)結(jié)束處理USB Setup包圖44計算機與USB通信處理流程圖部分關(guān)鍵代碼如下:void main(void){ init_port()。 /*初始化I/O口*/ init_timer0()。 /*設(shè)置定時器0*/ init_special_interrupts()。 /*設(shè)置中斷*/// D12_DATA = 0xfb02。 /*定義數(shù)據(jù)地址*/// D12_COMMAND = 0xfb03。 /*定義命令地址*/ D12_DATA = 0x7002。 /*定義數(shù)據(jù)地址*/ D12_COMMAND = 0x7003。 /*定義命令地址*/ D12_SetDMA(0x0)。 /*不使用DMA功能*/ = 0。 /*初始化USB寄存器*/ /*上電復(fù)位,USB總線重新連接指令 */ reconnect_USB()。 while(TRUE ) { if() { I2cWriteRead()。/*如果設(shè)備已配置,調(diào)用I2cWriteRead()*/ }outportb(port,a)。 /*發(fā)送數(shù)據(jù)usbserve()。/*處理USB的setup包*/for(j=0。j9。j++) /*接收數(shù)據(jù)*/ { while(!(inportb(port+5)amp。1))。 ch[j]=inportb(port)。 } for(j=0。j9。j++) printf(n %d\n,ch[j])。 getch()。 break。 } 為實現(xiàn)單片機同PC機的簡單通信功能,需要通過匯編指令使單片機完成一定的工作來驗證USB接口通信的暢通。若要使單片機串口能夠同PC機正常通信,單片機和USB接口需要使用相同的通信協(xié)議,在設(shè)備管理器中,可設(shè)置串口破特率為9600。而在單片機中,通過軟件設(shè)置串口波特率為9600,工作方式為方式一,每接收一個8 位數(shù)據(jù),將數(shù)據(jù)保存并回送至計算機,以此來實現(xiàn)對USB通信暢通與否的測試。程序流程圖如圖46所示。開始設(shè)定定時器和USB工作方式開中斷 等待中斷中斷產(chǎn)生接收數(shù)據(jù)關(guān)中斷回送數(shù)據(jù)開發(fā)送中斷等待數(shù)據(jù)接收完成返回初始狀態(tài)圖46 單片機的程序流程圖根據(jù)程序流程圖,單片機的指令代碼如下:ORG DDOOHSTART:MOV TMOD,20H。定時器T1為方式2MOV TL1,DFDH。波特率為9600SETB TR1MOV SCON,50H。串口工作方式1,REN=1SETB ESSETB EA。開中斷SJMP $。等待中斷ORG 0023H。中斷入口地址JNB BI,SBR。RI為1時跳至發(fā)送,為0時說明發(fā)送已完成AJMP START。返回初始狀態(tài),等待下一次數(shù)據(jù)接收,實現(xiàn)數(shù)據(jù)的循環(huán)接收SBR:AJMP SBR1ORG 0100HSBR1:CLR RIMOV A,ABUF。接收數(shù)據(jù)MOV B1,AMOV SBUF,A。數(shù)據(jù)回送JNB T1,$CLR T1 USB通信模塊調(diào)試USB通信模塊的調(diào)試使用串口調(diào)試工具(ComTools),該工具是一款功能強大的串口調(diào)試免費軟件。其主要功能如下:(1)支持COM1—COM8 串口的數(shù)據(jù)發(fā)送和接收,可重復(fù)發(fā)送和接收數(shù)據(jù);(2)支持HEX 格式數(shù)據(jù)和ASC 格式數(shù)據(jù)的串口發(fā)送和接收;(3)可自定義數(shù)據(jù)格式,校驗位,可自定義數(shù)據(jù)傳輸速率;(4)可自動記錄發(fā)送和接收的數(shù)據(jù)并保存。使用串口調(diào)試工具可以方便的通過計算機向USB 串口通信模塊發(fā)送數(shù)據(jù)并記錄所接收的數(shù)據(jù)。因此,本次USB 通信模塊的調(diào)試使用該串口調(diào)試工具完成PC 機同單片機的通信。打開串口調(diào)試工具。首先選擇串口設(shè)置,設(shè)置串口為設(shè)備管理器中對應(yīng)的串口(COM1),設(shè)置波特率為9600,數(shù)據(jù)長度為8 位,停止位為1 位。在發(fā)送文本框中輸入2 字節(jié)16 進制數(shù)據(jù),點擊發(fā)送向串口發(fā)送16 進制8 位數(shù)據(jù)。觀察接收文本框,可以發(fā)現(xiàn),計算機成功接收到單片機回送的8 位數(shù)據(jù)。在清空發(fā)送文本框后,經(jīng)過多次的重復(fù)操作觀察確認,每一次都能正確接收數(shù)據(jù)。為了進一步測驗系統(tǒng)的穩(wěn)定性,在拔掉USB 通信模塊后重新插入,計算機能夠自動識別串口,重新打開串口調(diào)試工具后仍然能夠正確的發(fā)送和接收。因此,該USB通信模塊的數(shù)據(jù)準確性和系統(tǒng)的穩(wěn)定性都得到了驗證。通過測試,該USB通信模塊基本能達到如下設(shè)計要求:(1)通過USB 接口實現(xiàn)串口通信,能夠在USB 接口上完成以往需要使用RS232(DB9)進行通信的計算機設(shè)備的通信;(2)支持熱插拔,驅(qū)動程序一次安裝即可永久使用,不必在每次插拔后重啟計算機;(3)硬件電路簡單,外圍器件少,制作方便,成本低廉;(4)可移植性強,支持絕大多數(shù)型號的單片機;可擴充性好,用戶可根據(jù)需要擴充各種功能,可自定義廠商ID 和產(chǎn)品序列號。 5 總結(jié)串行通信端口在系統(tǒng)控制的范疇中一直占據(jù)著及其重要的地位,它不僅沒有因為時代的進步而遭淘汰,反而在規(guī)格上越來越完善,應(yīng)用也越來越廣泛。作為一種基本而又靈活方便的通信方式,串口通信被廣泛應(yīng)用于PC與PC或者PC與單片機之間的數(shù)據(jù)交換以及其他工業(yè)控制與自動控制中。隨著單片機和微機技術(shù)的不斷發(fā)展,由PC機和多臺單片機構(gòu)成的多機網(wǎng)絡(luò)監(jiān)控系統(tǒng)已成為單片機技術(shù)發(fā)展的一個方向。它結(jié)合了單片機在實時數(shù)據(jù)采集和微機對圖形處理、顯示的優(yōu)點。同時,Windows環(huán)境下后臺微機在數(shù)據(jù)庫管理上具有明顯的優(yōu)勢,二者結(jié)合,使得單片機的應(yīng)用已不僅僅局限于傳統(tǒng)意義上的自動監(jiān)測或控制,而形成了向以網(wǎng)絡(luò)為核心的分布式多點系統(tǒng)發(fā)展的趨勢。隨著計算機技術(shù)尤其是單片微型機技術(shù)的發(fā)展,人們已越來越多地采用單片機來對一些工業(yè)控制系統(tǒng)中如溫度、流量和壓力等參數(shù)進行檢測和控制。PC機具有強大的監(jiān)控和管理功能,而單片機則具有快速及靈活的控制特點,通過PC機的RS232串行接口與外部設(shè)備進行通信,是許多測控系統(tǒng)中常用的一種通信解決方案。但是USB接口逐步取代RS232(DB9)串口已是大勢所趨,單片機同計算機的USB通信在實際工作中的應(yīng)用范圍也將越來越廣。本文所介紹的單片機和PC機的USB通信方法,具有電路簡單,兼容性好,可移植性強等特點,故可作為單片機同計算機的USB通信模塊廣泛應(yīng)用于工業(yè)和電子產(chǎn)品的開發(fā)中。附錄A 硬件原理圖附錄B PCB圖參考文獻[1] [N].道客巴巴期刊論文,2007.[2]惠玥琳,基于單片機的USB主從機設(shè)計與實現(xiàn)[D].電子科技大學,2007年.[3] [M].北京:清華大學出版社,2003.[4]王紹偉,[N].科技創(chuàng)新導(dǎo)報,2009.[5]王偉,鄭金奎,MCS51單片機主從式多
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1