RPI Serial Communication (二)

这篇文章是给谁看的?

给那些有一定的51,PIC 等单片机基础的,并且对树莓派的通用输入输出(GPIO)数据传输有兴趣的菜鸟们(noobs!),比如我。

我能从这篇文章中学到嘛?

这篇文章是新手入门向的文章。有许多有用的链接,以及资源。你看从这里学到(复习?)很多硬件接口基础知识。

这文章是你写的?

不,不。我是在搜索GPIO parallel时无意找到的博文,觉着非常好翻译到自己的博客,方便以后查询,顺便给大家个”福利”。原文(http://jeffskinnerbox.wordpress.com/2012/12/05/raspberry-pi-serial-communication/)

哦,这样啊那你为什么要搜GPIO parallel传输呢?

我想用三个RPI同时(要同步的哦)传输视频流到PC上(做图像拼接)。正在考虑传输方式是USB 或者是GPIO(parallel)。 USB当然是最简单的方法了,但是问题是画质不稳定,而且延迟严重。所以考虑用编码以后用GPIO进行并行传输。如果有大大能给点指导,我给你捡肥皂哦~~

a

<-------------------我是华丽的分割线-------------------------->

如果你对PIC或者51等单片机有相当的了解,可以直接跳过前面的回顾部分,进入下一部分。

回顾:

首先要了解的是:数据是怎样在RPI,或者说大家平常用的电脑,里传输的。在大多数情况中,总线或者说数据总线是用来传输数据的。

总线设计师的工作就是设计电路,用来把数据从这个电路传输到另一个电路。这些数据可以以串行或者并行的方式进行传输。

·        串行总线(serialbus):最不消耗材料的传输方式。每次传输1个比特。这就是所谓的串行数据传输。数据在传输前是并行的。为了能够进行串行传输,这些数据必须先转换成串行(serial),在接收端再转换成并行(parallel).通常都有专门的电路来完成这些工作,就是所谓的SerDes(serializer/deserializer)。因为集成电路的针数(pin)大大增加了电路的成本,所以为了减少针数,在速度不是非常重要的情况下,很多厂商选择使用串行数据线来传输数据。主要的几种串行总线有:

o  Serial Peripheral Interface (SPI)

o  Inter-Integrated Circuit(I2C)


o  UNI/O


o  1-wire

·        并行总线(parallel bus)从某种角度来说               是更加有效的数据传输手段。               但是并行传输有着传输速度和距离的限制。如果超过了一定的速度或者距离,数据传输将变得不可靠。常见的并行总线标准有以下几种:

o  Parallel Bus Inteface(PBI)

o  Peripheral Component Interface(PCI)

o  Samll Computer Systems Interface(SCSI)

o  VMEbus

o  Rambus 常用于内存数据传输

RPI GPIO:

                从名字上可以看出来,GPIO(通用输入输出接口)的功能可以通过程序来设定,已达到一定的目的。GPIO的针脚是直接和处理器核心连接的,RPI开发者已经为我们制定了几套GPIO的功能方案。(在RPIBCM2835GPIOs 页面里可以看到一张巨大的表格,注意横行黄色的字,比如ALT0,ALT1,ALT2等等,都是可选的方案alternatives0,1,2..)。有些方案是非常有用的。在RPI启动的时候确定了使用哪一套方案。默认的是ALT0,以下是ALT0的示意图:


                                                          

更改方案的方法如下:

volatile unsigned *gpio;

 

#define SET_GPIO_ALT(g,a) *(gpio+(((g)/10))) |=(((a)<=3?(a)+4:(a)==4?3:2)<<(((g)%10)*3))

 

下面的代码把GPIOg转换成ALT0

INP_GPIO(g);
SET_GPIO_ALT(g,0);
#define INP_GPIO(g) *(gpio+((g)/10)) &= ~(7<<(((g)%10)*3))

这个链接告诉你怎样改变GPIOpin 的功能stepby step!

实际上,所有的26个针脚都可以独立提供不同的可选功能。关键还是看你怎么进行设置了!

除此之外,脉冲编码调制PCM(Pulse-code modulation), pin18 & 21 可以用数字信号来表示模拟信号。这个通常用来控制灯光的强度或者是电机的转速。
# 高校智慧校园解决方案摘要 智慧校园解决方案是针对高校信息化建设的核心工程,旨在通过物联网技术实现数字化校园的智能化升级。该方案通过融合计算机技术、网络通信技术、数据库技术和IC卡识别技术,初步实现了校园一卡通系统,进而通过人脸识别技术实现了更精准的校园安全管理、生活管理、教务管理和资源管理。 方案包括多个管理系统:智慧校园管理平台、一卡通卡务管理系统、一卡通人脸库管理平台、智能人脸识别消费管理系统、疫情防控管理系统、人脸识别无感识别管理系统、会议签到管理系统、人脸识别通道管理系统和图书馆对接管理系统。这些系统共同构成了智慧校园的信息化基础,通过统一数据库和操作平台,实现了数据共享和信息一致性。 智能人脸识别消费管理系统通过人脸识别终端,在无需接触的情况下快速完成消费支付过程,提升了校园服务效率。疫情防控管理系统利用热成像测温技术、视频智能分析等手段,实现了对校园人员体温监测和疫情信息实时上报,提高了校园公共卫生事件的预防和控制能力。 会议签到管理系统和人脸识别通道管理系统均基于人脸识别技术,实现了会议的快速签到和图书馆等场所的高效通行管理。与图书馆对接管理系统实现了一卡通系统与图书馆管理系统的无缝集成,提升了图书借阅的便捷性。 总体而言,该智慧校园解决方案通过集成的信息化管理系统,提升了校园管理的智能化水平,优化了校园生活体验,增强了校园安全,并提高了教学和科研的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值