Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> I2C地址限制

I2C地址限制

編輯:關於Android編程

在調試一個I2C觸摸屏的驅動時,它的I2C地址為0X01,最後查找發現在\linux-3.0\drivers\i2c\i2c-core.c中有檢測I2C地址是否可用 就是下面的函數: /* And this is a strict address validity check, used when probing. If a  * device uses a reserved address, then it shouldn't be probed. 7-bit  * addressing is assumed, 10-bit address devices are rare and should be  * explicitly enumerated. */ static int i2c_check_addr_validity(unsigned short addr)   /* * Reserved addresses per I2C specification: *  0x00       General call address / START byte *  0x01       CBUS address *  0x02       Reserved for different bus format *  0x03       Reserved for future purposes *  0x04-0x07  Hs-mode master code *  0x78-0x7b  10-bit slave addressing *  0x7c-0x7f  Reserved for future purposes */ #if !defined(CONFIG_ARCH_SUN4I) if (addr < 0x08 || addr > 0x77) #else     if (addr < 0x03 || addr > 0x77) #endif         return -EINVAL; return 0; }   同樣在linux2.6.36 中也存在I2C地址的合法性的檢測 \linux-3.0\drivers\i2c\i2c-core.c中     /* Make sure the address is valid */ if (addr < 0x03 || addr > 0x77) { dev_warn(&adapter->dev, "Invalid probe address 0x%02x\n", addr); return -EINVAL; }
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved