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
    +关注

    关注

    242

    文章

    23277

    浏览量

    660893
  • 威廉希尔官方网站 图

    关注

    10344

    文章

    10721

    浏览量

    530642
  • 控制寄存器
    +关注

    关注

    0

    文章

    34

    浏览量

    11489
  • jz2440
    +关注

    关注

    0

    文章

    2

    浏览量

    4606
收藏 人收藏

    评论

    相关推荐

    感应笔威廉希尔官方网站 图

    感应笔威廉希尔官方网站 图
    发表于 12-23 16:48 6次下载

    威廉希尔官方网站 图

    我想问一下这个威廉希尔官方网站 图连接这么在下面求求大佬解答一下
    发表于 12-04 16:34

    威廉希尔官方网站 小知识 | 电源选型要点、威廉希尔官方网站 图的解读方法、LED及其应用示例

    在上一篇文章中 交流威廉希尔官方网站 复数的基础知识以及相位差和电抗的计算我们给大家分享了复数的基础知识以及相位差和电抗的计算,本篇继续给大家分享交流威廉希尔官方网站 的电源选型要点、威廉希尔官方网站 图的解读方法、LED及其
    发表于 11-25 10:59

    阻容降压威廉希尔官方网站 图

    阻容降压威廉希尔官方网站 是利用电容对交流电的容抗来限制威廉希尔官方网站 的最大电流,而负载的电压则是由负载本身的电阻和电容容抗串联分压决定。 下图是一个十元的充电手电威廉希尔官方网站 图,为阻容降压充电威廉希尔官方网站 给电池充电,充电电
    的头像 发表于 11-19 09:44 287次阅读
    阻容降压<b class='flag-5'>威廉希尔官方网站
图</b>

    电源接线检测仪LED1、2威廉希尔官方网站 的二极管是反接的,灯为什么会

    请教下,220V接线检测威廉希尔官方网站 中,威廉希尔官方网站 图LED灯1、2、3对应灯从左到右。LED1、2威廉希尔官方网站 的二极管是反接的,灯为什么会
    发表于 08-07 22:49

    LED追逐器威廉希尔官方网站 图 使用ESP32板的LED追逐器设计

    LED追逐器是一种利用LED(发光二极管)作为光源,通过电子威廉希尔官方网站 控制LED灯依次或按特定模式点亮和熄灭,从而产生追逐、闪烁或动态变化的视觉效
    的头像 发表于 07-02 16:53 1254次阅读
    <b class='flag-5'>LED</b>追逐器<b class='flag-5'>威廉希尔官方网站
图</b> 使用ESP32板的<b class='flag-5'>LED</b>追逐器设计

    有关LM3914N和LM3914N-1应用的疑问

    是连接在相应电位上的LED。而把芯片换成LM3914N,即可正常工作于条状模式。威廉希尔官方网站 不做任何改动,换上LM3914N-1,工作状态就变成状模式,即只有相应位上的
    发表于 04-28 11:36

    电动车电池充电威廉希尔官方网站 图

    威廉希尔官方网站 包括:转灯控制威廉希尔官方网站 、风扇控制威廉希尔官方网站 、过流保护威廉希尔官方网站 。 看懂这个威廉希尔官方网站 图,在掌握三极管、运算放大器的基础上,抓住下面两
    发表于 03-11 14:31 3145次阅读
    电动车电池充电<b class='flag-5'>威廉希尔官方网站
图</b>

    LED驱动威廉希尔官方网站 图分享

    LED驱动威廉希尔官方网站 是一种用于驱动LED发光的电子威廉希尔官方网站 LED(发光二极管)是一种特殊的半导体器件,具有长寿命、高光效、安全环保、方
    的头像 发表于 02-18 16:55 4083次阅读
    <b class='flag-5'>LED</b>驱动<b class='flag-5'>威廉希尔官方网站
图</b>分享

    典型LED驱动威廉希尔官方网站 图分享

    LED驱动威廉希尔官方网站 是一种电源威廉希尔官方网站 ,用于将输入的电源电压转换为适合LED的直流电压,以驱动LED正常工作。LE
    的头像 发表于 02-07 18:29 1.2w次阅读
    典型<b class='flag-5'>LED</b>驱动<b class='flag-5'>威廉希尔官方网站
图</b>分享

    典型LED照明威廉希尔官方网站 图分享

    LED照明威廉希尔官方网站 是一种将电能转换为光能的威廉希尔官方网站 ,使用LED(发光二极管)作为光源。LED照明威廉希尔官方网站 具有
    的头像 发表于 02-05 16:39 7393次阅读
    典型<b class='flag-5'>LED</b>照明<b class='flag-5'>威廉希尔官方网站
图</b>分享

    AND威廉希尔官方网站 应用威廉希尔官方网站 图分析

    在这个串联威廉希尔官方网站 中,如果两个开关都为开状态,则LED点亮;如果任何一个开关为关状态,则LED熄灭。基本逻辑威廉希尔官方网站 也称作门
    发表于 02-03 10:36 3717次阅读
    AND<b class='flag-5'>威廉希尔官方网站
</b>应用<b class='flag-5'>威廉希尔官方网站
图</b>分析

    简单实用的3种led恒流驱动威廉希尔官方网站 图

    简单实用的3种led恒流驱动威廉希尔官方网站 图
    的头像 发表于 01-24 17:51 1.5w次阅读
    简单实用的3种<b class='flag-5'>led</b>恒流驱动<b class='flag-5'>威廉希尔官方网站
图</b>

    典型LED驱动器威廉希尔官方网站 图分享

    LED驱动器是一种电源调整电子器件,主要用于驱动LED发光或LED模块组件正常工作。由于LEDPN结的导通特性决定,它能适应的电源的电压和电流变动范围十分狭窄,稍许偏离就可能无法点亮
    的头像 发表于 01-12 16:11 1.7w次阅读
    典型<b class='flag-5'>LED</b>驱动器<b class='flag-5'>威廉希尔官方网站
图</b>分享

    AD9361 开发板威廉希尔官方网站 图 威廉希尔官方网站 原理

    AD9361 开发板威廉希尔官方网站 图 威廉希尔官方网站 原理 AD9361威廉希尔官方网站 图 TCM1-63AX+ PIN TO PIN CH-BTM163A 替代型号威廉希尔官方网站 图
    发表于 01-02 11:46