lifi作为一个入门门槛低、涉及范围广的实验,在理工高校中还是比较流行的。

通常实验分成3个部分,字符数据传输实验、音频传输实验、视频传输实验。在官方的实验指南中指定使用win7x64或者win xp来进行。老话题,这里说在mac怎么进行实验。

音频传输、视频传输实际跟电脑没关系,只要保证usb供电即可,找两个手机的usb充电器就足够了。

第一部分的实验则是使用了usb转串口卡,这个重点是安装mac版本的电脑驱动,比如我手头拿到的是CH341串口卡,可以在这里下载驱动。

  1. 首先安装驱动程序,安装完成后会要求重启动mac。
  2. 查看当前已有的终端设备

    2a.安装完成后,先不要插收发板。进入终端使用命令行操作。

    2b.因为在linux/unix类的操作系统中,一切均为文件,一切设备也都是文件,所以可以在/dev/文件夹中查看当前的串口设备,比如:
andrew@macBookPro ~> ls /dev/tty*
/dev/tty /dev/ttyrb /dev/ttyu2
/dev/tty.Bluetooth-Incoming-Port /dev/ttyrc /dev/ttyu3
/dev/tty.MALS /dev/ttyrd /dev/ttyu4
/dev/tty.SOC /dev/ttyre /dev/ttyu5
/dev/ttyp0 /dev/ttyrf /dev/ttyu6
/dev/ttyp1 /dev/ttys0 /dev/ttyu7
/dev/ttyp2 /dev/ttys000 /dev/ttyu8
/dev/ttyp3 /dev/ttys001 /dev/ttyu9
/dev/ttyp4 /dev/ttys002 /dev/ttyua
/dev/ttyp5 /dev/ttys003 /dev/ttyub
/dev/ttyp6 /dev/ttys004 /dev/ttyuc
/dev/ttyp7 /dev/ttys005 /dev/ttyud
/dev/ttyp8 /dev/ttys006 /dev/ttyue
/dev/ttyp9 /dev/ttys007 /dev/ttyuf
/dev/ttypa /dev/ttys1 /dev/ttyv0

2c.注意使用的命令是ls /dev/tty*,表示列出/dev文件夹下所有tty开头的文件。tty实际是老辈子习惯上终端的缩写,因为老辈子的终端都是串口终端。

2d.这里列出所有设备的意思,是记清楚在没有新的串口设备之前,都有哪些设备,虽然名字比较乱,但都有规律,好记。

2e.这时候插上发送板或者接收板,先插1个,然后再次使用ls /dev/tty*来查看,通常会多了一个设备,名字类似/dev/tty.wchusbserial*,这个就是新插入的串口设备的设备名,类似windows中的“com9:”这样的名字。不同的操作系统,规则不同而已,意思一样。确定串口名称后,再插上另外一块板子,同样查看新增加的设备名称。

2f.命令行工具system_profiler SPUSBDataType可以列出所有连接在电脑上的usb设备,这个命令对于一些设备连接方面的问题也有帮助。

3. 正常实验需要在两个usb口一个插入发送板,一个插入接收板,随后系统应当增加了两个tty串口设备。按照上面2e步骤的操作记下来这两个名字。

4. 需要打开两个终端窗口,一个模拟发送端,另外一个模拟接收端。

5. 命令行使用:screen /dev/tty.xxxxxx 9600命令来建立一个虚拟终端屏幕。两个终端窗口使用同样的命令,但设备名分别是接收板和发送板,不相同。screen是内置命令,用于模拟终端,随后是发送板、接收板的串口名称,9600是说明书上收发板使用的波特率。

6. 这时候在发送板的模拟终端上,可以用键盘敲入字符,正常情况下,在接收板的终端上,会看到另外一边敲的字符。这表示完成了正常的发送和接收。通常的终端,两端都可以发送和接受,但lifi实验板限制发送板只能发送,接收板只能接收。

7. screen软件的退出使用control-a键接着连续按control-\键,屏幕会提示是否确认退出,再敲y退出。

mac电脑进行可见光通信实验要点的更多相关文章

  1. Mac电脑C语言开发的入门帖

    本文是写给Mac电脑开发新手的入门帖,诸神请退散. C语言 C语言可说是电脑环境中的"镇国神器",从发明至今,虽然C语言的使用者缓慢的减少,但从当前市场应用情况看,尚无一台电脑能够 ...

  2. 苹果笔记本适合什么人 中国Mac电脑用户的8个事实

    报告由腾讯 ISUX 研究中心收集了全国 7946 名 Mac 电脑用户的问卷整理而成.并且,参考了苹果公司的历年财报,以及百度.StatCounter 等第三方市场统计数据. 你是 iPhone 用 ...

  3. 【工具使用】mac电脑使用技巧

    本文地址 分享提纲: 1.  mac命令行和finder的交互 2. 一些mac的插件 3. 一些开发的配置 1.mac命令行和findder交互           1)命令行中打开当前文件夹: o ...

  4. Mac电脑如何读取Android手机上的文件

    问题 一般Android手机用usb数据线连接到windows操作系统的电脑上后,会自动将手机存储卡以移动存储的方式显示在电脑里. 但是如果操作系统是Mac的,就没有这个存储设备.问题来了,Mac电脑 ...

  5. mac电脑http代理服务设置公司内网的相关配置

    哈喽,亲爱的小伙伴们 ,今天给大家分享一下公司内网配置 http代理服务设置及外网访问 ,<这是mac电脑的噢>  ===链接地址我的github项目   https://github.c ...

  6. 在Mac电脑上为iPhone或iPad录屏的方法

    在以前的Mac和iOS版本下,录制iPhone或者iPad屏幕操作是一件稍微复杂的事情.但是随着Yosemite的出现,在Mac电脑上为iPhone或iPad录屏的方法就变得简单了.下面就介绍一下具体 ...

  7. mac电脑的使用

    1. control + command + a 截图 2. shift + command + g 前往 3.在 Mac OS X 中怎样获取当前文件夹的路径 原文网址:https://www.zh ...

  8. Mac电脑清理硬盘"其他"

    作为一个MacBook的使用者,无不感受到苹果对于系统和硬件的完美匹配. 苹果电脑不适合玩游戏,所以我只用它开发iOS使用.电脑里除了Xcode和常用办公软件与通讯软件以外,我没有装其他的任何大应用. ...

  9. 怎么查看Mac电脑的开机记录?

    可以使用last命令查看Mac电脑来看开机记录,同时也能查看关机记录. 首先打开mac的命令终端: 命令行终端敲入命令:last | grep reboot (查看开机时间记录) 命令行终端敲入命令: ...

随机推荐

  1. 如何修改build之后生成的文件结构和路径

    因为公司项目结构的原因, 被要求要build之后的文件夹结构要修改为: dist (文件夹) statics (文件夹) mobile (文件夹)  ---->  存放原本 build 之后存在 ...

  2. FFT Cheetsheet

    参考资料 https://oi.men.ci/fft-notes/ 单位根(此类群均可) \(ω^0, ω^1, \dots, ω^{n-1}互不相同\) \(ω^k_n=ω^{2k}_{2n}\) ...

  3. Azkaban日志中文乱码问题解决

    Azkaban作为LinkedIn开源的任务流式管理工具,在工作中很大程度上被用到.但是,由于非国人开发,对中文的支持性很不好.大多数情况下,会出现几种乱码现象: - 执行内置脚本生成log乱码 - ...

  4. Dockerfile中COPY命令的简单性

    dockerfile中的COPY命令是不会拷贝目录结构的,它只会单纯把包含的所有文件拷贝到另一个目录中去. 相关链接:https://www.cnblogs.com/sparkdev/p/957324 ...

  5. sqlzoo:6

    第一個例子列出球員姓氏為'Bender'的入球數據. * 表示列出表格的全部欄位,簡化了寫matchid, teamid, player, gtime語句. 修改此SQL以列出 賽事編號matchid ...

  6. jquery 点击事件切换样式

    $('#FatherName').on('click', '.ClassName', function(e){ $('.ClassName').removeClass('active'); $(thi ...

  7. 加固后,上传play store, 在 google play store 下载应用安装后,打开签名校验失败

    在Google Play Console. (Google Play App Signing )签署您的应用 在创建应用时: 会有个“ Google Play App Signing” 的东西,提示使 ...

  8. DirBuster工具扫描敏感文件

    DirBuster是一个多线程Java应用程序,旨在强制Web/应用程序服务器上的目录和文件名.它可以选择执行纯暴力,在查询隐藏文件和目录方面非常好用. 1)安装DirBuster 前提:电脑中必须安 ...

  9. spring-cloud-Zuul学习(四)【中级】--自定义zuul Filter详解【重新定义spring cloud实践】

      实现自定义zuul Filter 方法很简单,只要继承ZuulFilter跟加入到spring IOC容器即可,zuulFilter是一个抽象类,里面包含以下方法需要我们实现: String fi ...

  10. Gradle 学习一

    参考教程:https://guides.gradle.org/consuming-jvm-libraries/ 安装Gradle 下载地址:https://guides.gradle.org 配置环境 ...