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

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

3天内不再提示

英创信息技术工业主板EM9160介绍

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-01-14 11:09 次阅读

英创EM9160 ARM9工业主板具有丰富的GPIO资源,通过GPIO来实现SPI,I2C的数据传输,具有使用非常灵活的优点,同时最高波特率还可达到1Mbps以上。I2C在智能终端中的应用非常普遍,如I2C总线时钟芯片,I2C总线存贮器等。之前已对I2C总线操作铁电存贮器有过说明,相关文章请参考《工控主板支持铁电存储器的简易方案》。英创公司的EM9160工业主板的高性价比与高可靠性,使其在智能终端中的应用中越来越具优势。为了更进一步说明EM9160工业主板使用GPIO来摸拟I2C总线的应用,本文对具有自动温度补偿的实时钟RX8025的操作为例来说明。对于I2C总来来说,最重要的是同步时钟与数据之间的时间关系,为了便于用户直接使用,英创公司将GPIO摸拟I2C的操作过程进行了封装,提供最简洁的函数作为接口,被定义在I2C的头文件GPIO_I2C.h中,如下所示:
// 初始化I2C总线,主要是设置所使用的GPIO的输出状态
int I2C_Init ( );
// 通过I2C写数据
// 输入参数
// uDevAddr I2C器件的物理地址
// uRegIdx 要操作的I2C器件内部的寄存器地址
// abyte 要写入到I2C的数据
// 返回值:>=0 操作成功
// =-1 操作失败
int I2C_ByteWrite(UCHAR uDevAddr, UCHAR uRegIdx, UCHAR abyte);
// 通过I2C读取数据
// 输入参数
// uDevAddr I2C器件的物理地址
// uRegIdx 要操作的I2C器件内部的寄存器地址
// pBuf 所读取的数据的输出BUFF
// DataLen 要读数据的个数
// 返回值:>=0 操作成功 即读取出来的有效数据
// =-1 操作失败
int I2C_ByteRead(UCHAR uDevAddr, UCHAR uRegIdx, UCHAR* pBuf, int DataLen);
实现I2C通讯过程控制的源代码在GPIO_I2C.cpp中,同时在该文件中定义了I2C总线能够使用的引脚资源及I2C总线SCL、SDA所使用的信号定义:
#define GPIO0 0x01
#define GPIO1 0x02
#define GPIO2 0x04
#define GPIO3 0x08
#define GPIO4 0x10
#define GPIO5 0x20
#define GPIO6 0x40
#define GPIO7 0x80
#define GPIO8 0x100
#define GPIO9 0x200
#define GPIO10 0x400
#define GPIO11 0x800
#define GPIO12 0x1000
#define GPIO13 0x2000
#define GPIO14 0x4000
#define GPIO15 0x8000
#define SCL GPIO6 // GPIO6 被定义为I2C时钟信号线
#define SDA GPIO7 // GPIO7 被定义为I2C数据线
在使用EM9160工业主板的GPIO来实现I2C总线通讯时,同步时钟能稳定地工作在250KHz。要注意I2C的两个信号线,分别为同步时钟信号线SCL与双向通讯数据线SDA,这两条信号线所使用的GPIO被定义在GPIO_I2C.CPP文件中,如上面所示。在使用时根据实际情况,只需重新定义SCL和SDA信号所使用的GPIO即可。下面是调用GPIO_I2C中的操作函数实现时实钟RX8025操作的调用方法:
// 时钟寄存器数据读取
int RTC_ByteRead( unsigned char REG_Addr , unsigned char *pBuf , int iLen)
{
UCHAR cRByte;
int i1 ;
cRByte = REG_Addr<<4; // 根据RX8025的要求,寄存器地址放在高4位
i1 = I2C_ByteRead( RX8025_ADDR , cRByte , pBuf , iLen );
return i1;
}
// 时钟寄存器数据设置
int RTC_ByteWrite( unsigned char REG_Addr, unsigned char Value )
{
UCHAR cRByte;
int i1;

cRByte = REG_Addr<<4;
i1 = I2C_ByteWrite( RX8025_ADDR , cRByte , Value );
if( i1 == -1 )
return -1;
return 1;
}
再次调用以上两个实时钟读写操作函数则可轻实现现对RX8025的操作,如下:
// 只读取控制寄存器2
i1 = RTC_ByteRead ( Reg_Contor2 , &cTmp , 1 );
// 从秒地址开始将年、月、日、时、分、秒、星期的数据一次性读出
i1 = RTC_ByteRead( Reg_Second , cTmp , 7 );
// 设置时间寄存器“年”为10年
i1 = RTC_ByteWrite( Reg_Year , 0x10 );
对于I2C总线协议,请参考相关的参考资料。英创公司提供的GPIO摸拟I2C总线的程序适用于英创公司所有的嵌入式主板,感兴趣的客户可向英创索要相关源代码。

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

    关注

    7

    文章

    6064

    浏览量

    34614
收藏 人收藏

    评论

    相关推荐

    值得信赖的工业主板制造商

    各种行业应用场景。我们的工程团队拥有丰富的经验和专业知识,可以提供个性化的解决方案和技术支持。选择我们,您将获得一个可靠的工业主板合作伙伴,为您的项目提供稳定可靠
    的头像 发表于 04-24 11:21 59次阅读
    值得信赖的<b class='flag-5'>工业主板</b>制造商

    工业主板在智能交通中的应用

    工业主板在智能交通中扮演着重要角色,其高强度、高稳定性的特性使得它成为智能交通系统中不可或缺的一部分。以下是工业主板在智能交通中的一些具体应用场景:
    的头像 发表于 04-23 18:06 250次阅读
    <b class='flag-5'>工业主板</b>在智能交通中的应用

    工业主板产品和解决方案

    工业主板,也称为工业嵌入式主板工业计算机主板,是专为工业应用而设计的专用计算机硬件。这些工业
    的头像 发表于 04-19 15:11 114次阅读
    <b class='flag-5'>工业主板</b>产品和解决方案

    触翔工业主板详细讲解

    业主板,全称工业级计算机主板,是专为工业环境和特殊应用领域设计制造的计算机核心硬件组件。与面向普通消费者市场的商用主板相比,
    的头像 发表于 04-03 18:08 627次阅读

    触翔工业主板都有哪些特点?

    工业主板顾名思义主要是针对工业环境使用的主板,它即可以适应长时间高负荷的工作,也能在高温及恶劣环境下确保设备正常稳定的运行。那接下来小编就详细的来介绍
    的头像 发表于 03-28 17:53 255次阅读

    工业主板的优缺点 工业主板和消费主板的区别

    工业主板的优缺点 工业主板和消费主板的区别  工业主板是专为工业环境设计和制造的一种主板,它与消
    的头像 发表于 12-15 09:43 415次阅读

    集特酷睿工业主板GM0-1616-03 兼容广,应用多

    工业主板
    GITSTAR 集特工控
    发布于 :2023年12月13日 17:04:42

    工业主板和消费主板的区别

    消费类主板是用于家庭和个人计算机的批量生产的通用主板。另一方面,工业主板则用于工厂、制造设备、医疗设备、公共基础设施以及其他重视可靠性的场所。工业主板的特点
    的头像 发表于 12-08 11:29 396次阅读
    <b class='flag-5'>工业主板</b>和消费<b class='flag-5'>主板</b>的区别

    触翔工业主板在机床数控设备应用的优势

    触翔工业主板在机床数控设备应用中具有高度稳定性、强大的计算能力、多通道控制、良好的扩展性和兼容性,以及长时间运行和可靠性等优势。 这些优势使得工业主板成为机床数控系统中不可或缺的核心组件,为制造业提供了高效、精准和可靠的生产解决方案,具体的优势如下:
    的头像 发表于 12-07 14:49 199次阅读
    触翔<b class='flag-5'>工业主板</b>在机床数控设备应用的优势

    无风扇工业主板与传统的工业主板区别和优势

    无风扇工业主板是一种无风扇设计的触翔工业主板,与传统有风扇的工业主板相比,具有以下几个优势:
    的头像 发表于 12-07 14:48 244次阅读
    无风扇<b class='flag-5'>工业主板</b>与传统的<b class='flag-5'>工业主板</b>区别和优势

    常见的6种工业主板盘点

    了有关当今流行的6种工业主板信息,强调了它们独特的特性和功能,以便您可以决定哪一种能为您的应用需求带来较大价值。什么是工业主板工业主板是一种特殊形式的计算机板,旨
    的头像 发表于 11-29 16:04 282次阅读
    常见的6种<b class='flag-5'>工业主板</b>盘点

    触翔工业主板与商业主板的区别

    工业控制领域,可靠的硬件设备是实现稳定运行的关键。触翔工控主板专为工业环境设计的高性能核心,根据下文的特点可以区分工业主板与商业主板的区别
    的头像 发表于 11-16 15:05 361次阅读

    触翔工业主板的优势

    工业主板作为工业控制系统的核心组件,具备稳定性、扩展性和抗干扰能力等独特优势。它能够满足工业控制的特殊需求,为工业自动化和智能化提供稳定可靠的解决方案。在选择控制设备时,可选择触翔的
    的头像 发表于 11-16 15:04 199次阅读

    触翔工业主板在低温环境中的应用及其优势

    工业领域中,确保设备在恶劣环境下的稳定运行是至关重要的。尤其在低温环境下,这里我们来谈谈工业主板是如何应对和在低温环境下正常运行的。
    的头像 发表于 10-19 09:15 267次阅读

    工业主板与普通主板的价格差距:究竟是什么引起的?

    随着科技的不断进步,主板作为计算机的核心组件之一,在不同应用场景中有着不同的需求。工业主板和普通主板是目前市场上应用广泛的两类主板,它们的价格差距却常常令人困惑。本文将首先
    的头像 发表于 07-20 17:17 528次阅读