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

萌新的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.hqwc.cn/news/132911.html

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

相关文章

如何压缩视频?视频压缩变小方法汇总

视频是我们日常生活中不可或缺的一部分,但视频文件往往会占用大量存储空间,这在传输和分享过程中可能成为一个瓶颈。 为了解决这一问题,我们可以通过压缩的方式减小视频大小,视频压缩是指在保证视频质量的前提下,通过…

【Debian系统】:安装debian系统之后,很多命令找不到,需要添加sudo之后才能使用,以下解决方法

项目场景: 问题描述 解决方案: 1.临时解决方案 2.永久解决方案 1.首先打开编辑: 2.打开之后最后一行添加代码: 3.最后运行一遍 .bashrc 4.已经可以了,可以试试reboot,重启一下机子 一点一滴才能成长 …

Mysql5.7大限将至升级Mysql 8.0过程记录(未完)

一、前言 时间很快,到2023年10月底,MySQL 5.7就到了它的EOL(End of Life),届时将不会提供任何补丁,无法应对潜在的安全风险;是时候和 MySQL 5.7 说再见了!!!&…

深入理解强化学习——序列决策(Sequential Decision Making)

分类目录:《深入理解联邦学习》总目录 在本文中我们将介绍序列决策(Sequential Decision Making)过程中的各个过程。 智能体与环境 强化学习研究的问题是智能体与环境交互的问题,下图左边的智能体一直在与下图右边的环境进行交互…

收银系统商品定价设计思考

一、背景 因为门店系统里商品总共也就几万款,一直以来都是根据条码由总部统一定价销售,现在有加盟店,各门店也有进行各自促销活动的需求,这就需要放开门店自主定价权,所以近段时间系统在商品定价上做了扩展。 二、商…

【tomcat、java】

java&#xff1a;maven配置 1.安装插件 <build><plugins><plugin><groupId>org.apache.tomcat.maven</groupId><artifactId>tomcat7-maven-plugin</artifactId><version>2.1</version><configuration><port&…

基于web的酒店客房管理系统

目录 前言 一、技术栈 二、系统功能介绍 用户信息管理 会员信息管理 客房信息管理 收藏客房管理 用户入住管理 客房清扫管理 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施…

Android组件通信——ActivityGroup(二十五)

1. ActivityGroup 1.1 知识点 &#xff08;1&#xff09;了解ActivityGroup的作用&#xff1b; &#xff08;2&#xff09;使用ActivityGroup进行复杂标签菜单的实现&#xff1b; &#xff08;3&#xff09;使用PopupWindow组件实现弹出菜单组件开发&#xff1b; 1.2 具体…

2023全国大学生软件测试大赛开发者测试练习题99分答案(ScapegoatTree2023)

2023全国大学生软件测试大赛开发者测试练习题99分答案&#xff08;ScapegoatTree2023&#xff09; 题目详情题解代码&#xff08;直接全部复制到test类中即可&#xff09; 提示&#xff1a;该题只需要分支覆盖得分即可&#xff0c;不需要变异得分 题目详情 题解代码&#xff0…

C++——string

目录 STL STL六大组件 标准库中的string类 string类 string类常用接口 构造函数 下标遍历[] 迭代器 范围for push_back() append() insert() operator pop_back() erase() reserve resize clear c_str() substr() find() rfind() find_first_of getline str…

腾讯云优惠券种类、领取方法及使用教程分享

腾讯云是国内领先的云计算服务提供商&#xff0c;为用户提供丰富的云计算产品和服务。为了吸引更多用户使用腾讯云的产品和服务&#xff0c;腾讯云会定期推出各种优惠券活动。本文将为大家介绍腾讯云优惠券的种类、领取方法及使用教程。 一、腾讯云优惠券种类介绍 腾讯云优惠券…

STM32 CubeMX ADC采集 单通道,多通道,内部温度(轮询,DMA,中断)(HAL库)

STM32 CubeMX ADC采集&#xff08;HAL库&#xff09; STM32 CubeMX STM32 CubeMX ADC采集&#xff08;HAL库&#xff09;ADC介绍ADC主要特征Vref的电压&#xff08;2.4~3.6&#xff09;就是ADC参考电压2.4V&#xff08;相当于秤砣&#xff09; 最小识别电压值&#xff1a;2.4/4…