网站制作邯郸网址搜索

张小明 2025/12/23 16:54:55
网站制作邯郸,网址搜索,唐山网站建设托管,留言板 wordpress文章目录 0 前言1 主要功能2 硬件设计(原理图)3 核心软件设计4 实现效果5 最后 0 前言 #x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升#xff0c;传统的毕设题目缺少创新和亮点#xff0c;往往达不到毕业答辩的要求#xff0c;这两年不断有学弟学妹告诉…文章目录0 前言1 主要功能2 硬件设计(原理图)3 核心软件设计4 实现效果5 最后0 前言这两年开始毕业设计和毕业答辩的要求和难度不断提升传统的毕设题目缺少创新和亮点往往达不到毕业答辩的要求这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。为了大家能够顺利以及最少的精力通过毕设学长分享优质毕业设计项目今天要分享的是毕业设计 stm32人脸识别门禁系统(源码硬件论文)学长这里给一个题目综合评分(每项满分5分)难度系数3分工作量3分创新点4分项目分享:见文末!实物演示效果毕业设计 stm32人脸识别门禁系统 - 单片机 嵌入式 物联网1 主要功能本系统设计了一种由下位机的摄像头采集人脸图像数据再经过无线传输模块传输给上位机识别并且返回识别结果的人脸识别门禁系统可以实现人脸录入、人脸检测、人脸识别、人员访问响应策略。下位机部分主要由主控模块、摄像头模块、显示器、无线传输模块、模拟门禁模块组成下位机负责人脸图像的采集与发送并且根据上位机返回的识别结果执行相应的动作。上位机由一台基于Python操作环境的PC机组成成负责保存人脸图像、识别人脸并且返回识别结果。最新方案换成上位机识别下位机响应释放单片机性能消耗2 硬件设计(原理图)3 核心软件设计主程序流程系统软硬件配置好以后首先对系统进行初始化确定整个系统正常运行。打开人脸门禁当摄像头检测到人脸时会通过WIFI上传至上位机在上位机中再将采集到的人脸信息与本地已录入的人脸信息进行匹配在信息匹配完成后再将结果通过WIFI上传给单片机由单片机控制继电器模拟门禁的打开和关闭。上位机部分设计上位机需要实现的功能为与下位机建立TCP连接以接收下位机上传的人脸图像数据再利用人脸识别技术完成识别任务。本文选用了基于Python的OpenCV开源计算机视觉库、Dlib开源机器学习库、Numpy开源数值计算库、Pillow开源图像处理库、Pandas开源数据分析库进行上位机软件程序的设计篇幅有限不过多复述详细设计细节详细的设计分享在论文中。。。部分关键代码//#include usart.h#includedelay.h#includespi.h#includeusart.h#includestring.h#includeincludes.h#includeled.h#includeGUI.h#includePicture.h#includedht11.h#includeadc.h#includelight.h#includefont.h//LCD的画笔颜色和背景色u16 POINT_COLOR0x0000;//画笔颜色u16 BACK_COLOR0xFFFF;//背景色//管理LCD重要参数//_lcd_dev lcddev;//写寄存器函数//regval:寄存器值voidLCD_WR_REG(u16 regval){SPILCD_CS_RESET;//LCD_CS0SPILCD_RS_RESET;SPI_WriteByte(SPI2,regval0x00FF);SPILCD_CS_SET;//LCD_CS1}//写LCD数据//data:要写入的值voidLCD_WR_DATA(u16 data){SPILCD_CS_RESET;//LCD_CS0SPILCD_RS_SET;SPI_WriteByte(SPI2,data8);SPI_WriteByte(SPI2,data);SPILCD_CS_SET;//LCD_CS1}voidLCD_WR_DATA8(u8 da)//写8位数据{SPILCD_CS_RESET;//LCD_CS0SPILCD_RS_SET;SPI_WriteByte(SPI2,da);SPILCD_CS_SET;//LCD_CS1}//写寄存器//LCD_Reg:寄存器地址//LCD_RegValue:要写入的数据voidLCD_WR_REG_DATA(u8 LCD_Reg,u16 LCD_RegValue){LCD_WR_REG(LCD_Reg);LCD_WR_DATA(LCD_RegValue);}//开始写GRAMvoidLCD_WriteRAM_Prepare(void){LCD_WR_REG(0x2c);}//当mdk -O1时间优化时需要设置//延时i//设置光标位置//Xpos:横坐标//Ypos:纵坐标voidLCD_SetCursor(u16 Xpos,u16 Ypos){LCD_WR_REG(0x2a);LCD_WR_DATA8(Xpos8);LCD_WR_DATA8(Xpos0XFF);LCD_WR_REG(0x2b);LCD_WR_DATA8(Ypos8);LCD_WR_DATA8(Ypos0XFF);}/************************************************* 函数名LCD_Set_Region 功能设置lcd显示区域在此区域写点数据自动换行 入口参数xy起点和终点 返回值无 *************************************************/voidLcd_SetRegion(u16 x_start,u16 y_start,u16 x_end,u16 y_end){LCD_WR_REG(0x2a);LCD_WR_DATA8(x_start8);LCD_WR_DATA8(0x00FFx_start2);;LCD_WR_DATA8(x_end8);LCD_WR_DATA8(0x00FFx_end2);LCD_WR_REG(0x2b);LCD_WR_DATA8(y_start8);LCD_WR_DATA8(0x00FFy_start3);LCD_WR_DATA8(y_end8);LCD_WR_DATA8(0x00FFy_end3);LCD_WR_REG(0x2c);}//画点//x,y:坐标//POINT_COLOR:此点的颜色voidLCD_DrawPoint(u16 x,u16 y){LCD_SetCursor(x,y);//设置光标位置LCD_WriteRAM_Prepare();//开始写入GRAMLCD_WR_DATA(POINT_COLOR);}/************************************************* 函数名LCD_Set_XY 功能设置lcd显示起始点 入口参数xy坐标 返回值无 *************************************************/voidLcd_SetXY(u16 x,u16 y){Lcd_SetRegion(x,y,x,y);}/************************************************* 函数名LCD_DrawPoint 功能画一个点 入口参数无 返回值无 *************************************************/voidGui_DrawPoint(u16 x,u16 y,u16 Data){Lcd_SetRegion(x,y,x1,y1);LCD_WR_DATA(Data);}voidLcd_Reset(void){// LCD_RST_CLR;delay_ms(100);// LCD_RST_SET;delay_ms(50);}//初始化lcdvoidLCD_Init(void){Lcd_Reset();//LCD Init For 1.44Inch LCD Panel with ST7735R.LCD_WR_REG(0x11);//Sleep exitdelay_ms(120);//ST7735R Frame RateLCD_WR_REG(0xB1);LCD_WR_DATA8(0x01);LCD_WR_DATA8(0x2C);LCD_WR_DATA8(0x2D);LCD_WR_REG(0xB2);LCD_WR_DATA8(0x01);LCD_WR_DATA8(0x2C);LCD_WR_DATA8(0x2D);LCD_WR_REG(0xB3);LCD_WR_DATA8(0x01);LCD_WR_DATA8(0x2C);LCD_WR_DATA8(0x2D);LCD_WR_DATA8(0x01);LCD_WR_DATA8(0x2C);LCD_WR_DATA8(0x2D);LCD_WR_REG(0xB4);//Column inversionLCD_WR_DATA8(0x07);//ST7735R Power SequenceLCD_WR_REG(0xC0);LCD_WR_DATA8(0xA2);LCD_WR_DATA8(0x02);LCD_WR_DATA8(0x84);LCD_WR_REG(0xC1);LCD_WR_DATA8(0xC5);LCD_WR_REG(0xC2);LCD_WR_DATA8(0x0A);LCD_WR_DATA8(0x00);LCD_WR_REG(0xC3);LCD_WR_DATA8(0x8A);LCD_WR_DATA8(0x2A);LCD_WR_REG(0xC4);LCD_WR_DATA8(0x8A);LCD_WR_DATA8(0xEE);LCD_WR_REG(0xC5);//VCOMLCD_WR_DATA8(0x0E);LCD_WR_REG(0x36);//MX, MY, RGB modeLCD_WR_DATA8(0xC8);//ST7735R Gamma SequenceLCD_WR_REG(0xe0);LCD_WR_DATA8(0x0f);LCD_WR_DATA8(0x1a);LCD_WR_DATA8(0x0f);LCD_WR_DATA8(0x18);LCD_WR_DATA8(0x2f);LCD_WR_DATA8(0x28);LCD_WR_DATA8(0x20);LCD_WR_DATA8(0x22);LCD_WR_DATA8(0x1f);LCD_WR_DATA8(0x1b);LCD_WR_DATA8(0x23);LCD_WR_DATA8(0x37);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x07);LCD_WR_DATA8(0x02);LCD_WR_DATA8(0x10);LCD_WR_REG(0xe1);LCD_WR_DATA8(0x0f);LCD_WR_DATA8(0x1b);LCD_WR_DATA8(0x0f);LCD_WR_DATA8(0x17);LCD_WR_DATA8(0x33);LCD_WR_DATA8(0x2c);LCD_WR_DATA8(0x29);LCD_WR_DATA8(0x2e);LCD_WR_DATA8(0x30);LCD_WR_DATA8(0x30);LCD_WR_DATA8(0x39);LCD_WR_DATA8(0x3f);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x07);LCD_WR_DATA8(0x03);LCD_WR_DATA8(0x10);LCD_WR_REG(0x2a);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x7f);LCD_WR_REG(0x2b);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x00);LCD_WR_DATA8(0x9f);LCD_WR_REG(0xF0);//Enable test commandLCD_WR_DATA8(0x01);LCD_WR_REG(0xF6);//Disable ram power save modeLCD_WR_DATA8(0x00);LCD_WR_REG(0x3A);//65k modeLCD_WR_DATA8(0x05);LCD_WR_REG(0x29);//Display on}//清屏函数//color:要清屏的填充色voidLcd_Clear(u16 Color){unsignedinti,m;Lcd_SetRegion(0,0,X_MAX_PIXEL-1,Y_MAX_PIXEL-1);//Lcd_WriteIndex(0x2C);for(i0;iX_MAX_PIXEL;i){for(m0;mY_MAX_PIXEL;m){LCD_WR_DATA(Color);}}}//在指定区域内填充单个颜色//(sx,sy),(ex,ey):填充矩形对角坐标,区域大小为:(ex-sx1)*(ey-sy1)//color:要填充的颜色voidLCD_Fill(u16 sx,u16 sy,u16 ex,u16 ey,u16 color){u16 i,j;u16 xlen0;xlenex-sx1;for(isy;iey;i){LCD_SetCursor(sx,i);//设置光标位置LCD_WriteRAM_Prepare();//开始写入GRAMfor(j0;jxlen;j)LCD_WR_DATA(color);//设置光标位置}}//画线//x1,y1:起点坐标//x2,y2:终点坐标voidLCD_DrawLine(u16 x1,u16 y1,u16 x2,u16 y2){u16 t;intxerr0,yerr0,delta_x,delta_y,distance;intincx,incy,uRow,uCol;delta_xx2-x1;//计算坐标增量delta_yy2-y1;uRowx1;uColy1;if(delta_x0)incx1;//设置单步方向elseif(delta_x0)incx0;//垂直线else{incx-1;delta_x-delta_x;}if(delta_y0)incy1;elseif(delta_y0)incy0;//水平线else{incy-1;delta_y-delta_y;}if(delta_xdelta_y)distancedelta_x;//选取基本增量坐标轴elsedistancedelta_y;for(t0;tdistance1;t)//画线输出{LCD_DrawPoint(uRow,uCol);//画点xerrdelta_x;yerrdelta_y;if(xerrdistance){xerr-distance;uRowincx;}if(yerrdistance){yerr-distance;uColincy;}}}//画矩形//(x1,y1),(x2,y2):矩形的对角坐标voidLCD_DrawRectangle(u16 x1,u16 y1,u16 x2,u16 y2){LCD_DrawLine(x1,y1,x2,y1);LCD_DrawLine(x1,y1,x1,y2);LCD_DrawLine(x1,y2,x2,y2);LCD_DrawLine(x2,y1,x2,y2);}//在指定位置显示一个汉字(16*16大小)voidshowhanzi16(unsignedintx,unsignedinty,unsignedcharindex){unsignedchari,j,k;constunsignedchar*temphanzi16;tempindex*32;for(j0;j16;j){LCD_SetCursor(x,yj);LCD_WriteRAM_Prepare();//开始写入GRAMfor(k0;k2;k){for(i0;i8;i){if((*temp(1i))!0){LCD_WR_DATA(POINT_COLOR);}else{LCD_WR_DATA(BACK_COLOR);}}temp;}}}voidLCD_Fast_DrawPoint(u16 x,u16 y,u16 color){//Lcd_SetRegion(x,y,x,y);LCD_SetCursor(x,y);//设置光标位置LCD_WriteRAM_Prepare();//开始写入GRAMLCD_WR_DATA(color);}//在指定位置显示一个字符//x,y:起始坐标//num:要显示的字符: ---~//size:字体大小 12/16//mode:叠加方式(1)还是非叠加方式(0)voidLCD_ShowChar(u16 x,u16 y,u8 num,u8 size,u8 mode){u8 temp,t1,t;u16 y0y;u16 colortempPOINT_COLOR;//设置窗口numnum- ;//得到偏移后的值if(!mode)//非叠加方式{for(t0;tsize;t){if(size12)tempasc2_1206[num][t];//调用1206字体elsetempasc2_1608[num][t];//调用1608字体for(t10;t18;t1){if(temp0x80)POINT_COLORcolortemp;elsePOINT_COLORBACK_COLOR;LCD_DrawPoint(x,y);temp1;y;if(yY_MAX_PIXEL){POINT_COLORcolortemp;return;}//超区域了if((y-y0)size){yy0;x;if(xX_MAX_PIXEL){POINT_COLORcolortemp;return;}//超区域了break;}}}}else//叠加方式{for(t0;tsize;t){if(size12)tempasc2_1206[num][t];//调用1206字体elsetempasc2_1608[num][t];//调用1608字体for(t10;t18;t1){if(temp0x80)LCD_DrawPoint(x,y);temp1;y;if(yY_MAX_PIXEL){POINT_COLORcolortemp;return;}//超区域了if((y-y0)size){yy0;x;if(xX_MAX_PIXEL){POINT_COLORcolortemp;return;}//超区域了break;}}}}POINT_COLORcolortemp;}//m^n函数//返回值:m^n次方.u32LCD_Pow(u8 m,u8 n){u32 result1;while(n--)result*m;returnresult;}//显示数字,高位为0,则不显示//x,y :起点坐标//len :数字的位数//size:字体大小//color:颜色//num:数值(0~4294967295);voidLCD_ShowNum(u16 x,u16 y,u32 num,u8 len,u8 size){u8 t,temp;u8 enshow0;for(t0;tlen;t){temp(num/LCD_Pow(10,len-t-1))%10;if(enshow0t(len-1)){if(temp0){LCD_ShowChar(x(size/2)*t,y, ,size,0);continue;}elseenshow1;}LCD_ShowChar(x(size/2)*t,y,temp0,size,0);}}//显示字符串//x,y:起点坐标//width,height:区域大小//size:字体大小//*p:字符串起始地址voidLCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8*p){u8 x0x;widthx;heighty;while((*p~)(*p ))//判断是不是非法字符!{if(xwidth){xx0;ysize;}if(yheight)break;//退出LCD_ShowChar(x,y,*p,size,1);xsize/2;p;}}char*Name_data;volatileuint8_tnow_Count0;voidLoad_Drow_Dialog(void){Lcd_Clear(WHITE);//清屏POINT_COLORBLUE;//设置字体为蓝色LCD_ShowString(X_MAX_PIXEL-24,0,200,16,16,RST);//显示清屏区域POINT_COLORRED;//设置画笔蓝色}voidxianshi(void)//显示信息{Lcd_Clear(WHITE);//清屏POINT_COLORBLUE;//设置字体为蓝色BACK_COLORWHITE;// LCD_ShowString(20,20,240,12,12,q746876041);showhanzi16(5,24,13);//showhanzi16(25,24,14);//showhanzi16(45,24,15);//showhanzi16(65,24,16);//showhanzi16(85,24,17);//showhanzi16(105,24,18);//}4 实现效果实物演示效果毕业设计 stm32人脸识别门禁系统 - 单片机 嵌入式 物联网5 最后包含内容配套详细论文项目分享:见文末!
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

984网站建设项目香蜜湖附近网站建设

终极指南:如何快速掌握UMA机器学习势函数进行催化材料计算 【免费下载链接】ocp Open Catalyst Projects library of machine learning methods for catalysis 项目地址: https://gitcode.com/GitHub_Trending/oc/ocp 在计算化学和材料科学领域,…

张小明 2025/12/22 14:45:15 网站建设

腾讯云服务器优惠湖南seo优化

你是否曾经发现电脑运行速度变慢,系统资源被莫名其妙地占用?很多时候,这都源于微软OneDrive在后台悄无声息地运行。作为Windows 10深度集成的云存储服务,OneDrive往往成为系统性能的潜在影响因素。今天,我将为你介绍一…

张小明 2025/12/22 14:43:14 网站建设

中国网站建设中心龙岗网站建设流程

📝 博客主页:Jax的CSDN主页 目录AI医生的逆袭之路:从“智障”到“神助攻” 一、AI医生的“成长日记”:从背锅侠到救场王 二、当AI遇上“看病难”:那些改变游戏规则的瞬间 三、AI医生的“人格分裂”:既要靠谱…

张小明 2025/12/23 14:45:04 网站建设

专业做网站排名公司电话安徽建设工程信息网查询

文章目录前言1. 安装Docker2. 本地部署HivisionIDPhotos3. 公网远程访问制作照片3.1 内网穿透工具安装3.2 创建远程连接公网地址4. 配置固定公网地址前言 HivisionIDPhotos 是一款 AI 证件照制作工具,能自动抠图、调整尺寸和背景,生成符合各种规格的证件…

张小明 2025/12/23 15:43:03 网站建设

重庆做网站做网站用的主机

前言 本个人理财系统管理员功能有个人中心,用户管理,账单类型管理。用户功能有个人中心,收入账单管理,支出账单管理,理财计划管理,统计分析管理,备忘录管理等。因而具有一定的实用性。 本站是一…

张小明 2025/12/22 14:39:10 网站建设

做网站要注意什么电子商务网站建设作业代码

AI Agent是将大模型与工具、记忆、执行系统结合的智能体,具有自主决策、持续学习、多模态交互、工具集成和多智能体协作五大特征。其技术架构包含感知、决策、执行、记忆和反馈优化六大模块。AI Agent改变了从"告诉机器怎么做"到"告诉机器想要什么&q…

张小明 2025/12/22 14:38:09 网站建设