欢迎来到天天文库
浏览记录
ID:46965424
大小:1.19 MB
页数:38页
时间:2019-12-01
《片上电子信息系统_基于EDA的FPGA_串口通信与串口中断》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、.....片上电子信息系统课程设计指导书一、课程设计目的和要求设计一个片上电子信息系统,培养工程实践创新能力。在相关课程知识的拓宽、提高和综合应用的基础,强化培养理论联系实际能力、系统设计能力、实际动手能力。二、课程设计方式学生在教师指导下按照设计题目和任务,认真分析、查找资料,按照各阶段基本要求,按时完成各项内容。十四周:星期二、三下午3:00。。。星期四、五下午9:00十五周:暂定上午三、课程设计任务l任务一在开发板FPGA内部实现一个Microblaze软核,通过对其外设GPIO编程使开发板上的6盏LED灯闪烁。头文
2、件#include"xparameters.h"#include"xgpio_l.h"参考函数1.XGpio_mSetDataDirection(BaseAddress,Channel,DirectionMask)此函数用于设置GPIO的方向。参数说明:BaseAddress:GPIO的基地址,可从xparameters.h头文件获得,下同。Channel:GPIO通道(1或者2)选择,针对本实验,此参数固定为1,下同。DirectionMask:GPIO输入输出选择,1选择输入,0选择输出。无返回值2.XGpio_mSe
3、tDataReg(BaseAddress,Channel,Data)此函数用于往GPIO置数,GPIO会输出用户设置的数据。参数说明:BaseAddress:GPIO的基地址Channel:GPIO通道(1或者2)选择Data:写入寄存器的数据无返回值l任务二PC机通过串口RS232控制6盏LED灯,如果上位机发送‘1’(char),则LED亮,并且FPGA通过串口给PC机发送字符串“LEDON!”,否则LED灭,FPGA通过串口向PC机发送字符串“LEDOFF!”。//串口助手头文件#include"xparameter
4、s.h"#include"xuartlite_l.h"#include"xgpio_l.h"学习参考.....参考函数1.XGpio_mSetDataDirection(BaseAddress,Channel,DirectionMask)参数说明:BaseAddress:GPIO的基地址Channel:GPIO通道(1或者2)选择DirectionMask:GPIO输入输出选择,‘1’选择输入,‘0’选择输出无返回值2.XGpio_mSetDataReg(BaseAddress,Channel,Data)参数说明:Base
5、Address:GPIO的基地址Channel:GPIO通道(1或者2)选择Data:写入寄存器的数据无返回值3.XUartLite_SendByte(BaseAddress,Data)此函数作用是往串口发送数据。参数说明:BaseAddress:UartLite的基地址Data:uart发送的8bits数据无返回值4.XUartLite_RecvByte(BaseAddress)此函数作用是从串口接受数据。参数说明:BaseAddress:UartLite的基地址返回值:8bitsuart接收的数据l任务三上位机通过串口
6、向FPGA发送不多于4个字符(char)的10进制数,各个数据之间以空格键分隔,以回车键结束。然后在Microblaze内部进行最简单的FIR滤波,将数据与其前一个数据相加,即y(n)=x(n)+x(n-1),然后以字符型的10进制数输出,数据之间依然以空格分隔。头文件#include"xbasic_types.h"#include"xparameters.h"#include"xstatus.h"#include"xuartlite.h"#include"xuartlite_l.h"函数说明1.XUartLite_Sen
7、dByte(BaseAddress,Data)参数说明:BaseAddress:UartLite的基地址Data:uart发送的8bits数据无返回值2.XUartLite_RecvByte(BaseAddress)参数说明:BaseAddress:UartLite的基地址返回值:8bitsuart接收的数据学习参考.....l任务四(选作)在程序的主循环中使LED灯闪烁。同时监听串口中断,如果串口上有接收数据,则把数据转发回PC机串口。需要使用Microblaze中断方式。头文件#include"xparameters.
8、h"#include"xintc.h"//interruptcontroller#include"xuartlite_l.h"//uart#include"xgpio_l.h"//gpio函数说明1microblaze_enable_interrupts();使能microblaze全局中断,在程序开头
此文档下载收益归作者所有