资源简介
该资源采用STM32+jy901九轴mpu9250模块通过串口输出角度,彻底解决Z轴漂移,就是yaw角度偏差。其中可以通过USB连线用电脑上位机查看3D姿态图还可以通过连接HC06蓝牙模块接收角度信息,上位机文件含有。
代码片段和文件信息
/*
编译环境:MDK-Lite Version: 5.17
测试: 本程序已在STM32Core平台上完成测试
功能:
用STM32Core平台串口2读取JY901的数据,然后通过串口1直接接到上位机,上位机上选择波特率115200。
用串口调试软件看到的是16进制数。
接线
USB-TTL工具 STM32Core JY901
VCC ----- VCC ---- VCC
TX ----- RX1 (管脚10)
RX ----- TX1 (管脚9)
GND ----- GND ---- GND
RX2 (管脚3) ---- TX
TX2 (管脚2) ---- RX
------------------------------------
*/
#include
#include
#include “Main.h“
#include “REG.h“
#include “stm32f10x_rcc.h“
#include “stm32f10x_gpio.h“
#include “UART1.h“
#include “UART2.h“
#include “delay.h“
#include “hw_config.h“
#include “JY901.h“
#include
#include “math.h“
u8 status=0;
struct STime stcTime;
struct SAcc stcAcc;
struct SGyro stcGyro;
struct SAngle stcAngle;
struct SMag stcMag;
struct SDStatus stcDStatus;
struct SPress stcPress;
struct SLonLat stcLonLat;
struct SGPSV stcGPSV;
struct SQ stcQ;
u32 count=0;//按压次数计数
u32 Key_flag;
float x1y1z1;
u32 x11xgexshixbaixxiaoy11ybaiyshiygeyxiaoz11zbaizshizgezxiaokshikge;
u8 XYZK[10]={‘0‘‘1‘‘2‘‘3‘‘4‘‘5‘‘6‘‘7‘‘8‘‘9‘};
//标准库需要的支持函数
struct __FILE
{
int handle;
};
FILE __stdout;
//定义_sys_exit()以避免使用半主机模式
void _sys_exit(int x)
{
x = x;
}
int fputc(int chFILE *p) //函数默认的,在使用printf函数时自动调用
{
USART_SendData(UART4(u8)ch);
while(USART_GetFlagStatus(UART4USART_FLAG_TXE)==RESET);
return ch;
}
void Led_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOE|RCC_APB2Periph_GPIOB ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //PE5接
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //设为推挽输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOE &GPIO_InitStructure); //初始化外设GPIO
GPIO_SetBits(GPIOEGPIO_Pin_5);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5; //PB5接
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; //设为推挽输出模式
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB &GPIO_InitStructure); //初始化外设GPIO
GPIO_SetBits(GPIOBGPIO_Pin_5);
}
void Key_Configuration(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; //PC3接
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOC &GPIO_InitStructure); //初始化外设GPIO
}
void Keyscan()
{
if(Key_flag)
{
delay_us(10);
if (GPIO_ReadInputDataBit(GPIOC GPIO_Pin_2) == 0)
{
while(GPIO_ReadInputDataBit(GPIOC GPIO_Pin_2) == 0){}//是否松开
GPIO_WriteBit(GPIOE GPIO_Pin_5 (BitAction)(1
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 127646 2019-04-11 11:16 上位机\3D\2019-04-11_111246\crash.dmp
文件 37386 2019-04-11 11:16 上位机\3D\2019-04-11_111246\error.log
文件 138589 2019-04-11 17:16 上位机\3D\2019-04-11_171618\crash.dmp
文件 36354 2019-04-11 17:16 上位机\3D\2019-04-11_171618\error.log
文件 139681 2019-04-12 10:52 上位机\3D\2019-04-12_105140\crash.dmp
文件 36285 2019-04-12 10:52 上位机\3D\2019-04-12_105140\error.log
文件 17012224 2018-06-01 16:20 上位机\3D\run.exe
文件 32716 2018-06-01 16:20 上位机\3D\run_Data\globalgamemanagers
文件 32000 2018-06-01 16:20 上位机\3D\run_Data\globalgamemanagers.assets
文件 83212 2018-06-01 16:20 上位机\3D\run_Data\level0
文件 131232 2018-06-01 16:20 上位机\3D\run_Data\level0.resS
文件 408576 2018-06-01 16:20 上位机\3D\run_Data\Managed\Assembly-CSharp.dll
文件 3072 2018-06-01 16:20 上位机\3D\run_Data\Managed\Assembly-Unitysc
文件 184320 2018-06-01 16:20 上位机\3D\run_Data\Managed\Mono.Posix.dll
文件 294912 2018-06-01 16:20 上位机\3D\run_Data\Managed\Mono.Security.dll
文件 2590208 2018-06-01 16:20 上位机\3D\run_Data\Managed\mscorlib.dll
文件 124928 2018-06-01 16:20 上位机\3D\run_Data\Managed\System.Configuration.dll
文件 299008 2018-06-01 16:20 上位机\3D\run_Data\Managed\System.Core.dll
文件 1678848 2018-06-01 16:20 上位机\3D\run_Data\Managed\System.dll
文件 135168 2018-06-01 16:20 上位机\3D\run_Data\Managed\System.Security.dll
文件 1270272 2018-06-01 16:20 上位机\3D\run_Data\Managed\System.xm
文件 966656 2018-06-01 16:20 上位机\3D\run_Data\Managed\UnityEngine.dll
文件 352694 2018-06-01 16:20 上位机\3D\run_Data\Managed\UnityEngine.dll.mdb
文件 229888 2018-06-01 16:20 上位机\3D\run_Data\Managed\UnityEngine.Networking.dll
文件 218112 2018-06-01 16:20 上位机\3D\run_Data\Managed\UnityEngine.UI.dll
文件 58196 2018-06-01 16:20 上位机\3D\run_Data\Mono\etc\mono\1.0\DefaultWsdlHelpGenerator.aspx
文件 17259 2018-06-01 16:20 上位机\3D\run_Data\Mono\etc\mono\1.0\machine.config
文件 1605 2018-06-01 16:20 上位机\3D\run_Data\Mono\etc\mono\2.0\Browsers\Compat.browser
文件 60453 2018-06-01 16:20 上位机\3D\run_Data\Mono\etc\mono\2.0\DefaultWsdlHelpGenerator.aspx
文件 27626 2018-06-01 16:20 上位机\3D\run_Data\Mono\etc\mono\2.0\machine.config
............此处省略374个文件信息
相关资源
- STM32串口通信协议和状态机模式程序
- STM32F0xx固件库
- STM32_SX1278实现LORA通信STM32F103完美实现
- STM32智能开关窗设备.zip
- stm32 bootloader U盘更新APP程序
- 智能农业大棚stm32 库管系统
- Huawei_LiteOS_秉火STM32F103_20181126
- stm32f107ptp移植程序
- stm32mp3模块
- STM32407_UCOSIII_LWIP
- 基于固件库的STM32F103ZET6工程模板ARM
- STM32F407编码器
- STM32 STM32F103C8T6 三星S6D05A1_TFTLCD_32048
- 正点原子STM32F407探索者PCB图+原理图
- 基于STM32的智能管家门控系统设计与实
- STM32F407 USB Device HID Full Speed 例程
- 程序是STM32和陀螺仪的I2C通信程序
- 零死角玩转STM32(完整打包)
- 带显示的MAX31865读取PT200测温stm32平台
- 舵机控制TIM1
- STM32F207数据手册官方版
- 基于STM32ZET6正点原子战舰板的IIC接口
- DAC8562配套资料
- stm32原理图,pcb图
- STM32 pcb图带wifi接口,rc522接口
- stm32f10x中文参考手册231483
- 项目综合:stm32机械臂完整程序
- ina226 stm32f4
- stm32F103GRBL系统脱机移植带屏幕控制
- stm32 寄存器版开发教程
评论
共有 条评论