DSP篇--C6701功能调试系列之SRAM、ADC、喂狗测试

news2024/12/28 20:09:10

目录

1、SRAM测试

1.1 SRAM读写功能测试

1.2 EDAC测试

2、ADC测试

3、DSP喂狗测试


        调试的前期准备可以参考前面的博文:DSP篇--C6701功能调试系列之前期准备_nanke_yh的博客-CSDN博客icon-default.png?t=M85Bhttps://blog.csdn.net/nanke_yh/article/details/128277631

1、SRAM测试

1.1 SRAM读写功能测试

        目的:测试SRAM的读写功能。

        方法:向SRAM的地址区域(0x0200,0000~0x0201,FFFF)不停的写入数值,再从头到尾读取写入的数,测试其是否存在读写错误。读写数值有:0x0,0x5555,5555,0xffff,ffff,0xaaaa,aaaa。

         代码示例:

Uint32* dwdCurAddr_ptr = (Uint32* )dwdStartAddr;
/*SRAM 写0 */
for (i=0; i<dwdDataLen_dwd; i++)
{
    (*dwdCurAddr_ptr) = 0;
    dwdCurAddr_ptr++;
}
/*读SRAM 0*/

dwdCurAddr_ptr = (Uint32* )dwdStartAddr;
for (i=0; i<dwdDataLen_dwd; i++)
{
    if(0 !=(*dwdCurAddr_ptr))
        error++;
    dwdCurAddr_ptr++;
}//通过返回error值来判断读写过程中是否出错

注意:读写过程中,指针地址需重新赋值。

1.2 EDAC测试

        目的:测试SRAM的自检功能,当写入的数被记录后,再次读时,如果不相等则会出错。

        方法:不停的读取SRAM的地址区域内的数值,通过示波器观察是否出现高频信号(错误信号)。

注意:写入的数不能覆盖全片SRAM时,从头到尾的读取则会出现错误信号。因为上电启动搬运数据,未写部分就会出现错误

        代码示例:

while(1)//不停读SRAM值(实际写入长度0x40,全长0x1fffff)
	{
		dwdCurAddr_ptr = (Uint32* )0x02000000;
		for (i=0; i< 0x1fffff; i++)// 出错而for (i=0; i< 0x40; i++)//不出错
		{
			error = (*dwdCurAddr_ptr);
			dwdCurAddr_ptr++;
		}
	}

2、ADC测试

        目的:采集5路电压值。

        方法:向0x03030004位置写数值,再从0x03030008读取写入的数。读写数值有:0x05,0x06,0x07,0x08,0x09。

注意:读写的间隔需要较长的时间延迟,否则会导致

        代码示例:

   ADvalue = ADtest(0x05);
    Candelay(5000);
    dwSrcAddr_ptr = (Uint32* )ADRtest;
    ADvalue = (*dwSrcAddr_ptr)&0xFFFFFFFF;
ADValueC = ADValueChange(ADvalue);//转换值
Uint32 ADtest(Uint32 value1)//调用函数
{
   	Uint32 value=0;
	Uint32* dwSrcAddr_ptr;
	write_8data(ADWtest,value1);
	Candelay(10000);
	dwSrcAddr_ptr = (Uint32* )ADRtest;
	value = (*dwSrcAddr_ptr)&0xFFFFFFFF;
	return value;
}
//通过代码转换直接在软件中判读,减少人工手动计算,提高效率
double ADValueChange(Uint32 ADvalue)
{
    Uint32 temp[14];
	Uint32 i = 0,value = 0;
	double Cvalue = 0.0;
	value = ADvalue & 0x3FFF;//取低14位
	//value值14位位置颠倒
	for(i = 0;i < 14;i++)
	{
	   Uint32 j = 14-1-i;
	   temp[j]=(value >> j) & 0x00000001;
	}
	for(i = 0;i < 14;i++)
	{
	   Uint32 j = 14-1-i;
	   Cvalue += temp[i] << j;
	}
	Cvalue = Cvalue*5/16383;//输入电压就是5V,十四位(0x3FFF)的值16383
	return Cvalue;
}

3、DSP喂狗测试

        目的:测试FPGA的复位功能,若不停的写入值,则不复位,若在一段时间内(t)没有收到该值,则会复位,程序会跑飞。

        方法:向0x0303,000C位置不停的写入0x03d39000。

注意:①t值应当考虑上电到测试程序运行的时间,太小则上电就在复位无法达到测试效果,测试中t设置为20s。

②每次喂狗的时间间隔根据硬件师要求设置(100ms)。

        代码示例:

dwdDestAddr_ptr = (Uint32*) 0x0303000C;
(*dwdDestAddr_ptr) = 0x03d39000 & 0xffffffff;
Candelay(2778);//100ms延迟约为2778

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

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

相关文章

国税局验证码识别 识别不了我还不能input吗

前言 最近接到一个需求&#xff0c;就是在国税局的网页中输入 【发票代码】、【*发票号码】、【*开票日期】、【*开具金额(不含税)】、【*验证码】 然后将此发票进行下载&#xff0c;但是【验证码】真的是拦路虎啊&#xff0c;我也查询了好多大佬的论文&#xff0c;有的是通过J…

OTP语音芯片ic的工作原理,以及目前的现状和技术发展路线是什么?flash型

目录 otp工艺和flash工艺的区别和概念 衡量一个芯片的成本&#xff0c;简单可以归结为3个方面 芯片的生产工艺&#xff0c;比如OTP的工艺都是100nm左右的工艺、8寸晶圆&#xff0c;很便宜。并且OTP的技术需要光刻机光照的次数少&#xff0c;所以生产起来快&#xff0c;这样无…

openCV实战项目--人脸考勤

人脸任务在计算机视觉领域中十分重要&#xff0c;本项目主要使用了两类技术&#xff1a;人脸检测人脸识别。 代码分为两部分内容&#xff1a;人脸注册 和 人脸识别 人脸注册&#xff1a;将人脸特征存储进数据库&#xff0c;这里用feature.csv代替人脸识别&#xff1a;将人脸特…

【云计算与大数据技术】数据编码LZSS算法、Snappy压缩库及分布式通信系统的讲解(图文解释 超详细)

一、数据编码概述 数据编码概述 - 在分布式系统中需要处理大量的网络数据,为了加快网络数据的传输速度,通常需 要对传输数据进行编码压缩 数据压缩是以尽可能少的数码来表示信源所发出的信号&#xff0c;减少容纳给定的消息集合或数据采样集合的信号空间&#xff0c;这里讲的…

Linux安装Maven

目录 1.下载安装包 2.解压Maven 3.添加环境变量 4.检测Maven是否搭建成功 5. 编辑 Maven的settings.xml文件 5.1设置本地仓库 5.2添加阿里云镜像 1.下载安装包 访问查看需要的版本&#xff1a;Index of /dist/maven (apache.org) 安装包统一存放到/opt/software目录下…

Java基于springboot校园德育活动预约和评分管理系统+vue+elementUI

本系统结合计算机系统的结构、概念、模型、原理、方法&#xff0c;在计算机各种优势的情况下&#xff0c;采用JAVA语言&#xff0c;结合SpringBoot框架与Vue框架以及MYSQL数据库设计并实现的。本校园德育活动预约和评分管理系统主要包括个人中心、学生管理、活动信息管理、活动…

使用Docker实现容器之间的互通

目录 怎样实现容器之间的相互通信&#xff1f; 情况1&#xff1a;两个容器在同一网段上 情况2&#xff1a;两个容器在不同网段上 怎样实现容器之间的相互通信&#xff1f; 情况1&#xff1a;两个容器在同一网段上 命令拓展&#xff1a; 删除所有容器&#xff1a;docker rm …

NuSences 数据集解析以及 nuScenes devkit 的使用

文章目录一、官网介绍1.1 总览(Overview)1.1.1 数据搜集(Data collection)1.1.2 传感器同步&#xff08;Sensor synchronization&#xff09;1.2 数据格式&#xff08;Data format&#xff09;attributecalibrated_sensorcategoryego_poseinstancelidarseglogmapsamplesample_a…

安装包UI美化之路-升级安装与静默安装一键打包

在实际应用中&#xff0c;除了产品安装外&#xff0c;还需要能够持续升级到新的版本&#xff0c;这时候升级方案就显得比较重要&#xff1b;而还有一些使用场景&#xff0c;需要咱们的安装包在安装时&#xff0c;不要显示安装界面&#xff0c;直接在后台进行安装&#xff01; …

测试开发之前端篇-Web前端简介

自从九十年代初&#xff0c;人类创造出网页和浏览器后&#xff0c;Web取得了长足的发展&#xff0c;如今越来越多的企业级应用也选择使用Web技术来构建。 前面给大家介绍网络协议时讲到&#xff0c;您在阅读这篇文章时&#xff0c;浏览器是通过HTTP/HTTPS协议向服务器发送请求…

Python+Django的高考志愿填报辅助系统 计算机毕业设计

在各学校的教学过程中&#xff0c;学生的高考志愿填报辅助是一项非常重要的事情。随着计算机多媒体技术的发展和网络的普及&#xff0c;“基于网络的学习模式”正悄无声息的改变着传统的教室学习模式&#xff0c;“基于网络的教学平台”的研究和设计也成为教育技术领域的热点课…

音频转文字怎么转?三个方法教你音频转文字

昨天&#xff0c;朋友给我发了一条信息&#xff0c;大概的内容是“今天上班的时候&#xff0c;领导突然发了一段音频&#xff0c;说是会议的录音&#xff0c;让我朋友在下班之前整理成会议纪要发给他。无奈&#xff0c;我的朋友只能打开录音开始整理”。听到他还在听录音手动整…

Stata中的治疗效果:RA:回归调整、 IPW:逆概率加权、 IPWRA、 AIPW

今天的主题是Stata中的治疗效果。最近我们被客户要求撰写关于治疗效果的研究报告&#xff0c;包括一些图形和统计输出。 治疗效果估算器根据观察数据估算治疗对结果的因果关系。 我们将讨论四种治疗效果估计量&#xff1a; RA&#xff1a;回归调整IPW&#xff1a;逆概率加权I…

【卡尔曼滤波器】递归算法

大家好&#xff0c;我是小政。最近在学习卡尔曼滤波&#xff0c;本篇文章记录一下我学习的卡尔曼滤波器中的递归算法&#xff0c;通过举例子让大家更加清晰理解递归到底是什么&#xff1f;希望与同是卡尔曼滤波研究方向的同学进行一些交流。 递归算法1.为什么要用卡尔曼滤波器&…

zookeeper3.6.3升级jetty9.4.47解决安全漏洞CVE-2022-2048和CVE-2021-28169

客户扫描到zookeeper有CVE-2022-2048和CVE-2021-28169安全漏洞要求修复。 漏洞和官方解决办法如下&#xff1a; 一、# CVE-2022-2048 Jetty升级到这几个修复版本9.4.47. 10.0.10, 11.0.10 Eclipse Jetty 存在安全漏洞&#xff0c;该漏洞源于无效的 HTTP/2 请求可能占用连接导致…

视频配音怎么制作?手把手教你配音视频制作

相信很多短视频的创作者都知道&#xff0c;每个视频的好坏大多数取决于配音的效果&#xff0c;好的配音才能给观众留下一个深刻的印象&#xff0c;如果你想要制作一个好的视频&#xff0c;那肯定是离不开配音制作的。那你们知道视频配音怎么制作吗&#xff1f;不知道也没关系&a…

java计算机毕业设计ssm在线实验室器材设备借用管理系统42c93(附源码、数据库)

java计算机毕业设计ssm在线实验室器材设备借用管理系统42c93&#xff08;附源码、数据库&#xff09; 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都…

“为什么同样是跳槽,有些人薪资就能翻2倍?“是我在软件测试路上走错了方向?

“为什么同样是跳槽&#xff0c;有些人薪资能翻两三倍&#xff1f;” 最近遇到一个朋友跟我吐槽如上&#xff0c;其实类似这样的问题我也听到过很多次&#xff0c;身边也不乏有认识的同事、朋友们通过跳槽拿下高薪&#xff0c;这里我先说一个我身边真实的例子&#xff1a; 学…

Java基于springboot高考填报志愿综合参考系统 vue+elementUI

高考填报志愿综合参考系统是针对目前高考填报志愿管理的实际需求&#xff0c;从实际工作出发&#xff0c;对过去的高考填报志愿综合参考系统存在的问题进行分析&#xff0c;完善用户的使用体会。采用计算机系统来管理信息&#xff0c;取代人工管理模式&#xff0c;查询便利&…

(十一)数据归一化方法BN/LN/GN/IN

文章目录0. Introduction1.Batch Normalization3.Layer Normalization4.Group Normalization6.Instance Normalization参考资料欢迎访问个人网络日志&#x1f339;&#x1f339;知行空间&#x1f339;&#x1f339; 0. Introduction 在神经网络的训练过程中&#xff0c;网络的…