当前位置: 首页 > news >正文

黑龙江做网站的公司桂林有名网站制作公司

黑龙江做网站的公司,桂林有名网站制作公司,律师事务所 网站备案,wordpress支持拨打电话文章目录 1 实验任务2 系统框图3 硬件设计4 软件设计 1 实验任务 本实验任务是PS端写彩条数据至DDR3内存中#xff0c;然后通过PL端的VDMA IP核将彩条数据通过HDMI接口输出显示。 2 系统框图 本实验是用HDMI接口固定输出1080P的彩条图#xff0c;所以#xff1a; rgb2lc… 文章目录 1 实验任务2 系统框图3 硬件设计4 软件设计 1 实验任务 本实验任务是PS端写彩条数据至DDR3内存中然后通过PL端的VDMA IP核将彩条数据通过HDMI接口输出显示。 2 系统框图 本实验是用HDMI接口固定输出1080P的彩条图所以 rgb2lcd模块实际是rgb2dvi模块AXI GPIO不存在因为不需要读取LCD屏幕的ID动态时钟配置改为PLL输出固定频率与AXI-Interconnect不连VTC输出固定时序与AXI-Interconnect不连 3 硬件设计 注意事项 VTC的clken引脚 该引脚不连接VTC也能正常工作pg016中描述该引脚是Video Core active-High Clock Enable即高有效在Block Design中添加VTC后clken引脚前边有个小圆圈且双击该引脚Polarity参数显示为ACTIVE_LOW即低有效将该引脚接常量1视频输出正常将该引脚接常量0视频无法输出VTC未工作结论以文档为准clken高电平有效 rgb2dvi模块 使用正点原子的rgb2dvi模块数据的3个字节是G在中间R和B在两头使用Digilent的rgb2dvi模块数据的3个字节是B在中间R和G在两头调试时一脸懵逼 4 软件设计 注意事项 PS往DDR3写入数据后要使用Xil_DCacheFlushRange刷新run_triple_frame_buffer函数并非只能用于三帧缓存的情况实际1-32帧缓存均可使用该函数取名triple可能和VDMA模式使用三帧缓存有关ReadSetup函数和WriteSetup函数会根据VDMA配置时选择的Frame Buffers数量设置相应数量的帧缓冲区起始地址本实验选择Frame Buffers数量1PS端只往DDR3中写入一帧彩条图XAxiVdma_DmaStop函数往VDMACR寄存器的bit0写0Run / Stop controls the running and stopping of the VDMA channel. 当前VDMA操作完成后停止0 Stop – VDMA stops when current (if any) VDMA operations are complete /***************************** Include Files *********************************/ #include stdio.h #include xparameters.h #include xstatus.h #include xaxivdma.h #include vdma_api.h #include xil_cache.h #include xuartps.h #include sleep.h /************************** Constant Definitions *****************************/ #define VDMA_DEVICE_ID XPAR_AXIVDMA_0_DEVICE_ID #define IMAGE_WIDTH 1920 #define IMAGE_HEIGHT 1080 #define MEMORY_BASEADDR XPAR_PS7_DDR_0_S_AXI_BASEADDR#define UART_DEVICE_ID XPAR_XUARTPS_0_DEVICE_ID #define UART_BASEADDR XPAR_XUARTPS_0_BASEADDR /**************************** Type Definitions *******************************//***************** Macros (Inline Functions) Definitions *********************//************************** Function Prototypes ******************************/ s32 UartPsInit(XUartPs *UartPsInstPtr, XUartPsFormat* UartFormatPtr);void GenPureColor(u8* DestAddr, u32 ImageWidth, u32 ImageHeight); void GenColorBar(u8* DestAddr, u32 ImageWidth, u32 ImageHeight); /************************** Variable Definitions *****************************/ XAxiVdma VdmaInst; XUartPs UartInst;int FrameBufferAddr (MEMORY_BASEADDR 0x02000000);XUartPsFormat UartFormat {XUARTPS_DFT_BAUDRATE, // 115200XUARTPS_FORMAT_8_BITS,XUARTPS_FORMAT_NO_PARITY,XUARTPS_FORMAT_1_STOP_BIT }; /*****************************************************************************/int main() {//int Status;u8* VdmaBufferAddr (u8*)FrameBufferAddr;char cmd;// 串口初始化Status UartPsInit(UartInst, UartFormat);if (Status ! XST_SUCCESS) {printf(UART Initialization Failed.\n);return XST_FAILURE;}// 写入纯色图用于确定RGB的字节位置 // GenPureColor(VdmaBufferAddr, (u32)IMAGE_WIDTH, (u32)IMAGE_HEIGHT);// 写入彩条图GenColorBar(VdmaBufferAddr, (u32)IMAGE_WIDTH, (u32)IMAGE_HEIGHT);//Status run_triple_frame_buffer(VdmaInst, VDMA_DEVICE_ID, IMAGE_WIDTH, IMAGE_HEIGHT, FrameBufferAddr, 0, 0);if (Status XST_FAILURE) {printf(VDMA Run Failed.\n);}//printf(VDMA Control Ready (sstart, qstop):\n);while (1) {if (XUartPs_IsReceiveData(UART_BASEADDR)) {cmd XUartPs_ReadReg(UART_BASEADDR, XUARTPS_FIFO_OFFSET);if (cmd s) { // 启动VDMAif (XAxiVdma_DmaStart(VdmaInst, XAXIVDMA_READ) XST_SUCCESS) {printf(VDMA Start Succeeded.\n);} else {printf(VDMA Start Failed.\n);}}else if (cmd q) { // 停止VDMAXAxiVdma_DmaStop(VdmaInst, XAXIVDMA_READ);printf(VDMA Stop Succeeded.\n);}}usleep(10000); // 降低CPU占用}//return 0; } /*****************************************************************************/ s32 UartPsInit(XUartPs *UartInstPtr, XUartPsFormat* UartFormatPtr) {//s32 Status;XUartPs_Config *UartConfigPtr;// 查找UART配置UartConfigPtr XUartPs_LookupConfig(UART_DEVICE_ID);if(NULL UartConfigPtr){return XST_FAILURE;}// 初始化UARTStatus XUartPs_CfgInitialize(UartInstPtr, UartConfigPtr, UartConfigPtr-BaseAddress);if (Status ! XST_SUCCESS) {return XST_FAILURE;}// 设置UART数据格式XUartPs_SetDataFormat(UartInstPtr, UartFormatPtr);// 设置UART操作模式XUartPs_SetOperMode(UartInstPtr, XUARTPS_OPER_MODE_NORMAL);//return XST_SUCCESS; } /*****************************************************************************/ void GenPureColor(u8* DestAddr, u32 ImageWidth, u32 ImageHeight) {// 禁用缓存如果目标内存是非缓存区域Xil_DCacheDisable();for (u32 y 0; y ImageHeight; y) {for (u32 x 0; x ImageWidth; x) {// 计算当前像素的内存位置3字节/像素u32 PixelOffset (y * ImageWidth x) * 3;u8* PixelAddr DestAddr PixelOffset;// 写入RGB三个字节PixelAddr[0] 0x00;PixelAddr[1] 0x00;PixelAddr[2] 0xff;}}// 如果需要刷新缓存Xil_DCacheFlushRange((INTPTR)DestAddr, ImageWidth * ImageHeight * 3);//return; }/*****************************************************************************/ void GenColorBar(u8* DestAddr, u32 ImageWidth, u32 ImageHeight) {// 定义8种颜色R, G, B顺序const u8 color_bars[8][3] {{0x00, 0x00, 0x00}, // 黑{0xff, 0xff, 0xff}, // 白{0xff, 0x00, 0x00}, // 蓝{0x00, 0xff, 0x00}, // 绿{0x00, 0x00, 0xff}, // 红{0xff, 0xff, 0x00}, // 青{0xff, 0x00, 0xff}, // 紫{0x00, 0xff, 0xff} // 黄};// 计算每个色条的宽度u32 BarWidth ImageWidth / 8;// 禁用缓存如果目标内存是非缓存区域Xil_DCacheDisable();for (u32 y 0; y ImageHeight; y) {for (u32 x 0; x ImageWidth; x) {// 计算当前色条索引u32 BarIndex x / BarWidth;// 计算当前像素的内存位置3字节/像素u32 PixelOffset (y * ImageWidth x) * 3;u8* PixelAddr DestAddr PixelOffset;// 写入RGB三个字节PixelAddr[0] color_bars[BarIndex][0];PixelAddr[1] color_bars[BarIndex][1];PixelAddr[2] color_bars[BarIndex][2];}}// 如果需要刷新缓存Xil_DCacheFlushRange((INTPTR)DestAddr, ImageWidth * ImageHeight * 3);//return; }
http://www.pierceye.com/news/118082/

相关文章:

  • 网站中的搜索功能怎么做怎样在网站做友情链接
  • 新闻单位建设网站的意义怎么和其它网站做友情链接
  • 做哪类网站没有版权问题帮忙做公司网站
  • 商城式网站具备哪些功能吗郑州网站设
  • 潍坊市做网站沈阳专业网站制作团队
  • 婚恋网站女孩子都是做美容西安做网站南通公司
  • 网站制作培训中心想做网站建设
  • 免费模板素材网站ppth5开源网站模板
  • 建筑型专业网站有哪些网站想做个链接怎么做的
  • 公司建站文案给网站公司看的wordpress打赏
  • 卡密网站怎么做交易所网站建设教程
  • 响应式网站建设代理wordpress程序在ftp中上传到空间 网页怎么打不开
  • 做网站中网页的大小赤峰建筑人才网
  • 4s店网站建设美的集团网站建设方案书
  • 专业做商铺的网站哪些网站有二维码
  • 房屋备案查询系统官网盐城网站优化公司
  • 江苏网站设计页面设计文献
  • 快排做网站排名泰安哪个做网站
  • 淄博做网站的公司都有哪些网站开发职业环境分析
  • 网站性能视频 怎么做网站
  • 惠安建设局网站做基础销量的网站
  • 网页制作与网站建设自考制作ppt的软件免费下载
  • 会员类网站模板wordpress写主题
  • wordpress网站分享朋友圈缩略图wordpress 密码爆破
  • 总结网站推广策划思路的内容佛山做外贸网站哪家好
  • 阿里云服务器如何做两个网站网站建站对象
  • 做网站毕业实训报告网站架构企业收费标准
  • 高端品牌网站建设公司哪家好网页设计与制作个人总结
  • 自己电脑建设网站哈尔滨专业网站建设哪个好
  • 福建设计招标网站移动端网站和app开发