ARM入门(实现LED流水灯)超简单

这篇具有很好参考价值的文章主要介绍了ARM入门(实现LED流水灯)超简单。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        实现效果将LDE2到LED5依次点亮再依次熄灭。点亮LED灯就像我们接触编程语言的第一天输出一个"hello world"一样,这是一个最基础的入门操作。这里我们以点亮LED2的过程进行详细讲解,因其他LED灯的点亮过程都是一样的,所以就不做一一介绍了。

1、首先第一步我们需要在开发板上找到LDE灯的位置,再LED灯的旁边会标注有此硬件元件的名称,图中我们可以看出LED2的名称就叫LED2。

2、打开LED2所在的开发板手册查询LED2接到核心板的什么位置,肉眼查询的化过于麻烦,所以我们可以直接对关键字LED2进行搜索,搜索到的结果会以深色显示,从LED2的位置顺沿向左看,最左端的CHG_COK就是LED2在核心板上所接的管脚。

ARM入门(实现LED流水灯)超简单

 3、通过CHG_COK查询查询相应管脚的寄存器(LED的状态都是通过操作相应寄存器实现的),将CHG_COK复制下来打开核心板手册,同样进行搜索操作。从CHG_COK顺沿向左看就可以找到LED2所对应的寄存器GPX2_7,此时的工作已经完成一半了是不是觉得很简单。

ARM入门(实现LED流水灯)超简单

 4、配置GPX2_7状态寄存器,此时我们需要打开用户手册对GPX2_7寄存器的相关信息进行查询,打开用户手册直接搜索GPX2CON[7],以下就是GPX2_7寄存器的相应信息。由下图我们需要提取以下信息:基地址、偏移地址、负责相应状态的比特位。

基地址:Base Addrrss:0x110000

偏移地址:0x0c40ARM入门(实现LED流水灯)超简单

        需要操作的地址=基地址+偏移地址,所以就是0x11000c40,负责相应状态的比特位的值:图中显示了该寄存器相应的比特位是28到31位,在后面的Descriptiony一栏中是所需配置的状态,我们需要的是将寄存器配置为使出状态,所以将28到31比特位配置成0x2就行了。

 ARM入门(实现LED流水灯)超简单

         首先先将寄存器的28到31比特位清零LED2CON &(~(0xf<<28)),然后 |(0x1<<28)位将28到31位置为ox2。

 5、配置GPX2DAT数据寄存器为高电平。

ARM入门(实现LED流水灯)超简单

        对地址的操作同上,但是此时的问题就是在不知道的前提下我们无法判断是给寄存器的0到7为中的哪一位配置成高电平可以点亮LED灯,所以现在有两种办法解决:1.咨询上游商家  2.一位一位去测试。在这我们就不去测试了凭借经验LED2需要将第7个比特位置为1就可以点亮,相反如果将其置为0就会熄灭,到此我们就完成了对LED2的点亮和关闭操作。

ARM入门(实现LED流水灯)超简单

 5、其他灯的操作同理,整个代码如下

ARM入门(实现LED流水灯)超简单

 文章来源地址https://www.toymoban.com/news/detail-409559.html

到了这里,关于ARM入门(实现LED流水灯)超简单的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (STM32基础)STM32实现LED闪烁&LED流水灯&蜂鸣器

    1、按照新建工程步骤创建工程,新建start、library、user三个文件夹,从固件库添加相应文件 2、keilkil小程序用来清理listings和objects文件夹中编译产生的中间文件,以后需要打包工程的话可以先用keilkill先清理,这样文件夹会大大缩小所占内存。 在library中可以查看外设函数库,

    2024年02月07日
    浏览(56)
  • 单片机Proteus软件仿真一(手把手教你实现LED流水灯)

    1 单片机8051系列 爬虫是不能发了,审核总是不通过,算了,发点其他的。 51单片机是对兼容英特尔8051指令系统的单片机的统称。51单片机广泛应用于家用电器、汽车、工业测控、通信设备中。因为51单片机的指令系统、内部结构相对简单,所以国内许多高校用其进行单片机入

    2024年02月01日
    浏览(44)
  • led流水灯

      本章将讲解流水灯的制作,在Cyclone IV开发板上依次点亮四个led灯,并以一定间隔亮灭,达到流水灯的效果。 图1. DIP发光二极管(直插型) 图2. SMD发光二极管(贴片型)   LED灯就是发光二极管,二极管功能很多,在本实验中我们暂且将其看作是一个开关。二极管在正向

    2024年02月13日
    浏览(46)
  • 【蓝桥杯嵌入式】点亮LED灯,流水灯的原理图解析与代码实现——STM32

    🎊【蓝桥杯嵌入式】专题正在持续更新中,原理图解析✨,各模块分析✨以及历年真题讲解✨都在这儿哦,欢迎大家前往订阅本专题,获取更多详细信息哦🎏🎏🎏 🪔本系列专栏 -  蓝桥杯嵌入式_勾栏听曲_0的博客 🍻欢迎大家  🏹  点赞👍  评论📨  收藏⭐️ 📌个人主

    2024年02月03日
    浏览(48)
  • 51单片机学习--LED流水灯

    延时代码可通过软件生成,系统频率要和开发板的晶振频率相对应。  

    2024年02月16日
    浏览(51)
  • 【C51基础实验 LED流水灯】

    前言: 前几篇学会了LED驱动原理,并且成功点亮了一颗LED和实现了LED的闪烁,那么这篇紧接着就来解锁LED的新功能,LED流水灯。当然这里前提是基于肉眼余晖可见光达成的效果。 开发板上 LED 模块电路原理图如下图所示: 看上图中 LED 采用共阳接法 ,D1-D8 连接到单片机的

    2024年02月10日
    浏览(38)
  • Verilog HDL——LED流水灯工程&LED点阵显示

    LED流水灯 根据8位LED灯与EPM240引脚I/O对应关系 配置CPLD引脚: Hardware SetupUSB-Blaster[USB-0]JTAG Mode 下载工程: LED点阵显示 LED点阵电路: 00IC-EPM240 开发板采用的点阵型号是 10788。8×8LED 点阵共有 16 个引脚,分别控制 8 行和 8 列,行列共同决定其中一个 LED 的亮灭。图中 ROW 为行,

    2024年02月03日
    浏览(43)
  • Quartus II使用——3 LED流水灯

    1.学习要求 目标:实现8个LED灯(LED 0~LED 7)间隔100ms依次点亮,然后全部熄灭,再依次点亮。 2.仿真分析 clk是50Mhz时钟,那么一个周期为(1X10^9)/(50X10^6)=20ns,1秒对应50000000个时钟周期,100ms=5000000个时钟周期。 复位时,LED灯全部熄灭    :led=8\\\'hff 点亮第1个LED灯               

    2023年04月22日
    浏览(34)
  • STM32F103C8T6定时器实现led的周期闪烁及PWM实现流水灯

    通过定时器Timer方式实现时间的精准控制,相当于给CPU上了一个闹钟,CPU平时处理其它任务,当定时时间到了以后,处理定时相关的任务。请设置一个5秒的定时器,每隔5秒从串口发送“hello windows!”;同时设置一个2秒的定时器,让LED等周期性地闪烁。 使用TIM3和TIM4,分别输

    2024年01月23日
    浏览(53)
  • ARM-流水灯

    现象:

    2024年02月07日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包