ADSP-21489的开发详解:VDSP+自己编程写代码开发(4-按键控制 LED 灯)

news2024/11/20 3:22:17

以上全部都 OK 之后,我们就可以开始跑程序了。(抱歉上面几项写的很罗嗦,都是我这近 15 年来开发 ADI DSP 实际项目里碰到问题的经验之谈,希望能够对用户有帮助)

跑程序就涉及到了 Visual DSP++软件的操作,我有录制过一个视频教程,是专门讲VisualDSP++软件的,把这个软件几乎每一个菜单,每一个符号都详细的过了一遍,如果有需要的用户可以参考一下那个视频。

Visual DSP++软件教学视频的链接:我以前把视频都放到优酷,这里贴外站链接是不是不太好,我再研究一下怎么放到本站。

这里我就简单的列一个基本程序,是如何使用 VDSP 来跑的。

首先,VDSP 不认中文路径,这个非常关键,意味着你必须要把你得程序全部都放在纯英文路径下,否则编译就会出错,完全无法进行程序开发,切记切记!

我们来跑一个核心板上按键控制灯的程序。程序我放在了 F 盘根目录底下,有人会说你F 盘是“工作”,中文路径,跟上面说的纯英文路径不一致啊。别闹,这个就是纯英文路径。

在这里插入图片描述

“.dpj”是你的工程文件,你在 VDSP 里新建工程也会出现这个,我这里就不新建了,直接调用已经写好的。怎么调用呢?软件里有打开工程的选项,我一般都更直接一些,扯着这个“ADSP21489_PBLED.dpj”直接拽进软件里就好了。

在这里插入图片描述

打开这个.c,我们来看看这个程序想干嘛?

在这里插入图片描述

结合整个 C 文件里的程序,我们看懂了,总共三个按键,对应前面有三个 LED 灯,按下一个按键,对应某一个 LED 灯亮。

让我们来编译运行,试试看。

在这里插入图片描述

当程序跑起来之后,我按下 KEY1,则 LED1 亮起;按下 KEY2,则 LED2 亮起,按下 KEY3, 则 LED3 亮起。

至于怎么用 21489 来控制按键点灯,这些个程序上的配置,那就仔细看看整个程序把,我这里不再多罗嗦了。补充一点,看不懂的,比如这个寄存器为什么这么配,可以直接 vdsp 的 help 里去搜就能搜到啦,VDSP 的 help 集成了所有有用的资料,非常好用!

特别注意:21489 的寄存器详细说明在哪里?写程序一定会遇到配置寄存器的问题,而非常多 ADI DSP 的新手用户,不光是 21489,都会找不到寄存器的详细说明文件。这里统一说一下,所有 ADI DSP 的寄存器说明,到 VDSP 的 help 里去搜!举一个最简单的例子。

BF533 的 PPI,PPI_CONTROL 这个寄存器的详细说明,上哪里去找(21489 同理)。

我们打开 Visual DSP++软件,打开帮助。

在这里插入图片描述

然后输入你要找的寄存器名称。就会列出所有跟这个寄存器相关的文档,找到 533 的,点开就看到啦。

在这里插入图片描述

你会发现你这个寄存器的详细介绍文档是哪个?看左边。

在这里插入图片描述

这个文档的名字叫:ADSP-BF533 Hardware Reference…,所以所有的寄存器都在这个文档里进行了详细的说明。

21489 也一样,也是在 ADSP-21489 Hardware Reference 的文档里,如果你嫌麻烦,就在help 里找,如果你想要通读一下,我们也有提供这个文档,打开文档仔细看即可!

PS:找了半天没找到上传代码的地方,本来还想把这个简单的程序传上来,有兴趣的可以去看看。

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

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

相关文章

高校教材征订系统(Java+Web+MySQL)

目 录 ABSTRACT 2 1 概述 5 1.1开发背景 5 1.2 项目提出的意义 5 1.3 系统的开发方法 5 1.4 系统开发工具 6 1.4.1 JSP简介 6 1.4.2 JDK配置 7 1.4.3 数据库简介 8 1.4.4 tomcat配置 9 2 需求分析 11 2.1可行性分析 11 2.2 系统设计的要求 11 2.3 系统功…

01、RabbitMQ入门

目录 1.、什么是MQ 2、应用场景 3、主流MQ框架 4、Docker安装部署RabbitMQ 5、RabbitMQ管理平台 6、MQ的核心概念 单一生产者和单一消费者 7、springboot整合rabbitmq 执行测试方法testRabbitmq,控制台输出:receive msg : test rabbitmq messag…

[附源码]计算机毕业设计时间管理软件appSpringboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Vector-常用CAN工具 - CANoe入门到精通_01

之前有写过相关的CANoe工程配置,不过没有进行系统的介绍,通过各位热心人士的反馈,有些内容无法看懂,因此后续的内容会做好排版,让大家从入门到精通,一次性掌握所有的相关内容。今天就主要来介绍下VN1640/VN…

读vue源码搞懂响应式原理

vue2响应式原理 Vue2是借助Object.defineProperty()实现的,而Vue3是借助Proxy实现的想深入学习 Vue2 的响应式原理, 需要先学习 Object.defineProperty() 方法为了称呼方便, 后续说 Vue 响应式原理统一指 Vue2 的响应式原理 1.Object.defineProperty 方法 - 简介 定…

go实战(1)-hello,world与包基础(1)-模块基础

目录程序结构程序代码使用和建立包建立目录模块参考中的身份验证计算哈希值go.sum文件Checksum database程序结构 声明一个main包(包是对函数进行分组的一种方法,它由同一目录中的所有文件组成)。 导入流行的fmt包,它包含格式化文本的函数,…

WIFI码挪车码创建生成CPS聚合流量主小程序开发

WIFI码挪车码创建生成CPS聚合流量主小程序开发 系统特点// 这不是一套普通的给别人开SAAS账号的CPS推广返利系统,而是一套服务商版的CPS推广返利系统!所谓服务商版,就是所有CPS推广走你的渠道接口,除了可以给你的下级客户开账号外…

MySQL下载安装运行

方式1、MySQL 官方网站:http://www.mysql.com 拉到最下面: 方式2、Windows版 MySQL 的官方下载地址:https://dev.mysql.com/downloads/mysql/ 配置环境变量:在Path中添加至“\bin”(系统盘C盘)形式 使用管…

【OpenCV 例程 300篇】249. 特征描述之视网膜算法(FREAK)

『youcans 的 OpenCV 例程300篇 - 总目录』 【youcans 的 OpenCV 例程 300篇】249. 特征检测之视网膜算法(FREAK) 1. FREAK 算法简介 快速视网膜算法(FREAK)算法是 Alexandre Alahi 在 ICCV 2012 的论文 FREAK: Fast Retina Keyp…

1.32 Cubemx_STM32F429串口中断+空闲中断

1、简介 有时候串口接收数据时,没有帧头与帧尾,单纯使用单字节中断接收数据,不太好断帧。如果单纯使用空闲中断接收数据,当帧内数据不连续或者黏包,使用空闲中断接收就会出现接收的数据小于或者大于帧长度,比较难断帧。解决办法 方法1、单字节中断接收+空闲中断 发送命…

Spring Cache组件

《Spring Cache组件》 提示: 本材料只做个人学习参考,不作为系统的学习流程,请注意识别!!! 《Spring Cache组件》《Spring Cache组件》1. Spring Cache组件概述2. ConcurrentHashMap缓存管理3. Cacheable详解4. Caffeine缓存管理5. 缓存更新策略6. 缓存清除策略7. 多级缓存策略…

[附源码]计算机毕业设计基于Springboot景区直通车服务系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

探究商城中的在线语音谈判功能开发

近年来,电子商务已经成为一种新型的商业形式,电子商务的发展让传统的面对面谈判发展为以互联网为依托的在线沟通,相较于传统的谈判方式,在线语音谈判方式更便捷、更高效,逐渐成为商务谈判的主流,因此该功能…

FastReport Mono 2023.1 Crack

与位于 FastReport 云服务器上的报表进行交互。特征 现在支持与 FastReport Cloud 报告生成器的部分集成。改进的报告验证器包括一个带有错误编号的新的可自定义列。添加了来自 JasperReports 的模板转换器。改进的“MSChartObject”: 常用设置已移至单独的编辑器。…

线程池详细介绍

线程池执行流程 线程池的状态 RUNNINGSHUTDOWNSTOPTIDYINGTERMINATED 线程池优雅关闭 线程池有两个关闭方法,shutdown()和shutdownNow(),shutdown()切换到SHUTDOWN状态,shutdownNow()切换到STOP状态,当队列和线程池都为空的时候…

学习 | ANSYS经典界面在压力容器分析设计中的应用

导读:分析设计作为压力容器设计的重要方法,不仅解决了压力容器常规设计所不能解决的问题,而且也是压力容器设计观点与方法上的一个质的飞跃。 分析设计通常分为两类:应力分类法(弹性方法)和直接法&#xf…

基于FPGA的SD NAND图片显示实现

文章目录 0、前言 1、目标 2、图片的预处理 3、SD NAND的预处理 4、FPGA实现 4.1、详细设计 4.2、仿真 4.3、实验结果 0、前言 在上一篇文章《基于FPGA的SD卡的数据读写实现(SD NAND FLASH)》中,我们了解到了SD NAND Flash的相关知识…

大(json)文件压缩(minify)

文章目录Preface解决方案Preface 现在在做一个 GIS 地图的项目, 做过地图的应该就知道各省/市/县的json文件有多大(大部分都是经纬度数据), 就直接放前台public目录下了. 文件过大, 上传到服务器就占用很多空间, 这时候就有人提出需求, 让把这个问题处理一下. (虽然这个事情没…

mysql日志管理 、备份与恢复

目录 一、数据备份的重要性与分类 1、数据备份的重要性 2、从物理与逻辑的角度,备份分为 3、从数据库的备份策略角度,备份可分为 3.1 完全备份(只适合第一次) 3.2 差异备份(用的较少,有丢失数据的现象…

应用 Serverless 化,让业务开发心无旁骛

我们希望让用户做得更少而收获更多,通过Serverless化,用云就像用电一样简单。”张建锋表示,Serverless 让云计算从一种资源真正变成一种能力,未来云将全面 Serverless 化,更加接近“电网”模式,按计算的调用…