说明开发环境的搭建以及应用工程的创建方法在这里不再赘述,可参考笔者文章《钛极os(tijos)物联网操作系统之初体验》或访问钛极os(tijos)系统官方发布的教程☞钛极os(tijos)应用开发环境搭建
功能实现解码红外遥控编码,编码方式为nec码,并将遥控编码在屏幕上显示(支持重复码的接收显示)。
硬件准备tikit-t600-esp8266a 开发板
tivs1838bnec红外接收模块
tioled_ug2864显示模块(oled12864)
红外线遥控器(迷你版)
杜邦线若干
usb线两条
硬件连接tikit开发板tioled_ug2864显示模块
scl scl
sda sda
3.3v vcc
gnd gnd
===================================
tikit开发板tivs1838bnec红外接收模块
pin3 out
3.3v vcc
gnd gnd
===================================
程序编写在eclipse中新建tijos application工程,编写java代码如下:
import java.io.ioexception;import tijos.framework.devicecenter.tigpio;import tijos.framework.devicecenter.tii2cmaster;import tijos.framework.sensor.infrared.itivs1838bneceventlistener;import tijos.framework.sensor.infrared.tivs1838bnec;import tijos.framework.transducer.led.tioled_ug2864;import tijos.util.delay;class decodingeventlistener implements itivs1838bneceventlistener { private tioled_ug2864 _oled; public decodingeventlistener(tioled_ug2864 oled) { this._oled = oled; } /** * 接收事件处理 */ public void cmdreceived(tivs1838bnec arg0) { try { _oled.print(1, 0, addr:+arg0.getaddress()); _oled.print(2, 0, code:+arg0.getcommand()); _oled.print(3, 0, repeat:no ); } catch(ioexception e) { e.printstacktrace(); } } /** * 接收重复事件处理 */ public void cmdrepeat(tivs1838bnec arg0) { try { _oled.print(3, 0, repeat:yes); } catch(ioexception e) { e.printstacktrace(); } } }/** * 解码红外遥控编码,编码方式为nec码,并将遥控编码在屏幕上显示(支持重复码的接收显示)。 * * @author crashmaker * */public class decoding { public static void main(string[] args) { try { //定义要使用的i2c接口 int i2cport = 0; //定义要使用的gpio接口和pin资源 int goioport = 0; int outpin = 3; //打印日志 system.out.println(this is a infrared decoding test.); //分配i2c和gpio资源 tii2cmaster i2c = tii2cmaster.open(i2cport); tigpio gpio = tigpio.open(goioport, outpin); //绑定资源到实例,完成与硬件的映射 tioled_ug2864 oled = new tioled_ug2864(i2c, 0x78); tivs1838bnec vs1838b = new tivs1838bnec(gpio, outpin); //创建解码事件监听对象,并设置监听者 decodingeventlistener lc = new decodingeventlistener(oled); vs1838b.seteventlistener(lc); //显示屏幕打开,并显示信息 oled.turnon(); oled.clear(); oled.print(0, 0, ===crashmaker===); //保证主线程不退出 while(true) { //线程睡眠1秒 delay.msdelay(1000); } } catch(ioexception e) { e.printstacktrace(); } }}1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192功能演示在eclipse中执行“run as tijos application”,运行编写的应用程序,演示效果如下:
应用运行后,在eclipse中打印日志如下:
浅析可穿戴医疗保健产品的市场潜力
长电科技完成收购ADI新加坡测试工厂,全球化布局加速前进
NASA计划推出城市无人机安全系统
汉能再推汉瓦新品,志在“改变世界的屋顶”
51单片机的四种工作模式怎么去设置
钛极OS(TiJOS)物联网操作系统之小试牛刀(3)——红外遥控
OLED电视为何近几年难以普及
我国通信市场的三大运营商距离三分天下还有多远
运用最优模糊保代价控制对永磁同步电动机混沌系统进行深度实现
临时用电的要求事项
2020年中国将成为全球最大的4K电视消费市场
ios惊现漏洞遭关闭!ios10.3.2公测版发布主要更新了啥?哪些设备支持ios10.3.2更新?
越南计划2022年关闭2G服务,以推动蜂窝网络发展
通信电源的基本分类,标称频率为 50 Hz
探讨电动汽车储能系统安全及发展趋势
三星电子成功研发3D晶圆封装技术「X-Cube」
天工测控:WiFi+蓝牙组合模块WG222
那些梦寐以求而又近在眼前的iphone8功能,期待吗?
9V至13.5kV转换器电路图讲解
嵌入式系统发展趋势及应用