当前位置: 首页 > wzjs >正文

c 网站开发需要学什么百度移动端模拟点击排名

c 网站开发需要学什么,百度移动端模拟点击排名,美国做南京做网站,网站系统类型一、项目简介 使用STM32F103C8T6、舵机、继电器、加热片、蜂鸣器、两个按键、LCD及DHT11传感器等硬件。进一步,结合FreeRTOS和状态机等软件实现了一个微波炉系统;实现的功能包含:人机交互、时间及功率设置、异常情况处理及固件升级等。 二、…

一、项目简介

        使用STM32F103C8T6、舵机、继电器、加热片、蜂鸣器、两个按键、LCD及DHT11传感器等硬件。进一步,结合FreeRTOS和状态机等软件实现了一个微波炉系统;实现的功能包含:人机交互、时间及功率设置、异常情况处理及固件升级等。

二、功能需求

     (一)、初始状态
        1、当STM32初始化后,LCD显示LCD屏幕显示欢迎界面(例如“Microwave Demo V1.1”),持续2秒后进入待机模式;
        2、LED状态:腔体内部LED灯常亮(模拟门未关闭时的照明);
        3、舵机状态:SG90舵机处于“开门”位置(角度0°,门锁未闭合)。
    (二)、用户操作流程
        1、用户手动关闭门,第一次按下按键KEY1关门,舵机旋转90°代表关闭,此时LED灯灭;
        2、LCD显示默认时间和加热功率挡位:倒计时为0s;功率挡位为Medium;
        3、用户短按KEY2开始设置倒计时,此时LCD打印“time setting”,然后通过再次短按
        KEY2循环切换倒计时打印在LCD屏幕上,短按一次加20s,最大为60s;设置好时间后长按              KEY2切换功率设置,此时LCD打印“Power setting”,然后通过短按KEY2循环切换加热挡位           打印在LCD屏上(low/medium/high可选择),之后继续长按KEY2,又切换到“time setting”。
        4、选择好时间及挡位后启动加热:
            (1)长按KEY1启动加热,此时PWM开始控制加热片;
            (2)转盘(用360°sg90舵机模拟)以恒定速度旋转;
            (3)蜂鸣器短鸣两声“滴滴”代表开始运行;
            (4)倒计时启动打印在LCD上;
            (5)用DHT11实时显示温度在LCD上;
            (6)LCD显示状态“Heating”表示正在加热。
        5、加热完成
            (1)倒计时归零,PTC加热片断电;
            (2)转盘停止旋转;
            (3)蜂鸣器短鸣三声“滴滴滴”代表结束;
            (4)打印时间及温度在LCD上;
            (5)打印“completed”状态在LCD上。
        6、当第5步加热完成之后,门自动打开,此时LED灯亮;LCD显示默认时间设置及挡位设置。
    (三)、异常情况处理流程
        1、加热过程中断情况:
            (1)当加热过程中,用户按下KEY1开门,此时加热片断电,转盘停止,LED灯亮起;
            (2)倒计时暂停在LCD屏上,并且显示“Heating stopped!”;
        2、恢复加热:
            (1)用户按下KEY1关闭门,LED灯熄灭,需再次长按KEY1才能启动加热操作并且继续倒计时。
        3、温度过高:
            (1)DHT11监测温度超过设定阈值,此时加热片断电,转盘停止,LED灯亮起,门自动打开;
            (2)蜂鸣器短鸣四声“滴滴滴滴”;
            (3)LCD打印“Heating stopped!”。
        4、门未关闭时启动:
            (1)蜂鸣器短鸣一声,加热片和转盘不工作;
            (2)LCD屏打印“Close door first”。
    (四)、固件更新功能
        (1)通过串口加DMA接收APP升级程序;
        (2)编写Bootloader任务,将APP程序从RAM写到Flash上;
        (3)设置SP及PC寄存器,重定向中断向量表;
        (4)跳转到APP程序执行。

三、软件架构

四、硬件接线图

五、硬件设计

1、180°舵机驱动

        舵机的控制通常要求约20ms的参考脉冲,其高电平区间通常为0.5-2.5毫秒,其总间距为2ms。而1.5ms转90度,因此也就是需要百分之五的占空比转90度,其舵机转动角度与脉冲宽度关系如图所示:

2、360°舵机驱动

        

        其他硬件比较简单,不再过多叙述。

六、软件设计

        设计亮点如下:

        (1)使用面向对象思想编写BSP,方便移植以及维护,使用户仅关心接口而无需在意底层实现细节。

        (2)使用状态机来实现两个按键的多功能切换需求。

        (3)移植FreeRTOS源码并进行内核裁剪以适应STM32F103C8T6单片机。

        (4)使用二值信号量完成多任务之间同步与通信。

        (5)使用串口加DMA接收APP程序,减轻CPU负担。

        (6)编写Bootloader任务,跳转到APP程序后实现固件升级。

        (7)编写按键检测算法来识别长按/短按。

七、源代码

        以下仅展示内核裁剪的程序,完整源程序请查看笔者其他帖子进行获取

八、调试记录

   1、程序下载进去时发生HardFault,调试一看是进入定时器中断了,说明TIM_Cmd(TIM2,DISABLE)函数不能关闭中断,仅能将定时器的计数器关闭,只能关闭中断自动触发功能,但未完全关闭中断,需要调用TIM_ITConfig(TIM2,TIM_IT_Update,DISABLE)函数才能完全关闭掉。重新启用时也需要再次调用该函数打开中断。
    2、当倒计时归零正常结束烹饪时,此时门会自动弹开,但是如果你现在再次短按KEY1,不会发生关门响应,这是因为没有对门状态复位。
    3、由于我使用了TIM2的中断以及两路PWM,但是我设置TIM2中断频率与TIM2的PWM频率不一致,这导致PWM无法工作,造成冲突;因此,将TIM2中断换成TIM4中断,问题解决!
 

九、实物演示

IAP

基于FreeRTOS的微波炉

http://www.dtcms.com/wzjs/67104.html

相关文章:

  • 做伦理电影网站搜索 引擎优化
  • 开发者门户网站是什么意思网络推广的方法你知道几个?
  • 芜湖公司网站建设电商网站开发
  • 什么事三合一网站上海最大的seo公司
  • 易企秀网站怎么做轮播图沈阳seo优化排名公司
  • 商城类网站用什么做平台优化
  • 电子商务网站建设收益举例关键词自动生成器
  • 做a视频网站有哪些推销广告
  • 站酷网页版南宁百度关键词排名公司
  • 泊头网站建设360网站收录提交入口
  • 厦门 网站建设闽icpseo的排名机制
  • 电子商务网站建设与规划免费的舆情网站
  • 兰州网站seo技术厂家100个关键词
  • 建网站设南昌seo排名外包
  • 电子商务网站建设的总体设计手机网站排名优化软件
  • 在网站上做的图表怎么放到PPT里面河北seo技术交流
  • 网站建设定制开发服务精准数据营销方案
  • 网站建设 怎么跑业务一键优化软件
  • 企业网站管理系统 免费怎么做网站排名
  • 个体工商户是否能够做网站百度竞价推广教程
  • wordpress的rest api优化公司网站排名
  • 广东十大网站建设排名谷歌推广培训
  • 民治做网站希爱力5mg效果真实经历
  • 网站后台怎么做友情链接如何做好seo优化
  • windows网站建设教程视频教程中国疾控卫生应急服装
  • 桦甸市城乡建设局网站商品关键词怎么优化
  • 企业文化培训心得体会石家庄关键词优化软件
  • 百度公司做网站可靠吗网络营销的几种模式
  • 织梦网站防黑怎么做网络营销策略的概念
  • 为什么wordpress在ie打开很慢百度网站优化软件