LinkNode上的用户交互主要有按键、LED、buzzer,但是更重要的是uart,一般mbed除了虚拟U盘(MSD programmer) 外,还有两个设备,分别是CMSIS-DAP Debug和虚拟串口。
不过虚拟串口和debug这两个不能默认使用,必须先装驱动。串口界面在此,可是并不能装
https://developer.mbed.org/handbook/Windows-serial-configuration
只好求助于nordic的官网。可惜是51822mDK是一个discontinued的产品,也没找到合适的驱动。论坛求助以后给了一个新的固件,可能目前并不是标准的mbed?不过考虑到后面要退回的,暂时也不影响评测,那就先对付着用着吧。串口就先使用另外引出的P023和P025。
so,我们先通过串口来采集一下bmp180的大气压和温度。mbed的一个优势是有大量共享的库可以用,比如这个bmp180在mbed上就能搜到,我们直接使用lib方式就好了。会有很多,选一个介绍比较全面一点的
比如上面这个,里面有class reference
还有具体使用示例,节省空间,帖个部分
只要复制这个代码就行,唯一需要修改的就是I2C的具体管脚(sda,scl),
并增加一个串口界面,示例中直接使用了printf,应该是打印到了默认的串口上了吧。如果删除下面这行,编译没有问题,但是串口上就没有任何东西啦。
剩下就没有剩下了,编译下载,顺利看到现象。
顺便总结下bmp180的使用过程(以温度为例):
- bmp180.init(); //返回0表示成功
- bmp180.startTemperature();
- wait_ms(5);
- bmp180.getTemperature(&temp);//返回0表示成功