主頁 >  其他 > LCD實驗

LCD實驗

2021-08-10 09:06:31 其他

文章目錄

    • LCD -- TFTLCD 原理與配置
      • TFTLCD(薄膜晶體管液晶顯示幕)
        • 簡介
        • 特點
        • 原理
        • 驅動
      • 驅動流程
        • 硬復位
        • 初始化序列
        • 設定坐標
          • 寫GRAM指令
            • 寫入顏色資料(0X2C)
            • LCD顯示
          • 讀GRAM指令
            • 讀出顏色資料(0X2E)
            • 單片機處理
      • RGB565格式
      • ILI9341指令格式說明
        • 幾條重要指令
          • 0XD3
          • 0X36
          • 0X2A
          • 0X2B
          • 0X2C
          • 0X2E
    • FSMC簡介
        • FSMC驅動LCD
        • NOR PSRAM外設介面
          • 存盤塊1
          • 暫存器
          • 暫存器組合
      • LCD實驗原始碼
        • 硬體連接(STM32F4開發板)
        • LCD&lcddev結構體
          • LCD結構體
          • lcddev結構體
        • 底層介面函式
        • 初始化函式
        • 坐標設定函式
        • 畫點函式
        • 讀點函式
        • 字符顯示函式

LCD – TFTLCD 原理與配置

TFTLCD(薄膜晶體管液晶顯示幕)

簡介

Thin Film Transistor - Liquid Crystal Display
TFTLCD計技術是微電子技術與液晶顯示幕技術巧妙結合的一種技術,
TFT-LCD屏可視為兩片玻璃基板中間夾著一層液晶,上層的玻璃基板貼合彩色濾波片,下層玻璃有晶體管鑲嵌,當有電流通過晶體管產生電場變化,造成液晶分子偏轉,借以改變光線的偏極性,再利用偏光片決定像素的明暗狀態,此外,上層玻璃因與彩色濾光片貼合,形成每個像素各包含紅藍綠三顏色,像素便構成了皮膚上的影像畫面,
每一個像素上都設定有一個薄膜晶體管--->大大提高了影像質量

特點

亮度高
對比度高
層次感強
顏色鮮艷

原理


介面說明:
(DB1DB8,DB10DB17,總是按順序連接MCU的D0~D15)
① LCD_CS:LCD片選信號
② LCD_WR:LCD寫信號
③ LCD_RD: LCD讀信號
④ DB[17:1]:16位雙向資料線
⑤ LCD_RST:硬復位LCD信號
⑥ LCD_RS: 命令/資料標志(0:命令,1:資料)
⑦ BL_CTR:背光控制信號
⑧ T_MISO/T_MOST/T_PEN/T_CS/T_CLK,觸摸屏介面信號

驅動

8080并口讀/寫程序為:
先根據要寫入/讀取的資料的型別,設定RS為高(資料)/低(命令),然后拉低片選,選中ILI9341,接著根據是讀還是寫資料置RD/WD 為低
1.讀資料:在RD的上升沿,讀取資料線上的資料(D[15:0])
2.寫資料:在WR的上升沿,使資料寫入到ILI9341里面

驅動流程

硬復位

LCD_RST=0;
delay_ms(100);
LCD_RST=1;

初始化序列

不同廠家出廠的LCD的初始化序列是不同的,由廠家提供,

設定坐標

寫GRAM指令
寫入顏色資料(0X2C)
LCD顯示
讀GRAM指令
讀出顏色資料(0X2E)
單片機處理

RGB565格式

ILI9341指令格式說明

幾條重要指令

0XD3

用來讀取LCD控制器的ID
代碼相同,ID不同——>執行不同的LCD驅動初始化——>兼容不同的LCD螢屏

0X36

存盤訪問控制指令,可以控制ILI9341存盤器的讀寫方向
就是在連續寫GRAM的時候,可以控制GRAM指標的增長方向,從而控制顯示方式(讀GRAM也是一樣)


0X2A

列地址設定指令,默認從左向右,從上到下的掃描方式,用于設定橫坐標

0<=SC<=EC<=239

0X2B

頁(理解是行)地址設定指令,從左到右,從上到下的掃描方式下面,該指令用于設定縱坐標,

0<=SP<=EP<=319

0X2C

寫GRAM指令,在發送該指令后,可往LCD的GRAM里面寫入顏色資料,支持連續寫(地址自動遞增)

0X2E

讀GRAM指令,用于讀取ILI9341的顯存,同0X2C指令,該指令支持連續讀(地址自動遞增)

ILI9341收到指令后,第一次輸出dummy資料(無效),第二次開始,讀取到的才是有效的GRAM資料,輸出規律為每個顏色分量占8個位,一次輸出2個顏色分量,比如:第一次輸出是R1G1,隨后的規律為B1R1->G2B2->R3G3->~

FSMC簡介

FSMC,靈活的靜態存盤控制器,能夠與同步或異步存盤器和16位IPC存盤器卡連接,

FSMC驅動LCD

FSMC驅動外部SRAM時,外部SRAM的控制一般有:地址線(如A0A25)、資料線(如D0D15)、寫信號(WE,即WR)、讀信號(OE,即RD)、片選信號(CS),如果SRAM支持位元組控制,那么還有UBLB信號,
而TFTL CD的信號我們在前面介紹過,包括: RS、D0D15、WR、RD、CS.RST和BL等,其中真正在操作LCD的時候需要用到的就只有:RS、DOD15、WR.RD和CS.其操作時序和SRAM的控制完全類似,唯一不同就是TFTLCD有RS信號,但是沒有地址信號,
TFTLCD通過RS信號來決定傳送的資料是資料還是命令,本質上可以理解為一個地址信號,比如我們把RS接在AO上面,那么當FSMC控制器寫地址0的時候,會使得AO變為0,對TFTLCD來說,就是寫命令,而FSMC寫地址1的時候, A0將會變為1,對TFTLCD來說,就是寫資料,這樣把資料和命令區分開,對應SRAM操作的兩個連續地址,當然RS也可以接在其他地址線上,戰艦V3和精英板開發板都是把RS連接在A10上面,而探索者STM32F4把RS接在A6上面,
因此,可以把TFTLCD當成一個SRAM來用,只不過這個SRAM有2個地址,這就是FSMC可以驅動LCD的原理,

NOR PSRAM外設介面

STM32的FSMC將外部存盤器劃分為固定大小為256M位元組的四個存盤塊

存盤塊1

Bank1(存盤塊1)用于驅動NOR FLASH/SRAM/PSRAM,被分為四個區,每區管理54M位元組空間,每個區都有獨立的暫存器對所連接的存盤器進行配置,Bank1 的256M位元組空間由28根地址線[HADDR【27:0】]尋址,
HADDR是內部AHB地址總線,其中HADDR【25:0】來自外部存盤器地址FSMC_A[25:0],HADDR[26:27]對四個區進行尋址,

當Bank1接的是16位寬度存盤器的時候: HADDR[25:1——>FSMC_A[24:0]
當Bank1接的是8位寬度存盤器的時候: HADDR[25:0]——>FSMC_A[25:0]
不論外部接8位/16位寬設備,FSMC_A[0]永遠接在外部設備地址A[0]

這里使用模式A來驅動LCD

暫存器


對于NORELASH/PSRAM控制器(存盤塊1),通過ESMC BCRx、FSMC_BTRx和FSMC_ BWTRx暫存器設定(其中x=1~4,對應4個區),通過這3個暫存器,可E設定FSMC訪問外部存盤器的時序引數,拓寬了可選用的外部存盤器的速度范圍,

EXTMOD:擴展模式使能位,控制是否允許讀寫不同的時序,需設定為1
WREN:寫使能位,向TFTLCD寫資料,故該位必須設定為1
MWID[1:0]:存盤器資料總線寬度,00,表示8位資料模式;01表示16位資料模式;10和11保留,TFTLCD是16位資料線,所以設定WMID[1:0]=01."MTYP[1:0]:存盤器型別,00表示SRAM、ROM; 01表示PSRAM:10表示NORFLASH;11保留,LCD當成SRAM,需要設定MTYP[1:0]=00.
MBKEN:存盤塊使能位,設定為1

ACCMOD[1:0]:訪問模式,00:模式A;01:模式B:10:模式C;11:模式D.
DATAST[7:0]:資料保持時間,等于: DATAST(+1)個HCLK時鐘周期,DATAST最大為255,對ILI9341來說,其實就是RD低電平持續時間,最大為355ns,對STM32F1,一個HCLK=13.8ns (1/72M),設定為15;對STM32F4,一個HCLK=6ns(1/168M),設定為60,
ADDSET[3:0]:地址建立時間,表示:ADDSET (+1)個HCLK周期, ADDSET最大為15,對ILI9341來說,這里相當于RD高電平持續時間,為90ns,STM32F1的FSMC性能存在問題,即便設定為0,RD也有190ns的高電平,我們這里設定為1,而對STM32F4,則設定為15,


ACCMOD[1:0]:訪問模式,00:模式A;01:模式B:10:模式C;11:模式D,
DATAST[7:0]:資料保持時間,等于:DATAST(+1)個HCLK時鐘周期, DATAST最大為255,對I LI9341來說,其實就是WR低電平持續時間,為15ns,不過ILI9320等則需要50ns,考慮兼容性,對STM32F1,一個HCLK=13.8ns (1/72M),設定為3;對STM32F4,一個HCLK=6ns(1/168M),設定為9,
ADDSET[3:0]:地址建立時間,表示: ADDSET+1個HCLK周期, ADDSET最大為15,對ILI9341相當于WR高電平持續時間,為15ns,兼容ILI9320,對STM32F1設定為1,STM32F4,設定為8,

暫存器組合

ST官方庫提供的暫存器定義,沒有定義單獨的暫存器,而是將他們進行組合,

FSMC BCR×和FSMC_BTRx,組合成BTCR[8]暫存器組
BTCR[0]對應FSMC BCR1,BTCR[1]對應FSMC BTR1
BTCR[2]對應FSMC BCR2,BTCR[3]對應FSMC BTR2
BTCR[4]對應FSMC_BCR3,BTCR[5]對應FSMC BTR3
BTCR[6]對應FSMC BCR4,BTCR[7]對應FSMC BTR4

F.SMC BWTRX則組合成BWTR[7]:
BWTR[O]對應FSMC_BWTR1,BWTR[2]對應FSMC_BWTR2
BWTRI4]對應FSMC BWTR3, BWTR[6]對應FSMC BWTR4

LCD實驗原始碼

硬體連接(STM32F4開發板)

LCD_BL(背光控刷)對應 PBO;
LCD_CS對應PGl2即 FSMC_NE4;
LCD_RS對應 PG0FSMC_Al0;
LCD_wR對應PDS 即 FSMC_NWE;
LCD_RD對應PD4即 FSMC_NOE;
LCD_D[15:0]則直接連接在FSMC_Dl5~FSMC_D0;

LCD&lcddev結構體

LCD結構體
typedef struct
{
vu16 LCD_ REG;
vu16 LCD RAM;
}LCD_TypeDef;
//使用NOR/SRAM的 Bank1.sector4,地址位HADDR[27,26]=11A10作為資料命令區分線
//注意設定時STM32內部會右移一位對齊!
#define LCD_BASE    ((u32)(0x6co0o000|Ox0000007FE))
#define LCD    ((LCD_ TypeDef*)LCD_ BASE)

LCD_BASE,根據外部電路的連接來確定,如Bank1.sector4就是從地址OX6C000000開始,而OX000007FE,則是A10的偏移量,以A10為例,7FE換成二進制為:111 11111110,而16位資料時,地址右移一位對齊,對應到地址引腳,就是: A10:A0=011 11111111,此時A10是0,但是如果16位地址再加1(對應到8位地址是加2,即7FE+0X02),那么:A10:A0=100 0000 0000,此時A10就是1了,即實作了對RS的0和1的控制,
將((LCD_ TypeDef)LCD_ BASE)這個地址強制轉換為LCD_TypeDef結構體地址,得到LCD->LCD_REG的地址OX6CO0,07FE,對應A10的狀態為O(即RS=0),而LCD->LCD_RAM的地址就是0X6C00,0800(結構體地址自增),對應A10的狀態為1(即RS=1),從而實作對RS的控制,*

lcddev結構體
typedef struct{
u16 width;    //LCD寬度
u16 height;   //LCD高度
u16 id;       //LCD ID
u8 dir;       //橫屏還是豎屏控制:0,豎屏:1,橫屏,
u16 wramcmd;  //開始寫gram指令
u16 setxcmd;  //設定x坐標指令
u16 setycmd;  //設定y坐標指令
}_Icd_dev;
//LCD引數
extern _lcd_dev lcddev;//管理LCD重要引數

該結構體引數的賦值,基本都是在LCD_Display_Dir函式完成

底層介面函式

總括:

void LCD WR REG(u16 regval)  //寫暫存器值函式
void LCD WR DATA(u16 data)   //寫資料函式
u16 LCD RD DATA(void)        //讀資料函式
void LCD_WriteReg(u16 LCD_Reg,u16 LCD_RegValue) //寫暫存器內容函式
u16 LCD_ReadReg(u16 LCD_Reg) //讀暫存器內容函式
void LCD WriteRAM Prepare(void)                  //開始寫GRAM函式
void LCD_WriteRAM(u16 RGB_Code)                  //寫GRAM函式

void LCD_WR_REG(vu16 regval)
{   
	regval=regval;		//使用-O2優化時,必須插入延時
	LCD->LCD_REG=regval;//寫入暫存器序號 
}//寫暫存器值
void LcD_WR_DATA(vul6 data)
data=data;
//使用-o2優化的時候,必須插入的延時
LCD->LCD_RAM=data ;
)
//讀LcD資料

ul6 LCD_RD_DATA (void)
vul6 ram;
//防止被優化
ram=LCD->LCD_RAM;
return ram;

//LCD_Reg:暫存器地址
//LCD Regvalue:要寫入的資料
void LcD_WriteReg (ul6 LCD_Reg,ul6 LCD_Regvalue)
LCD->LCD_REG= LCD_Reg;//寫入要寫的暫存器序號LCD->LCD_RAM=LCD_Regvalue; //寫入資料
//讀暫存器
//LCD Reg:暫存器地址//回傳值:讀到的資料
ul6 LCD_ReadReg (ul6 LCD_Reg)
L.CD_WR_REG(LCD_Reg) ;//寫入要讀的暫存器序號delay_us(5) ;
return LCD_RD_DATA ( );//回傳讀到的值
}
void LCD_writeRAM_Prepare (void)
{
LCD->LCD_REG=lcddev.wramcmd;
}
//RGB_code:顏色值
void LcD_writeRAM (ul6 RGB_code){
LCD->LCD_RAM=RGB_code; //寫十六位GRAM

初始化函式

//LCD初始化
void LCD_Init(void)
{
  初始化GPIO;
  初始化FSMC;
  讀取LCD D;
  printf( "LCD ID:%Kx\rn", lcddev.id);//列印LCD ID,用到了串口1
                                       //初始化串口1,否則黑屏
根據不同的ID執行LCD初始化代碼;
LCD Display Dir(0);                    //默認為豎屏
LCD LED=1;                             //點亮背光
LCD Clear (WHITE);                     //清屏

坐標設定函式

//設定游標位置
//Xpos:橫坐標
//Ypos:縱坐標
void LCD SetCursor (ul6 Xpos,u16 Ypos)
{
    if(lcddev.idoX9341 I|lcddev.id 0X5310)
    {
    LCD_WR_REG(lcddev.setxcmd);
    LCD_WR DATA (Xpos>>8);
    LCD_WR DATA (Xpos&OXFF);
    LCD_WR_REG(1eddev.setycmd);
    LCD_WR_DATA(Ypos>>8);
    LCD_WR_ DATA(Ypos&OXFF);
    }else if(lcddev. idXXX){}
//根據不同的LCD型號,執行不同的代碼
}

畫點函式

//畫點
//x, y:坐標
//POINT _COLOR:此點的顏色
void LCD_DrawPoint (u16 x, ul6 y)
{
    LCD SetCursor (x,y);    //設定游標位置
    LCD_WriteRAM_Prepare(); //開始寫入GRAM
    LCD->LCD_ RAM=POINT_COLOR;//非Mini板的操作方式

讀點函式

ul6 LCD_ReadPoint (ul6 x,ul6 y){
ul6 r=0, g=o,b=0 ;
if(x>=lcddev.width ||y>=lcddev.height)return 0;//超過了范圍,直接回傳LcD_setcursor(x,y);
if(lcddev.id==0X9341||lcddev.id==OX6804 ||lcddev.id==OX5310||leddev.id==OX1963)LED_WR_REG(0X2E);//341/684/3510/1963發送讀cour指令
else if (lcddev.id==0X5510)LCD_wR_REG (OX2Eo0); //5510發送讀GRAw指令
else LCD_WR_REG(0X22);//其他Ic發送讀GRAv指令
if(lcddev.id==0X9320)opt_delay (2);//FOR 9320,延時2usr=LCD_RD_DATA();-l / dummy Read
if ( lcddev.id==0X1963) return r;//1963直接讀就可以
opt_delay (2);
r=LCD_RD_DATA( ) ;//實際坐標顏色
if (lcddev.id==0X9341||lcddev.id==OX5310||lcddev.id==OX5510)//9341/NT35310/NT35510要分2次讀出
{
opt_delay (2);
b=LCD_RD_DATA();
g=r&0XFF;//對于9341/5310/5510,第一次讀取的是Rc的值,R在前,c在后,各占8位
g<<=8 ;
if(lcddev.id==O0X9325||lcddev. id=O0X4535||lcddev .id==0X4531 ||lcddev .id==O0XB505]||lcddev.id==0XC505)return r;//這幾種rc直接回傳顏色值
else if(lcddev.id=0X9341||lcddev.id==0X5310||lcddev.id==0X5510)return ((r>>l)<<I1)|(g>>10)<<5)|(b>>11));//ILI3L1/NT35310/NT35510需要公式轉
else return LCD_BGR2RGB(r) ;//其他ic

字符顯示函式

void LcD_ShowChar(ul6 x,ul6 y,u8 num, u8 size,u8 mode)
{
   u8 temp,tl,t;
   ul6 yO=y;
   u8 csize=(size/8+((size巹8)?1:0))*(size/2);.//得到字體一個字符對應點陣集所占的字
   num=num-' ';//得到偏移后的值(AscII字庫是從空格開始取模,所以-·'就是對應字符的字庫)
   for (t=0;t<csize;t++)
   {
     if(size==l2)temp=asc2_1206[num][t];//呼叫1206字體
     else if(size==l6)temp=asc2_1608 [num][t];//呼叫1608字體
     else if(size==24)temp=asc2_2412[num][t]; //呼叫2412字體
     else return;
        //沒有的字庫
        for (tl=0;tl<8;tl++)
        {
        if (temp&0x80)LCD_Fast_DrawPoint (x,y,POINT_COLOR) ;
        else if (mode==0)LCD_Fast_DrawPoint (x,y,BACK_COLOR);
        temp<<=l;
        y++;
        if(y>=lcddev.height) return;//超區域
        if( (y-y0 )==size)
        {
        y=y0;x++;
        if(>=lcddev.width) return;//超區域
        break;
        }
        }
    }
}

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

標籤:其他

上一篇:STM32學習(10)-定時器描述,三種計數方式,定時器的作業框圖,定時器時鐘來源,定時器相關暫存器和函式,通用定時器實作定時的步驟

下一篇:STM32 Cubemax(八) ——利用HC-05實作兩個單片機之間的通信

標籤雲
其他(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