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

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

3天内不再提示

英创信息技术读取EM9170工控主板的唯一设备ID号

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

EM9170是一款基于FreeScale iMX257芯片,预装Windows CE6.0的通用工控主板。EM9170在为客户应用提供了更为丰富的资源,以满足客户更多的专业需求的同时,还在客户应用程序保护方面,准备了多种手段。保护客户应用程序的基本方法是对主板进行加密码设置,并在应用程序中采用专用手段进行验证,客户可在英创网站进一步了解进行密码设置的流程。客户密码设置是面向客户的,即每一个客户所购买的所有EM9170主板产品,其密码是相同的,本文则主要介绍如何读取每个EM9170主板上唯一的设备ID号的方法。唯一设备ID号不仅能用于客户应用程序的保护,同时还能方便客户对设备的维护管理。

读取设备ID号,需要使用微软的GUID数据结构:

typedef struct _GUID {
unsigned long Data1;
unsigned short Data2;
unsigned short Data3;
unsigned char Data4[8];
} GUID, UUID;

读取EM9170主板上的唯一ID号的范例代码如下:

#include 'stdafx.h'
#include
#include
#include
#define IOCTL_HAL_GET_DEVICE_INFO \ CTL_CODE(FILE_DEVICE_HAL, 1, METHOD_BUFFERED, FILE_ANY_ACCESS)
extern 'C' __declspec(dllimport) BOOL KernelIoControl(DWORD dwIoControlCode,
LPVOID pInBuffer,
DWORD InSize,
LPVOID pOutBuffer,
DWORD OutSize,
LPDWORD pReturnBytes);
int _tmain(int argc, _TCHAR* argv[])
{
GUID uuid;
DWORD dwSize = sizeof(uuid);
UINT32 spiValue = SPI_GETUUID;
UINT32 i;
printf('Get Device Info V1.0\r\n');
if(FALSE==KernelIoControl(IOCTL_HAL_GET_DEVICE_INFO, &spiValue, sizeof(spiValue), &uuid,dwSize, &dwSize))
{
printf('KernelIoControl->IOCTL_HAL_GET_DEVICE_INFO failed\r\n');
return -1;
}
// printd Device ID
for(i = 0; i < sizeof(uuid.Data4); i++)
{
printf('uuid.Data4[%d] = 0x%02x\r\n', i, uuid.Data4[i]);
}
return 0;
}

GUID结构中的uuid.Data4为64-bit的设备唯一ID号。Data1–Data3为系统保留数据,应用程序可不关心。

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

    关注

    3

    文章

    3515

    浏览量

    88277
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6084

    浏览量

    35140
收藏 人收藏

    评论

    相关推荐

    中科达荣获2024年软件和信息技术服务优秀企业

    及前百家企业”名单。中科达凭借非凡的技术实力与持续的创新能力,成功入选“2024年度软件和信息技术服务竞争力百强企业”以及“2024年软件和信息技术服务优秀企业”。
    的头像 发表于 10-30 11:44 253次阅读

    什么是IMEI?深入解读国际移动设备识别码IMEI

    手机的“身份证”,在全球范围内具有唯一性。那么IMEI由哪些信息构成?IMEI本身又有什么作用呢?本片为利检测收录的关于IMEI
    的头像 发表于 10-17 16:35 278次阅读
    什么是IMEI<b class='flag-5'>号</b>?深入解读国际移动<b class='flag-5'>设备</b>识别码IMEI<b class='flag-5'>号</b>

    工控主板有哪些特点?

    动、防尘防水等设计,能够适应工业场景中的各种恶劣条件,具有较长的使用寿命。  扩展性:工控主板通常具有丰富的扩展接口,可以方便地连接各种工业设备和传感器,满足不同工业控制需求。 工业标准支持:
    的头像 发表于 10-10 08:55 156次阅读

    国产化背景下的工控主板发展现状

    ,是信息技术应用创新产业的简称,于2016年“信工委会”(信息技术应用创新工作委员会)提出,目的就是要推动我们国内软硬件关键技术的研发
    的头像 发表于 09-21 16:15 251次阅读

    工控主板在环保智能设备中的应用

    工控主板在环保智能设备中的应用,对于环境监测、资源管理、污染控制等方面起到了至关重要的作用。以下是工控主板在环保智能
    的头像 发表于 07-17 15:54 261次阅读
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>在环保智能<b class='flag-5'>设备</b>中的应用

    嵌入式工控主板在金融智能设备行业应用

    嵌入式工控主板在金融智能设备行业的应用广泛且深入,其重要性不言而喻。以下是从几个关键方面来阐述嵌入式工控主板在金融智能
    的头像 发表于 07-11 09:38 228次阅读

    如何读取XIP的spi-flash的唯一ID

    以前在其它单片机系统,读取spi-flash的唯一ID是很轻松的事。但现在发现在idf+esp32上十分困难,idf没有提供这个功能函数;自己也很难不改动idf而实现。由于esp32在spi-flash里执行代码,所以操纵fla
    发表于 06-21 08:05

    esp32s3通过esp_read_mac这个函数读取到mac地址是否是唯一ID呢?

    你们好,请问下esp32s3通过esp_read_mac这个函数读取到mac地址是否是唯一ID呢。会不会有重复的问题。因为我想用唯一
    发表于 06-12 07:03

    使用工控主板时该注意哪些事项?

    最近大家都在频繁问个问题就是工控主板在什么人为情况下容易出现故障,从而造成工控主板的损坏,那今天小编就来讲讲,我们在使用
    的头像 发表于 06-05 16:01 325次阅读
    使用<b class='flag-5'>工控</b><b class='flag-5'>主板</b>时该注意哪些事项?

    如何读取CY8C20236的唯一ID

    psoc1 CY8C20236 想要读取唯一 ID 如何读取 CY8C20236 的唯一 ID
    发表于 05-21 06:16

    工控主板的性能指标有哪些?

    工控主板的处理器是其最重要的组成部分之。处理器的性能直接决定了工控主板的计算能力和运行速度。目前,常用的
    的头像 发表于 05-10 16:27 840次阅读
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>的性能指标有哪些?

    工控主板和普通主板的区别有哪些

    工控主板和普通主板是两种在计算机硬件领域中常见的主板类型,它们在设计、功能和用途上有着明显的区别。工控
    的头像 发表于 04-25 16:54 1074次阅读
    <b class='flag-5'>工控</b><b class='flag-5'>主板</b>和普通<b class='flag-5'>主板</b>的区别有哪些

    现在多数STM32F系列芯片都被解密了,唯一ID只能读取不能被修改是吗?

    现在多数STM32F系列芯片都被解密了。唯一ID 只能读取不能被修改是吗?
    发表于 04-11 06:18

    如何读取Nano120的唯一序列号

    求助,如何读取Nano120的唯一序列号,请大神指点下,在此表示感谢!
    发表于 01-16 07:37

    读取AD7143的设备ID,却无法正确读取其AD采集的数据是为什么?

    目前AD7143的IIC操作没有问题,读取设备也正常,但读回来的通道采集数据全部是0,。 之前有块板子能够读取数据,但是每次上电前必须用烙铁刮
    发表于 12-20 07:00