基于AXI模块的视频流传输(上板移植篇)

news/2025/10/11 1:34:12/文章来源:https://www.cnblogs.com/hanhuang/p/19134143

先发泄一下,终于!!!国庆!一个国庆,你知道我怎么过的吗!!!
首先我是拿官方例程,但是还是依旧跑不通,检查一下,发现以下几个问题,并且我是怎么处理的:
1、首先上板失败,可能由于只是粗略配置了一下管脚没配好,发现买来的双目模块有pwdn而我的例程没提及没处理
初步解决:绝对检查管脚以及模块有没有买错,我买的是咸鱼上大猪蹄子的,alinx买黑金的就好,一样的,然后发现管脚出现大问题,修正后发现依旧没有视频显示。
2、决定通过ila查看摄像头管脚有没有输出,发现摄像头输入的所有信号一直为1,哪怕拔了摄像头也是一样,问了ai说很大概率摄像头没复位成功,或者xclk没工作(极小概率因为我买了三个摄像头模块,除非你板子有问题),第二是iic原因,有可能没初始化好摄像头模块。
中期解决:严格按照双目模块的初始化要求去配置复位和pwdn(这个我自己加的,也通过gpio控制),pwdn是通过gpio通道2来控制的,已经是改变原有代码了,于是自己看了gpio的内部结构(bsp),之后自己再调用usleep函数严格按照要求初始化摄像头,但是依旧不知道有没有配置成功,可以用ila去尝试:
gpio pl端改变:
image
gpio ps端代码:每次使用usleep大胆用,在那种配置寄存器后都可以停止5ms来让他稳定下来。最好可以设置一个读取函数,保证配置成功了。,中间的1 2表示第几通道,具体可以右键看函数
image
ila的一些使用技巧:
(1)如果debug后不按resume,那么在ila是会识别工程跑了一会后的状态,也就是说这个时候触发设置为rstn = 1'b1 pwdn = 1'b0 就可以看到被成功触发了,没波形就是没达到触发条件
(2)ila在每次auto connect只能产生一次波形(好像是),所以如果产生波形后想再重新触发得重新打开这个界面。
(3)debug后按resume,这个步骤前必须打开那个开始检测触发的按键。
3、到这里理论应该没问题了,但是还是不行,检查后发现引脚再次有错,而且发现iic.o没被编译导致全程编译失败,然后解决后发现链接也一直错误,按照网上教程也无济于事
快到最后的解决了:iic.o那里你可以按照报错搜一下教程,类似于头文件没加进去,可以在下面那样把头文件添加进去(记得是文件夹)。链接错误:开大招,重建一个工程,这个可以去CSDN看我的文章,名字忘记了,可以撕我。重新创建完就没事了。
image
4、非常肯定这次决定行了,最后一上板,黑屏,毁了啊,只能再度用逻辑分析仪检测scl和sda了,然后发现没找到设备??!具体看iic的ack机制,就是scl开始有效时第九个时钟周期sda为1说明没找到设备。然后我在iic那里添加了很多调试信息:
image
然后打印出来发现寄存器一直配置失败,而且从机设备也没找着,很绝望
解决方法:再次检查引脚,有没有接稳,有没有接对!!!以及配置是否成功,发现一个很奇葩的点:之前我明明比特流随随便便生成,后面生成比特流并没有成功,看了警告和报错,发现没有“cteate hdl wrapper”,于是pwdn没有识别出来,是不是很扯淡,但是最后就是这个原因,而且它生成的pwdn名字不是我起的,所以我还得改引脚约束,改完就好了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/934504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

装饰器工厂与类装饰器:进阶装饰器技术解析

装饰器工厂与类装饰器:进阶装饰器技术解析 装饰器是Python中强大的元编程工具,除多种进阶形式。其中装饰器工厂(Decorator Factory)和类装饰器(Class Decorator)是两种重要变体,分别解决“带参数的装饰器”和“…

53最大子数组和 动态规划和分制 - MKT

53最大子数组和 动态规划和分制 class Solution { public:// 时间不通过int maxSubArray_2(vector<int>& nums) {int tager_max=nums[0];int left=0;// sum_[i] map<int,int> sum_i; // 和 索引 由于…

Codeforces 2153D Not Alone 题解 [ 绿 ] [ 线性 DP ] [ 分类讨论 ]

Not Alone:唐题。 容易将题意转化为:环上的每一个颜色段长度都 \(\ge 2\),求最小操作数。 再考虑一个 \(O(n^2\log n)\) 的暴力,定义 \(dp_i\) 表示以 \(i\) 结尾的最小操作数,然后枚举前一个转移点 \(j\)。继续考…

__closure__:闭包的“身份证”

要理解“闭包函数和嵌套函数的区别在于 __closure__ 属性”,首先需要明确 嵌套函数 和 闭包函数 的基础关系——闭包函数是“满足特定条件的嵌套函数”,而 __closure__ 属性正是闭包函数区别于普通嵌套函数的“标志性…

Codeforces Round 1057 (Div. 2)

A. Circle of Apple Trees 题意:一个环形数组,每次到一个位置可以选择拿走这个元素或者跳过,然后走到下一个位置。每次拿的数要比之前拿的大,求最多拿多少数。 显然可以从小到大拿,那么答案就是不同数的个数。点击…

“表达式”(Expression)和“语句”(Statement)概念辨析

在编程中,“表达式”(Expression)和“语句”(Statement)是两个基础且容易混淆的概念。它们的核心区别在于是否有返回值以及在代码中的作用,以下从定义、特点、示例三个维度详细说明: 一、定义与核心区别表达式(…

每日一题 ###121买卖股票的最佳时机

仅以此记录所学所想,如有错误,还望指正。 首次尝试 1、我小小的脑子只能想出暴力解法,结果是超时了。 class Solution { public:int maxProfit(vector<int>& prices) {int max=0;for(int i=0;i<prices…

10.10总结

1.将一个数组中的值按逆序重新存放进行了编程联系,生成了对应程序 2.明天学习完善程序细节 3.今天收获满满

LibreChat-图文并茂手把手教你界面配置 | Adorable LibreChat Interface Configuration Guide

@目录🎀 整体介绍 | Overview🍪 配置项详解 | Field Details🎨 开关大全 | All Switches✨ 配置示例 | Cute ExampleConclusion | 结语 🎀 整体介绍 | Overview 今天我们来学习一下,LibreChat的页面基础配置哇…

GAE-广义优势估计算法介绍

一句话总结 GAE 就像「既要稳又要准」的聪明妥协:用多步 TD 误差加权平均,既缓解了 MC 的高方差,又减少了 TD 的单一偏差,通过调节参数(λ)灵活平衡两者的优缺点。MC vs TD 的痛点MC(蒙特卡洛):原理:跑完整个…

qemu模拟单片机

ESP32 乐鑫官方移植的qemu工程:espressif/qemu: Fork of QEMU with Espressif patches. See Wiki for details. 官方使用说明:esp-toolchain-docs/qemu/README.md at main espressif/esp-toolchain-docs 目前支持ES…

RAG-检索增强生成

检索增强生成(Retrieval-Augmented Generation, RAG)是近年来深度学习领域的重要技术突破,旨在解决大语言模型(LLM)在知识更新、事实准确性以及领域专业化方面的局限性。本文将从核心架构、功能实现、实践规范到高…

“猴子补丁”(monkey patch)跟猴子有关吗?

“猴子补丁”(monkey patch)指的是使函数名指向另一个函数。 这个名字里的“猴子”(monkey)和真实的动物猴子没有任何生物学或实体关联,它是编程领域的一个形象比喻,名字的由来与“猴子”的俚语含义有关。 为什么…

Yapi 使用docker在cenos7上部署教程与基本使用

✅ 前提条件 确保你已经完成以下准备:CentOS 7 系统已安装 Docker(未安装请先安装)拥有管理员权限(root 或 sudo)1、安装mongo数据库# 拉取mongo镜像,有本地镜像包可以直接导入 docker pull mongo # 安装mongo数…

C语言vsC++

一、核心区别设计理念C 语言:面向过程(Procedure-Oriented),以函数和数据结构为核心,强调算法和步骤的实现,关注 “怎么做”。 C++:基于 C 语言扩展而来,支持面向对象编程(Object-Oriented,OO),引入类、对…

20251010 之所思 - 人生如梦

20251010 之所思这两天想的事情有点多,有点焦虑,因为刚刚升职,部门的软件需要管理起来,已经不再仅仅管理自己现在的一个小组,今天看了一下软件的人数,数量已经到了122人,这是一个很庞大的队伍,如何管理好,心里…

2025.10.10

今天学生会开会导致十点没有回到宿舍 今天一节英语课,单词背诵情况不好,以后会加强 尝试轻食餐,不好吃

个人书单-从心流出发,学习积极心理学

从“心流”出发,构建你的积极心理学知识体系 | 专题书单 你是否曾有过这样的体验:在全神贯注地工作、运动或创作时,忘记了时间的流逝,内心充满了一种纯净而高效的愉悦感? 这就是米哈里契克森米哈赖所描述的 “心流…

等号(=)在C语言和python中有什么区别?

等号(=)在C语言和python中有什么区别? 等号(=)在 C 语言和 Python 中虽然核心功能都是“赋值”,但由于两种语言的设计理念(静态类型 vs 动态类型、编译型 vs 解释型)存在根本差异,= 的行为、特性和使用场景有…

AI元人文(十四)之价值共生篇:再论物物交换——作为价值共生基础的元协议

AI元人文(十四)之价值共生篇:再论物物交换——作为价值共生基础的元协议 文 / 岐金兰 摘要: 本文是对前文《AI元人文(十四):物物交换——论跨领域价值协商的元协议》提出的“物物交换”元协议的深化探讨。文章将…