> 文章列表 > K_A31_002 基于STM32等单片机驱动315MHZ收发模块 串口显示

K_A31_002 基于STM32等单片机驱动315MHZ收发模块 串口显示

K_A31_002 基于STM32等单片机驱动315MHZ收发模块 串口显示

K_A31_002 基于STM32等单片机驱动315MHZ收发模块 串口显示

  • 所有资源导航
  • 一、资源说明
  • 二、基本参数
    • 参数
    • 引脚说明
  • 三、驱动说明
    • 原理:
    • 对应程序:
  • 四、部分代码说明
    • 1、接线引脚定义
      • 1.1、STC89C52RC+315MHZ收发模块
      • 1.2、STM32F103C8T6+315MHZ收发模块
  • 五、基础知识学习与相关资料下载
  • 六、视频效果展示与程序资料获取
  • 七、注意事项
  • 八、接线说明
    • STC89C52RC
    • STM32F103C8T6

请添加图片描述
请添加图片描述

所有资源导航

其他资料目录 直戳跳转

一、资源说明

单片机型号 测试条件 模块名称 代码功能
STC89C52RC 晶振11.0592M H34C发射/H5V3M接收模块 STC89C52RC驱动S315MHZ收发模块 串口显示
STM32F103C8T6 晶振8M/系统时钟72M H34C发射/H5V3M接收模块 STM32F103C8T6驱动315MHZ收发模块 串口显示

二、基本参数

参数

H34C发射模块
请添加图片描述

H5V3M接收模块

请添加图片描述

引脚说明

H34C发射模块 引脚说明
VCC(+) 正极 3.3/5V供电
GND(-) 负极 接GND
DAT 数据输出引脚
H5V3M接收模块 引脚说明
VCC(+) 正极5V供电
GND(-) 负极 接GND
DAT 数据输入引脚

三、驱动说明

原理:

发射模块发送高低电平 接收端输出与输入同样的高低电平 发送与解析协议可以自定义 用一定高低电平时间来表示状态0 和 1

对应程序:

以51为例

void Delay359us(void)		//@11.0592MHz
{uint8_t i;_nop_();i = 162;while (--i);
}void Delay1078us(void)		//@11.0592MHz
{uint8_t i, j;_nop_();i = 2;j = 235;do{while (--j);} while (--i);
}void Start(void)
{Send=0;Delay1078us();	  //1078USDelay1078us();	  //1078USDelay1078us();	  //1078USDelay1078us();	  //1078US
//		Send=1;
//		Delay1078us();	  //1078US
//		Delay1078us();	  //1078US
//		Send=0;	
//		Delay1078us();	  //1078US
//		Delay1078us();	  //1078US
}//数据0void Dat_0(void)
{Send=1;Delay359us();		//359USSend=0;Delay1078us();	  //1078US
}
//数据1void Dat_1(void)
{Send=1;Delay1078us();		//1078USSend=0;Delay359us();	  //359US}
//发送一个字节数据		void Send_Byte(uint8_t Dat)
{uint8_t i,buf=0;Start();for(i=0;i<8;i++){buf=Dat>>7;if(buf){Dat_1();}else{Dat_0();}Dat=Dat<<1;}Send=0;
}
//发送字符串void Send_String(uint8_t *Pdat)
{uint8_t i=0;Start();while(Pdat[i]!='\\0'){Send_Byte(*(Pdat+i));i++;}}//接收:void Delay100us(void)		//@11.0592MHz
{uint8_t i;_nop_();i = 43;while (--i);
}
void Delay500ms(void)		//@11.0592MHz
{uint8_t i, j, k;_nop_();i = 4;j = 129;k = 119;do{do{while (--k);} while (--j);} while (--i);
}/*
解码
开始信号5MS低电平
1.2MS高0.4MS低为1
1.2MS低0.4MS高为0
*/
uint8_t Decode(void)//
{uint8_t m,R_date;while(!DAT){times++;Delay100us();}if(times>=30){Flag_State=1;times=0;//SeriPushSend('1')	;	 }if(Flag_State){for(m=0;m<8;m++){while(!DAT);while(DAT){times++;Delay100us();}if(times>=10){while(DAT);R_date<<=1;R_date|=0x01;times=0;
//						OUT1=1;
//						SeriPushSend('1')	;	 }else{R_date=R_date<<1;times=0;
//						SeriPushSend('0')	;	
//						OUT1=0;}}Flag_State=0;return R_date;}else{times=0;}}

四、部分代码说明

1、接线引脚定义

需要自定义引脚可在此处更改,STM32要自定义引脚的话也要注意引脚时钟使能的更改

1.1、STC89C52RC+315MHZ收发模块

//STC89C52RC+H5V3M(315MHZ)接收模块
sbit DAT =P0^0;
//STC89C52RC+H34C(315MHZ)发射模块
sbit Send =P1^0;

1.2、STM32F103C8T6+315MHZ收发模块

//STM32F103C8T6+H5V3M(315MHZ)接收模块
#define    H34C_GPIO_CLK                  RCC_APB2Periph_GPIOA  
#define    H34C_PORT                      GPIOA
#define    H34C_PIN                       GPIO_Pin_0
//STM32F103C8T6+H34C(315MHZ)发射模块
#define    H34C_GPIO_CLK                  RCC_APB2Periph_GPIOA  
#define    H34C_PORT                      GPIOA
#define    H34C_PIN                       GPIO_Pin_0

五、基础知识学习与相关资料下载

1、STC89C52RC程序下载 直戳跳转

2、STM32F103C8T6程序下载
(1)串口下载 直戳跳转
(2)ST-LINK下载 直戳跳转
(3)J-LINK下载 直戳跳转
(4)DAP-LINK下载 直戳跳转

3、OLED0.96程序说明 直戳跳转

4、串口助手下载与使用
(1)安信可调试助手使用 直戳跳转
(2) sscom33串口调试助手使用 直戳跳转
(3)STC-ISP串口调试助手使用 直戳跳转

六、视频效果展示与程序资料获取

视频连接 直戳跳转
资料获取 ( 滑到最后添加个人号)

七、注意事项

1、VCC GND请勿接反,接反易烧
2、OLED显示异常时,排除接线接触不良

八、接线说明

STC89C52RC

//H34C(315MHZ)发射
/
//  生成日期   : 2021-6-21
//  最近修改   : 2021-11-21
//  功能描述   : H34C(315MHZ)模块测试程序
//  测试条件   : STC89C52RC   晶振11.0592
接线
H34C(315MHZ)模块-----------------------STC89C52RC
VCC------------------------------------3.3V
GND------------------------------------GND
DAT------------------------------------P1.0*/
//H5V3M(315MHZ)接收
/
//  生成日期   : 2021-6-21
//  最近修改   : 2021-11-21
//  功能描述   : H5V3M(315MHZ)模块测试程序
//  测试条件   : STC89C52RC   晶振11.0592
接线
H5V3M(315MHZ)模块-----------------------STC89C52RC
VCC------------------------------------3.3V
GND------------------------------------GND
DAT------------------------------------P0.0*/

STM32F103C8T6

//H34C(315MHZ)发射
/
//  生成日期   : 2021-6-21
//  最近修改   : 2021-11-21
//  功能描述   : H34C(315MHZ)模块测试程序
//  测试条件   : STM32F103C8T6   晶振8M  系统时钟 72M
接线
H34C(315MHZ)模块------------------------STM32F103C8T6
VCC-------------------------------------3.3V
GND-------------------------------------GND
DAT-------------------------------------PA_0 */
//H5V3M(315MHZ)接收
/
//  生成日期   : 2021-6-21
//  最近修改   : 2021-11-21
//  功能描述   : H5V3M(315MHZ)模块测试程序
//  测试条件   : STM32F103C8T6   晶振8M  系统时钟 72M
接线
H5V3M(315MHZ)模块------------------------STM32F103C8T6
VCC-------------------------------------5V
GND-------------------------------------GND
DAT-------------------------------------PA_0 */