DSP2335的LED工程笔记

首先是确定时钟

在技术参考中,找到时钟章节

只能观察每个寄存器,才能看到寄存器控制那个外设的时钟

第二找到对应GPIO以及寄存器;

在我板子里面的原理图是

但是TI的提供的库函数是分ABC的,刚开始就不知道怎麽分。GPIO68到GPIO64,应该是在ABC的那个端口;

GPIO68到GPIO64确定端口

在DSP开发原理中找到;同时也可以在寄存器中观察出来(截图太长了)。所以用的是c端口

值得注意的是:DSP开发原理是不教你怎麽去配置输入输出的;

全靠自己看结构图;或者用普中,或者其他公司的开发攻略;

配置输出

 配置方向寄存器;

配置复用输出;

 在复用表方面,各个公司的开发原理,又做得不够好;

 

如上图MUX复用表;64到68只有GPIO功能,没有其他复用;



程序

配置控制有控制寄存器;

写数据有数据寄存器;

void led_all_flow_init()
{ EALLOW;SysCtrlRegs.PCLKCR3.bit.GPIOINENCLK = 1;//系统控制,外设时钟3GpioCtrlRegs.GPCMUX1.bit.GPIO64 = 0;//复用寄存器 0为gpioGpioCtrlRegs.GPCPUD.bit.GPIO64 = 1;//上拉寄存器 1为上上拉GpioCtrlRegs.GPCDIR.bit.GPIO64 = 1;//方向寄存器,1为输出GpioCtrlRegs.GPCMUX1.bit.GPIO65 = 0;GpioCtrlRegs.GPCPUD.bit.GPIO65 = 1;GpioCtrlRegs.GPCDIR.bit.GPIO65 = 1;GpioCtrlRegs.GPCMUX1.bit.GPIO66 = 0;GpioCtrlRegs.GPCPUD.bit.GPIO66 = 1;GpioCtrlRegs.GPCDIR.bit.GPIO66 = 1;GpioCtrlRegs.GPCMUX1.bit.GPIO67 = 0;GpioCtrlRegs.GPCPUD.bit.GPIO67 = 1;GpioCtrlRegs.GPCDIR.bit.GPIO67 = 1;GpioCtrlRegs.GPCMUX1.bit.GPIO68 = 0;GpioCtrlRegs.GPCPUD.bit.GPIO68 = 1;GpioCtrlRegs.GPCDIR.bit.GPIO68 = 1;EDIS;
}#define LED1_TOGGLE GpioDataRegs.GPCTOGGLE.bit.GPIO68 = 1  //反转gpio寄存器
#define LED2_TOGGLE GpioDataRegs.GPCTOGGLE.bit.GPIO67 = 1
#define LED3_TOGGLE GpioDataRegs.GPCTOGGLE.bit.GPIO66 = 1
#define LED4_TOGGLE GpioDataRegs.GPCTOGGLE.bit.GPIO65 = 1
#define LED5_TOGGLE GpioDataRegs.GPCTOGGLE.bit.GPIO64 = 1void delay_led()
{int i = 0;int j = 0;for (i = 10000; i > 0; i--)for (j = 10000; j > 0; j--);}
#define us_us 1000000
void led_all_flow_twinkle(void)
{LED1_TOGGLE;DELAY_US(us_us);//自带延时LED2_TOGGLE;DELAY_US(us_us);LED3_TOGGLE;DELAY_US(us_us);LED4_TOGGLE;DELAY_US(us_us);LED5_TOGGLE;DELAY_US(us_us);}

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

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

相关文章

fetch 获取流式数据(chatgpt的流式输出)

背景:项目中需要获取chatgpt实时返回的数据 使用场景:在对接chatgpt 语言模型的时候采取的这种方案,因为目前的大语言的模型的结果都是需要一点点计算的,如果提出的问题比较复杂就导致响应的时间过长。 好处:流式获取…

WSL2环境下Debian 12的Docker安装与配置

WSL设置相关: wsl -l -v # 查看当前配置情况正常配置如下: NAME STATE VERSION * Debian Running 2如果与以上有差异,按如下步骤进行配置: wsl --set-version 2 wsl --set-default-version 2 wsl --s…

【2017年数据结构真题】

请设计一个算法,将给定的表达式树(二叉树)转换成等价的中缀表达式(通过括号反映次序),并输出。例如,当下列两棵表达式树作为算法的输入时: 输出的等价中缀表达式分别为(ab)(a(-d)) 和…

建立跨层全栈的区块链安全保障系统-应用层,系统层,设施层

目录 建立跨层全栈的区块链安全保障系统 应用层 系统层 设施层

深入理解注意力机制(上)-起源

一、介绍 近几年自然语言处理有很大的进展,从 2018 年 Google 推出的 BERT,到后来的 GPT、ChatGPT 等,这些模型当时能取得这样的成果,除了庞大的数据量及损害资源外,最重要的是的就是背后的Transformer模型&#xff0c…

开源博客项目Blog .NET Core源码学习(6:雪花算法)

Blog .NET项目中有多种数据类生成对象实例时需要唯一标识,一般做法要么使用GUID,也可以保存到数据库时使用数据库表的自增长ID,也可以自定义规则以确保产生不重复的唯一标识,而在Blog .NET项目中使用雪花算法生成唯一标识。   关…

Python中,我们可以使用pandas和numpy库对Excel数据进行预处理,包括读取数据、数据清洗、异常值剔除等

文章目录 一、什么是数据预处理二、对excel数据进行详细的数据预处理操作总结 一、什么是数据预处理 数据预处理是一种对数据进行清洗、整理、转换等操作的过程,旨在提高数据质量,使其适应模型的需求,从而改进数据挖掘或机器学习的结果。 数…

vscode 创建 运行c++ 项目

1 扩展 install c 2.1安装 mingw g 下载 MinGW-w64 - for 32 and 64 bit Windows - Browse Files at SourceForge.net win32下载地址 Download x86_64-8.1.0-release-win32-seh-rt_v6-rev0.7z (MinGW-w64 - for 32 and 64 bit Windows) 2.2 把 文件夹 bin 路径 添加到环境…

智慧卫生间

智慧卫生间 系统组成智慧卫生间系统结构图门锁感应开关开关量采集模块中控主机服务端/云平台 API文档获取ApiKey/SecretKey获取Access_token获取卫生间实时数据返回说明 系统组成 智慧卫生间系统结构图 #mermaid-svg-JRsKYT6nIM1tYip1 {font-family:"trebuchet ms",…

贪吃蛇游戏

一、创建新项目 创建一个新的项目,并命名。 创建一个名为images的文件夹用来存放游戏相关图片。 然后再在项目的src文件下创建一个com.xxx.view的包用来存放所有的图形界面类, 创建一个com.xxx.controller的包用来存放启动的入口类(控制类) 二、游戏界…

数理统计的基本概念(一)

文章目录 总体、样本与统计量总体及其分布样本及其分布统计量统计量概念样本矩顺序统计量及其分布样本中位数与样本极差经验分布函数 参考文献 总体、样本与统计量 总体及其分布 在数理统计中,称所研究的对象的全体为总体,总体中的元素称为个体。若总体…

Kafka 集群如何实现数据同步?

哈喽大家好,我是咸鱼 最近这段时间比较忙,将近一周没更新文章,再不更新我那为数不多的粉丝量就要库库往下掉了 T﹏T 刚好最近在学 Kafka,于是决定写篇跟 Kafka 相关的文章(文中有不对的地方欢迎大家指出)…

Unity2021及以上 启动或者禁用自动刷新

Unity 2021以以上启动自动刷新 Edit---> Preferences--> Asset Pipline --> Auto Refresh 禁用的结果 如果不启动自动刷新在Project面板选择Refresh是不会刷新已经修改后的脚本的。

数据挖掘复盘——apriori

read_csv函数返回的数据类型是Dataframe类型 对于Dataframe类型使用条件表达式 dfdf.loc[df.loc[:,0]2]df: 这是一个DataFrame对象的变量名,表示一个二维的表格型数据结构,类似于电子表格或SQL表。 df.loc[:, 0]: 这是使用DataFrame的.loc属性来进行…

一文了解Word2vec 阐述训练流程

一文了解Word2vec 阐述训练流程 个性嵌入(Personality Embeddings) 词嵌入(Word Embeddings) 嵌入向量效果分析 语言模型 模型介绍 模型训练 Word2vec训练方法 CBOW方法 Skip-gram方法 CBOW方法与Skip-gram方法总结 重构…

nodejs+vue慢性胃炎健康管理系统的设计与实现-微信小程序-安卓-python-PHP-计算机毕业设计

随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于慢性胃炎健康管理系统当然也不能排除在外,随着网络技术的不断成熟,带动了慢性胃炎健康管理系统, 系统首页、个…

AtCoder Beginner Contest 329 题解A~F

A - Spread 输入字符串&#xff0c;字符之间加上空格输出 B - Next 输出数组当中第二大的数 C - Count xxx 统计每个字符出现过的最长长度&#xff0c;再累加即可 #include<bits/stdc.h> #pragma GCC optimize("Ofast") #define INF 0x3f3f3f3f #define I…

【面试经典150 | 算术平方根】

文章目录 写在前面Tag题目来源解题思路方法一&#xff1a;数学表达式方法二&#xff1a;二分法 其他语言python3 写在最后 写在前面 本专栏专注于分析与讲解【面试经典150】算法&#xff0c;两到三天更新一篇文章&#xff0c;欢迎催更…… 专栏内容以分析题目为主&#xff0c;并…

【NGINX--1】基础知识

1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息&#xff0c;并安装一些有助于配置官方 NGINX 软件包仓库的软件包&#xff1a; apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…

广州华锐互动VRAR:VR教学楼地震模拟体验增强学生防震减灾意识

在当今社会&#xff0c;地震作为一种自然灾害&#xff0c;给人们的生活带来了巨大的威胁。特别是在学校这样的集体场所&#xff0c;一旦发生地震&#xff0c;后果将不堪设想。因此&#xff0c;加强校园安全教育&#xff0c;提高师生的防震减灾意识和能力&#xff0c;已经成为了…