在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

電子DIY作品 基于FPGA的GPS授時(shí)日歷時(shí)鐘

AIoT行業(yè)洞察 ? 來(lái)源:AIoT行業(yè)洞察 ? 作者:AIoT行業(yè)洞察 ? 2024-11-06 10:59 ? 次閱讀
wKgZoWcq23uAdv7dAAEH9PDRG1Q018.jpg

https://www.bilibili.com/video/BV1UgSiY1EP9/?spm_id_from=333.999.0.0&vd_source=54c5db21948db2378659b7e8e42bafbf

安信可技術(shù)論壇官方B站賬號(hào)來(lái)啦

提前關(guān)注不迷路

在這里優(yōu)先預(yù)告各類(lèi)活動(dòng)、教程

以下作品由安信可社區(qū)用戶

一只呆頭鵝制作

實(shí)驗(yàn)?zāi)康?/strong>

使用安信可科技的 GP-01 模塊實(shí)現(xiàn)衛(wèi)星授時(shí),顯示在數(shù)碼管上。

程序設(shè)計(jì)思路

GP01 模塊有 24 個(gè)接口,寫(xiě)代碼的時(shí)候只需要關(guān)注 TX 引腳,GP-01 模塊獲得的數(shù)據(jù)送到 FPGA,使用狀態(tài)機(jī)獲取我們想要的年月日、實(shí)時(shí)時(shí)間。此時(shí)得到的時(shí)間是 UTC 時(shí)間,并不是我們想要的北京時(shí)間,我們只需要在小時(shí)上加八,然后就把數(shù)據(jù)傳到數(shù)碼管顯示就可以了。

代碼

串口接收模塊

把 GP01 的單比特?cái)?shù)據(jù)轉(zhuǎn)換成八比特的數(shù)據(jù)。

module uart_rx
#(
parameter UART_BPS = 'd9600, //串口波特率
parameter CLK_FREQ = 'd50_000_000 //時(shí)鐘頻率
)
(
input wire sys_clk , //系統(tǒng)時(shí)鐘50MHz
input wire sys_rst_n , //全局復(fù)位
input wire rx , //串口接收數(shù)據(jù)
output reg [7:0] po_data , //串轉(zhuǎn)并后的8bit數(shù)據(jù)
output reg po_flag //串轉(zhuǎn)并后的數(shù)據(jù)有效標(biāo)志信號(hào)
);
//********************************************************************//
//****************** Parameter and Internal Signal *******************//
//********************************************************************//
//localparam define
localparam BAUD_CNT_MAX = CLK_FREQ/UART_BPS ;
//reg define
reg rx_reg1 ;
reg rx_reg2 ;
reg rx_reg3 ;
reg start_nedge ;
reg work_en ;
reg [12:0] baud_cnt ;
reg bit_flag ;
reg [3:0] bit_cnt ;
reg [7:0] rx_data ;
reg rx_flag ;
//********************************************************************//
//***************************** Main Code ****************************//
//********************************************************************//
//插入兩級(jí)寄存器進(jìn)行數(shù)據(jù)同步,用來(lái)消除亞穩(wěn)態(tài)
//rx_reg1:第一級(jí)寄存器,寄存器空閑狀態(tài)復(fù)位為1
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
rx_reg1 <= 1'b1;
else
rx_reg1 <= rx;
//rx_reg2:第二級(jí)寄存器,寄存器空閑狀態(tài)復(fù)位為1
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
rx_reg2 <= 1'b1;
else
rx_reg2 <= rx_reg1;
//rx_reg3:第三級(jí)寄存器和第二級(jí)寄存器共同構(gòu)成下降沿檢測(cè)
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
rx_reg3 <= 1'b1;
else
rx_reg3 <= rx_reg2;
//start_nedge:檢測(cè)到下降沿時(shí)start_nedge產(chǎn)生一個(gè)時(shí)鐘的高電平
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
start_nedge <= 1'b0;
else if((~rx_reg2) && (rx_reg3))
start_nedge <= 1'b1;
else
start_nedge <= 1'b0;
//work_en:接收數(shù)據(jù)工作使能信號(hào)
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
work_en <= 1'b0;
else if(start_nedge == 1'b1)
work_en <= 1'b1;
else if((bit_cnt == 4'd8) && (bit_flag == 1'b1))
work_en <= 1'b0;
//baud_cnt:波特率計(jì)數(shù)器計(jì)數(shù),從0計(jì)數(shù)到BAUD_CNT_MAX - 1
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
baud_cnt <= 13'b0;
else if((baud_cnt == BAUD_CNT_MAX - 1) || (work_en == 1'b0))
baud_cnt <= 13'b0;
else if(work_en == 1'b1)
baud_cnt <= baud_cnt + 1'b1;
//bit_flag:當(dāng)baud_cnt計(jì)數(shù)器計(jì)數(shù)到中間數(shù)時(shí)采樣的數(shù)據(jù)最穩(wěn)定,
//此時(shí)拉高一個(gè)標(biāo)志信號(hào)表示數(shù)據(jù)可以被取走
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
bit_flag <= 1'b0;
else if(baud_cnt == BAUD_CNT_MAX/2 - 1)
bit_flag <= 1'b1;
else
bit_flag <= 1'b0;
//bit_cnt:有效數(shù)據(jù)個(gè)數(shù)計(jì)數(shù)器,當(dāng)8個(gè)有效數(shù)據(jù)(不含起始位和停止位)
//都接收完成后計(jì)數(shù)器清零
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
bit_cnt <= 4'b0;
else if((bit_cnt == 4'd8) && (bit_flag == 1'b1))
bit_cnt <= 4'b0;
else if(bit_flag ==1'b1)
bit_cnt <= bit_cnt + 1'b1;
//rx_data:輸入數(shù)據(jù)進(jìn)行移位
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
rx_data <= 8'b0;
else if((bit_cnt >= 4'd1)&&(bit_cnt <= 4'd8)&&(bit_flag == 1'b1))
rx_data <= {rx_reg3, rx_data[7:1]};
//rx_flag:輸入數(shù)據(jù)移位完成時(shí)rx_flag拉高一個(gè)時(shí)鐘的高電平
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
rx_flag <= 1'b0;
else if((bit_cnt == 4'd8) && (bit_flag == 1'b1))
rx_flag <= 1'b1;
else
rx_flag <= 1'b0;
//po_data:輸出完整的8位有效數(shù)據(jù)
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
po_data <= 8'b0;
else if(rx_flag == 1'b1)
po_data <= rx_data;
//po_flag:輸出數(shù)據(jù)有效標(biāo)志(比rx_flag延后一個(gè)時(shí)鐘周期,為了和po_data同步)
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
po_flag <= 1'b0;
else
po_flag <= rx_flag;
endmodule

獲取日歷、時(shí)間模塊

因?yàn)?GP01 模塊獲取的數(shù)據(jù)不光只有日歷和時(shí)間數(shù)據(jù),所以需要用一個(gè)狀態(tài)機(jī)來(lái)判斷接收到的數(shù)據(jù)是不是日歷、時(shí)間數(shù)據(jù)。

EMEA 協(xié)議中的時(shí)間與日歷信息格式如圖所示:

wKgaoWcq23-APaWBAAGaDuoJwSc596.jpg

module Data_processing (
input wire sys_clk ,
input wire sys_rst_n ,
input wire uart_recv_done,
input wire [7:0] uart_recv_data,
output reg [31:0] time_data ,
output reg [31:0] calendar_data ,
output reg led3 ,
output reg led2 ,
output reg led
);
reg [8:0] state ;
reg [31:0] time_data_temp;
reg [31:0] calendar_temp ;
wire [7:0] recv_time ;
wire [7:0] recv_calendar ;
parameter WATI = 9'b0000_0000_0;
parameter IDLE = 9'b0000_0000_1;
parameter ONE = 9'b0000_0001_0;
parameter TWO = 9'b0000_0010_0;
parameter THREE= 9'b0000_0100_0;
parameter FOUR = 9'b0000_1000_0;
parameter FIVE = 9'b0001_0000_0;
parameter SIX = 9'b0010_0000_0;
parameter SIX_1 = 9'b0010_0000_1;
parameter SIX_2 = 9'b0010_0001_0;
parameter SIX_3 = 9'b0010_0001_1;
parameter SIX_4 = 9'b0010_0010_0;
parameter SIX_5 = 9'b0010_0010_1;
parameter SIX_6 = 9'b0010_0011_0;
parameter SIX_7 = 9'b0010_0011_1;
parameter SIX_8 = 9'b0010_0100_0;
parameter SIX_9 = 9'b0010_0100_1;
parameter SEVEN = 9'b0100_0000_0;
parameter SEVEN_1 = 9'b0100_0000_1;
parameter SEVEN_2 = 9'b0100_0001_0;
parameter SEVEN_3 = 9'b0100_0001_1;
parameter SEVEN_4 = 9'b0100_0010_0;
parameter SEVEN_5 = 9'b0100_0010_1;
parameter SEVEN_6 = 9'b0100_0011_0;
parameter SEVEN_7 = 9'b0100_0011_1;
parameter SEVEN_8 = 9'b0100_0100_0;
parameter SEVEN_9 = 9'b0100_0100_1;
parameter SEVEN_10 = 9'b0100_1001_0;
parameter EIGHT= 9'b1000_0000_0 ;
parameter TEN = 9'b1000_0000_1 ;
parameter CNT_MAX = 23'd7_500_000 ;
assign recv_time = uart_recv_data - 8'd48; //ascll碼 0-9
assign recv_calendar = uart_recv_data - 8'd48;
always @(posedge sys_clk or negedge sys_rst_n) begin //這里的狀態(tài)機(jī)用來(lái)接收日歷和時(shí)間
if (sys_rst_n == 1'b0) begin
state <= WATI;
end
else if( uart_recv_done == 1'd1) begin
case (state)
WATI : begin
if ((uart_recv_data == 8'h24)) state <= IDLE ; else if ((uart_recv_data == 8'h47) ) state <= ONE; else state <= WATI; //固定格式 $GPZDA,
end
IDLE : state <= ((uart_recv_data == 8'h47)) ? ONE : WATI;
ONE : state <= ((uart_recv_data == 8'h4E)) ? TWO : WATI;
TWO : state <= ((uart_recv_data == 8'h5A)) ? THREE : WATI;
THREE : state <= ((uart_recv_data == 8'h44)) ? FOUR : WATI;
FOUR : state <= ((uart_recv_data == 8'h41)) ? FIVE : WATI;
FIVE : state <= ((uart_recv_data == 8'h2C)) ? SIX : WATI;

SIX : state <= ((uart_recv_data != 8'h2C)) ? SIX_1 : WATI; //時(shí)間 //
SIX_1 : state <= ((uart_recv_data != 8'h2C)) ? SIX_2 : WATI;
SIX_2 : state <= ((uart_recv_data != 8'h2C)) ? SIX_3 : WATI;
SIX_3 : state <= ((uart_recv_data != 8'h2C)) ? SIX_4 : WATI;
SIX_4 : state <= ((uart_recv_data != 8'h2C)) ? SIX_5 : WATI;
SIX_5 : state <= ((uart_recv_data != 8'h2C)) ? SIX_6 : WATI;

SIX_6 : state <= ((uart_recv_data == 8'h2E)) ? SIX_7 : WATI; //.
SIX_7 : state <= ((uart_recv_data == 8'h30)) ? SIX_8 : WATI; //000
SIX_8 : state <= ((uart_recv_data == 8'h30)) ? SIX_9 : WATI;
SIX_9 : state <= ((uart_recv_data == 8'h30)) ? SEVEN : WATI;
SEVEN : state <= ((uart_recv_data == 8'h2C) ) ? SEVEN_1 : WATI; //,
SEVEN_1 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_2 : WATI; //日
SEVEN_2 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_3 : WATI;
SEVEN_3 : state <= ((uart_recv_data == 8'h2C) ) ? SEVEN_4 : WATI;
SEVEN_4 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_5 : WATI; //月
SEVEN_5 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_6 : WATI;
SEVEN_6 : state <= ((uart_recv_data == 8'h2C) ) ? SEVEN_7 : WATI;
SEVEN_7 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_8 : WATI; //年
SEVEN_8 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_9 : WATI;
SEVEN_9 : state <= ((uart_recv_data != 8'h2C) ) ? SEVEN_10 : WATI;
SEVEN_10 : state <= ((uart_recv_data != 8'h2C) ) ? EIGHT : WATI;
EIGHT : state <= ((uart_recv_data == 8'h2C) ) ? TEN : WATI;
TEN : state <= ((uart_recv_data == 8'h30) ) ? WATI : WATI;
default: state <= WATI;
endcase
end
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
led <= 1'b0;
end
else if((state == FIVE) && (uart_recv_done == 1'b1))
led <= ~led;
else
led <= led;
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
led2 <= 1'b0;
end
else if((state == SEVEN) && (uart_recv_done == 1'b1))
led2 <= ~led2;
else
led2 <= led2;
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
led3 <= 1'b0;
end
else if((state == EIGHT) && (uart_recv_done == 1'b1))
led3 <= ~led3;
else
led3 <= led3;
end
always @(posedge sys_clk or negedge sys_rst_n) begin //
if (sys_rst_n == 1'b0)
time_data_temp <= 32'b0;
else if(state == SIX )
time_data_temp <= {recv_time[3:0],time_data_temp[27:0]};
else if(state == SIX_1 )
time_data_temp <= {time_data_temp[31:28],recv_time[3:0],time_data_temp[23:0]};
else if(state == SIX_2 )
time_data_temp <= {time_data_temp[31:20],recv_time[3:0],time_data_temp[15:0]};
else if(state == SIX_3 )
time_data_temp <= {time_data_temp[31:16],recv_time[3:0],time_data_temp[11:0]};
else if(state == SIX_4 )
time_data_temp <= {time_data_temp[31:8],recv_time[3:0],time_data_temp[3:0]};
else if(state == SIX_5 )
time_data_temp <= {time_data_temp[31:4],recv_time[3:0]};
else
time_data_temp <= {time_data_temp[31:24],4'd10,time_data_temp[19:12],4'd10,time_data_temp[7:0]};
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0)
calendar_temp <= 32'd0;
else if(state == SEVEN_1)
calendar_temp <= {calendar_temp[31:8],recv_calendar[3:0],calendar_temp[3:0]};
else if(state == SEVEN_2)
calendar_temp <= {calendar_temp[31:4],recv_calendar[3:0]};
else if(state == SEVEN_4)
calendar_temp <= {calendar_temp[31:16],recv_calendar[3:0],calendar_temp[11:0]};
else if(state == SEVEN_5)
calendar_temp <= {calendar_temp[31:12],recv_calendar[3:0],calendar_temp[7:0]};
else if(state == SEVEN_7)
calendar_temp <= {recv_calendar[3:0],calendar_temp[27:0]};
else if(state == SEVEN_8)
calendar_temp <= {calendar_temp[31:28],recv_calendar[3:0],calendar_temp[23:0]};
else if(state == SEVEN_9)
calendar_temp <= {calendar_temp[31:24],recv_calendar[3:0],calendar_temp[19:0]};
else if(state == SEVEN_10)
calendar_temp <= {calendar_temp[31:20],recv_calendar[3:0],calendar_temp[15:0]};
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
calendar_data <= 32'b0;
end
else if((state == TEN) && (uart_recv_done == 1'b1) )
calendar_data <= calendar_temp;
else
calendar_data <= calendar_data;
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
time_data <= 32'b0;
end
else if((state == SEVEN) && (uart_recv_done == 1'b1) )
time_data <= time_data_temp;
else
time_data <= time_data;
end
endmodule //Data_processing

UTC 處理模塊

這里是將 UTC 時(shí)間轉(zhuǎn)換成北京時(shí)間,日歷與時(shí)間每隔五秒切換一次。

module display (
input wire sys_clk ,
input wire sys_rst_n ,
input wire [31:0] time_data ,
input wire [31:0] calendar_data ,
output wire [31:0] display_data
);
localparam COUNT_MAX = 50_000_000 ;
localparam CNT_10S_MAX = 6'd5 ;
reg [26:0] count ;
reg [3:0] cnt_500ms ;
reg display_flag ;
reg [31:0] time_data_temp ;
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
count <= 0;
end else begin
if (count == COUNT_MAX - 1) begin
count <= 0;
end
else begin
count <= count + 27'd1;
end
end
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
time_data_temp <= 32'd0;
end
else if (display_flag == 1'd1 && ((time_data[27:24] + 4'd8) >= 4'd10 ))begin //因?yàn)楂@取的時(shí)間是UTC時(shí)間轉(zhuǎn)換成北京時(shí)間加上八就可以了
time_data_temp[31:28] <= time_data[31:28] + 4'd1;
time_data_temp[27:24] <= (time_data[27:24] + 4'd8) % 4'd10;
end
else if (display_flag == 1'd1 && time_data[27:24] + 4'd8 < 4'd10 )begin
time_data_temp[31:28] <= time_data[31:28];
time_data_temp[27:24] <= time_data[27:24]+ 4'd8;
end
else
time_data_temp <= {time_data_temp[31:24],time_data[23:0]};
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
cnt_500ms <= 4'd0;
end
else if (cnt_500ms == CNT_10S_MAX) //5S
cnt_500ms <= 4'd0;
else if (count == COUNT_MAX - 1)
cnt_500ms <= cnt_500ms + 4'd1;
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if (sys_rst_n == 1'b0) begin
display_flag <= 1'd0;
end
else if (cnt_500ms == CNT_10S_MAX) begin
display_flag <= ~display_flag;
end
else
display_flag <= display_flag;
end
assign display_data = display_flag ? calendar_data :time_data_temp;
endmodule //display

數(shù)碼管顯示模塊

module smg (
input wire sys_clk ,
input wire sys_rst_n ,
input wire [31:0] smg_seg_in ,
output reg [7:0] smg_sel ,
output reg [7:0] smg_seg
);
localparam CNT_1MS_MAX = 16'd50_000 ;
reg [15:0] cnt_1ms ;
reg [3:0] flag_1ms ;
reg [3:0] data_disp ;
always @(posedge sys_clk or negedge sys_rst_n) begin
if(sys_rst_n==1'b0)
cnt_1ms<=16'b0;
else if (cnt_1ms==CNT_1MS_MAX-1)
cnt_1ms<=16'b0;
else
cnt_1ms<=cnt_1ms+16'b1;
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if(sys_rst_n==1'b0)
flag_1ms<=4'b0;
else if ((cnt_1ms==CNT_1MS_MAX-1)&&(flag_1ms==7))
flag_1ms<=4'b0;
else if (cnt_1ms==CNT_1MS_MAX-1)
flag_1ms<=flag_1ms+4'b1;
else
flag_1ms<=flag_1ms;
end
always@(posedge sys_clk or negedge sys_rst_n)
if(sys_rst_n == 1'b0)
data_disp <= 4'b0;
else case(flag_1ms)
4'd0: data_disp <= smg_seg_in[3:0] ;
4'd1: data_disp <= smg_seg_in[7:4] ;
4'd2: data_disp <= smg_seg_in[11:8] ;
4'd3: data_disp <= smg_seg_in[15:12];
4'd4: data_disp <= smg_seg_in[19:16];
4'd5: data_disp <= smg_seg_in[23:20];
4'd6: data_disp <= smg_seg_in[27:24];
4'd7: data_disp <= smg_seg_in[31:28];
default:data_disp <= 4'b0 ;
endcase
always @(posedge sys_clk or negedge sys_rst_n) begin
if(sys_rst_n ==1'b0)
smg_sel<=8'b1111_1110;
else case (flag_1ms)
0: smg_sel<=~8'b1111_1110;
1: smg_sel<=~8'b1111_1101;
2: smg_sel<=~8'b1111_1011;
3: smg_sel<=~8'b1111_0111;
4: smg_sel<=~8'b1110_1111;
5: smg_sel<=~8'b1101_1111;
6: smg_sel<=~8'b1011_1111;
7: smg_sel<=~8'b0111_1111;
default:smg_sel<=8'b1111_1110;
endcase
end
always @(posedge sys_clk or negedge sys_rst_n) begin
if(sys_rst_n ==1'b0)
smg_seg<=8'b1111_1100;
else case (data_disp)
1: smg_seg<=~8'b0110_0000;
2: smg_seg<=~8'b1101_1010;
3: smg_seg<=~8'b1111_0010;
4: smg_seg<=~8'b0110_0110;
5: smg_seg<=~8'b1011_0110;
6: smg_seg<=~8'b1011_1110;
7: smg_seg<=~8'b1110_0000;
8: smg_seg<=~8'b1111_1110;
9: smg_seg<=~8'b1111_0110;
0: smg_seg<=~8'b1111_1100;
10:smg_seg<=~8'b0000000001;
default:smg_seg<=8'b1111_1100;
endcase
end
endmodule //smg

視頻演示

FPGA 實(shí)現(xiàn)衛(wèi)星授時(shí)_嗶哩嗶哩_bilibili?

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21759

    瀏覽量

    604291
  • gps
    gps
    +關(guān)注

    關(guān)注

    22

    文章

    2898

    瀏覽量

    166336
  • DIY
    DIY
    +關(guān)注

    關(guān)注

    176

    文章

    888

    瀏覽量

    348795
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    京準(zhǔn)電鐘:北斗授時(shí)GPS校時(shí)器 應(yīng)用視頻監(jiān)控系統(tǒng)

    京準(zhǔn)電鐘:北斗授時(shí)器(GPS校時(shí)器)應(yīng)用視頻監(jiān)控系統(tǒng)
    的頭像 發(fā)表于 10-12 15:40 ?311次閱讀
    京準(zhǔn)電鐘:北斗<b class='flag-5'>授時(shí)</b>器 <b class='flag-5'>GPS</b>校時(shí)器 應(yīng)用視頻監(jiān)控系統(tǒng)

    wifi授時(shí)電子鐘如何對(duì)時(shí)間

    電子鐘的基本原理 WiFi授時(shí)電子鐘內(nèi)置了WiFi模塊,該模塊能夠連接到互聯(lián)網(wǎng),并通過(guò)特定的協(xié)議(如NTP協(xié)議)與授時(shí)服務(wù)器進(jìn)行通信。授時(shí)
    的頭像 發(fā)表于 09-06 17:41 ?1760次閱讀

    AT3340:可替換國(guó)外授時(shí)板,BDS/GPS雙模授時(shí)板規(guī)格書(shū)

    AT3340采用ATGM331C-5T31授時(shí)模塊,是高授時(shí)精度的BDS/GPS雙模接收機(jī)板卡,包含32個(gè)跟蹤通道,支持GPS和BDS的單系統(tǒng)授時(shí)
    的頭像 發(fā)表于 09-06 11:33 ?307次閱讀
    AT3340:可替換國(guó)外<b class='flag-5'>授時(shí)</b>板,BDS/<b class='flag-5'>GPS</b>雙模<b class='flag-5'>授時(shí)</b>板規(guī)格書(shū)

    AT3340:支持BDS/GPS雙模授時(shí)板datasheet

    AT3340采用ATGM331C-5T31授時(shí)模塊,是高授時(shí)精度的BDS/GPS雙模接收機(jī)板卡,包含32個(gè)跟蹤通道,支持GPS和BDS的單系統(tǒng)授時(shí)
    的頭像 發(fā)表于 09-03 18:10 ?618次閱讀
    AT3340:支持BDS/<b class='flag-5'>GPS</b>雙模<b class='flag-5'>授時(shí)</b>板datasheet

    京準(zhǔn)電鐘,GPS北斗衛(wèi)星授時(shí)服務(wù)器助力智慧水利系統(tǒng)

    京準(zhǔn)電鐘,GPS北斗衛(wèi)星授時(shí)服務(wù)器助力智慧水利系統(tǒng)
    的頭像 發(fā)表于 08-14 10:25 ?258次閱讀
    京準(zhǔn)電鐘,<b class='flag-5'>GPS</b>北斗衛(wèi)星<b class='flag-5'>授時(shí)</b>服務(wù)器助力智慧水利系統(tǒng)

    GPS北斗衛(wèi)星授時(shí):雙系統(tǒng)NTP網(wǎng)絡(luò)時(shí)間服務(wù)器

    GPS北斗衛(wèi)星授時(shí):雙系統(tǒng)NTP網(wǎng)絡(luò)時(shí)間服務(wù)器-安徽京準(zhǔn)
    的頭像 發(fā)表于 08-13 15:11 ?421次閱讀
    <b class='flag-5'>GPS</b>北斗衛(wèi)星<b class='flag-5'>授時(shí)</b>:雙系統(tǒng)NTP網(wǎng)絡(luò)時(shí)間服務(wù)器

    通信基站授時(shí)常用定位授時(shí)模塊對(duì)比:ATGM332D-5T和ATGM331C-5T-發(fā)燒友

    ATGM331C-5T系列模塊同樣是具有高靈敏度、低功耗、低成本等優(yōu)勢(shì),適用于電力授時(shí)設(shè)備、時(shí)鐘服務(wù)器、守時(shí)設(shè)備,可以直接替換Ublox LEA T系列模塊。性能指標(biāo):從下面的圖來(lái)看
    發(fā)表于 07-03 17:15

    衛(wèi)星授時(shí)安全隔離防護(hù)裝置施工方案

    ,通過(guò)原位安裝即可將設(shè)施現(xiàn)有的授時(shí)信號(hào)GPS切換為北斗,保證時(shí)間基準(zhǔn)的安全可控。同時(shí),對(duì)衛(wèi)星導(dǎo)航信號(hào)質(zhì)量進(jìn)行實(shí)時(shí)監(jiān)測(cè)與告警,主動(dòng)隔離影響授時(shí)安全的信號(hào),并自主保持授時(shí)信號(hào)連續(xù)可靠,以大
    的頭像 發(fā)表于 07-03 16:32 ?1005次閱讀
    衛(wèi)星<b class='flag-5'>授時(shí)</b>安全隔離防護(hù)裝置施工方案

    同步時(shí)鐘:北斗/GPS衛(wèi)星、電信基站、NTP以太網(wǎng)校時(shí)方式的區(qū)別

    同步時(shí)鐘是保證各設(shè)備時(shí)間統(tǒng)一的重要裝置,廣泛應(yīng)用于電力、通信、金融、學(xué)校、醫(yī)院、地鐵等多個(gè)領(lǐng)域。目前,常用的同步時(shí)鐘方式包括:北斗/GPS衛(wèi)星、電信基站、NTP以太網(wǎng)等。 ? 下面跟著小編來(lái)看
    的頭像 發(fā)表于 06-27 16:56 ?701次閱讀
    同步<b class='flag-5'>時(shí)鐘</b>:北斗/<b class='flag-5'>GPS</b>衛(wèi)星、電信基站、NTP以太網(wǎng)校時(shí)方式的區(qū)別

    京準(zhǔn)電鐘:GPS時(shí)鐘服務(wù)器(NTP授時(shí)服務(wù)器)資料詳細(xì)介紹書(shū)

    京準(zhǔn)電鐘:GPS時(shí)鐘服務(wù)器(NTP授時(shí)服務(wù)器)資料詳細(xì)介紹書(shū) 京準(zhǔn)電鐘:GPS時(shí)鐘服務(wù)器(NTP授時(shí)
    發(fā)表于 06-18 14:52

    京準(zhǔn)電鐘|基于納秒級(jí)的GPS北斗衛(wèi)星授時(shí)服務(wù)器

    京準(zhǔn)電鐘|基于納秒級(jí)的GPS北斗衛(wèi)星授時(shí)服務(wù)器
    的頭像 發(fā)表于 06-12 15:19 ?505次閱讀
    京準(zhǔn)電鐘|基于納秒級(jí)的<b class='flag-5'>GPS</b>北斗衛(wèi)星<b class='flag-5'>授時(shí)</b>服務(wù)器

    NTP電子時(shí)鐘系統(tǒng):GPS北斗衛(wèi)星授時(shí)服務(wù)下的生活重塑

    NTP電子時(shí)鐘系統(tǒng):GPS北斗衛(wèi)星授時(shí)服務(wù)下的生活重塑
    的頭像 發(fā)表于 06-03 15:22 ?443次閱讀
    NTP<b class='flag-5'>電子時(shí)鐘</b>系統(tǒng):<b class='flag-5'>GPS</b>北斗衛(wèi)星<b class='flag-5'>授時(shí)</b>服務(wù)下的生活重塑

    stm32f051r8中RTC日歷時(shí)鐘如何將年月日時(shí)分秒轉(zhuǎn)換成秒計(jì)數(shù)?

    各位大俠,請(qǐng)問(wèn)一下stm32f051r8 中RTC日歷時(shí)鐘如何將年月日時(shí)分秒轉(zhuǎn)換成秒計(jì)數(shù),資料里說(shuō)的有點(diǎn)沒(méi)弄明白,不能使用中斷,因?yàn)楫a(chǎn)品斷電時(shí)由紐扣電池供電。
    發(fā)表于 05-08 08:21

    GPS衛(wèi)星同步時(shí)鐘的工作原理及應(yīng)用場(chǎng)景介紹

    GPS衛(wèi)星同步時(shí)鐘是一種基于全球定位系統(tǒng)(GPS)的授時(shí)系統(tǒng),它利用GPS衛(wèi)星原子鐘的高精度時(shí)間信息,對(duì)地面接收設(shè)備進(jìn)行時(shí)間同步。該系統(tǒng)具有
    的頭像 發(fā)表于 03-19 10:28 ?1926次閱讀
    <b class='flag-5'>GPS</b>衛(wèi)星同步<b class='flag-5'>時(shí)鐘</b>的工作原理及應(yīng)用場(chǎng)景介紹

    同步時(shí)鐘:北斗/GPS衛(wèi)星、電信基站、NTP以太網(wǎng)等多種校時(shí)方式的區(qū)別

    同步時(shí)鐘是保證各設(shè)備時(shí)間一致性的重要技術(shù),在通信、金融、電力等多個(gè)領(lǐng)域有著廣泛應(yīng)用。目前,常用的同步時(shí)鐘方式包括北斗/GPS衛(wèi)星、電信基站、NTP以太網(wǎng)等。 1. 北斗/GPS衛(wèi)星 北
    的頭像 發(fā)表于 03-19 08:45 ?1029次閱讀
    同步<b class='flag-5'>時(shí)鐘</b>:北斗/<b class='flag-5'>GPS</b>衛(wèi)星、電信基站、NTP以太網(wǎng)等多種校時(shí)方式的區(qū)別
    主站蜘蛛池模板: 亚洲一级免费毛片| 泰剧天堂| 97爱sese| 日本高清网站| 色吧视频| 欧美一级日韩一级亚洲一级| 欧洲综合色| 美女网站在线观看视频18| 黄页网站在线播放| www.xxxx欧美| 天天夜夜久久| 国产精品久久久久影视不卡| 午夜黄色网址| 男女吃奶一进一出动态图| 伊人啪啪| 色网视频| 久久国产精品99精品国产987| 国产精品美女免费视频观看| 欧美h视频| 九九精品久久久久久噜噜| 成人三级电影在线观看| 天天搞夜夜操| 性欧美另类| 狠狠色噜噜狠狠狠狠97影音先锋 | 老色批影院| 国产精品久久久久久久久福利| 夜夜干天天操| 国产成人综合亚洲怡春院| 亚洲一区亚洲二区| 亚洲国产成人久久精品图片| 欧美色图首页| bt天堂网在线资源www| 可以在线看黄的网站| 亚洲乱强| 一级做a爱| 欧美freesex交| 自拍偷拍福利| 成人福利在线视频| 国模欢欢炮交啪啪150| 日本欧美色图| 4hu影院在线观看|