1初级cc253x基础教程实验8uart收发_第1页
1初级cc253x基础教程实验8uart收发_第2页
1初级cc253x基础教程实验8uart收发_第3页
1初级cc253x基础教程实验8uart收发_第4页
1初级cc253x基础教程实验8uart收发_第5页
已阅读5页,还剩10页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、无锡谷雨电子实验八UART 串口收发实验2014/1/27在此处键入文档的摘要。摘要通常是对文档内容的简短总结。在此处键入文档的摘要。摘要通常是对文档内容的简短总结。目录前言2必要条件2原理图2编程参考2源码分析66 编译调试97 使用 Flash Programmer程序131 前言UART 串口在所有系统中都非常有用,尤其当需要实时监测系统状态时,通过串口打印当前状态,或者通过串口输入相关命令。2 必要条件A 硬件1、 SmartRF 系列开发板,CC2530 或者 CC25312、 CC-Debugger 仿真器B1、 IAR for 8051 开发环境,版本:8.102、 Flash

2、Programmer 固件烧写3、 串口调试助手。3 原理图P0.2 是 CC254x UART 的 Rx 接收信号,P0.3 是 CC254x CTS 和 RTS,当开启 flowcontrol 流控制时需要改硬件。UART 的 Tx 发射信号,另外还有4 编程参考相关寄存器 UxCSR、UxCSR、UxGCR、UxBUF、UxBAUD、CLKCONCMD、CLKCONSTA 如下表所示波特率计算公式如下:这里使用常见的 115200 波特率。配置 UART 一般步骤如下:1、 配置 IO 端口为外设(非 GPIO)2、 配置 UART 相关寄存器及波特率。宏定义函数 BV()。#defin

3、e BV(x)1x;/将 1每个位。x 位,这样可以非常方便而且非常清晰的控制寄存器的/ P1.0 定义为输出P1DIR |= BV(0);P1SEL &= BV(0);/ P1.0 定义为一般 GPIOP0SEL |= BV(2) | BV(3);/配置 P0.2 和 P0.3 为外设,非 GPIOU0CSR |= BV(7); /配置当前为 UART,非 SPIU0GCR |= 11; /根据上述波特率设置表格设置 115200 波特率U0BAUD |= 216;/ 根据上述波特率设置表格设置 115200 波特率UTX0IF = 0;/位寄存器,直接操作,清除中断标志除此之外还需要设置串

4、口接收的相关寄存器。U0CSR |= BV(6);/允许接收数据 IEN0 |= BV(2);/打开接收中断 EA=1;/打开总中断5 源码分析打开实验 7 按键实验uart 工程(双击 uart.eww 打开)#include /CC2531 也可以使用该头文件/Ghostyu SmartRF 开发板实验/串口收发验,波特率 115200,8N1./技术支持:/无锡谷雨电子typedef unsigned char u8;typedef char8;typedef unsigned shortu16;/定义 P1.0 口为 LED1 控制端#define LED1 P1_0/*常用宏定义*/

5、#define BV(x) (1(x)/*名称: DelayMS()功能: 毫秒延时,系统时钟不配置时默认使用16M,本 demo 中,时钟为外部 32M参数: msec 延时参数,注意,最大数值为 65536ms出口参数: 无*/ void DelayMS(u16 msec)u16 i,j;for (i=0; imsec; i+)for (j=0; j536*2; j+);/*名称: InitLed()功能:参数:出口参数:设置 LED 相应的 IO 口无无*/void InitLed(void)/ P1.0 定义为输出/ LED1 灯熄灭P1DIR |= BV(0);LED1 = 0;/*

6、名称: InitUart()功能:参数:出口参数:串口初始化函数无无*/void InitUart(void)P0SEL |= BV(2) | BV(3);/配置 P0.2 和 P0.3 为外设,非 GPIOU0CSR |= BV(7); /配置当前为 UART,非 SPIU0GCR |= 11; /根据上述波特率设置表格设置 115200 波特率U0BAUD |= 216;/ 根据上述波特率设置表格设置 115200 波特率UTX0IF = 0;/位寄存器,直接操作,清除中断标志U0CSR |= BV(6);/允许接收数据 IEN0 |= BV(2);/打开接收中断 EA=1;/打开总中断/

7、*名功称: UardString()能: 串口发送函数参数: Data:发送缓冲区出口参数: 无len:发送长度*/void UardString(8 *Data, u16 len)u16 i;for(i=0; ilen; i+)U0DBUF = *Data+; while(UTX0IF = 0);UTX0IF = 0;/*名称: UardByte()功能: 串口发送函数参数: byte,带发送的数据出口参数: 无*/void UardByte(8 byte)U0DBUF = byte;while(UTX0IF = 0);UTX0IF = 0;/*名描称: UART0_ISR(void) 串口

8、中断处理函数述: 当串口 0 产生接收中断,将收到的数据保存在 RxBuf 中,每次接收一个字节*/#pragma vector = URX0_VECTOR errupt void UART0_ISR(void)/ 清中断标志 ;URX0IF = 0;UardByte(U0DBUF); /收到后立即发送出去void main(void)CLKCONCMD &= 0 x40;while(CLKCONSTA & 0 x40);/设置系统时钟源为 32MHZ 晶振/等待晶振稳定/设置系统主时钟频率为 32MHZCLKCONCMD &= 0 x47;InitLed();InitUart();/调置串口

9、相关寄存器while(1)DelayMS(50); LED1=LED1;6 编译调试根据实验 1 中的方法调试程序,若有语法错误,根据提示修改语句。每隔 1 秒,led1 翻转一次。并且向串口输出”o Ghostyu”.第一次使用 New SmartRF 串口时,需要安装 CH340G USB 转 UART 的驱动程序。请将提供的 mini-usb 线插到 New SmartRF 开发板左边的 MINI-USB 座中,然后将波动开关拨到 usb 线一次,如下图:一旦当你把 NewSmartRF 开发板通过 usb 转串口的 miniusb 连接到 PC 上,windows 会提示发现新硬件,要

10、求安装开发板上的 USB 转串口 CH340G 驱动程序,如果 windows 从未安装过 ch340 的驱动,会出现如下图:2.2.1 安装串口转 USB 驱动(CH340G)驱动程序位于/Software/Software串口USB 转串口驱动,如下图安装的带有数字签名的驱动程序 ch341.zip,解压后,运行 setup.exe,点击安装,大概 10 秒后安装成功。安装成功后,退出驱动安装程序。这时,拔掉刚才已经连接的 NewSmartRF 开发板,然后重新连接。或者使用关闭 NewSmartRF 电源开关,重新打开。打开设备管理器,查看刚才安装的设备驱动。(如何打开设备管理器请)假如未能安装成功,或者有黄色的感叹号,请右击改设备,选择更新驱动程序。在出现的框中选择“浏览计算机以查找驱动程序”然后定位到驱动程序所在目录,然后单击下一步。直到安装成功。驱动

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论