笔者通过查阅相关资料,了解了BeagleBoneBlack开发板的UART接口特性,掌握的UART接口的基本使用方法,最后通过一个C语言的例程实现串口的自发自收。有了这个串口开发板就可和其他设备进行串口通信了,比如可以将单片机通过串口挂在开发板上。

第一步:硬件连接

1、用miniUSB线将 电脑与开发板相连,BeagleBoneBlack启动之后,在浏览器里面输入192.168.7.2,打开网页之后就可以查看相关的串口信息。

(1)BeagleBoneBlack开发板的P8,P9扩展接口上共引出了四个半的串口,其中UART1,UART2,UART4,UART5四个串口的发射和接收引脚全部引出,UART3只引出了发射引脚,所以共引出了四个串口;

(2)BeagleBoneBlack开发板的UART0引脚默认作为调试引脚使用,系统上电之后UART0作为默认的打印引脚使用;

(3)接下来的实验将会以UART4为例说明串口的使用。

2、本实验的硬件连接如下图所示,将P9的11,13引脚直接连接,这样就可以实现自发自收。

1)功能说明:设置或显示环境变量。

2)语法:export [-fnp][变量名称]=[变量设置值]

3)补充说明:在shell中执行程序时,shell会提供一组环境变量。 export可新增,修改或删除环境变量,供后续执行的程序使用。

4)作用范围:export的有效期仅限于于该此登陆操作。

5)参 数:

-f 代表[变量名称]中为函数名称。

-n 删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

-p 列出所有的shell赋予程序的环境变量。

6)一个变量创建时,它不会自动地为在它之后创建的shell进程所知。而命令export可以向后面的shell传递变量的值。当一个shell脚本调用并执行时,它不会自动得到原为脚本(调用者)里定义的变量的访问权,除非这些变量已经被显式地设置为可用。

7)export命令可以用于传递一个或多个变量的值到任何后继脚本

(2)查看环境变量:cat $SLOTS

(3)加载UART4:echo BB-UART4 > $SLOTS

(4)查看设备:ls ttyO*,ttyO4就是添加的UART4设备

1)*:匹配符。ttyO*可以过滤出所有ttyO开头的文件

2、利用minicom打开串口

2 #include<fcntl.h> 3 #include<unistd.h> 4 #include<termios.h> // using the termios.h library 6 int main() 8 int file, count; 9 if ((file = open( " /dev/ttyO4 " , O_RDWR | O_NOCTTY | O_NDELAY))< 0 ) 10 { 11 perror( " UART: Failed to open the file. \n " ); 12 return - 1 ; 13 } 14 struct termios options; // the termios structure is vital 15 tcgetattr(file, &options); // sets the parameters associated with file 16 // Set up the communications options: 17 // 9600 baud, 8-bit, enable receiver, no modem control lines 18 options.c_cflag = B9600 | CS8 | CREAD | CLOCAL; 19 options.c_iflag = IGNPAR | ICRNL; // ignore partity errors, CR -> newline 20 tcflush(file, TCIFLUSH); // discard file information not transmitted 21 tcsetattr(file, TCSANOW, &options); // changes occur immmediately 22 unsigned char transmit[ 18 ] = " Hello BeagleBone! " ; // the string to send 24 if ((count = write(file, &transmit, 18 ))< 0 ) 25 { // send the string 26 perror( " Failed to write to the output\n " ); 27 return - 1 ; 28 } 30 usleep( 100000 ); // give the Arduino a chance to respond 31 unsigned char receive[ 100 ]; // declare a buffer for receiving data 32 if ((count = read(file, ( void *)receive, 100 ))< 0 ) 33 { // receive the data 34 perror( " Failed to read from the input\n " ); 35 return - 1 ; 36 } 37 if (count== 0 ) 38 printf( " There was no data available to read! \n " ); 39 else 40 { 41 printf( " The following was read in [%d]: %s\n " ,count,receive); 42 } 43 close(file); 44 return 0 ;

2、实验现象

转载于:https://www.cnblogs.com/zhezhe1988/p/4356856.html

笔者通过查阅相关资料,了解了BeagleBoneBlack开发板的UART接口特性,掌握的UART接口的基本使用方法,最后通过一个C语言的例程实现串口的自发自收。有了这个串口开发板就可和其他设备进行串口通信了,比如可以将单片机通过串口挂在开发板上。 第一步:硬件连接 1、用miniUSB线将 电脑与开发板相连,BeagleBoneBlack启动之后,在浏览器里面输入192....
BeagleBone Black快速入门教程 Beaglebone是与 Arduino、树莓派并列的三大开源平台之一。 Beaglebone的特点可以说是融合了Arduino与树莓派的优点。它既有比 Arduino还多的 GPIO口, 还有比树莓派更高的性能。 Beaglebone运行的是完整的 Linux操作系统,这与 Arduino、树莓派都不同。 Arduino环境只是最基本的単片机,程序编写、编译都在计算机上进行,而且调试非常困难。而Beaglebone,代码的编写编译都可以在本地进行,而且可以 使用 的语言种类繁多。例如,常用的 C、 C++、 Python、 Perl都可以用来为 Beaglebone编程。不仅如此, Beaglebone自带了基于 Web的 Cloud9编辑器以及对应的 BoneScript语言, 这使得你只需要有网络和浏览器就可以为 Beaglebone编程。 本教程是国内唯一 BeagleBone Black中文教程。本教程全面讲解 BeagleBone Black 使用 和开发。 内容包括硬件组成、Linux系统维护、硬件控制、Python开发、BoneSclipt开发等内容。
Beaglebone Black上有 UART 1- UART 5共5个可用的 uart 串口, UART 0供调试 使用 。我们进入/lib/firmware目录中可以看到系统自带了一些与 uart 有关的device tree /lib/firmware/BB- UART 1-00A0.dts /lib/firmware/BB- UART 2-00A0.dts /lib/firmware/BB- UART 4-00A0.dts
它的串口资源如下: 一共四个半串口,其中一个串口的rx被系统 使用 了没引出来,留给用户的还是4个。下面例程以 UART 1即P9.24/P9.26为例串口 使用 方法分为两大步: 1.加载 UART cape 2.访问串口设备是这样的,BeagleBone官方把所有扩展设备(插在扩展槽上的)都叫cape。无论这个cape是真实的还
今天成功地进行了对串口的操作和配置(其实比较简单), 想记录一下。 首先,由于Beaglebone Black采用了3.8的Linux内核,引进了设备树的概念。所以要想操作特定的外设,首先要先和设备树打交道。 好在今天要操作的是串口,串口的设备树已经被包含在文件系统中了, 可以查看一下: 其中有 UART 1- UART 5共5个 uart 串口, UART 0供调试 使用 。 该目录下的*dtbo是
其他信号也可以通过这些引脚连接,但是在上电时,引脚是默认的设置。 要注意的是,这些引脚的电压是3.3v,不能连接5v信号,不然板子容易损坏。同时,不要在没有上电的情况下,对引脚加电压,会损坏处理器。 连接器P9: 其中PWR_BUT是5v电平,这个信号是TPS芯片内部产生的。 3.供电插口 5v直流供电,板子需要5v直流,1A的电流或者...
说明:以上测试实在BB-Black vision C上进行的,系统是linux3.8的。用的是2015年发布的debian系统,装在8gde SD卡上面。我是用USB连连接BBB到我的window主机上。然后通过putty配置ssh来控制bbb,这种方式简单高效。 BB-Black的 UART 加载是十分简单的, UART 0是调试口,除外板子上实际支持 UART 1-5五个接口,但是在板子的设备树
对于您的问题,我可以为您提供以下推荐的开发板: 1. Raspberry Pi:这是一款广受欢迎的开发板,它有着强大的社区支持和大量的文档和教程,适合 学习 各种嵌入式开发技术,包括设备树驱动。 2. BeagleBone Black:这是另一个流行的开发板,它有着类似于Raspberry Pi的社区支持和大量的文档和教程,可以帮助您 学习 设备树驱动的开发。 3. Banana Pi:这是一款基于ARM架构的开发板,它可以运行类似于Raspberry Pi的操作系统,同时具有更多的GPIO和外设接口,适合于 学习 设备树驱动的开发。 需要注意的是,设备树驱动是一项高级的嵌入式开发技术,需要具备一定的基础知识和经验,如果您是初学者,可能需要先 学习 一些基础的嵌入式开发知识和编程技巧,再逐步深入 学习 设备树驱动的开发。