是否可以检测用户的机器是否使用12小时时钟(AM/PM)或24小时时钟(军事时间)? 一种方法是查看用户局域网,但这只是区域比较的大量列表,来自美国想要12小时时钟的人可以将我发送给我,而不是US_EN,而不是我无法知道她的偏好.同时,来自美国的某人可能会设置她的机器以使用12小时的时间格式,并且不需要12小时的时钟. 编辑: date.toLocaleTimeString(); 正如用户Mouser下面建议的那样,可以奏效理论,但不幸的是,它是 bugged 在Webkit浏览器(在Chrome和Windows上进行了新的Opera测试)上,由于某些原因,总是返回AM/PM时间. 示例: http://jsfiddle.net/sjual3p4/ 所以我想如果有人想在Webkit浏览器上完成该问题,我必须重新调整我的问题. 解决方案 此解决方案在大多数浏览器中都起作用,但是Chrome中的错误. 在 var date = new
以下是关于 clock 的编程技术问答
我想在我要上课的网站上显示当前时间,但我找不到一种方法.他们是在代码中显示实时时间的一种方式吗?如果是这样,您该怎么做? 解决方案 您可以通过创建一个元素来很容易地完成此操作: 然后获得对该元素的引用: var clockElement = document.getElementById( "clock" ); 接下来,我们需要一个功能,该功能将随着时间更新内容: function updateClock ( clock ) { clock.innerHTML = new Date().toLocaleTimeString(); } 最后,我们要确保我们每秒钟打电话给它,以使时钟保持最新: setInterval(function () { updateClock( clockElement ); }, 1000); 所以当我们将它们放在一起时,看起来像这样: (fun
我使用VirtualBox在Vagrant的内部运行了一个基于Ubuntu的ubuntu 12.04框.到目前为止,一切都很好 - 除了一件事: 让我们假设VM正在运行.然后,主机转到待机模式.再次醒来后,VM仍在运行,但是当主机掉下时,它的内部时钟仍在继续.因此,这基本上意味着:让主机入睡15分钟,再次唤醒,然后VM的内部时钟迟到15分钟. 我该如何解决此问题(出于明显的原因,手动设置时间不是一个选择;-))?每当主机系统更改其状态时,是否有一种方法可以运行VM内部的脚本? 我已经在 documentation 每10秒举办一次主机.显然,这没有发生,但是我找不到禁用的地方.所以有什么想法吗? ps:安装了来宾添加并匹配使用的VirtualBox版本. 解决方案 该文档在这里缺少一些细节. VirtualBox每10秒钟进行一次的操作只是轻微的调整(大约0.005秒).只有当时间差达到阈值时(默认情况下为20分钟)完成了"真实" reSync.
有人知道Windows工具将伪造的日期/时间报告到一个过程中吗? 显然有一些Linux程序可用于测试软件将来/在不同时区中的反应方式或触发计划的任务而无需实际修改系统时钟.是否有这样的程序? 解决方案 runasdate 可以做到这一点. 其他解决方案 从大约2年前开始,我总是通过公用事业类抽象dateTime.now(c#)的调用.这样,如果我愿意,我总是可以伪造日期/时间,或者直接通过DateTime.now. 听起来与Billh的建议相似. public class MyUtil { public static DateTime GetDateTime() { return DateTime.Now.AddHours(5); //return DateTime.Now; } } 其他解决方案 包装您的呼叫" getCurrentDateTime()"系统调用,以便您可以在测试过程中向代码读取的时间介绍偏移
我正在运行一个模拟,其中包含其他内容(或引用模型),该模拟本身是一个模拟,并且需要在恢复主要仿真之前在某些时候完全运行. 基本上,在时间t上,主要模拟需要子系统的输出.然后触发子系统并运行模拟6秒钟(子系统模拟取决于时间).然后,主要模拟使用子系统的输出.这里的问题是,当主要仿真恢复时,它应该在时间t+ts(采样时间)而不是t+6s ...因此,子系统应在一种虚拟时钟上运行. 这有可能吗?如果没有,则有什么选择? 预先感谢您的帮助!!! fabien 解决方案 我意识到我从未给出过关于自己的尝试的反馈.我现在要这样做:我发现的解决方案是通过MATLAB功能块替换我的仿真子系统,该块将/调用引用模型作为模拟而独立于主模拟.这很好!
我正在尝试在我的一个课程中为最终项目制作闹钟.我正在使用DE1 Altera板上的按钮来手动增加小时和分钟.分钟有效,但我无法手动增加时间.所有PIN分配都是正确的. library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity ClkMain is port ( clk,pb_hr,pb_min,clk_set,almr_enbl: in std_logic; almr_hr: in integer range 0 to 23; almr_min: in integer range 0 to 59; clk_min : out integer range 0 to 59; clk_hr : out integer range 0 to 23; almr_indct :
我必须编写一个程序,该程序以一个序列更改每个时钟脉冲的LED序列. library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; use ieee.numeric_std.all; entity REG_LED is PORT(CLK: IN std_logic; -- CLK input LEDS: Out std_logic_vector (4 downto 0):= "11111"); -- initialise output End REG_LED; ARCHITECTURE behavioral OF REG_LED IS SIGNAL Temp: std_logic_vector (3 downto 0):= "0000"; -- initailise comparison signal BEGIN CLK_Proc
我正在使用VHDL的IR解码器进行工作,我知道IR 1位的宽度为1.2 ms,IR 0位为0.6 ms,启动位为2.5 ms.我正在尝试制作一个符合50MHz时钟的计数器,并转换为十分之一毫秒.我怎样才能做到这一点? entity counter is Port ( EN : in STD_LOGIC; RESET : in STD_LOGIC; CLK : in STD_LOGIC; COUNT : out STD_LOGIC_VECTOR (4 downto 0)); end counter; architecture Behavioral of counter is constant max_count : integer := (2); begin startCounter: process(EN, RESET, CLK) variable cnt : integer
我正在尝试使用输出到DVI芯片的像素数据.使用了各种时钟频率,因为使用I2C对DVI芯片寄存器进行了编程(因此需要时钟 DVI芯片需要一个40 MHz的差像素时钟,但是,DVI将显示一半字节显示了一个周期两倍,因此需要另外80 MHz时钟才能将像素的每个一半推到数据线上,每个半周期都,这些来自DCM. 这导致了各种问题.我试图只使用双像素时钟速率交换每个像素的每一半,但是我遇到了错误: This design contains a global buffer instance, , driving the net, , that is driving the following (first 30) non-clock load pins. 因此,我使用信号在DCM的输出和组件之间添加了一个BUFG元素 - 但是它没有更改任何内容,而现在在BUFG的输入和输出上都抛出了两次错误. 我该如何解决此问题 - 鉴于我刚刚添
我正在从事VHDL设计,并且可以使用它,但是该代码非常丑陋,而且似乎我正在尝试围绕该语言的设计来实现自己的目标,这使我觉得我觉得有些不对劲.我是VHDL的新手,但是我已经从事该项目的较小块工作了将近一个月,所以我有一个总体想法.但是,这部分更为复杂. 我需要一个过程,该过程将在信号的上升边缘(end_adc)之后创建一个时钟周期的长脉冲(load_pulse),但直到4个时钟从该信号的最新上升边缘(end_adc)或第二个信号的下降边缘(LVAL). 为了完成等待期,我建立了一个计时器模块,该模块计算微秒和周期,此处: entity uS_generator is generic( Frequency : integer := 66 -- Frequency in MHz ); Port ( CLK : in STD_LO
我应该如何在测试台上创建时钟?我已经找到了一个答案,但是堆栈溢出上的其他答案表明,有其他或更好的方法可以实现这一目标: LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY test_tb IS END test_tb; ARCHITECTURE behavior OF test_tb IS COMPONENT test PORT(clk : IN std_logic;) END COMPONENT; signal clk : std_logic := '0'; constant clk_period : time := 1 ns; BEGIN uut: test PORT MAP (clk => clk); -- Clock process definitions( clock with 50% duty cycle is generated her
我是创建FPGA系统来驾驶I2C总线的新手(尽管我认为此问题适用于任何FPGA系统),并使用各种不同的模块都使用同步重置. 使用时钟分隔式模块将模块计时,该模块将系统时钟乘以系统时钟,并输出较低的频率到系统的其余部分. 我遇到的问题是,当重置信号较低时,时钟分隔器重置,因此其他模块依赖于停止的时钟 - 因此,其他模块未注册RESET 一个明显的解决方案是要重置异步,但是,在xilinx ise中,它似乎不喜欢它们,并发出警告,说这与spartan-6 fpga不相容(尤其是在异步之后代码时,代码是同步的,这是因为I2C总线使用总线时钟将位放在总线上). 另一个解决方案是使时钟分隔线根本不可重置,因此时钟永远不会停止,并且所有模块都将正确重置.但是,这意味着时钟分隔寄存器不能初始化/重新定位已知状态 - 我被告知这是一个很大的问题,尽管我知道您可以在模拟中使用 := '0'/'1'; 运算符,但这不起作用一旦对实际FPGA进行编程(?). 同步重置的约定是什么
我在如何制作时钟分隔线中找到了此代码.我对如何使用计数器制作分隔线有一个一般的了解,但我不确定该代码在做什么以及它为什么这样做. entity clkdiv is Port ( mclk : in STD_LOGIC; clr : in STD_LOGIC; clk190 : out STD_LOGIC; clk48 : out STD_LOGIC); end clkdiv; architecture clkdiv of clkdiv is signal q: std_logic_vector(23 downto 0); begin --clock divider process(mclk,clr) begin if clr ='1' then q
用于求解verilog中不同时钟域引起的亚稳定性,使用了双重注册方法. ,但据我所知,不确定的亚稳定性的最终输出是不确定的.输出独立于输入. 那么,我的问题是如何使用双重注册方法保证输出的正确性? 谢谢. 解决方案 您不能完全确定自己避免了亚亮相. 如您提到的,亚稳态触发器的输出是不可预测的,因此即使使用"两次注册"方法,您也可以在具有标准化的情况下传播错误的价值. 但是,这种方法从未打算解决亚稳定性,而是试图降低亚稳态值进入电路的概率.所谓的即使这不能解决值的不可预测性,使用这些双寄存器也很有趣,因为当值是可稳定的时,它将振荡直到稳定为0或1. . 这种振荡将使您的电路转换,然后用大量能量用于任何能量,因为每个过渡都会消耗能量.因此,将双寄存器用于时钟域交叉很重要. 为了确保您的数据有效,您可以使用两个时钟域之间的请求添加机制. 快速示例: 将数据设置为总线(输入双寄存器) 等待1(或更多)时钟周期,以确保在另一侧确定数据 发送
(我将其发布到EE中,但似乎这里有更多的VHDL问题...) 背景:我正在使用xilinx spartan-6lx9 fpga与xilinx ise 14.4(webpack). 我偶然发现了可怕的" Physdesignrules:372-封闭式钟",今天警告说,我看到那里有很多关于这一点的讨论.共识似乎是使用FPGA上的一个DCM进行时钟划分,但是...我的DCM似乎无法从32 MHz到4.096 kHz(根据向导,它基于5MHz,基于5MHz. 32MHz ...似乎荒谬地尝试以这种低频目的将多个DCM链接起来). 我的当前设计使用CLK_IN计算到指定的值(15265),将值重置为零并切换Clk_out位(因此我最终以50%的占空比为50%,FWIW).它可以完成这项工作,我可以轻松地使用CLK_OUT的上升边缘来推动我的设计的下一个阶段.它似乎可以正常工作,但是... 封闭时钟(即使它不在时钟偏斜的范围内,恕我直言非常相关). (注意:所有时钟测试均使用对给定
有一个测试台ENV,我正在进行一些测试,我注意到在波形中,如果我从rtl层次结构提取特定信号,并从驱动程序时钟块中拉出相同的信号,我看到与驱动时钟块层次结构相比,RTL层次结构处的信号是一个时钟延迟的时钟,而如果我在RTL层次结构中从RTL输出的波形中拔出信号,并且在Monitor Cloesping Block层次结构处从RTL输出,则请参阅监视器时钟块级别的同一信号延迟一个周期. 在RTL层次结构上看到的信号,监视器时钟块的信号始终延迟,并且在驱动程序时钟级别始终会提早出现一个时钟? 接口的原型是这样的: interface my_if(input bit clk, bit reset); bit valid; bit [31:0] data; bit [2:0] crdt; clocking monitor_cb @(posedg