——來(lái)自迪文開(kāi)發(fā)者論壇
本期為大家推送迪文開(kāi)發(fā)者論壇獲獎(jiǎng)開(kāi)源案例——基于T5L智能屏的指紋識(shí)別解決方案。該方案通過(guò)智能屏串口進(jìn)行Modbus通訊,實(shí)現(xiàn)對(duì)指紋識(shí)別模塊的精準(zhǔn)控制,并集成了指紋錄入與識(shí)別功能。可用于門(mén)禁管理、員工考勤、智能門(mén)鎖等場(chǎng)景,為用戶帶來(lái)更為便捷、安全的交互體驗(yàn)。
UI素材展示
GUI工程設(shè)計(jì) C51工程設(shè)計(jì)
屏幕進(jìn)行modbus通訊的部分代碼如下:
int main(void){ INIT_CPU(); T2_Init(); UART4_Init(); EA=1;// UART4_SendStr("hello",sizeof("hello")); WDT_ON();//打開(kāi)開(kāi)門(mén)狗 while(1) { WDT_RST();//喂狗 Process(); }}void MainMachineHandle(void){ if(UartDataHandle) { uartHandle(Uart4_Rx,uart4_rx_count); CLR_UartMp3(); }}bool uartHandle(u8 *Tdata,u8 len){ u16Wlen=0; u16CRC_1=0,BegAddr=0; u8 xdata RetData[Uart4_Rx_Maxlen+10]; u8 errnum=0; CRC_1=CalcCrcAll(0xffff,Tdata,len-2); if(CRC_1!= ((Tdata[len-1])<<8 | (Tdata[len-2]))) returnfalse; //這個(gè)為寫(xiě)指令 if(Tdata[0]==0&& Tdata[1]!=0x06) { returnfalse; } elseif(Tdata[0]!=DevAddr) //設(shè)備地址 { returnfalse; } //這個(gè)為寫(xiě)指令 if(Tdata[1]!=0x03&& Tdata[1]!=0x06 && Tdata[1]!=0x10 ) { SendModbusAckErr(Tdata,1); returnfalse; } Wlen=(Tdata[4]<<8|Tdata[5]); //長(zhǎng)度 BegAddr=(Tdata[2]<<8|Tdata[3]); //開(kāi)始地址 if(Tdata[1]==0x06)//寫(xiě)內(nèi)存 { write_dgusii_vp(BegAddr,&Tdata[4],1); } elseif(Tdata[1]==0x10) { write_dgusii_vp(BegAddr,&Tdata[7],Wlen); } //讀操作響應(yīng) //[01][0x03][00][6B][00][02][CRC高][CRC低] if(Tdata[1]==0x03) { RetData[0]=Tdata[0]; RetData[1]=0x03; RetData[2]=Wlen*2; read_dgusii_vp(BegAddr,&RetData[3],Wlen); CRC_1=CalcCrcAll(0xFFFF,RetData,3+Wlen*2); RetData[Wlen*2+3]=CRC_1; RetData[Wlen*2+3+1]=CRC_1>>8; SendModbusAckOK(RetData,3+Wlen*2+2); } elseif(Tdata[1]==0x10) { memcpy(RetData,Tdata,6); CRC_1=CalcCrcAll(0xFFFF,(INT8U*)&RetData,6); RetData[6]=CRC_1; RetData[7]=CRC_1>>8; SendModbusAckOK(RetData,8); } elseif(Tdata[1]==0x06 && Tdata[0]) //當(dāng)?shù)刂反a為真,才應(yīng)答 { memcpy(RetData,Tdata,8); SendModbusAckOK(RetData,8); } returntrue;}
-
指紋識(shí)別
+關(guān)注
關(guān)注
43文章
1742瀏覽量
102231 -
開(kāi)源
+關(guān)注
關(guān)注
3文章
3309瀏覽量
42471 -
智能屏幕
+關(guān)注
關(guān)注
0文章
65瀏覽量
3323
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論