mac电脑进行可见光通信实验要点

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退出。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏沈玉琛的专栏

当 MySQL 连接池遇上事务(二):消失的记录

ySQL连接池是一个很好的设计,通过将大量短连接转化为少量的长连接,从而提高整个系统的吞吐率。但是当跟事务一起使用时,如果使用方式不恰当时,就会发生一些奇怪的事...

5613
来自专栏运维一切

MFS 数据恢复 转

一旦mfsmaster崩溃(例如因为主机或电源失败),需要最后一个元数据日志changelog 并入主要的metadata 中。这个操作时通过mfsmetare...

1333
来自专栏熊训德的专栏

Hbase Replicaition 在腾讯云中应用概述

Hbase 的 Repliation 是通过 Zookeeper 的协助,从 Master 集群异步往 Slave 集群写 WAL 实现的。可以实现典型的 Ma...

8235
来自专栏服务端技术杂谈

微服务架构关键词

模块即服务; 微服务使用库,库定义成内存里面的调用,微服务定义成web请求或远程调用; 独立可部署; 接口调用; 缺点是远程调用比本地重很多; 按业务逻辑进行分...

3615
来自专栏ThoughtWorks

高效快速地加载 AngularJS 视图|TW洞见

今日洞见 文章作者、部分图片来自ThoughtWorks:陈计节。 本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体...

3117
来自专栏linux驱动个人学习

日志式文件系统

日志文件系统(journaling file system)是一个具有故障恢复能力的文件系统,在这个文件系统中,因为对目录以及位图的更新信息总是在原始的磁盘日志...

3616
来自专栏Java后端技术栈

Nginx模块管理和进程管理

Nginx和Apache一样,同样使用模块化管理,但是和Apache“热插拔”(每次添加模块的时候,不需要重新编译,只需要重新载入即可)的方式不同,Nginx每...

962
来自专栏猿天地

hbuilder 开发5+ APP采坑记录

开发一款APP产品需要在安卓和苹果2大平台发布,同时开发团队也需要有安卓和IOS。 HTML5 Plus移动App,简称5+App,是一种基于HTML、JS、C...

7399
来自专栏Java编程技术

Dubbo剖析-服务降级

dubbo提供了一些服务降级措施,当服务提供端某一个非关键的服务出错时候,dubbo可以对消费端的调用进行降级,这样服务消费端就避免了在去调用出错的服务提供端,...

5732
来自专栏Spark学习技巧

调试flink源码

本文主要是讲讲flink的源码编译,案例运行,flink源码调试过程。调试flink的源码及案例,需要先clone工程,编一下源码,去掉规范检查,修改工程,最后...

5835

扫码关注云+社区

领取腾讯云代金券