注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
574433742的个人空间 https://home.eeworld.com.cn/space-uid-391494.html [收藏] [复制] [分享] [RSS]
日志

SAMR21串口通信

已有 2092 次阅读2015-3-20 23:45 |个人分类:IoT

SAMR21串口通信
串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。典型地,串口用于ASCII码字符的传输。通信使用3根线完成,分别是地线、发送、接收。由于串口通信是异步的,端口能够在一根线上发送数据同时在另一根线上接收数据。其他线用于握手,但不是必须的。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。对于两个进行通信的端口,这些参数必须匹配。(以上内容来自百度百科,详见百度百科(http://baike.baidu.com/link?url=Cf6G7A7nVdH_FM1PYo5U8Ga6z6sQPPqO1sA2X4OPeTemKJLKq3LMsjzEymkQIJZI7XdB1uX017BvhsXjDe9UKq))
串口通信也是经常使用的通信方式,TXD、RXD、GND即可完成通信,对于信息量要求不是太大的数据传输,一般使用串口比较简单。USB传输速度以及稳定性都很好,适合数据量大的传输,通信协议相比USART自然复杂很多。
Atmel Studio中也是提供了很多的例程供大家来参考,但是总是感觉ASF比较臃肿,可能是Atmel要兼容公司大部分产品,各种选择性编译语句也是醉了,真的希望Atmel可以实现高内聚,低耦合,如ST一样提供库函数,用户选择性的添加和使用。AtmelStudio相对于IARkeil有点慢,可能一个原因就是要编译很多的东西,但是自动补全功能还是蛮不错的,因为是自家开发环境,自己的产品,又有强大的ASFAtmelSoftwe Frame),自然开发比第三方好入门。
包装上,写着的三本即可开发:
一、下载安装Atmel Studio
二、打开Atmel Studio
三、将开发板通过USB连接到电脑上
如此简单。
首先来看一下官方给提供的样例程序吧,打开AtmelStudio开发环境,新建一个ExampleProject
ASF中选择SAMR21 搜索USART,可以看到官方提供的四个关于USART的程序,如下:

3-1 ATMEL SAMR21 USART Example
TXDEXT1PIN9  (PA22)
RXDEXT1PIN15 (PB03)
/* Speed totest USART at */
#define TEST_USART_SPEED   115200
我使用的是USBTTLCH340 芯片),与USBTTL连接好之后,配置好与电脑连接ok,之后,电脑上位机配置波特率115200,无校验位,停止位1
现在在AtmelStudio中修改程序如下:

usart_write_buffer_job(&usart_tx_module,"HelloWorld\n",11);
usart_read_buffer_job(&usart_rx_module, usart_temp,5);

上面两个函数分别是串口发出和读取字符串

3-1 ATMEL SAMR21 USART Example

本文来自论坛,点击查看完整帖子内容。

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章