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

网站不允许上传文件哪里有专业做网站的

网站不允许上传文件,哪里有专业做网站的,jsp ajax网站开发典型实例,wordpress html5音乐播放器资料下载地址:stm32温湿度-超声波-LCD1602结合项目(Proteus仿真程序) 程序实现功能: 程序基于stm32芯片实现了控制LED灯亮灭、按键控制、串口通信、电机控制、温湿度数据采集、超声波测距、LCD显示屏显示内容这几个功能,并用proteus8进行仿…

资料下载地址:stm32温湿度-超声波-LCD1602结合项目(Proteus仿真程序) 

程序实现功能:
程序基于stm32芯片实现了控制LED灯亮灭、按键控制、串口通信、电机控制、温湿度数据采集、超声波测距、LCD显示屏显示内容这几个功能,并用proteus8进行仿真。
1.电路图
1、我设计的电路图如下所示:

仿真原理图如下

2. 程序功能介绍
程序总共包括控制LED灯亮灭、按键控制、串口通信、电机控制、温湿度数据采集、超声波测距、LCD显示屏显示内容这几个功能,以下是这些功能的介绍:
2.1. LED灯亮灭与按键控制
程序默认运行时,两个LED灯会被点亮。当按下按钮后,两个LED灯会闪烁。

2.2. 串口通信
程序运行时,虚拟终端接串口通信用到的接收端和发送端,通过配置波特率、传输的奇偶校验位、停止位、字长以及重定向,将printf函数打印的内容打印到虚拟终端上。
2.3. 电机的控制
通过L298芯片,改变功率,来控制电机的转动。

2.4. 温湿度数据采集
用DHT11温湿度传感器来采集温湿度信息。
通过了解DHT11的工作时序,设计好对应的延时函数,进行数据采集,同时通过循环将每次采集的数据打印在虚拟终端上。
2.5. 超声波测距
通过超声波测距模块来进行测距。
通过了解超声波测距模块的时序,利用定时器,采集测到的距离,并且通过循环打印在虚拟终端上。
2.6. LCD液晶显示器显示数据
客户端可以通过发送“database”字符串进入到数据库的相关服务,在选择相应功能执行。如下图所示:
通过了解LM16016l中各引脚功能,相关控制指令以及写时序和读时序,在程序运行时,在显示屏上打印“hello”。
3.具体代码如下:
* 文件名  : UltrasonicWave.c
* 描述    :超声波测距模块,UltrasonicWave_Configuration()函数
             初始化超声模块,UltrasonicWave_StartMeasure()函数
                         启动测距,并将测得的数据通过串口1打印出来         
* 实验平台:野火STM32开发板
* 硬件连接:------------------
*          | PC8  - TRIG      |
*          | PC9  - ECHO      |
*           ------------------
* 库版本  :ST3.5.0
UltrasonicWave.H
  1. #ifndef __UltrasonicWave_H
  2. #define        __UltrasonicWave_H
  3. void UltrasonicWave_Configuration(void);               //对超声波模块初始化
  4. void UltrasonicWave_StartMeasure(void);                //开始测距,发送一个>10us的脉冲,然后测量返回的高电平时间
  5. #endif /* __UltrasonicWave_H */
复制代码

UltrasonicWave.c
*********************************************************************************/
#include "./Wave/UltrasonicWave.h"
#include "./usart/bsp_usart.h"
#include "./Tim2/TIM2.h"

#define        TRIG_PORT      GPIOC                //TRIG      
#define        ECHO_PORT      GPIOC                //ECHO
#define        TRIG_PIN       GPIO_Pin_8   //TRIG      
#define        ECHO_PIN       GPIO_Pin_9        //ECHO   

unsigned short int UltrasonicWave_Distance;      //计算出的距离   

/*
* 函数名:DelayTime_us
* 描述  :1us延时函数
* 输入  :Time           延时的时间 US
* 输出  :无        
*/
void DelayTime_us(int Time)   
{
   unsigned char i;
   for ( ; Time>0; Time--)
     for ( i = 0; i < 72; i++ );
}

/*
* 函数名:UltrasonicWave_Configuration
* 描述  :超声波模块的初始化
* 输入  :无
* 输出  :无        
*/
void UltrasonicWave_Configuration(void)
{
  GPIO_InitTypeDef GPIO_InitStructure;        
                 
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
   
  GPIO_InitStructure.GPIO_Pin = TRIG_PIN;                                         //PC8接TRIG
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;                     //设为推挽输出模式
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 
  GPIO_Init(TRIG_PORT, &GPIO_InitStructure);                         //初始化外设GPIO

  GPIO_InitStructure.GPIO_Pin = ECHO_PIN;                                     //PC9接ECH0
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;                 //设为输入
  GPIO_Init(ECHO_PORT,&GPIO_InitStructure);                                                 //初始化GPIOA
}

/*
* 函数名:UltrasonicWave_CalculateTime
* 描述  :计算距离
* 输入  :无
* 输出  :无        
*/
void UltrasonicWave_CalculateTime(void)
{
   UltrasonicWave_Distance=TIM_GetCounter(TIM2)*5*34/2000;
}

/*
* 函数名:UltrasonicWave_StartMeasure
* 描述  :开始测距,发送一个>10us的脉冲,然后测量返回的高电平时间
* 输入  :无
* 输出  :无        
*/
void UltrasonicWave_StartMeasure(void)
{
  GPIO_SetBits(TRIG_PORT,TRIG_PIN);                   //送>10US的高电平
  DelayTime_us(20);                                      //延时20US
  GPIO_ResetBits(TRIG_PORT,TRIG_PIN);
  
  while(!GPIO_ReadInputDataBit(ECHO_PORT,ECHO_PIN));                     //等待高电平
  TIM_Cmd(TIM2, ENABLE);                                             //开启时钟
  while(GPIO_ReadInputDataBit(ECHO_PORT,ECHO_PIN));                         //等待低电平
  TIM_Cmd(TIM2, DISABLE);                                                         //定时器2失能
  UltrasonicWave_CalculateTime();                                                                         //计算距离
  TIM_SetCounter(TIM2,0);

        printf("\r\ndistance:%d%d cm\r\n",UltrasonicWave_Distance/256,UltrasonicWave_Distance%256);        
            
}
 



  1.  
http://www.dtcms.com/wzjs/558165.html

相关文章:

  • 可以做试卷的网站英语怎么说旅游网站域名应该如何设计
  • 免费自助音乐网站申请企业网站设计说明
  • 户外运动网站程序wordpress附件扩展格式
  • 网站列表页框架布局原则网上开平台要多少钱
  • 网站平面模板上海红蚂蚁装潢设计有限公司
  • 建设一个网站需要多久网站会员系统制作
  • 活动策划网站网站开发所得税
  • 网站开发用工工程师wordpress淘宝客pid插件
  • 重庆响应式网站设计网站设计外文文献
  • 建站seo怎么赚钱女主网站和男主做
  • 手机网站费用js特效网站
  • 网站推广的常用方法国别域名注册
  • 网站搭建平台源码网店怎么开视频教程
  • 佛山移动网站设计企业管理专业就业方向
  • 网站建设好后有些什么资料滨州j建设局网站投诉电话
  • 什么是网站建设与优化2014苏州建设银行招聘网站
  • 建电影网站wordPress如何添加多文章页面
  • 在线企业建站模板企业品牌战略策划
  • 京东企业集团网站建设方案网站怎么做全站搜索
  • 做背景图 网站wordpress搬家简书
  • 自己做网站好做吗张家界seo
  • 服务周到的响应式网站怎么自己做淘宝网站吗
  • 京东优惠券网站建设如何做网站管理
  • 外贸公司的网站公司注册线上服务平台
  • 商丘网站建设设计网页链接制作软件
  • 广州市 网站建设 有限公司重庆网站建设冒号
  • wordpress网站logo没显示好看的中文网站设计
  • 泉州手机网站开发上海外贸进出口公司
  • 信阳网站推广公司博客网站开发流程
  • 情人节网站源码下载响应式网站模板html