0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【触觉智能 Purple Pi OH 开发板体验】+ Linux下位移运算及实现

触觉智能 2023-09-13 08:38 次阅读

本文转载于Purple Pi OH开发爱好者,作者李唐

Linux下对外设的控制中,往往要用到移位操作,若设计出相应的函数会有效地通过使用的效率。

位移函数的作用是按位进行数据移动,其数据类型为字节型。在此类函数中,包括左移、右移和位交换。

左移

左移函数的表达式为:y=a<

实现左移的函数方式为:y=a*(2^n) ,2^n表示2的n次方。

实现左移的函数内容为:
bc50afb6-51cd-11ee-a20b-92fbcf53809c.png

在完成该函数的编辑后,将其存入文件yw.sh即可。

为验证其正确性,需键入指令source ./ yw.sh即可运行该函数。该函数是双目运算,故要键入2个操作数。以操作数0x85为例,其左移2位的结果为0x224,说明函数正确。

bc769352-51cd-11ee-a20b-92fbcf53809c.png

右移

右移函数的表达式为:y=a>>n (a为整数型变量,n=0~7)

实现右移的函数方式为:y=a/(2^n)

实现右移的函数内容为:
bc8a59d2-51cd-11ee-a20b-92fbcf53809c.png

在完成该函数的编辑后,将其存入文件yw.sh即可。

为验证其正确性,需键入指令source ./ yw.sh即可运行该函数。该函数是双目运算,故要键入2个操作数。以操作数0x85为例,其右移2位的结果为0x21,说明函数正确。
bcaf1510-51cd-11ee-a20b-92fbcf53809c.png

位交换

在数据操作处理中,常会涉及半字节的操作,比如用字节数据的高4位或低4位,或交换数据的高、低4位等。

对提取的高4位测试为:
bcc05c12-51cd-11ee-a20b-92fbcf53809c.png

对提取的低4位测试为:
bcd2b916-51cd-11ee-a20b-92fbcf53809c.png

这样我们就基本上解决了位移操作的函数设计及处理方法问题,尽管这些问题很基础,但它却很实用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11191

    浏览量

    208628
  • 开发板
    +关注

    关注

    25

    文章

    4874

    浏览量

    96972
  • 触觉智能
    +关注

    关注

    1

    文章

    30

    浏览量

    288
收藏 人收藏

    评论

    相关推荐

    全新原生鸿蒙HarmonyOS NEXT发布,书写国产操作系统新篇章!同时,触觉智能发布OpenHarmony5.0固件

    10月22日,华为举行“原生鸿蒙之夜暨华为全场景新品发布会”,正式为用户带来基于OpenHarmony打造的全新原生鸿蒙操作系统HarmonyOS NEXT和华为多个全场景智能设备新品。与此同时,触觉智能旗下鸿蒙
    的头像 发表于 10-28 13:46 218次阅读
    全新原生鸿蒙HarmonyOS NEXT发布,书写国产操作系统新篇章!同时,<b class='flag-5'>触觉</b><b class='flag-5'>智能</b>发布OpenHarmony5.0固件

    触觉智能Purple Pi OH鸿蒙开发板成功适配OpenHarmony5.0 Release,开启新征程

    触觉智能Purple Pi OH鸿蒙开发板,成功适配OpenHarmony5.0 Release
    的头像 发表于 10-25 10:51 217次阅读
    <b class='flag-5'>触觉</b><b class='flag-5'>智能</b><b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>鸿蒙<b class='flag-5'>开发板</b>成功适配OpenHarmony5.0 Release,开启新征程

    使用Tftpd32工具数据互传是一种什么体验?SSD201/202D开发板演示,深圳触觉智能嵌入式方案商

    本文介绍了Tftpd32工具的使用方法,方便电脑与开发板文件互相传输。使用到的是触觉智能Purple Pi R1双网口
    的头像 发表于 10-17 11:20 242次阅读
    使用Tftpd32工具数据互传是一种什么体验?SSD201/202D<b class='flag-5'>开发板</b>演示,深圳<b class='flag-5'>触觉</b><b class='flag-5'>智能</b>嵌入式方案商

    瑞芯微RK3566/RK3568 Android11使用OTA升级固件方法,深圳触觉智能鸿蒙开发板演示,备战第九届华为ICT大赛

    本文介绍瑞芯微RK3566/RK3568在Android11系统OTA升级固件方法,使用触觉智能Purple Pi OH鸿蒙
    的头像 发表于 10-12 11:57 229次阅读
    瑞芯微RK3566/RK3568 Android11使用OTA升级固件方法,深圳<b class='flag-5'>触觉</b><b class='flag-5'>智能</b>鸿蒙<b class='flag-5'>开发板</b>演示,备战第九届华为ICT大赛

    瑞芯微RK3566鸿蒙开发板Android11修改第三方输入法为默认输入法

    本文适用于触觉智能所有支持Android11系统的开发板修改第三方输入法为默认输入法。本次使用的是触觉智能
    的头像 发表于 09-24 09:43 297次阅读
    瑞芯微RK3566鸿蒙<b class='flag-5'>开发板</b>Android11修改第三方输入法为默认输入法

    瑞芯微RK3588开发板Linux系统添加自启动命令的方法,深圳触觉智能Arm嵌入式鸿蒙硬件方案商

    本文适用所有Linux系统的开发板、主板添加自启动命令的方法,本次使用了触觉智能的EVB3588开发板演示,搭载了瑞芯微RK3588旗舰芯片
    的头像 发表于 09-19 09:32 515次阅读
    瑞芯微RK3588<b class='flag-5'>开发板</b><b class='flag-5'>Linux</b>系统添加自启动命令的方法,深圳<b class='flag-5'>触觉</b><b class='flag-5'>智能</b>Arm嵌入式鸿蒙硬件方案商

    瑞芯微RK3566鸿蒙开发板OpenHarmony标准系统应用兼容性测试指导

    本文OpenHarmony标准系统应用兼容性测试指导,适用鸿蒙系统软件开发测试的新手入门学习课程,设备为触觉智能的瑞芯微RK3566开发板,型号Pu
    的头像 发表于 09-10 11:56 267次阅读
    瑞芯微RK3566鸿蒙<b class='flag-5'>开发板</b>OpenHarmony标准系统应用兼容性测试指导

    瑞芯微RK3566鸿蒙开发板Ubuntu虚拟机环境搭建教程,触觉智能Purple Pi OH主板

    本文适用于Ubuntu虚拟机环境搭建教程学习,设备为触觉智能开发的瑞芯微RK3566开发板,型号Purple Pi
    的头像 发表于 09-08 18:25 695次阅读
    瑞芯微RK3566鸿蒙<b class='flag-5'>开发板</b>Ubuntu虚拟机环境搭建教程,<b class='flag-5'>触觉</b><b class='flag-5'>智能</b><b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>主板

    瑞芯微RK3566鸿蒙开发板Ubuntu虚拟机环境搭建教程,触觉智能Purple Pi OH主板

    本文适用于Ubuntu虚拟机环境搭建教程学习,设备为触觉智能开发的瑞芯微RK3566开发板,型号Purple Pi
    的头像 发表于 09-05 17:47 335次阅读
    瑞芯微RK3566鸿蒙<b class='flag-5'>开发板</b>Ubuntu虚拟机环境搭建教程,<b class='flag-5'>触觉</b><b class='flag-5'>智能</b><b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>主板

    Purple Pi OH 更改SDK的编译选项

    开源鸿蒙硬件方案领跑者触觉智能本文适用于在PurplePiOH开发板更改SDK编译选项。触觉智能的PurplePiOH鸿蒙开源主板,是华为L
    的头像 发表于 07-06 08:33 253次阅读
    <b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b> 更改SDK的编译选项

    Purple Pi OH高效开发:SDK优化实战

    开源鸿蒙硬件方案领跑者触觉智能本文适用于在PurplePiOH开发板上进行SDK编译修改。触觉智能的PurplePiOH鸿蒙开源主板,是华为
    的头像 发表于 06-14 08:32 1052次阅读
    <b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>高效<b class='flag-5'>开发</b>:SDK优化实战

    马上教会你Purple Pi OH开发板之ADB常用命令

    开源鸿蒙硬件方案领跑者触觉智能本文适用于在PurplePiOH开发板进行分区镜像烧录。触觉智能的PurplePiOH鸿蒙开源主板,是华为La
    的头像 发表于 06-06 08:32 465次阅读
    马上教会你<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b><b class='flag-5'>开发板</b>之ADB常用命令

    手把手教你如何在Purple Pi OH开发板安装Opencv

    开源鸿蒙硬件方案领跑者触觉智能本文适用于在PurplePiOH开发板安装Opencv。触觉智能的PurplePiOH鸿蒙开源主板,是华为La
    的头像 发表于 05-31 08:33 702次阅读
    手把手教你如何在<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>上<b class='flag-5'>开发板</b>安装Opencv

    适合大学生的鸿蒙开发板-Purple Pi OH之安装Docker

    介绍本文基于purple-pi-oh系列主板演示Linux系统安装Docker,方法适用于RK3566全系列产品。本教程将指导你在基于RK3566的LInux系统上安装Docker。Docker是一
    的头像 发表于 05-10 08:32 512次阅读
    适合大学生的鸿蒙<b class='flag-5'>开发板</b>-<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b>之安装Docker

    【七】Purple Pi OH开发板带你7天入门OpenHarmony!

    进入OpenHarmony系统的世界,对于许多开发者来说,是一次全新且充满挑战的旅程。通过PurplePiOH开发板这个窗口,我们不仅能够触摸到硬件本身的魅力,还有机会深入探索
    的头像 发表于 03-22 08:31 336次阅读
    【七】<b class='flag-5'>Purple</b> <b class='flag-5'>Pi</b> <b class='flag-5'>OH</b><b class='flag-5'>开发板</b>带你7天入门OpenHarmony!