打印
[N32G45x]

基于N32G457的安防门禁系统

[复制链接]
700|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
wuboy19|  楼主 | 2022-2-26 16:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
[url=home.php?mod=space&uid=760190]@21小跑堂 #申请原创#[/url]
安防门禁系统,显示温湿度信息和人体温信息在显示屏和上位机上,上位机和显示屏能够独立控制门的打开和关闭,当体温异常时候蜂鸣器报警,能够通过上位机或者显示屏设置人体温度阈值,保证人员进出安全。
N32G437 这块芯片是我寒假时候拿到的,该芯片能够支持RT-Thread开发和keil开发,因为我自己本人对于stm32开发比较熟练,就尝试使用keil开发,前期碰到的问题是keil无法导入芯片包,我当时的keil版本是5.18,经过查阅和群友帮助后,我下载5.36后就可以正常开发,由于我是比较擅长裸机开发但是我后期会去尝试使用RT-Thread开发,我自己本人也在学习freertos,操作系统是以后开发所必备的,我开始看到N32G457时候看到工作主频最高是144Mhz,然后在移植过程中我看到它的数据手册,看到它的APB1APB2stm32的最高频率一样的,库函数比较类似,然后我也比较擅长使用库函数进行开发,我感觉n32的库函数大致和stm32的库函数基本类似,可能名字有一些改变,然后我就分别把我在stm32每个自己写好的模块给移植过来,移植过程中也碰到了很多坑,比如systick定时器的移植,因为需要严格延时,虽然我自己也写了软件延时函数,然后从国名技术给的资料里面提取出来,将它封装成一个模块,我整个系统用到的有:TIM3用定时器比较输出20ms周期的pwm波,对其进行占空比设置来通过舵机实现开关门,然后我通过使用TIM6基本定时的定时器更新中断来处理温湿度和人体数据的读取,然后三个串口分别用来调试、屏幕通信、wifi通信等等。
对于控制舵机转多少角度,我比较推荐的是写一个串口程序能够控制TIM_SetCmp1函数设置的值,我的GENERAL_TIM_Init(1999,719);//arr,psc 然后我自己测试的时候17501850正好相差90度,然后我是使用的180度的mg90舵机,最后就是我是给舵机单独供电,最后舵机和板子共地就行。
对于温湿度的获取:我使用的是dht11,大家如果想精度更高一些,可以使用sht11
DHT11有三个引脚,供电3.3v5v都行,DATA 用于微处理器与 DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:
一次完整的数据传输为40bit,高位先出。
数据格式:
8bit湿度整数数据+8bit湿度小数数据
+8bi温度整数数据+8bit温度小数数据
+8bit校验和
数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据所得结果的末8位。
用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。然后控制时间这部分我使用的是滴答定时器严格延时。
对于测人体温度我使用的mlx90614,网上还挺贵的,如果要精度搞一些的话,然后mlx90614的数据读取方式有两种,我是选择的iic读取,我之前stm32是用的模拟iic读取的,我移植后也是模拟iic读取,具体读取过程我就不过多赘述了。
串口的话我是用到两个中断,一个接收中断,一个接收帧中断,我自己当时stm32时候就写了一个串口接收任意数据长度,最理想情况是使用dma,但是我当时就解决了串口dma发送,没有实现串口dma接收,所以以后可能会实现,比较dma会更快。
最后就谈到使用这个板子,我感觉用起来很顺手,首先它的dap下载和串口整合在一起,使用起来很方便,国产芯片的崛起,以后做东西我们会使用国名技术的板子,现在stm32也很贵,就没有使用的,而且n32g457这个芯片的最高主频可以达到144mhz,最后很感谢国民技术的支持,提供的资料,我可能会因为某一个问题可能会调试很久,但是这种经验是慢慢累积起来的,可能发现问题就是一个简单问题,碰到问题不要放弃,总会找到解决方法,然后最好是每个模块一个个调通后再进行整合,出问题时候,先一个个排除哪个问题,比如温度显示不正确,我先 串口打印看串口数据是否是我想要的,如果是正常,在通过wifi给上位机发送看对不对,做东西需要有耐心,加油,视频和图片如下,

           

因为视频上传不了,我就上传了b站:https://www.bilibili.com/video/BV14L411T7A5/

使用特权

评论回复
沙发
powerantone| | 2022-3-2 10:12 | 只看该作者
当前疫情形势下的必须必需品,就是不知道测温准确率到底怎么样

使用特权

评论回复
板凳
wuboy19|  楼主 | 2022-3-7 18:57 | 只看该作者
powerantone 发表于 2022-3-2 10:12
当前疫情形势下的必须必需品,就是不知道测温准确率到底怎么样

提高准确率可以通过与环境温度的关系,或者加一个中值算法

使用特权

评论回复
地板
huquanz711| | 2022-3-7 20:30 | 只看该作者
人体红外测温

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

16

帖子

0

粉丝