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

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

3天内不再提示

英创信息技术EM9560工控主板GPIO的使用介绍

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-01-15 14:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

EM9560工控主板是以EM9460工控主板为基础,并针对客户应用的需求,增加了更多通用数字IO,于2012年初推出的一款低成本嵌入式主板产品。该产品保持了Linux操作系统作为客户应用程序的软件平台,其基本接口功能API函数上也与前期产品EM9460完全兼容,从而保证了客户的应用程序可不加修改的直接运行于EM9560。

EM9560的GPIO数量从原有的16位(即EM9460的GPIO数)增加到46位。为了方便客户应用程序的一致性,EM9560的GPIO驱动支持用户应用程序采用现有API函数就可操作所有的GPIO。本文主要介绍如何利用现有API函数实现EM9560的GPIO操作。

EM9560的46位GPIO分成了2组,第一组为原有的16位GPIO,称为GPIO0–GPIO15,第二组为扩展的新的GPIO,为区别说明,成为GPIOX0–GPIOX29。注意这两组GPIO都没有用到最高bit,即BIT31。新的API函数正是利用BIT31作为输入参数,当BIT31为“0”时,表示操作基本的GPIO0–GPIO15;而BIT31=“1”时,则表示操作扩展的GPIOX0–GPIOX29。举例说明如下:

#define GPIOX_FLAG (1 << 31) // 定义操作标志

以设置GPIO位输出高电平为例,其基本操作函数保持不变:

int GPIO_OutSet(int fd, unsigned int dwSetBits)
{
int rc;
rc = ioctl(fd, EM9X60_GPIO_IOCTL_OUT_SET, &dwSetBits);
return rc;
}

当操作基本的GPIO0–GPIO15时,调用方式为:

unsigned int uBits = GPIOm | … | GPIOn; // 设置相关GPIO位
rc = GPIO_OutSet(fd, uBits );

而当操作扩展的GPIOX0–GPIOX29时,调用方式为:

unsigned int uBits = GPIOm | … | GPIOn; // 设置相关GPIO位
rc = GPIO_OutSet(fd, uBits |GPIOX_FLAG ); // 设置扩展标志位

由于GPIO的API大多数是输出类型的,对仅操作基本GPIO0 – GPIO15,原有程序可不做修改,就可直接使用。但对读取GPIO状态,则需要特别注意,其输出参数必须事先设置标志位,才能调用状态读取函数,其相关代码如下:

基本的状态读取函数不变:

int GPIO_PinState(int fd, unsigned int* pPinState)
{
int rc;
unsigned int dwCurrPinState;
rc = ioctl(fd, EM9X60_GPIO_IOCTL_PIN_STATE, &dwCurrPinState);
if(rc == 0) // ioctl successful
{
*pPinState = dwCurrPinState;
}
return rc;
}

对读取基本GPIO0–GPIO15的状态,需要对输出参数先赋0,再调用:

unsigned int uState = 0;
rc = GPIO_PinState(fd, &uState);

对读取扩展GPIOX0 – GPIOX29的状态,需要对输出参数先设置扩展GPIO标志,再调用:

unsigned int uState = GPIOX_FLAG; // 设置扩展标志位
rc = GPIO_PinState(fd, &uState);

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217983
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6107

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    国产力量铸就数字基石:飞腾工控主板赋能多领域智能化升级

    当前,信息技术应用创新产业进入规模化落地的关键阶段,硬件基础设施的国产化、自主化已从可选变为必选。作为工业控制、智能终端的核心硬件,工控主板直接关系到金融、政务、能源等关键领域的系统稳定与数据安全。
    的头像 发表于 11-27 09:04 223次阅读
    国产力量铸就数字基石:飞腾<b class='flag-5'>工控</b><b class='flag-5'>主板</b>赋能多领域智能化升级

    3A6000四核龙芯工控主板,推动信工控深度融合

    当今信科技快速发展,技术的不断演进和市场需求的变化,在工控领域也在进行源源不断地创新,其中最引人注目的是国产龙芯主板在其中的发展应用。
    的头像 发表于 11-14 09:10 207次阅读

    工控主板的设计特性

    在工业自动化、智能装备、物联网等领域,工控主板作为核心控制单元,其设计质量直接决定了整个系统的稳定性、可靠性与运行效率。与消费级主板不同,工控主板
    的头像 发表于 11-13 08:58 292次阅读
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>的设计特性

    新时代的硬核基石:龙芯工控主板助力信产业新基建

    在数字技术重塑产业格局的今天,信产业已成为保障国家信息技术安全的核心战略。作为工业自动化系统的大脑,工控主板的自主可控程度直接决定信创新基
    的头像 发表于 11-05 13:54 137次阅读

    工控主板的三大核心技术

    在工业自动化的浪潮中,工控主板如同“工业大脑”的核心载体,支撑着各类设备的稳定运行与智能升级。相较于消费级主板工控主板需在复杂工况下实现长
    的头像 发表于 10-16 11:05 230次阅读

    智慧新核心,龙芯主板助力信体系再升级

    信息技术飞速发展的当下,信体系的自主可控与创新升级已成为国家战略层面的关键任务。作为信产业发展的重要基础硬件支撑,国产工控主板正发挥着
    的头像 发表于 08-11 09:14 565次阅读

    佛瑞亚如何通过信息技术推动业务增长

    在数字化、信息化的浪潮下,信息技术已经不仅是后台工具,更成为驱动企业发展的关键力量。本期Women Inspiring Mobility,我们采访了佛瑞亚中国区信息技术总监马瑛,了解她和团队如何将
    的头像 发表于 07-29 14:00 730次阅读

    飞腾主板为信产业发展提高硬实力

    信息技术飞速发展的当下,信产业已成为我国实现科技自立自强、保障国家信息安全的关键领域。信,即信息技术应用创新,其核心目标是实现
    的头像 发表于 07-22 18:20 560次阅读

    科普|信是什么?一文读懂“信息技术应用创新”战略

    什么是信?信,即“信息技术应用创新”,是国家推动IT系统自主可控、安全可控的重要战略工程。它不仅是技术层面的创新,更承载着保障国家网络安全、推动产业升级和实现数字主权的重任。简单来
    的头像 发表于 06-13 10:06 6320次阅读
    科普|信<b class='flag-5'>创</b>是什么?一文读懂“<b class='flag-5'>信息技术</b>应用创新”战略

    浪潮下,国产主板有什么新的发展机遇?

    信息技术应用创新浪潮的推动下,国产主板迎来了诸多新的发展机遇。信产业旨在实现信息技术领域的自主可控,这一战略目标为国产主板的发展提供了广
    的头像 发表于 05-09 09:24 566次阅读
    信<b class='flag-5'>创</b>浪潮下,国产<b class='flag-5'>主板</b>有什么新的发展机遇?

    工控主板特点与应用场景介绍

    工控主板(IndustrialMotherboard)是专为工业环境设计的计算机主板,用于控制、监测和管理工业设备及自动化系统。与普通消费级主板相比,
    的头像 发表于 03-06 14:39 901次阅读
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>特点与应用场景<b class='flag-5'>介绍</b>

    工控主板在数控机床设备中的应用

    工控主板作为数控机床的核心组件之一,发挥着至关重要的作用。以下是工控主板在数控机床设备中应用的详细介绍
    的头像 发表于 01-09 15:33 823次阅读

    工业级主板工控主板的区别?

    在工业领域,主板的重要性是被无限放大的。在大型工厂里日夜不停运转的自动化生产线、精准控制的智能电网系统、以及在极端环境下依然稳定采集数据的石油勘探设备,它们背后都依靠着工业级主板工控主板
    的头像 发表于 01-02 10:01 843次阅读

    飞腾助力首届教育信息技术应用创新大赛圆满落幕

    近日,由中国教育技术协会主办,教育部教育管理信息中心教育信实验室、公安部第三研究所、中国电子工业标准化技术协会信工委会支持,北京航空航天
    的头像 发表于 12-24 09:57 768次阅读