微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > Amazon Iot物联网终端之十二 范例程序测试和解析

Amazon Iot物联网终端之十二 范例程序测试和解析

时间:10-02 整理:3721RD 点击:

1、在通过linux命令可以访问,控制GPIO之后。米尔科技提供了范例程序供测试和参考。简析如下。
2、因为串口一直没有调试通过,用SSH也很方便,同时文件传输还是用SCP,更适合桌面操作
使用SCP登录,并把用到的编译后的文件上传到开发板中


3、输入./key_led这个功能是通过GPIO的输出控制led等,并采集sw用户按键的输入功能。显示如图,按键输入没有及时响应,以后在对这部分测试和分析。

程序中,控制led的命令为
sprintf(tmp,"echo 1 > /sys/class/leds/status_led%d/brightness",ledn);
读取key的命令为
          keys_fd = open("/dev/input/event0", O_RDONLY);

4、输入./rtc_test
这个显示当前的时间,以及用-s参数设定当前时间的方式


读取文件的程序行为,
        /*read the RTC time/date*/
        retval = ioctl(fd, RTC_RD_TIME, &rtc_tm);
5、输入./i2c_test
i2c输入,读取内存数据


程序行中,是从dev的i2c中读取数据流的,
        fd=open("/dev/i2c-0",O_RDWR);
        if(fd<0){
                perror("open error");
        }
        e2prom_data.nmsgs=2;

6、输入./eeprom_test
测试eeprom的数据,命令执行前写保护和要清写保护位执行情况对比如下。


同样,程序是访问device来实现这样的功能的
#define EEPROM_DEVICE "/sys/devices/44000000.ocp/44e0b000.i2c/i2c-0/0-0050/eeprom"
#define TEST_STR "eeprom write/read test!"
... ...
        fd = open(EEPROM_DEVICE, O_RDWR);
7、输入./dss_test
这个是显示图像和颜色变化,在HDMI显示器输出为小框,这个是为同时在LCD测试而编写,色框在变化颜色,见视频
http://www.tudou.com/programs/view/4ywR9GXFL0k/
8、输入./led_play
sw3长按3秒后变为走马灯,在暗处拍摄,能显示走马灯视频。
http://www.tudou.com/programs/view/e6sSGrnwVL8/
9、小结
在linux环境中编程,其实已经非常抽象化,对于设定功能的设置和访问,以及底层硬件的访问都是非常方便的。miro开发板提供的开发环境,简单易用,在开发环境建立的情况下,基本功能的实现是非常的便捷的,应该说比原生的单片机编程还要简单。
不过,对应于工业应用开发来说,更丰富的用户界面和网络控制连接功能,才能充分发挥出am4378的特性。否则相对更常见的am335在适应简单UI的情况下,实现更简单。因此,在后续开发中,先实现基本功能,然后在图形界面进行编程。
图形界面的编程推荐是QT,实际上Linux下可用的框架还有类似产品,不过QT具有丰富的文档和参考资料,更值得入手。
还有一个开发的方式,就是采用TI提供AM4378的SDK工具,不过需要ccs配合,巨大的开发环境,是非常丰富,不过对于本项目来说,貌似不用也可以实现设定的功能。因此,就不测试TI SDK了。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top