基于STM32的蓝牙HC05调试程序 通过手机控制STM32单片机程序

2023-05-16

手机蓝牙助手
在这里插入图片描述
下载链接
链接:https://pan.baidu.com/s/17ecKjowgyzPd04ojvSK2Kg
提取码:idci

连接
RXD — PA2
TXD — PA3
波特率 9600

蓝牙测试程序

#include  "myusart.h"
#include "stm32f10x_usart.h"
#include  "stdio.h"
#include "led.h"
#include "stm32f10x_rcc.h"
#include "stm32f10x_tim.h"
 u8 res;  
_Bool USART_STATE =0;
void USART_Config(void)
{
    GPIO_InitTypeDef  GPIO_InitStructure;
    USART_InitTypeDef USART_InitStructure;
  

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
    RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);
	   MYNVIC_Configuration();
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOA, &GPIO_InitStructure);


    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOA, &GPIO_InitStructure);
    
    USART_InitStructure.USART_BaudRate = 9600;
    USART_InitStructure.USART_WordLength = USART_WordLength_8b;
    USART_InitStructure.USART_StopBits = USART_StopBits_1;
    USART_InitStructure.USART_Parity = USART_Parity_No ;
    USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
    USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
    USART_Init(USART2, &USART_InitStructure);
	
  	USART_ITConfig(USART2,USART_IT_RXNE,ENABLE);
    USART_Cmd(USART2, ENABLE);
}


void USART_SendString(int8_t *str)
{
    uint8_t index = 0;
    do
    {
        USART_SendData(USART2,str[index]);
        while(USART_GetFlagStatus(USART2,USART_FLAG_TXE) == RESET);
        index++;        
    }
    while(str[index] != 0);
    
}
int fputc(int ch,FILE *f)
{
	USART_SendData(USART2, (uint8_t) ch);
   while (USART_GetFlagStatus(USART2, USART_FLAG_TXE) == RESET)
   {}
    return ch;

}


void 	MYNVIC_Configuration(void)
{
	NVIC_InitTypeDef NVIC_InitStructure;

	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
	/* Enable the RTC Interrupt */
	NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQn;
	NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;
	NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
	NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
	NVIC_Init(&NVIC_InitStructure);
}

使用蓝牙接收控制程序

void RES_Read(void)
{
	if(USART_STATE)
	{
		switch(res)
		{
			case '1':
				LED_Control(LED_SS);
				break;
			case 'c':

				break;

			case 'd':


			break;

			
			 case 'e':

			 break;

			case 'f':

			break;
	
		}
	}
}


	

void USART2_IRQHandler(void)                                //??1??????
{
    u8 Res;
     if(USART_GetITStatus(USART2,USART_IT_RXNE)!=RESET)  
 { 
	 
	 USART_ClearITPendingBit(USART2,USART_IT_RXNE);
     Res = USART_ReceiveData(USART2);
     res = Res; 	 
	 USART_STATE = 1 ;
	 RES_Read();
     printf("%c",Res); 	 
	 
 }
} 

蓝牙发送到手机端口程序

	printf("Welcome to maker space lab");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于STM32的蓝牙HC05调试程序 通过手机控制STM32单片机程序 的相关文章

  • Java新手必读

    Java 新手必读 1 学习 Java 学什么 xff1f a Java 语法基础 xff1a 如基本数据类型 流程控制 数组等等 b 面向对象的概念 xff1a 理解类和对象的概念等等 c 开发工具 xff1a Jbuilder Ecli
  • Java编程那些事儿3——你适合学习程序设计吗?

    Java编程那些事儿3 你适合学习程序设计吗 xff1f 作者 xff1a 陈跃峰 出自 xff1a http blog csdn net mailbomb 程序设计是一个技术活 xff0c 所以不是适合所有的人 现在很多人听说程序设计人员
  • J2ME资源:各厂商SDK和模拟器下载地址

    现在支持 Java 的手机厂商很多 xff0c 现将常用的手机厂商 SDK 和下载地址说明一下 xff1a 1 Nokia Nokia 不愧为手机行业的老大 xff0c 对于 j2me 的支持也是一流的 xff0c 有专门的网站提供 SDK
  • 陈跃峰的个人简历

    简 历 基 本 信 息 姓 名 xff1a 陈跃峰性 别 xff1a 男 出生日期 xff1a 1980年01月23日居 住 地 xff1a 郑州市 工作年限 xff1a 五年以上 户 口 xff1a 河南 目前年薪 xff1a 8 10万
  • NokiaS40和S60开发平台1.0已知问题(翻译)

    NokiaS40 和 S60 开发平台 1 0 已知问题 翻译 作者 xff1a 陈跃峰 出自 xff1a http blog csdn net mailbomb 1 Nokia3300 不支 MMA 声音处理 类库 2 Image get
  • 自己动手清除Android系统中的不良程序

    自己动手清除Android系统中的不良程序 陈跃峰 2014 6 29 最近在使用我的Nexus7时 xff0c 总是经常莫名其妙的弹出一些广告弹窗 xff0c 还会自动下载一些应用程序 xff0c 还会在桌面上生成一个叫做 精彩应用 的图
  • 劳动仲裁申请书

    劳动仲裁申请书 申请人 xff1a 陈跃峰 公司职务 xff1a 手机游戏开发课程教师 xff0c 隶属教学部 性别 xff1a 男 身份证号码 xff1a 联系方式 xff1a Email xff1a cqucyf 64 gmail co
  • '/etc/init.d/rcS'启动打不开

    39 etc init d rcS 39 文件系统中有这个文件啊 怎么报错说没有呢 xff1f 用光盘里面的内核镜像就不会出现这个问题 自己移植的内核刷上去就会这样 怎么办啊 xff1f 以前也移植成功过没出现这个问题啊 已经搞了N天了快崩
  • 赠送Gmail,需要的给我发邮件

    cqucyf 64 gmail com
  • 浅谈当前的手机开发技术

    浅谈当前的手机开发技术 作者 xff1a 陈跃峰 出自 xff1a http blog csdn net mailbomb 随着3G 时代的到来 xff0c 手机软件开发成为了一个热门的软件开发技术 xff0c 但是由于手机种类等一系列的原
  • 玩微博的朋友们请关注我一下,@爪哇米工作室,新浪和腾讯的都可以!

    最近比较忙 xff0c 写博客的时间不多 xff0c 还是用微博交流吧 xff01
  • 一个普通参会者经历的2011年中国移动开发者大会

    一个普通参会者经历的2011年中国移动开发者大会 爪哇米工作室 陈跃峰 2011 11 5 由CSDN和创新工场合办的2011年中国移动开发者大会是一场移动开发行业的盛宴 xff0c 能够参加这样一个全国性的会议 xff0c 还是十分感谢主
  • Android开发学什么

    Android开发学什么 爪哇米工作室 陈跃峰 2013 3 1 随着移动互联网的发展 xff0c 现在的手机软件开发成为了一个很热门的技术方向 xff0c 很多的学生以及从事其它开发的程序员都在大量的涌入这个领域 xff0c 但是很多人在
  • ROS创建工作空间添加包并编译

    一 创建工作空间 1 创建工作空间目录并初始化 首先找一个存放工作空间的地方 xff0c 我放在了桌面 xff0c 然后在桌面打开terminal xff0c 开始 xff1a span class token comment 1 递归创建
  • Ubuntu关于串口的操作(查看串口信息、串口助手、串口权限)

    一 查看本机串口信息 1 串口是否在使用 串口在 dev 目录中 xff0c 查看串口是否在使用 xff0c 可以用命令 span class token function ls span l dev ttyUSB0 说明 xff1a ls
  • ROS利用ros-kinetic-serial包与下位机串口通信

    一 使用ros kinetic serial包 xff0c 首先安装这个package 注意 xff0c 需将kinetic替换为你的ROS版本 span class token function sudo span apt span cl
  • Linux中apt与apt-get命令的区别与解释

    原文出处 xff1a https www sysgeek cn apt vs apt get Ubuntu 16 04 发布时 xff0c 一个引人注目的新特性便是 apt 命令的引入 其实早在 2014 年 xff0c apt 命令就已经
  • Linux(Ubuntu)系统查看显卡型号

    给我的Ubuntu安装显卡驱动时 xff0c 需要查看显卡型号 xff0c 因为我的是Windows Ubuntu双系统 xff0c 一开始想到的是去windows查看 xff0c 然后下载驱动 xff0c 安装成功 对于只有Linux系统
  • 梯度散度旋度常用基本关系

    xff1a 向量微分算子 哈密尔顿算子 Nabla算子 劈形算子 xff0c 倒三角算子是一个微分算子 Strictly speaking del is not a specific operator but rather a conven
  • 舵机PWM,SBUS,PPM信号转模拟电压的方案

    PWM SBUS PPM信号转模拟电压的方案 本文由 麦粒电子 撰写 xff0c 并提供相应产品服务和交流 案例场景 有个内部采用电瓶车的驱动器的无线小车 xff0c 现在需要使用遥控器控制小车的前进后退 也就是说 xff1a 把之前电瓶车

随机推荐