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

唐山市住房和诚乡建设局网站深圳网络推广公司有哪些

唐山市住房和诚乡建设局网站,深圳网络推广公司有哪些,聊城建设路小学网站,35互联做网站多少钱场景是用stm32与一款温湿度传感器通信,不过是基于SDI-12协议,SDI-12时序和UART类似,故采用UART传输,原理图如下 其中DIR_OUT_SDI是一个IO引脚,控制UART_TX_SDI是否使能,U10是三态门IC,即拉低DIR…

场景是用stm32与一款温湿度传感器通信,不过是基于SDI-12协议,SDI-12时序和UART类似,故采用UART传输,原理图如下

其中DIR_OUT_SDI是一个IO引脚,控制UART_TX_SDI是否使能,U10是三态门IC,即拉低DIR_OUT_SDI使能stm32输出,拉高DIR_OUT_SDI失能输出,串口配置8位数据位,偶校验,1位停止位,1200波特率。

下面给出发送一个激活命令的示例:

#define SDI_BREAK_TIME 13
#define SDI_BREAK_QUIET_TIME 20//@brief 发送确认激活命令  
//@param addr 传感器地址 ascii码 低7位有效
void sdi12SendAckActive(uint8_t addr)
{uint8_t cmd[]={'0'+addr,'!'};switchToIoConfig();HAL_GPIO_WritePin(SDI_DIR_GPIO_Port,SDI_DIR_Pin,GPIO_PIN_RESET);   //使能 SDI_OUT_PIN 输出sdi12SendBreak();switchToUartConfig();//HAL_UART_AbortReceive(&huart3);HAL_UART_Transmit(&huart3,cmd,2,0xFFFF);HAL_GPIO_WritePin(SDI_DIR_GPIO_Port,SDI_DIR_Pin,GPIO_PIN_SET);   //失能 SDI_OUT_PIN 输出g_SdiReceiveMessage.receiveFlag=0;g_SdiReceiveMessage.messageTop =0;HAL_UART_Receive_IT(&huart3, g_SdiReceiveMessage.message, 1);return;
}//@brief 将tx引脚配置为输出模式,作输出唤醒信号使用
void switchToIoConfig()
{GPIO_InitTypeDef GPIO_InitStruct={0};/*Configure GPIO pin Output Level */HAL_GPIO_WritePin(SDI_OUT_PORT, SDI_OUT_PIN, GPIO_PIN_SET);/*Configure GPIO pin : SPI_DIR_Pin */GPIO_InitStruct.Pin = SDI_OUT_PIN;GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;GPIO_InitStruct.Pull = GPIO_NOPULL;GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;HAL_GPIO_Init(SDI_OUT_PORT, &GPIO_InitStruct);return;
}//@brief 发送唤醒信号
void sdi12SendBreak()
{HAL_GPIO_WritePin(SDI_OUT_PORT,SDI_OUT_PIN,GPIO_PIN_RESET);HAL_Delay(SDI_BREAK_TIME);HAL_GPIO_WritePin(SDI_OUT_PORT,SDI_OUT_PIN,GPIO_PIN_SET);HAL_Delay(SDI_BREAK_QUIET_TIME);
}//@brief 将tx引脚配置为复用模式,作串口输出使用
void switchToUartConfig()
{GPIO_InitTypeDef GPIO_InitStruct={0};/*Configure GPIO pin Output Level */HAL_GPIO_WritePin(SDI_OUT_PORT, SDI_OUT_PIN, GPIO_PIN_SET);GPIO_InitStruct.Pin = SDI_OUT_PIN;GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;GPIO_InitStruct.Pull = GPIO_NOPULL;GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;GPIO_InitStruct.Alternate = GPIO_AF7_USART3;HAL_GPIO_Init(SDI_OUT_PORT, &GPIO_InitStruct);return;
}

示波器测试得到传感器的应答信号如下:第一个是唤醒信号,拉高电平13毫秒,之后保持20毫秒低电平,第二个数据帧是激活信号,即ascii码:  "0!",第三个是传感器的应答信号:"0\r\n"

http://www.wangmingla.cn/news/166784.html

相关文章:

  • 公司门户网站该怎么做培训网址
  • 一品威客做网站靠谱吗如何免费开自己的网站
  • seo做的比较好的网站的几个特征360搜索建站
  • 广州响应式网站建设seo的特点是什么
  • 公司网站开发实例指数平滑法
  • 佛山网站建设百家号sem竞价推广托管
  • 万网怎样做网站调试优化seo教程
  • asp网站开发环境抖音流量推广神器软件
  • 各大网站免费观看企业网络营销策划书范文
  • 成都百度网站设计公司百度搜索高级搜索
  • 广西网站建设公司网站seo技术能不能赚钱
  • 青岛模板化网站东莞搜索引擎推广
  • 做网站是先做后台还是前端深圳seo优化外包公司
  • 怎么做淘课网站营销培训课程视频
  • 新泰做网站如何用百度平台营销
  • 吴江区桃源镇做网站网站内容优化方法
  • 百度怎么做自己网站自己做网站需要多少钱
  • 成都创新网站建设推广软件app
  • 用php建设一个简单的网站长沙快速排名优化
  • 三合一网站什么意思万能引流软件
  • wordpress亲你迷路了海淀seo搜索引擎优化公司
  • 平板购物网站建设西安网站排名优化培训
  • 如何做产品展示网站网页设计代码案例
  • 天津百度网站快速排名百度推广app怎么收费
  • 电子商务网站建设与管理课程的感想关键词竞价排名
  • 阿里云个人网站制作黄山seo推广
  • 武汉门户网站建设百度推广怎么做步骤
  • php做音乐网站seo价格是多少
  • 贵州华瑞网站建设有限公司淘宝关键词搜索排名
  • 网站和app区别与联系竞价托管推广代运营