【【萌新的SOC学习之GPIO之MIO控制LED实验程序设计】】

news2024/12/27 12:28:17

萌新的SOC学习之GPIO之MIO控制LED实验程序设计

如何设置完GPIO并且传递数据
我们先了解GPIO引脚的配置
每一个GPIO引脚都可以设置成输入输出 ,只有GPIO8 7 只能作为输出

我们现在做一个例子 GPIO 的bank我们知道有4个 bank0 1 2 3
DIRM_0 就是第一个bank 需要写入的是32位数据
因为写法是16进制 假设我们要操作 第10位置为1
那就是write 0x0000_0400 我们分析最后的几个位 我们可以看到是 100_0000_0000 正好是第10个管脚被置为了1
我们在上面的设置中还知道不仅要配置 DIRM 还要配置OEN
在这里插入图片描述
所以对于OEN这样的寄存器我们也需要把它的第十位设置为1 0x0000_0400 (16进制)
OEN寄存器比较特殊 只有当我们配置成输出模式的时候才有意义也就是在DIRM=1时 ,当我们前面的DIRM=0 时 OEN就会没有别的意义

我们把MIO设置为输入 只要把DIRM_0设置为 全0就可以了

接下来我们需要把数据写入

我们本次实验的任务是 使用PS端的MIO控制LED ,实现LED闪烁的效果
我们来看本次实验的系统框图
在这里插入图片描述
按照步骤创建完 会打开到一个SDK软件 其中的有
在这里插入图片描述
我们对这些数据敏感就会发现了
0xe000_a000
在这里插入图片描述
下一个实验GPIO之EMIO按键控制LED实验
实验任务: 使用ZYNQ底板上的三个用户按键分别控制PS端的三个LED的亮灭,其中一个按键需要通过EMIO进行扩展。
但是ZYNQ的底板上只有2个PS端的用户按键,要是用三个的话,就需要通过EMIO进行扩展
在这里插入图片描述
PS端的按键不够用 我们通过EMIO扩展 PL的按键
在这里插入图片描述
当我们的设计需要用到PL的资源时,我们就需要导出bitstream配置FPGA

我们想要读出数据可以直接使用GPIO_RO_x寄存器

把DIRM写0 就可以配置成输入了
如何配置MIO的输入?
配置成输入
读MIO_RO 寄存器
在这里插入图片描述
我们观察底板的电路图会发现

PS LED1 连接到的是 PS MIO8
PS LED0 连接到的是 PS MIO7
PS KEY0 连接到的是PS MIO12
PS KEY1 连接到的是PS MIO11
还有一个PS LED 直接接到了MIO0_LED上
PL端的KEY0 用的是L14

我们在vivado中实现 但是发现我们使用EMIO就需要给它分配管脚
在调用PS端的时候并不需要,因为它会自动给我们分配管脚
但是PL端需要我们自己去设置

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

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

相关文章

tecplot的使曲线光滑的方法

在对流场模拟结果进行处理时,不可避免的存在些许的噪声导致tecplot的曲线不光滑,故介绍一下tecplot中曲线光滑的方法 1.选择data-alter 2.data中选择smooth,通过调节number of passes,调节曲线光滑程度 大功告成! 最近发现写的文…

防反接方案,NMOS PMOS

NMOS电路的缺陷 1.1,由于NMOS具有内阻,我们可以把它设为Rdson, 那么电优先会从低电阻串口处走,这样会有烧毁串口地的风险。 1.2,短期内的方案是,可以在串口处串接1个100ohm电阻。 PMOS电路

基于Springboot实现口腔牙诊所管理平台项目【项目源码+论文说明】

基于Springboot实现口腔牙科诊所管理平台演示 摘要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,口腔管理平台当然也不能排除在外。口腔管理平台是以实际运用为开发背景&am…

oracle connect by详解

1、作用: 用于存在父子,祖孙,上下级等层级关系的数据表进行层级查询。 2、语法 SELECT ... FROM .... START WITH cond1 CONNECT BY cond2 WHERE cond3;2.1、说明 start with: 指定起始节点的条件 connect by: 指定父子行的条件关系 …

geecg-uniapp 路由修改 页面创建 (2)

首先打开 首页面 (1)我们以home的常用服务 为例 我们修改 usList 数据 (2)查找对应路径 work.js 我们修改荒石对应的路径 现在跳转 helloword (3)修改跳转路径 (4)创建页面 …

Python —— 接口测试之使用requests发起请求实战

1、认识requests模块 1、requests介绍 requests是一个第三方库,因此首先需要安装这个库,安装三步走: 安装:pip install requests在文件中引用这个模块:import requests使用这个库发起一个请求(get请求、…

C++——容器适配器

1. 什么是适配器? 容器适配器是C标准库中的一种数据结构,它可以将不同类型的容器(如vector、list、deque等)转换为另一种类型的容器。容器适配器提供了一种简单的方式来重新组织和访问数据,同时隐藏了底层容器的实现细…

C++ 多维数组

C 支持多维数组。多维数组声明的一般形式如下: type name[size1][size2]...[sizeN];例如,下面的声明创建了一个三维 5 . 10 . 4 整型数组: int threedim[5][10][4];二维数组 多维数组最简单的形式是二维数组。一个二维数组,在本…

vue启用打印机打印-二维码条形码打印

起因 资产、设备管理必备的二维码条形码打印 原理 所需插件 vue-print-nb 本文版本1.7.5 构建所需要打印的内容&#xff0c;利用vue-print-nb进行打印。二维码条形码打印的本质就是图片打印 代码 html部分 <div ref"printDom"id"printDom">//…

Linux内存管理 | 二、虚拟地址空间布局

我的圈子&#xff1a; 高级工程师聚集地 我是董哥&#xff0c;高级嵌入式软件开发工程师&#xff0c;从事嵌入式Linux驱动开发和系统开发&#xff0c;曾就职于世界500强企业&#xff01; 创作理念&#xff1a;专注分享高质量嵌入式文章&#xff0c;让大家读有所得&#xff01; …

SNAP计算哨兵2号的LAI/FVC/FAPAR

SNAP计算LAI 简介 SNAP的计算LAI方法是基于PROSAIL模型&#xff0c;集成的模块&#xff0c;很方便。 首先要下载SNAP软件&#xff0c;下载步骤见博文 打开数据 找到影像的.xml文件 拖入左边的空白框中&#xff0c;发现所有波段会显示如下。这些数据都是已经经过处理完成之后…

Vue之VueX知识探索(一起了解关于VueX的新世界)

目录 前言 一、VueX简介 1. 什么是VueX 2. VueX的作用及重要性 3. VueX的应用场景 二、VueX的使用准备工作 1. 下载安装VueX 2. vuex获取值以及改变值 2.1 创建所需示例 2.2 将创建好的.vue文件页面显示 2.3 创建VueX的相关文件 2.4 配置VueX四个js文件 2.5 加载到vue示…

网络架构介绍

1 网络 7 层架构 7 层模型主要包括&#xff1a; 1. 物理层&#xff1a;主要定义物理设备标准&#xff0c;如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流&#xff08;就是由 1、0 转化为电流强弱来进行传输,到达目的地后在转化为1、0…

简述电子设计中的EMC、EMI、ESD

简述电子设计中的EMC、EMI、ESD ESD EMI EMC ESD、EMI、EMC 设计是电子工程师在设计中遇到最常见的难题&#xff0c;电磁兼容性&#xff08;EMC&#xff09;是指设备或系统在其电磁环境中符合要求运行并不对其环境中的任何设备产生无法忍受的电磁干扰的能力。 因此&#xff0…

【2023年11月第四版教材】第24章《法律法规与标准规范》(合集篇)

第24章《法律法规与标准规范》(合集篇&#xff09; 1 民法典&#xff08;合同编&#xff09;2 招标投标法2.1 关于时间的总结2.2 内容 3 政府采购法4 专利法5 著作权法6 商标法7 网络安全法8 数据安全法 1 民法典&#xff08;合同编&#xff09; 1、要约是希望和他人订立合同的…

LLM - 旋转位置编码 RoPE 代码详解

目录 一.引言 二.RoPE 理论 1.RoPE 矩阵形式 2.RoPE 图例形式 3.RoPE 实践分析 三.RoPE 代码分析 1.源码获取 2.源码分析 3.rotary_emb 3.1 __init__ 3.2 forward 4.apply_rotary_pos_emb 4.1 rotate_half 4.2 apply_rotary_pos_emb 四.RoPE 代码实现 1.Q/K/V …

苹果ios开发者ipa文件包内测人数签名真机数量满了应该怎么做?

苹果ios开发者ipa文件包内测人数签名真机数量满了应该怎么做&#xff1f; 有人总是问我开发者的设备满了怎么做才可以让设备增加&#xff1f;或者我要怎么做才能让员工的设备都可以安装&#xff0c;那么首先我们要做到的就是要知道我们的开发者都是拥有多少内测设备&#xff1f…

放大器的输入、输出电压范围的理解

问题电路 由于运放SGM8295不是轨到轨的电路&#xff0c;导致U29.1输出电压只有当输入到一定门限的时候才会有输出。 上图表示输入电压工作范围为如上&#xff0c;在此以外的不能正常工作。 一篇很好的运放的输入/输出文章介绍 https://zhuanlan.zhihu.com/p/351740051?utm_id0…

【Java学习之道】异常的处理方式

引言 今天我们将聚焦于异常处理&#xff0c;这是每一个Java程序员都应该掌握的核心技能之一。通过学习这些内容&#xff0c;你将能够更好地应对程序中的意外情况&#xff0c;提高程序的健壮性和可靠性。 一、异常的处理方式 在Java中&#xff0c;异常处理主要通过使用try-ca…

后厂村路灯在线签名网站,在线签名工具,IPA在线签名

IPA在线签名工具网站&#xff0c;在线实现IPA包签名 案例网站&#xff1a;在线签名 - 后厂村路灯https://sign.vx365.vip/ 用户可以自定义签名网站样式。 用户可以独立部署到自己服务器&#xff0c;使用自己的域名。 用户可以使用自己服务器&#xff0c;加快签名速度&#xf…