本帖最后由 Litthins 于 2021-1-23 16:58 编辑
物趣系列第二弹! LPC55S69之②:本地超声雾化器控制
第二弹的目标是实现一款基于Web控制的超声雾化器(北方的冬天真干燥!)。 第一步,LPC55S69-EVK适配L610模块实现4G联网,使用HTTP协议POST方法上传数据至服务器。 第二步,LPC55S69-EVK搭配光耦实现本地超声雾化器控制。本贴! 第三步,LPC55S69-EVK获取温度湿度数据上传云端,网页远程显示温湿度波形,控制雾化器开关。 今天为大家带来超声雾化器的本地控制篇,主角依旧是LPC55S69-EVK,快来看看有什么惊喜吧! 老规矩了,先上个合照,如图。垫了个烙铁海绵,老实说,这个雾化的量,我觉得蛮惊人的。 本来想找店家买上电自动运行的雾化器驱动,没货了,给我推荐了按键定时的。这样原本的继电器方案就不太方便了。好在我手边还有一些光耦,把按键和光耦结合了下,成功把控制功能引了出来。光耦控制端由LPC55S69-EVK担当,按键中断功能是主要部分。EVK上配有独立USER按键,可以很好地和用户交互,通过中断触发,可以简单实现本地超声雾化器的开关控制。 首先需要查找USER按键的引脚定义。请出老朋友LPCXpresso55S69_Board_Schematic_RevA2.PDF文件,这里我直接上图。 不错,PIO1_9,拿着这个定义,就可以去IDE里配置中断了。由于新建工程时没有添加PINT驱动,需要先添加驱动进来。 这里介绍直接在已有工程中添加驱动的方法! 首先在工作空间中选中目标工程,鼠标右键,选择SDK Management->Manage SDK Components。 在弹出的窗口中,左上方选择Drivers->pint,右侧summary里,Driver明细可以查看现有配置。确认后点击确定。 其后进入配置工具,搜索PIO1_9,设置为中断功能。再进入外设配置界面,左侧点击Peripheral drivers,添加PINT。考虑按键硬件电路,设定为下降沿触发,填写回调函数名称。 配置工具会在peripherals.h中生成函数原型,位置大概在50行左右。注意有extern关键字,如此一来,可以方便地将函数实现放在需要的地方。这里我添加一个全局变量,设置每进入一次中断,翻转变量值,主函数通过轮询方式查询该变量,控制光耦输入端电平翻转,进而实现对超声雾化器的控制。 实现函数后,尝试编译,系统报错:fsl_inputmux.h: No such file or directory。该错误因未添加inputmux驱动导致,再次进入SDK Management,添加inputmux驱动,重新编译即可通过。 作战成功! 提前放出网页端,正在紧张调试中。请期待下回大更新,LPC55S69-EVK获取温度湿度数据上传云端,网页远程显示温湿度波形,控制雾化器开关。谢谢大家!
上动图展示:
|