基于單片機的模擬鼠標設計【畢業(yè)論文】_第1頁
已閱讀1頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p><b>  本科畢業(yè)設計</b></p><p><b> ?。?0 屆)</b></p><p>  基于單片機的模擬鼠標設計</p><p>  所在學院 </p><p>  專業(yè)班級 電子信息工程

2、 </p><p>  學生姓名 學號 </p><p>  指導教師 職稱 </p><p>  完成日期 年 月 </p><p><b>  摘 要</b></p

3、><p>  鼠標自1968年誕生以來,已經(jīng)經(jīng)歷了將近四十多年的演變與發(fā)展。從早期的機械滾輪鼠標到目前主流的光電鼠標再到中高端的激光鼠標。每一次的變革無不給用戶帶來使用上的快感。隨之而來的是用戶對鼠標的要求也越來越高。于是一款無電線束縛的無線鼠標也就誕生了。本文將介紹一種基于89C51單片機、2.4G無線模塊以及一塊具有觸屏功能的2.8寸液晶組成的無線模擬鼠標設計。該設計是通過觸摸液晶屏效果從而實現(xiàn)鼠標功能的。實驗結

4、果表明:該方案設計的無線鼠標具有良好的靈敏度和可靠性,可完成無線鼠標的基本功能,且通信距離可達到5M-10M。本文將就該課題方案的硬件設計和軟件設計進行系統(tǒng)的描述。</p><p>  關鍵詞:單片機;無線模塊;液晶</p><p><b>  Abstract</b></p><p>  Mouse was born in 1968, It

5、has gone through nearly forty years of evolution and development. From the early mechanical wheel mouse to the current mainstream optical mouse then to high-end laser mouse. Each change gave users the pleasure of use. Fo

6、llowed by a mouse users demand more and more. So a wireless mouse without wires tied born. This article introduces the design of based on 89C51 microcontroller , 2.4G wireless module and touch screen functionality with a

7、 2.8 inch LCD wireless mouse. The</p><p>  Key Words: microcontroller; wireless module; LCD</p><p><b>  目 錄</b></p><p><b>  1引言4</b></p><p>&l

8、t;b>  2 總體設計2</b></p><p>  2.1觸屏式液晶2</p><p>  2.2無線傳輸模塊3</p><p><b>  2.3接口協(xié)議3</b></p><p><b>  3 硬件設計4</b></p><p>  

9、3.1單片機發(fā)射系統(tǒng)4</p><p>  3.2 單片機接收系統(tǒng)5</p><p>  3.3 可觸屏式液晶模塊4</p><p>  3.3.1 ADS7843芯片簡介5</p><p>  3.3.2 ADS7843液晶與單片機接口電路6</p><p>  3.4無線傳輸模塊7</p>

10、<p>  3.5 接口協(xié)議模塊9</p><p>  3.5.1 PDIUSBD12簡介9</p><p>  3.5.2 USB接口連接電路10</p><p>  4 軟件設計錯誤!未定義書簽。</p><p>  4.1主程序部分錯誤!未定義書簽。</p><p>  4.2液晶數(shù)據(jù)采集

11、部分錯誤!未定義書簽。</p><p>  4.2.1 ADS7843初始化設置12</p><p>  4.2.2 數(shù)據(jù)的采集12</p><p>  4.3 2.4G無線模塊初始化設置14</p><p>  4.4 USB協(xié)議類設置14</p><p>  4.4.1 USB中斷處理函數(shù)15</

12、p><p>  4.4.2 USB標準請求錯誤!未定義書簽。</p><p>  4.4.2 描述符錯誤!未定義書簽。</p><p>  5 系統(tǒng)調(diào)試17</p><p>  5.1觸摸屏坐標數(shù)據(jù)采集18</p><p>  5.2 無線模塊調(diào)試19</p><p>  5.3 USB

13、協(xié)議類18</p><p><b>  6 結論21</b></p><p><b>  致 謝20</b></p><p><b>  參考文獻21</b></p><p>  附錄1 系統(tǒng)實物圖錯誤!未定義書簽。</p><p>  

14、附錄2畢業(yè)設計作品說明書22</p><p><b>  1 引言</b></p><p>  USB作為普通鼠標的一般接口,在如今的個人計算機上已經(jīng)是必不可少的組成部分??傊?,只要是與計算機通信的外部設備,似乎都可以用USB來連接,這就足見USB的強大。而USB之所以使用得如此廣泛,得益于它具有連接簡單、速度快、可擴展性強、支持熱插拔操作和標準統(tǒng)一等特點[1]。

15、USB協(xié)議還詳細地規(guī)定了各種參數(shù)以及數(shù)據(jù)結構、格式,從而使得各廠商生產(chǎn)出來的設備都能夠很好地相互兼容。而USB協(xié)議本身是一個相當龐大且復雜的系統(tǒng),具有眾多的子協(xié)議,所以學習的過程需要特別的認真、仔細。隨著科學技術的深入,有線的鼠標已經(jīng)不能滿足客戶的需求。因此,設計一款操作簡單、時尚且高效的無線鼠標變得具有實在意義。就當前主流的無線鼠標而言有27MHz無線鼠標、2.4G無線鼠標[2]和無線藍牙鼠標三類。但它們都有各種的缺點和不足,如27M

16、Hz無線鼠標的傳輸效率低,功耗大,只支持單向傳輸?shù)热秉c,而無線藍牙鼠標也因為它昂貴價格使其注定不能廣泛的普及。相比之下,2.4G無線鼠標無疑是一款理想的首選對象。它不僅傳輸效率高,功耗低,穩(wěn)定性好,而且價格也是相當?shù)膶嵒荨>C上所述比較,本次課題將采用基于USB協(xié)議的2.4G傳輸模式設計無線</p><p>  本系統(tǒng)設計性能特點有:</p><p>  無線傳輸距離:5m-10m;<

17、/p><p>  實現(xiàn)無線鼠標的基本功能;</p><p><b>  2 總體設計</b></p><p>  本方案設計的無線鼠標是以單片機為核心結合PDIUSBD12芯片的一款體積小、重量輕、且可觸屏式的無線鼠標[3]。其設計原理是通過單片機將觸摸液晶屏后產(chǎn)生的數(shù)據(jù)進行采集,將采集到的有效數(shù)據(jù)再通過2.4G無線模塊發(fā)送端發(fā)送出去,接著由2.

18、4G無線模塊接收端將接收到的數(shù)據(jù)送給單片機處理,最后由單片機將處理后的數(shù)據(jù)經(jīng)PDIUSBD12芯片送給計算機,從而實現(xiàn)基于USB的無線模擬鼠標設計[4]。系統(tǒng)總體框圖如圖2-1所示:</p><p>  圖2-1 系統(tǒng)總體框圖</p><p><b>  2.1觸屏式液晶</b></p><p>  本方案采用的液晶是一塊2.8寸的可觸屏式液

19、晶,它是由ADS7843作為觸屏的控制芯片。該觸摸屏也是最為常見的四線電阻觸摸屏[5],所謂四線電阻觸摸屏就是由兩個透明電阻膜構成,當在水平和垂直電阻網(wǎng)上施加電壓時,可通過A/D轉換面板在觸摸點上測量出電壓,從而算出對應的坐標值。ADS7843有差分(DIFFERETIAL)和單端(SINGLE-ENDED MODE)兩種工作模式[6]。如果將A/D轉換器配置成讀絕對電壓(單端模式)方式,那么驅動電壓在下降時就容易導致轉換輸入數(shù)據(jù)的錯誤

20、。進而該方案采用差分模式來實現(xiàn)可觸屏式液晶的設計。</p><p><b>  2.2無線傳輸模塊</b></p><p>  為了能使數(shù)據(jù)更快、更有效地將傳輸,2.4G無線模塊無疑是理想的首選對象。它具有無線雙向傳輸模塊且整合高頻鍵控制收發(fā)電路的功能,其中包含有先進先出(FIFO)緩沖器,來減輕微控制器的負擔,從而實現(xiàn)低成本MCU的高速數(shù)據(jù)傳輸。另外該2.4G無線模

21、塊具有快速調(diào)頻、向前糾錯、循環(huán)冗余校驗(CRC)等功能。這將大大提高數(shù)據(jù)傳輸?shù)恼_率,同時也降低了MCU的運算。</p><p><b>  2.3 接口協(xié)議</b></p><p>  為了能使單片機能與計算機很好且方便的通信,本文決定采用可支持即插即用的USB接口。目前USB協(xié)議出現(xiàn)過的版本有USB1.0、USB1.1、USB2.0等[7]。通過對USB協(xié)議的難易

22、程度和價格成本考慮,本方案決定采用USB1.1版本,它支持12Mb/s的全速模式,完全可勝任一般無線鼠標的基本要求。</p><p><b>  3 硬件設計</b></p><p>  本系統(tǒng)硬件主要有五大部分組成:單片機發(fā)射系統(tǒng)、單片機接收系統(tǒng)、可觸屏式液晶模塊、無線傳輸模塊、接口協(xié)議模塊[8]。</p><p>  3.1單片機發(fā)射系統(tǒng)

23、</p><p>  本系統(tǒng)在發(fā)射端都采用89C52系列的單片機芯片,該芯片是采用INTEL公司可靠的CHMOS工藝技術制造的的高性能8位單片機,它結合了HMOS的高速和高密度技術CHMOS的低功耗特征,89C52單片機還內(nèi)置了8位中央處理單元、256字節(jié)內(nèi)部數(shù)據(jù)存儲器RAM、8K片內(nèi)程序存儲器(ROM)、32個雙向輸入/輸出(I/O)口、3個16位定時/計數(shù)器和5個兩級中斷結構,一個全雙工串行通信口,片內(nèi)時鐘振

24、蕩電路。整個發(fā)射單片機系統(tǒng)中都含有時鐘電路、復位電路以及2.4G模塊所需的3.3V穩(wěn)壓電路組成[9],如圖3-1所示。</p><p>  圖3-1 單片機發(fā)射系統(tǒng)</p><p>  3.2單片機接收系統(tǒng)</p><p>  在單片機接收端基本采用與發(fā)射端相同的電路模塊和芯片,也包含有時鐘電路、復位電路和2.4G模塊所需的3.3V穩(wěn)壓電路,與發(fā)射系統(tǒng)有所不同的是

25、連接位置有所改變,具體引腳如圖3-2所示。</p><p>  圖3-2 單片機接收系統(tǒng)</p><p>  3.3可觸屏式液晶模塊 </p><p>  3.3.1ADS7843芯片簡介</p><p>  ADS7843是一個內(nèi)置12位模數(shù)轉換、低導通電阻模擬開關的串行接口芯片[10]。供電電壓為2.7~5V,參考電壓VREF為1V~+

26、VCC,轉換電壓的輸入范圍為0~VREF,最高轉換速率為125kHz,功能引腳如表3-1所示。</p><p>  表3-1 ADS7843功能引腳</p><p>  該芯片之所以能實現(xiàn)對觸摸屏的控制,是因為其內(nèi)部結構很容易實現(xiàn)電極電壓的切換,并能快速A/D轉換。如圖3-3所示為其內(nèi)部結構,A2~A0和SER/為控制寄存器中的控制位,用來進行開關切換和參考電壓的選擇.。</p&g

27、t;<p>  圖3-3 ADS7843內(nèi)部結構</p><p>  3.3.2 ADS7843液晶與單片機接口電路</p><p>  本方案在無線鼠標發(fā)射模塊中采用的2.8寸可觸屏式液晶的數(shù)據(jù)傳輸模式具有8位和16位兩種。因考慮到單片機端口資源不足的原因,最終決定采用8位數(shù)據(jù)傳輸模式,液晶引腳連接如圖3-4所示。圖中PL0~PL7端口為液晶顯示的據(jù)</p>

28、<p>  據(jù)端口,而以L開頭的端口名稱皆為液晶顯示的控制引腳,其余端口都為觸屏控制引腳。</p><p>  圖3-4 ADS7843與單片機接口</p><p><b>  3.3無線傳輸模塊</b></p><p>  2.4G無線模塊工作在全球免申請ISM頻道的2400-2483M范圍內(nèi),具有開機自動掃頻功能,且擁有多

29、個工作頻道,可根據(jù)不同要求在同一場合同時工作,無需人工協(xié)調(diào)、配置信道。在接收單元和遙控器單元具有自動對碼功能,以避免地址的重復。并且該模塊具有成本低、體積小、工作穩(wěn)定、產(chǎn)品性能好等特點,最高速率可達2M,可以廣泛應用在日常生活和活動中需要無線連接的場合。具體引腳連接和功能說明分別參考圖3-5與表3-2。</p><p>  圖3-5 2.4G模塊引腳</p><p>  表3-2 2.

30、4G模塊引腳功能說明</p><p>  該模塊與單片機收發(fā)系統(tǒng)的具體連接可參考圖3-2和圖3-1。</p><p>  3.4 接口協(xié)議模塊 </p><p>  3.4.1 PDIUSBD12簡介</p><p>  PDIUSBD12是一款性價比很高的USB器件,完全符合通用串口總線(USB)1.1版規(guī)范[11]。高性能USB接口器件,

31、集成了SIE、FIFO存儲器、收發(fā)器及電壓調(diào)整器,且適用大多數(shù)器件的分類規(guī)格,可通過軟件控制與USB連接,具有可編程時鐘頻率輸出,內(nèi)置上電復位和低電壓復位電路。另外PDIUSBD12還支持本地的DMA傳輸。PDIUSBD12管腳描述如表3-3所示。</p><p>  表3-3 PDIUSBD12管腳描述</p><p>  3.4.2 USB接口連接電路</p>&l

32、t;p>  PDIUSBD12是一款內(nèi)置于無線鼠標接收端的驅動控制芯片。它具有8位數(shù)據(jù)傳輸口,可與微控制器/微處理器進行高速的數(shù)據(jù)傳輸(2M字節(jié)/秒)[12],另外值得注意的是PDIUSBD12的8位數(shù)據(jù)口與89C52的P0口相連時應加上拉電阻(S2為10K的上拉電阻),因為P0口作為普通的數(shù)據(jù)口是不能輸出高電平的,其中J4是USB的接口部分,D+和D-為USB的差分數(shù)據(jù)線。具體引腳連接電路如圖3-6所示。 &

33、lt;/p><p>  圖3-6 PDIUSBD12引腳連接圖</p><p><b>  4 軟件設計</b></p><p>  本系統(tǒng)軟件部分采用的是C語言編程,圖4-1與圖4-2分別為該設計方案的發(fā)射程序流程圖和接收主流程圖。主要完成的是觸屏液晶數(shù)據(jù)的采集[13],2.4G無線模塊的收發(fā)以及單片機調(diào)用USB協(xié)議功能。</p>

34、;<p><b>  4.1主程序部分</b></p><p>  主程序主要是完成系統(tǒng)各個部分的初始化和2.4G無線模塊的參數(shù)設置等功能。其中初始化包括I/O口、液晶屏、晶振以及usb協(xié)議的初始化[14]。</p><p>  圖4-1 發(fā)射主流程圖 圖4-2 接收主流程圖 </p><

35、p>  4.2液晶數(shù)據(jù)采集部分</p><p>  液晶數(shù)據(jù)的采集是通過單片機控制ADS7843產(chǎn)生的,其軟件部分主要包括 </p><p>  ADS7843初始化設置和數(shù)據(jù)的采集。 </p><p>  4.2.1 ADS7843初始化設置</p>

36、<p>  ADS7843是觸屏液晶的是控制芯片,對其設置至關重要,ADS7843采用的是12位數(shù)據(jù)傳輸模式。參考子函數(shù)如下:</p><p>  /************初始化SPI(串行外圍設備接口)******************/</p><p>  void SPI_Init() </p><p><b>  {</

37、b></p><p><b>  DCLK = 0;</b></p><p><b>  CS = 1;</b></p><p><b>  DIN = 1;</b></p><p><b>  DCLK = 1;</b></p>&l

38、t;p><b>  CS = 0;</b></p><p><b>  }</b></p><p>  /********** ******SPI寫數(shù)據(jù)代碼********************/</p><p>  void WR_AD7843(unsigned char Dat) {</p>&

39、lt;p>  unsigned char i;</p><p><b>  DCLK = 0;</b></p><p>  for( i = 0; i < 8; i++ )</p><p><b>  {</b></p><p>  Dat <<= 1; //Dat向左移一

40、位</p><p><b>  DIN = CY;</b></p><p>  DCLK = 0; _nop_();_nop_();_nop_(); //上升沿寫數(shù)據(jù)</p><p>  DCLK = 1; _nop_();_nop_();_nop_();</p><p><b>  }</b>

41、;</p><p><b>  }</b></p><p>  4.2.2 數(shù)據(jù)采集 </p><p>  ADS7843雖然采用的是差分工作模式,但對采集到的數(shù)據(jù)的精度和可靠性并不是很高,所以在設計方案時采用了多次采集取平均值的方法,以減小有效數(shù)據(jù)的誤差。平均法采集數(shù)據(jù)參考代碼如下:</p><p>  /*****

42、**********對采集到的點取平均值********************/</p><p>  unsigned int Average( unsigned int *p) </p><p><b>  {</b></p><p>  unsigned int Max,Min,Sum = 0,Average = 0;</p>

43、;<p>  unsigned char i;</p><p>  Max = p[0];</p><p>  Min = p[0];</p><p>  for(i = 0; i < 6; i++)</p><p><b>  {</b></p><p>  if(Max&l

44、t;p[i])</p><p>  Max = p[i];</p><p>  if(Min>p[i])</p><p>  Min = p[i];</p><p>  Sum = Sum + p[i];</p><p><b>  }</b></p><p>  A

45、verage = (Sum-Max-Min)/4;</p><p>  return Average;</p><p><b>  }</b></p><p>  /*************通過外部掃描,來進行多次采集數(shù)據(jù)***********/</p><p>  void Read_AD7843()</p&

46、gt;<p><b>  {</b></p><p>  unsigned int Touch_X[6],Touch_Y[6];</p><p>  unsigned char i;</p><p>  for( i = 0; i < 6; i++)</p><p><b>  { <

47、;/b></p><p><b>  CS = 0;</b></p><p>  WR_AD7843( 0x90 ); //送控制字 10010000 即用差分方式讀X坐標 詳細請見有關資料</p><p>  DCLK=1; _nop_();_nop_();_nop_();_nop_();</p><p>  

48、DCLK=0; _nop_();_nop_();_nop_();_nop_(); //下降沿讀取</p><p>  Touch_X[i] = RD_AD7843();</p><p>  WR_AD7843( 0xD0 ); //送控制字 10010000 即用差分方式讀X坐標 詳細請見有關資料</p><p>  DCLK=1; _nop_();_nop_(

49、);_nop_();_nop_();</p><p>  DCLK=0; _nop_();_nop_();_nop_();_nop_(); //下降沿讀取</p><p>  Touch_Y[i] = RD_AD7843();</p><p><b>  CS = 1;</b></p><p><b>  

50、}</b></p><p>  Ave_X = Average(Touch_X);</p><p>  Ave_Y = Average(Touch_Y);</p><p><b>  }</b></p><p>  4.3 2.4G無線模塊初始化設置</p><p>  2.4G無線模

51、塊是收發(fā)一體化的模塊,因而只需對該模塊的初始化代碼進行設置就可完成無線間的收發(fā)功能。無線發(fā)送模塊初始化程序代碼如下:</p><p>  void NRFSetTxMode(unchar *TxDate)</p><p><b>  {//發(fā)送模式</b></p><p><b>  CE=0; </b></p>

52、;<p>  NRFWriteTxDate(W_REGISTER+TX_ADDR,TxAddr,TX_ADDR_WITDH);//寫寄存器指令+接收地址使能指令+接收地址+地址寬度</p><p>  NRFWriteTxDate(W_REGISTER+RX_ADDR_P0,TxAddr,TX_ADDR_WITDH);//為了應答接收設備,接收通道0地址和發(fā)送地址相同</p><

53、p>  NRFWriteTxDate(W_TX_PAYLOAD,TxDate,TX_DATA_WITDH);//寫入數(shù)據(jù) </p><p>  /******下面有關寄存器配置**************/</p><p>  NRFWriteReg(W_REGISTER+EN_AA,0x01); // 使能接收通道0自動應答</p><p>  

54、NRFWriteReg(W_REGISTER+EN_RXADDR,0x01); // 使能接收通道0</p><p>  NRFWriteReg(W_REGISTER+SETUP_RETR,0x0a); // 自動重發(fā)延時等待250us+86us,自動重發(fā)10次</p><p>  NRFWriteReg(W_REGISTER+RF_CH,0x40); // 選擇射頻

55、通道0x40</p><p>  NRFWriteReg(W_REGISTER+RF_SETUP,0x07); // 數(shù)據(jù)傳輸率1Mbps,發(fā)射功率0dBm,低噪聲放大器增益</p><p>  NRFWriteReg(W_REGISTER+CONFIG,0x0e); // CRC使能,16位CRC校驗,上電 </p><p><b> 

56、 CE=1;</b></p><p>  Delay(5);//保持10us秒以上</p><p><b>  }</b></p><p>  通過將“NRFWriteReg(W_REGISTER+CONFIG,0x0e);” 這條語句設置成“NRFWriteReg(W_REGISTER+CONFIG,0x0f);”即可完成無線的接

57、收功能。</p><p>  4.4 USB協(xié)議類設置 </p><p>  USB協(xié)議的結構是一個相對比較龐大且復雜的系統(tǒng),這其中包括有USB中斷處理函數(shù)、USB標準請求、USB描述符等模塊[15]。本文就對以上幾個主要的部分做個大概的介紹。</p><p>  4.4.1 USB中斷處理函數(shù)</p><p>  當PDIUSBD12芯片完

58、成一個操作后,就會產(chǎn)生中斷請求信號,以通知CPU來進行相關處理。導致中斷的事件有USB總線復位、D12進入掛起狀態(tài)、成功接收到數(shù)據(jù)等。這里的主程序中是一直查詢中斷引腳電平的狀態(tài)是否有中斷發(fā)生,從而進行進一步的處理。以下就是中斷處理的函數(shù):</p><p>  void Usb_Disconnect(void); //USB斷開連接</p><p>  void Usb_Connect(v

59、oid); //USB連接</p><p>  void Usb_Bus_Suspend(void); //總線掛起中斷處理</p><p>  void Usb_Bus_Reset(void); //總線復位中斷處理</p><p>  void Usb_Ep0_Out(void); //端點0輸出中斷處理</p><p&g

60、t;  void Usb_Ep0_In(void); //端點0輸入中斷處理</p><p>  void Usb_Ep1_Out(void); //端點1輸出中斷處理</p><p>  void Usb_Ep1_In(void); //端點1輸入中斷處理</p><p>  void Usb_Ep2_Out(void); //

61、端點2輸出中斷處理</p><p>  void Usb_Ep2_In(void); //端點2輸入中斷處理</p><p>  4.4.2 USB標準請求</p><p>  USB協(xié)議定義了一個8個字節(jié)的標準設備請求,主要用在設備的枚舉過程中。這8字節(jié)的數(shù)據(jù)是在控制傳輸?shù)慕⑦^程通過默認控制端點0發(fā)出的,在這8個字節(jié)的數(shù)據(jù)中,包含了數(shù)據(jù)的過程所需要的

62、傳輸數(shù)據(jù)的傳輸方向、長度以及數(shù)據(jù)的類型等信息。USB協(xié)議規(guī)定,端點0的最大包長度至少8個字節(jié),也就是說,凡是USB設備都必須接收8個字節(jié)的標準請求。標準請求代碼如下:</p><p>  #define GET_STATUS 0</p><p>  #define CLEAR_FEATURE 1</p><p>

63、  #define SET_FEATURE 3</p><p>  #define SET_ADDRESS 5</p><p>  #define GET_DESCRIPTOR 6</p><p>  #define SET_DESCRIPTOR 7</p>

64、;<p>  #define GET_CONFIGURATION 8</p><p>  #define SET_CONFIGURATION 9</p><p>  #define GET_INTERFACE 10</p><p>  #define SET_INTERFACE

65、 11</p><p>  #define SYNCH_FRAME 12</p><p><b>  4.4.3 描述符</b></p><p>  USB協(xié)議涉及有較多的描述符,它主要包括有:設備描述符,配置描述符,接口描述符和端點描述符等。這些描述符中就包含設備的類型,制造商信息,語言的ID和產(chǎn)品的序列號等一

66、系列的信息。以下就是USB協(xié)議的描述符函數(shù):</p><p>  unsigned char Device_Descriptor[0x12]; //設備描述符為18字節(jié)</p><p>  unsigned char Report_Descriptor[52]; //USB報告描述符的定義</p><p>  unsigned char Config_Descri

67、ptor[9+9+9+7]; //USB配置描述符集合的定義</p><p>  unsigned char Language_ID[4]; //語言ID的定義</p><p>  unsigned char Manufacturer_String_Descriptor[40]; //廠商字符串描述符</p><p>  unsigned char Produ

68、ct_String_Descriptor[22]; //產(chǎn)品序列號字符串描述符</p><p>  unsigned char Serial_Number_String_Descriptor[20];//字符串描述符</p><p><b>  系統(tǒng)調(diào)試</b></p><p>  完成了硬件設計之后,接下來的就是對制作好之后的硬件進行測試和

69、調(diào)試,然而調(diào)試是個相當費精力的過程,所以本文決定采用先將各個模塊調(diào)通之后,再進行最后的整體調(diào)試,以減小調(diào)試的難度。</p><p>  5.1觸摸屏坐標數(shù)據(jù)采集</p><p>  首先要檢查硬件連接是否正確,只有確保了硬件的連接無誤才是保證系統(tǒng)調(diào)通的關鍵。再是檢查液晶VDD端的電壓是否在2.7-3.3V之間,因為過高或過低的電壓都容易使液晶不正常的顯示。</p><p

70、>  接下來在判斷觸摸屏采集的數(shù)據(jù)是否正確時,可先通過串口調(diào)試工具將觸摸前后的位置信息傳輸至計算機顯示并記錄下來,再來查看實際鼠標先后移動的距離是否成比例,以此來修改采集的觸屏坐標代碼程序。具體查看圖5-1和圖5-2,</p><p>  (圖中F點液晶屏觸摸前的鼠標位置,而當觸摸A點到B點的距離時,鼠標由F點移動到了D點位置)</p><p>  圖5-1 液晶屏觸摸前鼠標位

71、置</p><p>  圖5-2 液晶屏觸摸后鼠標位置 </p><p><b>  無線模塊的調(diào)試</b></p><p>  有關2.4G無線模塊的程序寫的好壞將會直接影響該無線收發(fā)模塊間能否</p><p>  調(diào)通以

72、及傳輸速度。所以在寫該模塊的程序前不妨先去了解參考下別人的程序,再結合自己的想法去寫程序,這樣調(diào)試起來將會事半功倍。當然在調(diào)試過程中也可選擇串口調(diào)試工具進行調(diào)試,將收發(fā)端的數(shù)據(jù)都通過串口傳輸至電腦進行查看比較。在調(diào)試過程中應注意發(fā)送端發(fā)送的數(shù)據(jù)應選擇一連串不同的數(shù)據(jù),因為只有這樣才能有效地看出無線間傳輸?shù)臏蚀_性和實時性。</p><p><b>  5.3 USB協(xié)議</b></p&g

73、t;<p>  USB協(xié)議類模塊的調(diào)試是所有模塊中調(diào)試最為費時的部分,因為它涉及太多的模塊函數(shù),稍有出錯整個系統(tǒng)就不能呈現(xiàn)結果。所以這需要制作者由足夠的耐心和細心去寫代碼。對于調(diào)試技巧方面,主張將各個模塊函數(shù)逐個通過串口調(diào)試工具傳輸至計算機進行調(diào)試,最后將各調(diào)通的模塊進行組合調(diào)試,以確保降低調(diào)試的難度。在碰到比較重要的語句時,應在該語句后面標注解釋,以方便下次查看時能迅速了解。</p><p>  

74、待計算機讀取一系列的描述符之后,該計算機就能識別無線鼠標設備了。具體參考圖5-3和圖5-4線鼠標插入前后對比。</p><p>  圖5-3鼠標插入前 圖5-4鼠標插入后</p><p><b>  6 結論</b></p><p>  本文著重介紹了無線模擬鼠標的可觸屏式液晶的數(shù)據(jù)采集部分和USB協(xié)

75、議類技術。雖然在方案的設計與作品的制作的過程的遇到了不少的難題和挫敗,但是在困難與挫折中也積累了新的知識與經(jīng)驗,懂得了如何去面對出現(xiàn)在自己面前一道又一道的難題。在每當通過自己的努力成功解決掉擺在自己面前的難題時,心中總是有說不出的自豪和喜悅。本方案設計的無線鼠標實踐結果表明,雖然該觸屏式無線模擬鼠標可完成鼠標的基本功能,如鼠標的前后左右自由移動,鼠標左鍵和鼠標右鍵功能,但效果并不是很理想,這除了與該款2.8寸液晶自身性能有關外,程序代碼

76、的設計也存在很大的缺陷,需要有待提高。</p><p>  本方案的設計最后之所以能成功實施,我覺得有兩點很重要,那就是老師在我遇到困難時的提點和自己不懈的重復調(diào)試與思考。</p><p><b>  參考文獻</b></p><p>  [1] 喜洋洋.USB接口技術發(fā)展歷史和接口技術的優(yōu)點[EB/OL],[2010-3-22]. <

77、/p><p>  http://club.topsage.com/thread-670048-1-1.html.</p><p>  [2] 葛海江,陶姍,吳戈昊,吳紅娉. 2.4GH無線鼠標的多信道控制方法研究[J]. 計算機工程與應用,2009(9):45-46.</p><p>  [3] 王立鳳. 基于51微控制器的觸摸屏系統(tǒng)設計[J]. 電子元器件應用,2

78、007(11):15-17.</p><p>  [4] 樊巍. USB的開發(fā)和設計[D]. 保存地:西安電子科技大學,2002年4月.</p><p>  [5] 王富東. 電阻式觸摸屏與單片機的接口技術[J]. 蘇州大學學報(工科版),2006(6):12-14.</p><p>  [6] 張耀麒. 應用于電阻式觸摸屏的ADS7846控制器[J]. 電子

79、科技, 2006(09): 12-13.</p><p>  [7] Gerrit W. den Besten. The USB 2.0 Physical Layer: Standard and Implementation [J]. 2004, Analog Circuit Design, Part III.</p><p>  [8] 錢曉芳.USB協(xié)議層的設計與實現(xiàn)[J]. 集成

80、電路應用, 2005(07):48-48.</p><p>  [9] 林熙. 5V電源改成3.0V或3.3V電壓輸出[J]. 電子制作, 2001(11):004-006.</p><p>  [10] 張井剛, 鄭建幅. AD7843在觸摸屏系統(tǒng)中的應用[J]. 電子質量, 2004(09):31-31.</p><p>  [11] 劉彥. 基于PDIUSB

81、D12的USB接口設計應用研究[J]. 中國科技信息,2010(09): 67-68.</p><p>  [12] 張安生. PDIUSBD12在USB接口設計中的應用探析[J]. 中國現(xiàn)代教育裝備,2008(2):14-16.</p><p>  [13] 俞偉華. TFT-LCD液晶顯示技術及其應用[J].自動化儀表,2001(12):007-008.</p><

82、;p>  [14] 錢豪. USB設備枚舉過程及代碼設計[J]. 電腦知識與技術,2010(19):58-59.</p><p>  [15] Weibin Wu, Tiansheng Hong, Yuqing Zhu, Guangbin He, Cheng Ye, Haobiao Li and Chuwen Chen. Study on USB Based CAN Bus for Data Measure

83、ment System [J]. Communications in Computer and Information Science, 2011, Volume 135, 544-549.</p><p>  附錄1 系統(tǒng)實物圖</p><p><b>  無線鼠標的接收器</b></p><p>  無線鼠標的發(fā)射端與接收器</p&

84、gt;<p>  附錄2 畢業(yè)設計作品說明書</p><p><b>  一、作品名稱</b></p><p>  基于單片機的無線模擬鼠標設計</p><p><b>  二、作品功能</b></p><p>  1、實現(xiàn)5m-10m的通信距離</p><p&g

85、t;  2、可實現(xiàn)基本鼠標功能</p><p><b>  三、運行環(huán)境</b></p><p><b>  硬件環(huán)境</b></p><p>  89c51單片機、tft可觸屏式液晶、2.4G無線模塊。</p><p><b>  軟件環(huán)境</b></p>&l

86、t;p>  Windows XP、Keil uVision3開發(fā)工具、串口調(diào)試工具、protel99畫圖工具。</p><p><b>  四、操作步驟</b></p><p>  1、連接硬件電路,并檢查連接是否正確</p><p>  2、接上電源、合上電源開關</p><p>  3、插入無線鼠標的接收設備&

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論