查看: 4507|回复: 4

【UP BOARD试用】C#, MONO, MRAA及GPIO

[复制链接]
  • TA的每日心情
    开心
    2016-7-19 10:35
  • 签到天数: 8 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2017-1-6 09:37:35 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 netlhx 于 2017-1-6 09:47 编辑

    在LINUX上用C#,MONODEVELOP及MRAA库来使用GPIO,是不是有点另类,难道PYTHON/C/NODEJS/JAVA还满足不了你?

    其实原因是近段时间在整C#,另外C#也是跨平台的,所以一方面玩C#,一方面玩UP,何乐而不为呢。

    使用MRAA库来控制GPIO,是比较好的方法,只是可惜MRAA没有C#的绑定,本人对C#也是初入门,所以只能使用interopservice来操作MRAA的C库了,GOOGLE了下,这个方面的文章还真是少,找到一篇老外的文章,其中只是粗略说了下,参考自己来写段简单的代码,期间辛酸无数!

    安装MRAA库及MONO的过程就不多说,不过为了编辑的方便,使用了远程桌面来使用MONODEVELOP IDE。

    在C#里面使用C库首先要导入API文件,如下

    2017-01-06_093852.jpg

    然后注意几个细节,使用INTPTR来处理指针,使用INTEROPSERVICE来导入MRAA API.

    2017-01-06_093142.jpg

    主要的点灯代码如下



    远程桌面使用PUTTY+XMING,只将GUI部分拉到本地显示,也算是减轻负担。

    2017-01-06_092546.jpg

    发现在嵌入式开发时,使用远程桌面还是有优势。

    最后看运行结果

    2017-01-06_093350.jpg

    可以看到代码已正确识别了开发板型号,当前使用的MRAA版本等,然后就可以看到LED灯开始闪啊闪








    回复

    使用道具 举报

  • TA的每日心情
    开心
    2016-7-19 10:35
  • 签到天数: 8 天

    连续签到: 1 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-1-6 09:49:28 | 显示全部楼层
    照例自己留沙发
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2017-1-6 13:54:47 | 显示全部楼层
    LZ强行装逼成功,赞一个
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2019-8-27 21:30
  • 签到天数: 219 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2017-1-6 14:54:15 | 显示全部楼层
    看不懂,支持一下!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-7-6 08:48
  • 签到天数: 169 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2017-1-6 17:23:04 | 显示全部楼层
    这帖子有点云里雾里的。
    小白了
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

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



    手机版|小黑屋|与非网

    GMT+8, 2024-4-25 08:36 , Processed in 0.168126 second(s), 24 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.