Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 使用web浏览器从USB大容量存储类读取系统时间、显示数据和写入配置数据_Html_Google Chrome_Safari_Mozilla_Usb Drive - Fatal编程技术网

Html 使用web浏览器从USB大容量存储类读取系统时间、显示数据和写入配置数据

Html 使用web浏览器从USB大容量存储类读取系统时间、显示数据和写入配置数据,html,google-chrome,safari,mozilla,usb-drive,Html,Google Chrome,Safari,Mozilla,Usb Drive,我有一个嵌入式系统,运行固件,有大小为79kB的USB大容量存储器。因此,当您将该设备插入任何计算机(MAC/Windows)时,它会作为79kB闪存驱动器弹出。固件创建具有事务记录的文件。目标是向用户显示这些事务(表和简单图形)。我把范围缩小到一个网络浏览器。因此,用户(使用MAC/Windows PC)可以插入USB设备大容量存储器,在大容量存储器驱动器中打开HTML文件,并以表格和简单条形图的形式查看所有事务。棘手的部分来了:设备(固件)需要更新时钟,而这一次的输入必须来自MAC/Wind

我有一个嵌入式系统,运行固件,有大小为79kB的USB大容量存储器。因此,当您将该设备插入任何计算机(MAC/Windows)时,它会作为79kB闪存驱动器弹出。固件创建具有事务记录的文件。目标是向用户显示这些事务(表和简单图形)。我把范围缩小到一个网络浏览器。因此,用户(使用MAC/Windows PC)可以插入USB设备大容量存储器,在大容量存储器驱动器中打开HTML文件,并以表格和简单条形图的形式查看所有事务。棘手的部分来了:设备(固件)需要更新时钟,而这一次的输入必须来自MAC/Windows PC。如何实现这一点

这是最低要求。此外,通过web浏览器,用户希望写入一些配置参数,例如,通过HTML页面中的文本框和提交按钮。 注意:此处设备具有USB大容量存储类型,并且选择了web浏览器方法,因此用户没有任何先决条件


如果可以使用另一种方法(例如,不同类别的USB或MAC/Windows台式机/笔记本电脑上本地可用的其他应用程序)进行此操作,请建议一种替代方法。例如,应用程序应同时在Mac和Windows上运行,即代码应相同,但可以内置到单独的软件包中,一个用于Mac,另一个用于Windows(.exe)。请推荐一个源代码相同但可以为mac和windows构建的平台。谢谢

据我所知,网络浏览器无法写入文件。如果这样的事情是可能的,那将是一个巨大的安全问题


您必须编写一个本机软件来完成您命名的所有任务。这几乎可以用任何编程语言完成,如果你在开发嵌入式系统,我想你一定有编程经验。

我正在考虑做类似的事情,并有一个想法,尽管你可能比我更有能力运行它。让define包含一个名为“SET_DATE”的目录,其中包含文件“YEAR15”到“YEAR99”,“MON01”到“MON12”,“DATE01”到“DATE31”,“H00”到“H23”,“M00”到“M59”,“S00”到“S59”和“SET”;每个这样的文件都应该从不同的扇区开始,尽管这些扇区都不需要包含任何数据(它们不需要物理存储在任何地方)。要将日期设置为2020年7月4日下午12:34:56,请依次阅读以下文件:

SET_DATE/YEAR20
SET_DATE/MONTH07
SET_DATE/DATE04
SET_DATE/H12
SET_DATE/M34
SET_DATE/S56
SET_DATE/SET
最后一次访问应使装置设置其时钟。如果用户可能希望多次设置时钟,可以通过在set_DATE下设置一组基本相同的目录来实现(因此,第一次设置日期将使用set_DATE/00/YEAR20,第二次设置日期/01/YEAR20,等等)和/或在必要时让驱动器卸载/重新装载以清除任何缓存


我认为让目录获取触发操作是不明智的,因为Windows或防病毒工具可能会在安装驱动器时决定预缓存驱动器中的所有目录。不过,我不希望Windows或浏览器急切地加载文件,因此我认为可以通过读取访问触发操作。

谢谢!你说得对。考虑的最重要的事情是应用程序应该是用户友好的。其次,如果需要编写本机软件,则该软件应同时在Mac和Windows上运行,即代码应相同,但可以构建到单独的软件包中,一个用于Mac,另一个用于Windows(.exe)。如果您有任何建议,请告诉我。这实际上不是一个非常特定于平台的问题,因此编写跨平台应用程序应该不难。如果您想在多个系统上使用相同的软件包,并且对编程语言没有偏好,那么您可以用Java编写软件,并为多个系统提供多个启动器。当然,您需要在代码中识别平台,以处理像文件系统这样的小平台差异。