0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

JZ2440点亮LED电路图设计案例

454398 来源:博客园 作者:LOSER Z 2020-10-07 15:21 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在JZ2440中,点亮LED就是给LED的控制位设置为输出,数据位设置为低电平,而通过按键点亮LED,就需要将按键对应的控制位设置为输出。

下面是JZ2440的3个LED电路图:

下面是JZ2440的3个按键的电路图

通过查找nLED_1,nLED_2,nLED_4对应的引脚,发现它们分别对应GPF4,GPF5,GPF6,如图:

通过查找EINT0,EINT2,EINT11对应的引脚,发现它们分别对应GPF0,GPF2,GPG3,如图:

由此,我们再去看2440的Datasheet,查看它们的控制位和数据位的信息,首先是GPF4,GPF5,GPF6的控制位信息,如图:

我们发现,当GPFCON寄存器的GPF4,GPF5,GPF6的控制位设置为01时,表示控制输出,这正是我们想要的。在看看它们的数据位是怎么设置的,如图:

由表格可知,当端口被配置为输出端口时,它的引脚状态和相应的位相同。也就是说,如果我想让LED1亮,那么我就要把它对应的GPF4配置为输出,然后将GPFDAT的第4位设置为0.

再看看按键对应的寄存器怎么配置,上面说到S2,S3,S4对应的控制寄存器相应的位是GPF0,GPF2和GPG3

由于按键是个输入设备,所以我们需要将GPF0,GPF2,GPG3的位设置为00。到此,LED和按键寄存器我们已经配置好了,下面看一下代码:

首先是一段汇编代码,由这段汇编代码引导到main函数,同时进行相应的硬件配置


下面主程序:

#define GPFCON (*(volatile unsigned long *)0x56000050)
#define GPFDAT (*(volatile unsigned long *)0x56000054)
#define GPGCON (*(volatile unsigned long *)0x56000060)
#define GPGDAT (*(volatile unsigned long *)0x56000064)
/*
* LED1,LED2,LED4对应GPF4、GPF5、GPF6
*/
#define GPF4_out (1<<(4*2))
#define GPF5_out (1<<(5*2))
#define GPF6_out (1<<(6*2))
#define GPF4_msk (3<<(4*2))
#define GPF5_msk (3<<(5*2))
#define GPF6_msk (3<<(6*2))
/*
* S2,S3,S4对应GPF0、GPF2、GPG3
*/
#define GPF0_msk (3<<(0*2))
#define GPF2_msk (3<<(2*2))
#define GPG3_msk (3<<(3*2))
int main()
{
unsigned long dwDat;
// LED1,LED2,LED4对应的3根引脚设为输出,将这些位清零
//先把9,、9、10、11、12、13位清零,然后或操作设为输出01
GPFCON &= ~(GPF4_msk | GPF5_msk | GPF6_msk);
GPFCON |= GPF4_out | GPF5_out | GPF6_out;
// S2,S3对应的2根引脚设为输入
GPFCON &= ~(GPF0_msk | GPF2_msk);
// S4对应的引脚设为输入
GPGCON &= ~GPG3_msk;
while(1){
//若Kn为0(表示按下),则令LEDn为0(表示点亮)
dwDat = GPFDAT; // 读取GPF管脚电平状态
if (dwDat & (1<<0))        // S2没有按下
GPFDAT |= (1<<4);       // LED1熄灭
else
GPFDAT &= ~(1<<4);      // LED1点亮
if (dwDat & (1<<2))         // S3没有按下
GPFDAT |= (1<<5);       // LED2熄灭
else
GPFDAT &= ~(1<<5);      // LED2点亮
dwDat = GPGDAT; // 读取GPG管脚电平状态
if (dwDat & (1<<3))         // S4没有按下
GPFDAT |= (1<<6);       // LED3熄灭
else
GPFDAT &= ~(1<<6);      // LED3点亮
}
return 0;
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    243

    文章

    24438

    浏览量

    687490
  • 电路图
    +关注

    关注

    10459

    文章

    10749

    浏览量

    551792
  • 控制寄存器
    +关注

    关注

    0

    文章

    34

    浏览量

    11741
  • jz2440
    +关注

    关注

    0

    文章

    2

    浏览量

    4817
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    IO设置为输出点亮LED灯, 没有操作时led灯一一灭是怎么回事?

    IO设置为输出点亮LED灯, 没有操作时 LED灯 一一灭 怎么回事
    发表于 12-05 08:14

    神舟笔记本K580S维修电路图资料

    神舟K580S 电路图位图-神舟笔记本K580S维修电路图
    发表于 10-21 15:54 0次下载

    电路图:求马兰士功放DA -J7MKII电路图

    跪求马兰士功放DA -J7MKII电路图
    发表于 08-13 13:00

    【创龙TLT113-MiniEVM开发板试用体验】点亮LED

    源(3.3V),负极连接GPIO引脚。 点亮条件 :GPIO输出低电平时形成电流通路(低电平驱动)或高电平驱动(根据电路设计)。 本开发板LED电路: 用户
    发表于 08-05 21:36

    瑞萨RA系列FSP库开发实战指南(19)使用寄存器点亮LED

    野火启明6M5开发板的LED电路图如图所示。图中RA6M5芯片的P400、P403、P404引脚分别通过一个2.2 KΩ的限流电阻连接到LED1、LED2、
    的头像 发表于 06-11 15:06 1742次阅读
    瑞萨RA系列FSP库开发实战指南(19)使用寄存器<b class='flag-5'>点亮</b><b class='flag-5'>LED</b>灯

    250种IC功放的电路图

    250种IC功放的电路图,部分资料内容截取: 纯分享贴,有需要可以直接下载附件获取完整资料! (如果内容有帮助可以关注、赞、评论支持一下哦~)
    发表于 05-20 15:19

    门老师教你快速看懂电子电路图

    本文从最基本的电容电阻开讲,包含模电数电,以及部分电气知识,深入浅出。 资料介绍: 全文共分7课,以老师授课和师生交流的形式系统地介绍了电子电路识图方面的基本知识和技能,包括电路图的基本概念和要素
    发表于 05-16 15:17

    多年私藏的电源电路图锦集

    1、3~25V 电压可调稳压电路图 2、10A3~15V 稳压可调电源电路图 3、用 MC34063 做 3.6V 电转 9V 电路图 纯分享贴,有需要可以直接下载附件获取文档! (如果内容有帮助可以关注、
    发表于 04-24 16:58

    《电子懒人的基础硬件电路图讲解》

    包含了简单的,基础的单元电路图。积累这些基础的电路图,对分析一个复杂的电路很有帮助。因为一个复杂的电路图可以按照功能来划分成不同的模块,再对模块进行分解成不同的单元
    发表于 04-24 16:40

    如何看懂电路图——超级完整版

    电子设备中有各种各样的。能够说明它们工作原理的是电原理,简称电路图电路图有两种,一种是说明模拟电子电路工作原理的。它用各种图形符号
    发表于 04-01 15:19

    DLPA2000重复启动RGB LED的原因?

    我目前使用 DLPC3433+DLPA2000 搭配 DLP2010, 应用在AR眼镜上 (左右两眼显示), 系统第一次开机时, 两边的光机背光 ( RGB LED ) 皆可以正常点亮, 但是有
    发表于 02-24 07:36

    电源电路图深度讲解

      用电路元件符号表示电路连接的,叫电路图电路图是人们为研究、工程规划的需要,用物理电学标准化的符号绘制的一种表示各元器件组成及器件关系
    的头像 发表于 02-18 10:46 4549次阅读
    电源<b class='flag-5'>电路图</b>深度讲解

    proteus呼吸灯原理防真不

    11 请大神指导下,在播放防真时,LED灯不亮是什么情况。电路图应没有问题。实物制作出来没有问题。
    发表于 02-13 09:51

    智慧用电 物联网时代的化改革,智慧照明微光发电 点亮未来

    智慧用电 | 物联网时代的化改革,智慧照明微光发电 点亮未来
    的头像 发表于 02-08 10:42 829次阅读

    感应笔电路图

    感应笔电路图
    发表于 12-23 16:48 18次下载