資源簡介
arm板上的C++程序 通過串口控制指紋模塊
代碼片段和文件信息
/*
?*
?*?*/
#include?“FCApp.h“
void?*pthreadWorker(FCApp?*handler){
????int?re?=?handler->pthreadWorker_Fun();
????return?((void?*)re);
}
TaskInfo::TaskInfo(TaskName?inchar?*Params[]const?int?len){
????m_task?=?in;
????m_valid?=?true;
????switch(m_task){
????case?REG_START:
????case?REG_SECOND:
????case?REG_END:
????????if(len?!=?3){
????????????m_valid?=?false;
????????????return;
????????}
????????m_Params[“index“]???=?Params[0];
????????m_Params[“userID“]??=?Params[1];
????????m_Params[“userMod“]?=?Params[2];
????????break;
????case?REG_DELETE:
????case?VERIFY:
????????if(len?!=?1){
????????????m_valid?=?false;
????????????return;
????????}
????????m_Params[“userID“]??=?Params[0];
????????break;
????case?GET_USER_SUM:
????case?REG_ALLDEL:
????case?IDENTIFY:
????????if(len?!=?0){
????????????m_valid?=?false;
????????????return;
????????}
????????break;
????default:
????????m_valid?=?false;
????????return;
????};
}
FCApp::FCApp(){
????m_loger?=?NULL;
????m_processer?=?NULL;
????worker_thread?=?0;
????f_giveup?=?false;
????MainframeStr?=
????????????“=============================\n“
????????????“1.?串口設置\n“
????????????“2.?讀取用戶總數\n“
????????????“3.?錄入指紋\n“
????????????“4.?刪除指定用戶信息\n“
????????????“5.?刪除所有用戶信息\n“
????????????“6.?1:1對比\n“
????????????“7.?1:n對比\n“
????????????“quit.?退出\n“
????????????“=============================“;
????SetCommframeStr?=
????????????“=============================\n“
????????????“--配置端口--\n“
????????????“請輸入串口配置格式:\n“
????????????“端口:波特率\n“
????????????“return?返回上級\n“
????????????“當前配置為:“;
????addUserframeStr?=
????????????“=============================\n“
????????????“--注冊用戶--\n“
????????????“請輸入用戶ID號和權限(1/2/3)格式如:\n“
????????????“用戶號權限\n“
????????????“return?返回上級\n?“
????????????“=============================“;
????delUserframeStr?=
????????????“=============================\n“
????????????“--刪除指定用戶--\n“
????????????“請輸入用戶ID號\n“
????????????“return?返回上級?\n“
????????????“=============================“;
????VERIFYframeStr?=
????????????“=============================\n“
????????????“--1:1比對--\n“
????????????“請輸入用戶ID號\n“
????????????“return?返回上級?\n“
????????????“=============================“;
}
FCApp::~FCApp(){
????if(m_processer)
????????delete?m_processer;
????if(m_loger)
????????delete?m_loger;
}
bool?FCApp::initApp(){
????m_loger?=?new?Loger();
????if(!m_loger){
????????return?false;
????}
????m_processer?=?new?M61_Processer(m_loger?this);
????if(!m_processer){
????????m_loger->LogDebug(“create?M61_Processer?error“);
????????return?false;
????}
????int?err?=?pthread_cond_init(&hasTask_cond?NULL);
????if(err?!=?0){
????????m_loger->LogDebug(“init?hasTask_cond?error“);
????????return?false;
????}
????err?=?pthread_mutex_init(&isDoingTask_mutex?NULL);
????if(err?!=?0){
????????m_loger->LogDebug(“init?isDoingTask_mutex?error“);
????????return?false;
????}
????err?=?pthread_mutex_init(&f_giveup_mutex?NULL);
????if(err?!=?0){
????????m_loger->LogDebug(“init?f_giveup_mutex?error“);
????????return?fals
- 上一篇:數據結構 排序綜合c++
- 下一篇:MFC和CLIPS交互例程
評論
共有 條評論