主頁 >  其他 > 基于單片機定時器/計數器的時鐘設計及計數設計

基于單片機定時器/計數器的時鐘設計及計數設計

2021-01-13 10:46:25 其他

基于單片機定時器/計數器的時鐘設計以及計數設計

  • 第一部分 前言
  • 第二部分 定時器/計數器的原理
    • MCS-51定時器/計數器的結構
    • 定時器/計數器相關特殊功能暫存器
    • 定時器/計數器作業方式
  • 第三部分 定時器/計數器編程方法
  • 第四部分 定時器/計數器仿真設計
    • 設計案例一
      • 原理圖
      • 動態仿真結果
      • 代碼
    • 設計案例二
      • 原理圖
      • 動態仿真結果
      • 代碼

第一部分 前言

??本次單片機基礎實驗將會通過在Proteus軟體中畫原理圖,然后Keil軟體下撰寫源程式并編譯形成可執行檔案.hex,下載源程式,進行Protues和Keil的聯合仿真運行,最終對單片機仿真有初步的認識, 通過本篇文章定時器/計數器T0、T1的作業方式選擇和編程方法,學習Proteus了解定時器/計數器中斷服務程式的設計方法

以下是本篇文章正文內容,所設計的案例可供參考


第二部分 定時器/計數器的原理

MCS-51定時器/計數器的結構

??MCS-51單片機根據不同型號,其片內定時器/計數器數目不同,8051單片機有兩個16位定時器/計數器暫存器:Timer0(T0定時器)與Timer1(T1定時器1),8052除這兩個定時器/計數器外還增加了1個Timer2(T2定時器),而這3個都可設定為定時器或事件計數器,當其作為“定時器”功能時,它是對標準時鐘計數,每個時鐘周期暫存器自動增1,由于MCS-51單片機的一個機器周期由12個振蕩器周期組成,計數速率是振蕩器頻率的1/12,作為“計數器”功能,暫存器在回應相應的外部輸入引腳T0、T1或T2(在8052中)由1至0的轉變而增1,不論是“定時器”還是外部事件“計數器”,其作業原理是一樣的,即定時器/計數器電路中的內部計數器從某一預定值(此值是可編程的)開始計數,當累計到最大值時產生溢位,并同時會建立一個相應的溢位標志(即中斷標志位),除了“定時器”或“計數器”選擇外,定時器0與定時器1有4種作業方式需要選擇,在8052單片機中的定時器T2有3種操作方式:“捕獲”、“自動重裝入”與“波特率生成器”,下面主要以AT89C51單片機為例講解定時器/計數器的基本結構,
在這里插入圖片描述

圖1 單片機的定時器/計數器結構框圖

??AT89C51單片機片內定時器/計數器的結構如圖1所示,定時器內部實質上是16位加法計數器,其控制電路受軟體控制,當用作定時器時,對機器周期計數,每過一個機器周期,計數器加1,由于每個機器周期包含12個振蕩信號周期,所以加1計數器的計數頻率為振蕩器信號頻率的1/12,當用作計數器功能時,加1計數器的計數脈沖取自外部輸入端T0(P3.4)和T1(P3.5),只要這些引腳上有從“1”到“0”的負跳變,計數器就加1,CPU在每個機器周期的S5P2時刻對外部輸入狀態進行采樣,計數器加1的執行是在檢測到跳變后的下一個機器周期的S3P1時刻,由于需要兩個機器周期來識別一個從“1”到“0”的負跳變,所以最大計數頻率為振蕩信號頻率的1/24,而外部時鐘脈沖持續為0和為1的時間不能少于一個機器周期,
??兩個可編程的16位定時器 /計數器T0 和 T1
??- T0 = TH0(高8位) + TL0(低8位)
??- T1 = TH1(高8位) + TL1(低8位)

定時器/計數器相關特殊功能暫存器

  • TMOD:控制定時器/計數器的作業方式
  • TCON:控制定時器/計數器的運行
  • IE、IP:定時器/計數器的中斷控制

1. TMOD
??TMOD用來選擇定時器/計數器的作業模式和作業方式,它的位元組地址是89H,但該暫存器不能進行位尋址,在這里插入圖片描述

  • GATE=0,運行控制位 TR0/TR1(=1) 控制 T0/T1 啟動;
  • GATE=1,INT0/1 (=1) 及運行控制位TR0/TR1(=1)控制T0/T1啟動,可用于外部脈沖寬度測量
  • C/T=0,用作定時器(定時功能通過計數實作,計數脈沖來自內部系統時鐘輸入,一個機器周期產生一個計數脈沖);
  • C/T=1,用作計數器(對外部脈沖計數,外部輸入脈沖發送負跳
    變時加1)

T0模式

M1M0功能
0013 位定時器/ 計數器,TL1 低5 位 + TH1全8 位,最大值為8192
0116 位定時器/ 計數器,TL1、TH1 全用,最大值65.536ms;
108 位自動重裝載定時器,當溢位時將TH1 存放的值自動重裝入TL1,最大值為256;
11定時器/ 計數器1 此時無效(停止計數)

T1模式

M1M0功能
0013 位定時器/ 計數器,TL1 低5 位 + TH1全8 位,最大值為8192
0116 位定時器/ 計數器,TL1、TH1 全用,最大值65.536ms;
108 位自動重裝載定時器,當溢位時將TH1 存放的值自動重裝入TL1,最大值為256;
11定時器0 為雙8 位定時器/ 計數器,TL0 作為一個8 位定時器/ 計數器,通過標準定時器0 的控制位控制,TH0 僅作為一個8 位定時器,由定時器1 的控制位控制,

2.TCON
??TCON暫存器的位元組地址為88H,可進行位尋址,高4位分別為定時器/計數器的啟動控制和溢位中斷標志,低4位與外部中斷控制有關,
在這里插入圖片描述
各標志位的功能:

1. IT0—選擇外部中斷請求0為跳沿觸發方式還是電平觸發方式:
IT0=0,為電平觸發方式,
IT0=1,為跳沿觸發方式,
??可由軟體置“1”或清“0”,
2. IE0—外部中斷請求0的中斷請求標志位,
IE0=0,無中斷請求,
IE0=1,外部中斷0有中斷請求,
當CPU回應該中斷,轉向中斷服務程式時,由硬體清“0”IE0
**3. IT1—外部中斷請求1為跳沿觸發方式還是電平觸發方式,意義與IT0類似,

  1. IE1—外部中斷請求1的中斷請求標志位,意義與IE0類似,
  2. TF0 —T0溢位中斷請求標志位,**
    ??T0計數后,當最高位產生溢位時,由硬體置“1”TF0,向CPU申請中斷,CPU回應TF0中斷時,清“0”TF0,TF0也可由軟體清0,

6. TF1—T1的溢位中斷請求標志位,功能和TF0類似,
?? TR1、TR0 2個位與中斷無關,僅與定時器/計數器T1和T0有關,

3.IE
??中斷允許暫存器:CPU對中斷源的開放或屏蔽,由片內的中斷允許暫存器IE控制,位元組地址為A8H,可位尋址,格式如下:
在這里插入圖片描述
IE中各位的功能如下:

1. EA:中斷允許總控制位
EA=0:CPU屏蔽所有的中斷請求(CPU關中斷) ;
EA=1:CPU開放所有中斷(CPU開中斷) ,
五個中斷源的中斷請求是否允許,還要由IE中對應的5個中斷請求允許控制位的狀態來決定,

2. ES:串行口中斷允許位
ES=0:禁止串行口中斷;
ES=1:允許串行口中斷,

3. ET1:定時器/計數器T1的溢位中斷允許位
ET1=0:禁止T1溢位中斷;
ET1=1:允許T1溢位中斷,

4. EX1:外部中斷1中斷允許位
EX1=0:禁止外部中斷1中斷;
EX1=1:允許外部中斷1中斷,

5. ET0:定時器/計數器T0的溢位中斷允許位
ET0=0:禁止T0溢位中斷;
ET0=1:允許T0溢位中斷,

6. EX0:外部中斷0中斷允許位,
EX0=0:禁止外部中斷0中斷;
EX0=1:允許外部中斷0中斷,

MCS-51復位后,IE清0,所有中斷請求被禁止,若使某一個中斷源被允許中斷,除了IE相應的位被置“1” ,還必須使EA位=1,改變IE的內容,可由位操作指令或位元組操作指令來實作,


定時器/計數器作業方式

??在MCS-51系列單片機中,定時器/計數器(T0、T1)具有多種作業方式,當選擇作業方式不同,定時/計數器的使用方法差別很大,MCS-51單片機片內的定時器/計數器可以通過對特殊功能暫存器TMOD中的控制位 的設定來選擇定時器方式或計數器方式;通過對M1 M0兩位的設定來選擇定時器/計數器的四種作業方式,下面具體講解定時器/計數器的作業方式,

1. 作業方式0

??定時器/計數器0、1在作業方式0時的電路邏輯結構見圖9-2,作業方式0(M1 M0 = 0 0)是13位計數結構的作業方式,其計數器由TH的全部8位和TL的低5位構成,TL的高3位不使用,當 =0時,定時器/計數器0、1處于定時作業方式,多路開關接通振蕩脈沖的12分頻輸出,13位計數器依次進行計數,當 =1時,定時器/計數器0、1處于計數作業方式,多路開關接通計數引腳(T0),外部計數脈沖由腳T0輸入,當計數脈沖發生負跳變時,計數器加1,
??當TL的低5位溢位時,都會向TH進位,而全部13位計數器溢位時,則會向計數器溢位標志位TF0進位,同時,GATA位的狀態決定定時器運行控制取決于TR0一個條件還是TR0和/INT0引腳這兩個條件,當GATA=1時,由于GATA信號封鎖了與門,使引腳/INT0信號無效,而這時候如果TR0=1,則接通模擬開關,使計數器進行加法計數,即定時/計數器作業,而TR0=0,則斷開模擬開關,停止計數,定時器/計數器不能作業,當GATA=0時,與門的輸出端由TR0和INT0電平的狀態確定,此時如果TR0=1,INT0=1與門輸出為1,允許定時器/計數器計數,在這種情況下,運行控制由TR0和INT0兩個條件共同控制,TR0是確定定時/計數器的運行控制位,由軟體置位或清“0”,

在這里插入圖片描述
??在作業方式0下,計數器的計數值X范圍為1~8192(213?1),由于MCS-51單片機的T0和T1采用加計數,因此TH0(TH1),TL0(TL1)的初值N=8192-X,如當計數值X=1000,則計數初值N=7192=1C18H,那么TH0(TH1),TL0(TL1)的值分別為0E0H和18H,由于TL0(TL1)為低5為有效,所以該計數初值N不能簡單地分成高8位和低8位賦值給TH0(TH1),TL0(TL1),當計數初值N=7192=1C18H,其二進制編碼如下

1C18H=0001 1100 0001 1000B

??再將16位的二進制編碼去除最高的3位,保留后面13位,并取低5位寫入到TL0(TL1),高8位寫入到TH0(TH1),具體操作如下

1C18H=0001 1100 0001 1000 = 1110 0000 11000B

??其中,11000B是TL0(TL1)對應的低5位,其16進制編碼為18H,而1110 0000這8位為TH0(TH1)的內容,其16進制編碼為0E0H,
??當定時器/計數器作業于方式0且確定了定時時間T1后,其計數初值N的計算公式為

N=8192-(T1×fosc/12)

??式中,fosc為系統時鐘振蕩頻率,
??假設單片機的晶振選為12MHz,需要用T0進行2ms定時控制,則T0的初值N計算為

N=8192-T1×fosc/12=8192-2×10-3×12×106/12=6192=1830H=0001 1000 0011 0000B

??則對應的13位二進制編碼為1100 0001 1 0000則TH0=0C1H,TL0=10H

2. 作業方式1

定時器/計數器0、1作業于方式1時,其電路邏輯結構如圖所示,
在這里插入圖片描述

??作業方式1(M1 M0=0 1)是16位計數結構的作業方式,方式0和方式1的區別僅在于計數器的位數不同,方式0為13位,而方式1則為16位,由TH0作為高8位,TL0為低8位,有關控制狀態字(GATA、TF0、TR0)和方式0相同,
??在作業方式1下,計數器的計數值X范圍是:1~65536
??當定時器/計數器作業于方式1且確定了定時時間T1后,其計數初值N的計算公式為:

N=65536-(T1×fosc/12)

??則寫入到8位暫存器TH0(TH1),TL0(TL1)值分別為
??TH0(TH1)=N/256
??TL0(TL1)=N%256

3. 作業方式2

??當M1 M0=1 0時,定時器/計數器0、1處于作業方式2,此時其電路邏輯結構如圖9-4所示,以定時/計數器0為例,定時/計數器1與之完全一致,
在這里插入圖片描述

4. 作業方式3

??當M1 M0 =1 1時,定時器/計數器作業于方式3下,方式3只適用于定時器T0,若將T1置為方式3,則它將停止計數,其效果相當于置TR1=0,即關閉定時器T1,當T0作業在方式3時,TH0和TL0被分成兩個相互獨立的8位計數器,其電路邏輯結構如圖所示,
在這里插入圖片描述
??在作業方式3模式下,TL0既可以作為計數器使用,也可以作為定時器使用,定時器/計數器0的各控制位和引腳信號全歸它使用,其功能和操作與方式0或方式1完全相同,但TH0的功能受到限制,只能作為簡單的定時器使用,而且由于定時器/計數器0的控制位已被TL0占用,因此只能借用定時器/計數器1的控制位TR1和TF1,也就是以計數溢位去置位TF1,TR1則負責控制TH0定時器的啟動和停止,由于TL0既能作定時器也能作計數器使用,而TH0只能作定時器使用而不能作計數器使用,因此在方式3模式下,定時/計數器0可以構成兩個定時器或者一個定時器和一個計數器,

第三部分 定時器/計數器編程方法

定時器的初始化編程包括:

  1. 設定定時器作業模式(設定TMOD);
  2. 設定定時器計數初值(設定THx/TLx);
  3. 允許定時器中斷(IE);
  4. 啟動定時器(TCON),

例如:

  • 設定定時器作業模式(TMOD不能位尋址)
    TMOD = 0x01; T0作業在模式 1下,16位定時器
  • 設定定時器計數初值
    計算初值公式 (T0定時模式2,8):
    TH0=(28- 計數值) ; \ 8192 1s, 1us=110^6 ,50000,50ms
    TL0=(28 -計數值);
    計數值=定時時間/ 機器周期; 如果時鐘頻率fosc=12MHZ,則機
    器周期=12
    時鐘周期=12*1/fosc=1us, 6mhz,
    PS:如果要求定時器按某固定時間間隔不斷觸發,需要在中斷服務程
    序中再次設定定時器計數初值(模式2除外),否則,中斷服務程式以該模
    式下的最大定時值作業,
  • 允許定時器中斷(中斷號)
    EA=1;ET0=1
  • 啟動定時器
    定時器T0:TCON=0x10 或者 TR0=1

第四部分 定時器/計數器仿真設計

設計案例一

??基于上述原理可以設計一個60s計時的秒表,完成秒表電路的設計與編程除錯,

原理圖

在這里插入圖片描述
??定時器T0或T1實作秒表的計時功能,作業模式不限,計時60s后自動從0開始重新計時, INT0中斷方式實作秒表的啟動和暫停計時; INT1中斷方式實作秒表的計時重置,

動態仿真結果

在這里插入圖片描述
在這里插入圖片描述

代碼

Keil代碼如下:

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit duan = P2^0;
sbit wei = P2^1;
sbit int0=P3^2;
sbit int1=P3^3;
uchar code LED_D[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar code LED_W[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uchar count=0;
uchar Time=0;

void Delay(uint x);//延遲函式
void Display2(uchar W1, Time);//顯示函式
void QP();//清屏函式
//主函式
void main()
{
   QP(); 
   TMOD=0x01;//設定定時器作業方式  
   TH0=(65536-50000)/256;//計算初值,高8位
   TL0=(65536-50000)%256;//計算初值,第8位
   ET0=1;
   EA=1;  //開總中斷 
   while(1)
    {            
       if(int0==0)
   {Delay(100);
   if(int0==0){
   TR0=!TR0;
   while(int0==0);}}
   if(int1==0){
   Delay(100);
   if(int1==0)
   {Time=0;
   }}
   Display2(6,Time);    
 }
 }
void LED_Flash() interrupt 1//中斷函式
{
   EA=0;//關總中斷
   TH0=(65536-50000)/256;//重裝初值 
   TL0=(65536-50000)%256;//重裝初值
   if(++count==20)     //開始計數
     {
	  count=0;
	 Time++;
	 if(Time==61)
	 Time=0;  
 }
    EA=1;
}
void Int0() interrupt 0
{
    if(int0==0)
   {Delay(100);
   if(int0==0)
   {
   TR0=!TR0;
   while(int0==0);
   }
   }
}
void Int1() interrupt 2//中斷函式
{ EA=1;
 ET0=1;
    if(int1==0){
   Delay(10);
   if(int1==0)
   {Time=0;
   }
   }
}
void Display2(uchar W1, Time)//顯示函式
{
	 uchar shi,ge;
 	 shi = Time/10;
	 ge = Time%10;
	 P0 = LED_D[shi];
	 duan = 1;   duan = 0;
	 P0 = LED_W[W1];
	 wei = 1; 
	 wei = 0;
	 Delay(3);
	 QP(); 
	 P0 = LED_D[ge];
	 duan = 1;
	 duan = 0; 
	 P0 = LED_W[W1+1];
	 wei = 1;
	 wei = 0; 
	 Delay(3); 
	 QP(); 
} 
void QP()
{
	 P0=0x00;
	 duan = 1; duan = 0; 
	 wei = 1; wei = 0;
}
void Delay(uint x)   //延時
{
	 uchar t;
	 while(x--) for(t=0;t<110;t++);
}

設計案例二

利用T0、T1計數器功能,實作按鍵計數,計數值分別在2個4位數碼管上顯示,

原理圖

  • 利用定時器T0作業模式2,中斷方式,計數初值為0,數碼管顯示3位數
  • T1作業模式不限,非中斷方式,計數初值為256,數碼管顯示3位數
  • INT0中斷方式實作T0、T1計數清零
    在這里插入圖片描述

動態仿真結果

在這里插入圖片描述
??通過不同的按鍵來實作對應的計數功能,利用定時器的計數功能可以使得單片機得到快速回應,

代碼

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit duan = P2^0;
sbit wei = P2^1;
uchar code LED_D[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
uchar code LED_W[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
uint count1,count2;   
void Delay(uint x);
void Display2(uchar W1,uint count);
void QP();
void main()
{
	   QP(); 
	   EA=1; //開總中斷
	   TMOD=0x46; //設定定時器作業方式   
	   TH0=TL0=0; //設定初值
	   TH1=1;TL1=0;
	   ET0=1;
	   EX0=1;
	   IT0=1;
	   TR0=1;
	   TR1=1;
	   while(1)
	    { 
	      if(TF1==1) TF1=0;
	 count1 = TL0;
	 count2 = TH1*256+TL1;
	 Display2(1,count1);          
	 Display2(5,count2);       
 }
}
void Flash() interrupt 1
{
	   EA=0;
	   TL1=0;
	   EA=1;
}
void Clear() interrupt 0
{
   TL0=0; 
   TL1=0;
}
void Display2(uchar W1, uint count)
{
	 uchar  bai,shi,ge;
	 bai = count%1000/100;
	 shi = count%100/10;
	 ge = count%10;
	 P0 = LED_D[bai];
	 duan = 1;   duan = 0;
	 P0 = LED_W[W1];
	 wei = 1; 
	 wei = 0;
	 Delay(3);
	 QP(); 
	 P0 = LED_D[shi];
	 duan = 1;
	 duan = 0; 
	 P0 = LED_W[W1+1];
	 wei = 1;
	 wei = 0;
	 Delay(3); 
	 QP();
	 P0 = LED_D[ge];
	 duan = 1;
	 duan = 0;
	 P0 = LED_W[W1+2];
	 wei = 1;
	 wei = 0;
	 Delay(3); 
	 QP(); 
}  
void QP()
{
	 P0=0x00;
	 duan = 1; duan = 0; 
	 wei = 1; wei = 0;
}
void Delay(uint x) 
{
	 uchar t;
	 while(x--) for(t=0;t<110;t++);
}

??以上就是本次定時器/計數器的全部內容,希望通過本次的講解能夠加深大家對于定時器/計數器以及中斷的理解,文章的內容可能存在部分不足之處,如有錯誤,請在評論區指出,謝謝,如果大家覺得文章有用,麻煩點贊關注,感謝支持,后續將會推出單片機的進階設計文章,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/248091.html

標籤:其他

上一篇:陳玉龍:永懷少年心 不改凌云志

下一篇:資料結構---二叉樹

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more