77范文网 - 专业文章范例文档资料分享平台

通信新技术综合训练报告(5)

来源:网络收集 时间:2018-12-09 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

开始建网N建成Y启动定时器亮2s灭4s响应中断Y控制LED0亮灭产生PWM波将波形引入DIO16

流程图解析:在建网成功后,就启动定时器开始定时,由于用的是Timer0,此时在DIO10脚会产生一个PWM波(高电平时间4s,周期为6s);将次DIO口引脚引入到DIO16脚(LED0)。

四、实验结果与分析

1. 接通电源后,按下SW0 ,LED灯来回闪烁,按下SW1时停止闪烁,从新按下SW0按键时,LED接着停止地方闪烁下去。

分析:程序通过按键SW0来启动定时器的开启,当按下时,定时器开始定时,定时间到时且为低电平时响应中断控制跑马灯闪烁;按下按键SW1时,定时器停止定时,也就不会产生中断,再次按下SW0时,定时器从新打开,LED接着中断的地方闪烁。 2. 接通电源,将DIO10接到DIO16时会观察到LED0会自动闪烁,亮2s,灭4s; 分析:接通通原,DIO10 会产生周期为6s,低电平时间为2s的PWM波,由实验一我们知道LED给低电平时,LED灯亮,每6s到,就想要中断,点亮LED0灯2s,随后灭,等待下次中断的到来。

五、存在问题和解决方法

1.主要遇到的问题是:由于当时想实现定时器周期为6s,采用内部时钟16MHz。开始采用10分频。结果算出个数: 93750.后来发现时间达不到6s,分析发现93750大于65535.因为我们使用的是16位无符号数。最大值为65535.于是我们将分频数改到了11.从新计算等到Lo。可以实现了,

21

实验七 UART实验

一、实验内容

1. 分别为Coordinator和EndDevice设计一个程序:按动EndDevice的不同按钮能够向Coordinator发送不同信息,再由Coordinator经串口转发给PC机,串口调试工具输出窗口能够看到相关信息。

2. 分别为Coordinator和EndDevice设计一个程序:通过PC机串口调试工具经串口发送文本信息给Coordinator,再由其转发给EndDevice,然后在与EndDevice相连的LCD上显示文本信息内容。

二、实验原理 1.常用函数

(1). vAHI_UartEnable( ) 函数

UART 使能指定。函数的原型如下: void vAHI_UartEnable(uint8 u8Uart);

参数u8Uart用来标识UART,其值可以是E_AHI_UART_0或E_AHI_UART_1,前者表示 UART0,后者表示UART1。

(2). vAHI_UartReset( ) 函数

UART 重新设置发送和接收 FIFO 队列。该函数的原型如下:

void vAHI_UartReset( uint8 u8Uart, bool_t bTxReset, bool_t bRxReset); (3). vAHI_UartSetClockDivisor( ) 函数

该函数用来设置 UART 波特率,函数的原型如下:

void vAHI_UartSetClockDivisor( uint8 u8Uart, uint8 u8BaudRate); (4). vAHI_UartSetControl( ) 函数

设置指定的 UART 的各种控制位。该函数的原型如下: void vAHI_UartSetControl( uint8 u8Uart,

bool_t bEvenParity, bool_t bEnableParity, uint8 u8WordLength, bool_t bOneStopBit, bool_t bRtsValue );

(5). vAHI_UartSetInterrupt( ) 函数

使能/屏蔽指定 UART 产生的中断,并且设置接收 FIFO 级别,函数的原型如下: void vAHI_UartSetInterrupt( uint8 u8Uart,

bool_t bEnableModemStatus,

bool_t bEnableRxLineStatus, bool_t bEnableTxFifoEmpty, bool_t bEnableRxData, uint8 u8FifoLevel);

(6). u8AHI_UartReadLineStatus( ) 函数

获得指定 UART 的线状态信息,该函数的原型如下: uint8 u8AHI_UartReadLineStatus ( uint8 u8Uart);

22

参数 u8Uart 用来标识 UART。 (7). vAHI_UartWriteData( ) 函数

UART 往发送 FIFO 队列中放一个字节。函数的原型如下: void vAHI_UartWriteData ( uint8 u8Uart, uint8 u8Data );

其中 u8Uart 用来标识 UART,u8Data 是指往发送 FIFO 队列中放的字节。 (8). vUART_printInit ( ) 函数

该函数用来初始化串口 0,函数的原型如下:

PUBLIC void vUART_printInit(void);

调用该函数需要在工程文件中加入头文件Printf.h,例如: #include (9). vPrintf( )函数

使用vPrintf( )函数往串口 0 发送数据,函数的原型如下:

PUBLIC void vPrintf(const char *fmt, ...);

(10). UART 接收字符中断响应处理

JZA_vPeripheralEvent( )函数在 Jennic ZigBee 协议栈处理硬件中断时调用。

三、软件设计

1. 程序图:

开始开始初始化LEDCoordinator建网成功Y入网N成功N初始化LEDEndDevice入网成功NSW0?Y发data0SW1?Y发data1NSW2?YSW3?发data2发data3Coordinator接受数据向PC串口写数据

2.

23

开始开始初始化LEDCoordinator建网成功PC发送数据EndDevice接受数据LCD显示Coordinator发送数据N初始化LEDEndDevice入网成功读取串口数据数据达到60打包发送NCoordinator发送数据启动Timer160?Y发送数据响应串口中断Timer中断?发送数据设置标识符关闭定时器

EndDevice接受数据处理LCD清屏将数据存在数组NLCD显示Ni

四、实验结果与分析

1. 分别按动按键SW0~SW3,PC机的串口调试工具分别输出窗口上显示:“江苏技术师范学院”,“08通信2W 王鑫”,“08通信1W 解亚军”,“专业课程设计”。

分析:分别按动不同的按钮,EndDevice会发送不同的信息,Coordinator接受信息在PC机串口显示。

2. 在PC机上发送测试TXT1和测试TXT2文本,分别在液晶上显示。液晶每屏显示60字符,再换屏显示剩余字符直到文本结束。

分析:设定串口0为中断串口,在串口中断响应函数程序中写入相应的控制程序,从而实现了如上的实验现象。

24

五、存在问题和解决方法

1. 问题一:在TXT测试文本时,开始液晶使显示的两页内容并不是想连的内容。后来发现原因是:发送字符80 大于液晶的字符64的个数;因此不相连,改变发送个数,可以看到相连的内容。

2 .问题二 :在液晶上显示乱码,经讨论我们知道,显示汉字时,汉字的编码是16位,必须把这代码放入指定内容是,才可以实现出我们所要的内容。

解决方法:我们发现当有偶数个字符时,不会发生错误,当为奇数个时,就会产生乱码。于是我们加个变量来统计字符的个数,应为字符代码 < 80H,将标识符 m 加1.判断m的奇偶来处理,如果为偶数,不处理写入影子内存中。当为奇数时,将汉字的代码写入写个开始,将标志清0.

3.问题三:解决问题二时,液晶显示带有特殊符号;经老师分析那是Enter的字符,于是找到相应的字符0x0D和0x0A在字符代码 < 80H中判断,将对应的字符清空。 4.在发送大得测试文件时,会有数据丢失的情况,有待解决。

25

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库通信新技术综合训练报告(5)在线全文阅读。

通信新技术综合训练报告(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/354176.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: