查看: 524|回复: 9

[原创] 【小e智能硬件开发平台】 基于 小e开发板(ESP8266) 的I2C总线...

[复制链接]

10

主题

1

好友

700

积分

举人

Rank: 4

  • TA的每日心情
    奋斗
    2016-10-13 08:55
  • 签到天数: 120 天

    [LV.7]常住居民III

    发表于 2016-7-17 14:19:13 |显示全部楼层
    10,000套小e体验板免费申请地址:
    http://www.eeboard.com/bbs/thread-47660-1-1.html


    【小e智能硬件开发平台】 基于 小e开发板(ESP8266) 的I2C总线扫描
    因为挂在I2C总线的装置, 经常不确定该装置的I2C地址是什么, 因此使用ArduinoIDE做了个I2C总线扫描程序!
    Arduino IDE安装与设置可以参考 :
    游客,如果您要查看本帖隐藏内容请回复
    xiao_e_I2C_scan_04.png
    程序使用小e开发板 的I2C , GPIO02:SDA,GPIO14:SCL.
    气压传感器与OLED的I2C跳线接法如下图, ADC拨码可任意设置.
    xiao_e_I2C_scan.png

    扫描后由USB串口输出结果.
    气压传感器(BMP180) : 0x77
    OLED : 0x3C
    ADC拨码可任意拨动, 观查读取的值.
    xiao_e_I2C_scan_01.png


    主程序如下:
    1. [hide]
    2. #include "Wire.h"

    3. /*
    4. * xiao_e1 : http://www.kaifakuai.com/kfkdev/Downloatd2.html
    5. *
    6. * jumper assignment  ( ":" is open, "|" is short)
    7. *  Audio4 RGB3 BARO2 OLED1
    8. *  ::::   |::   ||    ||
    9. *
    10. */
    11. int pinLED = 12; // GPIO12 for xiao_e1 ESP8266 LED-Red
    12. int xiao_e_SDA = 2; // GPIO02 for xiao_e1 ESP8266 I2C-SDA
    13. int xiao_e_SCL = 14; // GPIO14 for xiao_e1 ESP8266 I2C-SCL
    14. int xiao_e_ADC = 17; // ADC (A0=17) for xiao_e1 ESP8266 I2C-SCL

    15. byte start_address = 1; // scan I2C device from 0x01
    16. byte end_address = 127; // scan I2C device end to 0xFF

    17. void scanI2CBus(byte from_addr, byte to_addr)
    18. {
    19.   byte rc;
    20.   byte data = 0; // not used, just an address to feed to twi_writeTo()
    21.   for( byte addr = from_addr; addr <= to_addr; addr++ ) {
    22.     rc = twi_writeTo(addr,&data,0,1); // for xiao_e1 ESP8266
    23.     if(rc==0) {
    24.       Serial.print("addr: ");
    25.       Serial.print(addr,DEC);
    26.       Serial.print("\t HEX: 0x");
    27.       Serial.print(addr,HEX);
    28.       Serial.println("\t found!");
    29.     }
    30.   }
    31. }

    32. void setup()
    33. {
    34.     pinMode(pinLED,OUTPUT);
    35.     Wire.begin(xiao_e_SDA, xiao_e_SCL);

    36.     Serial.begin(9600);
    37.     delay(5000);

    38.     Serial.println("--- I2C Bus Scanner Test ---");
    39.     Serial.print("starting scanning of I2C bus from ");
    40.     Serial.print(start_address,DEC);
    41.     Serial.print(" to ");
    42.     Serial.print(end_address,DEC);
    43.     Serial.println("...");
    44.     Serial.println();

    45.     scanI2CBus( start_address, end_address );

    46.     Serial.println("--- I2C Bus Scanner Complete ---");
    47. }

    48. void loop()
    49. {
    50.   Serial.print("ADC : ");
    51.   Serial.println(analogRead(xiao_e_ADC));

    52.   digitalWrite(pinLED,HIGH);
    53.   delay(1000);
    54.   digitalWrite(pinLED,LOW);
    55.   delay(1000);
    56. }[/hide]
    复制代码
    回复

    使用道具 举报

    112

    主题

    62

    好友

    1万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    该用户从未签到

    分区版主职务勋章

    发表于 2016-7-18 09:26:54 |显示全部楼层
    楼主是申请到了对么
    回复

    使用道具 举报

    10

    主题

    1

    好友

    700

    积分

    举人

    Rank: 4

  • TA的每日心情
    奋斗
    2016-10-13 08:55
  • 签到天数: 120 天

    [LV.7]常住居民III

    发表于 2016-7-18 11:51:52 |显示全部楼层
    噗噗熊 发表于 2016-7-18 09:26
    楼主是申请到了对么

    对,
    http://www.eeboard.com/bbs/thread-47660-1-1.html
    小e体验板 使用方法也一样
    回复

    使用道具 举报

    15

    主题

    0

    好友

    2604

    积分

    进士

    Rank: 5Rank: 5

  • TA的每日心情
    慵懒
    2016-11-8 21:48
  • 签到天数: 195 天

    [LV.7]常住居民III

    发表于 2016-7-18 18:48:32 |显示全部楼层
    学习小e体验板使用方法
    回复

    使用道具 举报

    0

    主题

    0

    好友

    17

    积分

    白丁

    Rank: 1

    该用户从未签到

    发表于 2016-7-21 23:58:21 |显示全部楼层
    好玩,实用的小e。
    回复

    使用道具 举报

    15

    主题

    0

    好友

    1283

    积分

    进士

    Rank: 5Rank: 5

  • TA的每日心情
    奋斗
    2016-11-18 08:42
  • 签到天数: 110 天

    [LV.6]常住居民II

    发表于 2016-8-12 21:08:44 |显示全部楼层
    请问一下楼主是如何使用Arduino IDE开发的,IDE直接就支持吗,还是需要下载什么组件,使得与Arduino开发一样
    回复

    使用道具 举报

    10

    主题

    1

    好友

    700

    积分

    举人

    Rank: 4

  • TA的每日心情
    奋斗
    2016-10-13 08:55
  • 签到天数: 120 天

    [LV.7]常住居民III

    发表于 2016-8-12 23:41:50 |显示全部楼层
    努力的人 发表于 2016-8-12 21:08
    请问一下楼主是如何使用Arduino IDE开发的,IDE直接就支持吗,还是需要下载什么组件,使得与Arduino开发一 ...

    Arduino IDE直接就支持生成ESP8266的固件.
    需要下载 ESP8266开发板组件,
    可以参考 : http://bbs.ickey.cn/community/forum.php?mod=viewthread&tid=46814
    回复

    使用道具 举报

    29

    主题

    0

    好友

    693

    积分

    举人

    Rank: 4

  • TA的每日心情
    开心
    4 小时前
  • 签到天数: 122 天

    [LV.7]常住居民III

    发表于 2016-8-17 14:54:03 |显示全部楼层
    谢谢楼主分享
    回复

    使用道具 举报

    0

    主题

    1

    好友

    122

    积分

    童生

    Rank: 2

  • TA的每日心情
    无聊
    2013-10-21 09:01
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2016-8-18 16:56:24 |显示全部楼层
    第一次接触esp8266,来学习学习
    回复

    使用道具 举报

    0

    主题

    0

    好友

    5

    积分

    白丁

    Rank: 1

    该用户从未签到

    发表于 2016-11-10 16:24:23 |显示全部楼层
    111111111111111111111
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    关闭

    站长推荐上一条 /6 下一条


    手机版|爱板网 |网站地图  

    GMT+8, 2016-12-3 17:43 , Processed in 0.384078 second(s), 19 queries , Memcache On.

    苏公网安备 32059002001056号

    Powered by Discuz!

    回顶部