新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 液晶顯示器邊框精密檢測系統的實現

        液晶顯示器邊框精密檢測系統的實現

        作者: 時間:2009-03-26 來源:網絡 收藏

        按照Cycle模式,其處理多通道數據的代碼如下(以地址為0x10的那片ADS8364為例):
          PBDATDIR = 0XFFFB; // 給IOPB2一個低電平脈沖,復位ADS8364
          asm (' NOP');
          PBDATDIR |= 0X0004;
          PBDATDIR = 0XFFFD; // 給IOPB1一個低電平脈沖,觸發ADS8364采樣
          asm ('NOP');
          PBDATDIR |= 0X0002;
          Delay_2ms(); // 延時一段時間,等待采樣結束
          /* 來自ADS8364的6個測量值:6個通道 */
          Channel1 = port10;
          Channel2 = port10;
          Channel3 = port10;
          Channel4 = port10;
          Channel5 = port10;
          Channel6 = port10;
        3.2 基于總線的通訊模塊
          測距數據采集板發送測距數據以中斷的方式完成。TMS320LF2407有專門的mailbox中斷,用于響應發送/接收中斷。每個接觸式傳感器的測距值在內用2個字節存儲,而總線傳輸標準要求每個數據幀最多只能傳輸8個字節的數據。本系統有12個傳感器,共有24個字節存儲所有測距值。總線傳輸所有測距值需要3個數據幀才能傳送完。該系統中將通訊模塊分成發送和接收模塊兩個部分。在設計中將發送和接收封裝成結構體,大大簡化了通訊驅動模塊的設計,并可將此通訊結構應用在任何CAN通訊方面,具有很強的通用性。
          發送模塊:
          typedef struct Transmit
          {
          BOOLEAN ExtendFlag;  // 擴展幀標志
          BOOLEAN RemoteFlag;   // 遠程幀標志
          LONG ID;       // 本機地址
          BYTE DataLen;     // 發送數據長度
          BYTE Data[8];     // 待發數據緩沖區
          }TRANSMIT;
          接收模塊:
          typedef struct Receive
          {
          BYTE  DataLen;
          BYTE Data[8];
          }RECEIVE;
          編寫驅動函數不僅能省去對寄存器的繁瑣設置,使數據幀的發送和接收更方便,而且可使代碼具有很強的可移植性,調用驅動函數的代碼完全可以在不同的系統中移植,只要改寫驅動函數部分即可。
          本文介紹的顯示器采用的方式,并用TMS320LF2407作為核心處理器,可以達到很高的測量精度。通過CAN總線通訊,可以將測量數據可靠地發給PC機,并大規模檢測。此系統已經在實際生產中得到應用,驗證了硬件系統的可靠性和穩定性。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 雅江县| 师宗县| 呼和浩特市| 尉犁县| 宝兴县| 观塘区| 手机| 安国市| 惠水县| 南澳县| 盐亭县| 开封市| 黄冈市| 封丘县| 大洼县| 博乐市| 修武县| 汾西县| 屏山县| 甘南县| 天柱县| 绍兴市| 新巴尔虎右旗| 桦甸市| 昌乐县| 榆中县| 抚远县| 曲水县| 家居| 武邑县| 伊川县| 恩施市| 阿克苏市| 易门县| 普定县| 夏河县| 桂林市| 囊谦县| 宜章县| 诸城市| 文安县|