• 基于STM32倒车雷达系统(OLED显示)(Proteus仿真+程序+设计报告)


    编号:25

    基于STM32倒车雷达系统(OLED显示)

    功能描述:

          本设计由STM32单片机+HC_SR04超声波模块+OLED+按键+蜂鸣器LED组成。
    1、采用STM32F103最小系统。
    2、HC_SR04超声波模块实现测距。测距范围2cm-400cm之间。
    3、OLED实时显示测到的距离。
    4、三个按键可实现上限报警值设定,按键分别为设置键、设置加、设置减。
    5、当测得距离小于上限值时,声光报警。

    PROTEUS 8.11版本才可使用

    视频演示链接:

    25、基于STM32倒车雷达系统(OLED显示)

    仿真图:

    程序源码:

    1. /***********************************************
    2. ***********************************************/
    3. #include "delay.h"
    4. #include "key.h"
    5. #include "led.h"
    6. #include "timer.h"
    7. #include "OLED_I2C.h"
    8. #include "HCSR04.h"
    9. #include "stdio.h"
    10. #include "stdlib.h"
    11. short Dis_up = 10; //距离上限 默认100cm
    12. extern u32 cnt ;
    13. int main(void)
    14. {
    15. unsigned int distance = 0; //距离
    16. unsigned char buf[18];
    17. NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置中断优先级分组为组2:2位抢占优先级,2位响应优先级
    18. LED_Init();
    19. OLED_Init(); //OLED初始化操作
    20. OLED_CLS(); //OLED清除屏幕
    21. TIM3_Int_Init(499,7199); //10Khz的计数频率,计数到500为50ms
    22. HCSR04_Init(); //以1Mhz的频率计数
    23. KEY_Init(); //初始化端口
    24. sprintf((char *)buf,"DisH:%3dcm",Dis_up);
    25. OLED_ShowStr(16*0,2,buf,2);
    26. while(1)
    27. {
    28. if(flag_timer==1) //200毫秒赋一次值 flag_timer是标志位
    29. {
    30. flag_timer = 0; //清除标志 等待下一次600ms
    31. if(HCSR04_Count(&distance)==0) //测距 将距离值传递给distance
    32. {
    33. sprintf((char *)buf,(const char *)"Distance:%3dcm",distance);
    34. OLED_ShowStr(16*0,0,buf,2);
    35. if(distance//当前距离小于上限
    36. {
    37. flag_beep = 1; //开报警标志 执行报警程序在定时器中断
    38. }
    39. else
    40. {
    41. flag_beep = 0; //关报警标志位
    42. }
    43. }
    44. else
    45. {
    46. flag_beep = 0; //关报警标志位
    47. sprintf((char *)buf,(const char *)"Distance:---cm");
    48. OLED_ShowStr(16*0,0,buf,2);
    49. }
    50. }
    51. KEY_Set();
    52. }
    53. }

    软件免费下载地址:

    1、Proteus仿真软件
    文件内容:Proteus7.8安装包、Proteus8.6安装包、Proteus.8.10安装包、Proteus Professional 8.11 SP0安装包

    链接:https://pan.baidu.com/s/11LNUZ9BJXWvXf1C4dPc3_w 
    提取码:2756 


    3、KEIL5 MDK软件(STM32开发软件)
    链接:https://pan.baidu.com/s/1t3eY-3yRdTa7jZMlijq_jg 

    提取码:ab58 

    文件下载:

  • 相关阅读:
    【附源码】Python计算机毕业设计社区物品交易系统
    什么是活动目录(Active Directory)
    ClickHouse查询语句详解
    房产网源码 房产中介小程序源码 房产门户网站源码
    python作业
    【菜菜的sklearn课堂笔记】支持向量机-关于predict_proba、decision_function
    mathtype在word内的简单使用
    windows 10中R的环境变量配置
    【JS】Chapter12-作用域&解构&箭头函数
    IT企业做ISO20000 服务管理体系的好处
  • 原文地址:https://blog.csdn.net/bxy415655001/article/details/128158488