建立开发环境还是很简单的!!!
上图,上教程!!!
哎呀妈,程序一下载结束,空心杯飞一般的转啊,吓我一跳,擦
大清明的,都没人在学校,自己录视频太难了。。。
上图片吧。。。
一个人拍照,差点被浆打我手了。。。
来点关键代码,(在1L的分享中有工程文件)
额,咋回事,在我的工程里都是汉字啊。。。
怎么现在注释都是乱码啊。。
好饿,准备吃饭。
清明孤孤单单啊,今天风大,也不能去飞了,等明天把。。
/******************************************************************************* * º¯ÊýÃû : GPIO_Configuration * º¯ÊýÃèÊö : ÉèÖø÷GPIO¶Ë¿Ú¹¦ÄÜ * ÊäÈë²ÎÊý : ÎÞ * Êä³ö½á¹û : ÎÞ * ·µ»ØÖµ : ÎÞ *******************************************************************************/ void GPIO_Configuration(void) { /* ¶¨Òå GPIO ³õʼ»¯½á¹¹Ìå GPIO_InitStructure */ GPIO_InitTypeDef GPIO_InitStructure; /* ÉèÖà GPIOA É쵀 TIM2 1£¬2£¬3£¬4ͨµÀ¶ÔÓ¦Òý½Å PA.0,PA.1,PA.2,PA.3 ΪµÚ¶þ¹¦ÄÜÍÆÍìÊä³ö */ GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure); } /******************************************************************************* * º¯ÊýÃû : TIM_Configuration * º¯ÊýÃèÊö : ÉèÖÃTIM¸÷ͨµÀ * ÊäÈë²ÎÊý : ÎÞ * Êä³ö½á¹û : ÎÞ * ·µ»ØÖµ : ÎÞ *******************************************************************************/ void TIM_Configuration(void) { /* ¶¨Òå TIM_TimeBase ³õʼ»¯½á¹¹Ìå TIM_TimeBaseStructure */ TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; /* ¶¨Òå TIM_OCInit ³õʼ»¯½á¹¹Ìå TIM_OCInitStructure */ TIM_OCInitTypeDef TIM_OCInitStructure; /* * ¼ÆÊýÖØÔØÖµÎª9999 * Ô¤·ÖƵֵΪ(0+ 1 = 1) * ʱÖÓ·Ö¸î0 * ÏòÉϼÆÊýģʽ */ TIM_TimeBaseStructure.TIM_Period = 60000; TIM_TimeBaseStructure.TIM_Prescaler = 0; TIM_TimeBaseStructure.TIM_ClockDivision = 0; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM2 , &TIM_TimeBaseStructure); /* ÉèÖà OC1,OC2,OC3,OC4 ͨµÀ * ¹¤×÷ģʽΪ PWM Êä³öģʽ * ʹÄÜ±È½ÏÆ¥ÅäÊä³ö¼«ÐÔ * ʱÖÓ·Ö¸î0 * ÏòÉϼÆÊýģʽ * * ÉèÖø÷Æ¥ÅäÖµ·Ö±ðΪ CCR1_Val, CCR1_Val, CCR1_Val, CCR1_Val * µÃµ½µÄÕ¼¿Õ±È·Ö±ðΪ 50%, 37.5%, 25%, 12.5% */ TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; TIM_OCInitStructure.TIM_Pulse = CCR1_Val; TIM_OC1Init(TIM2, &TIM_OCInitStructure); TIM_OCInitStructure.TIM_Pulse = CCR2_Val; TIM_OC2Init(TIM2, &TIM_OCInitStructure); TIM_OCInitStructure.TIM_Pulse = CCR3_Val; TIM_OC3Init(TIM2, &TIM_OCInitStructure); TIM_OCInitStructure.TIM_Pulse = CCR4_Val; TIM_OC4Init(TIM2, &TIM_OCInitStructure); /* ʹÄÜÔ¤×°ÔØ¼Ä´æÆ÷ */ TIM_OC1PreloadConfig(TIM2 , TIM_OCPreload_Enable); TIM_OC2PreloadConfig(TIM2 , TIM_OCPreload_Enable); TIM_OC3PreloadConfig(TIM2 , TIM_OCPreload_Enable); TIM_OC4PreloadConfig(TIM2 , TIM_OCPreload_Enable); TIM_ARRPreloadConfig(TIM2, ENABLE); /* Æô¶¯ TIM ¼ÆÊý */ TIM_Cmd(TIM2 , ENABLE); }
DMP测试,串口回传欧拉角及四元数。
附工程文件,希望有兴趣的亲可以测试一下。
目前发现的问题:
1,串口波特率比程序设置的要高一倍,我设置的9600,,实际使用是19200才能正常发送。 (这个问题解决了,龙哥用的是16M的晶振,我的设置是8M。改正方法,在STM32F10X.h里第103行,把HSE_VALUE的值定义为16000即可)
2,还是串口的问题,串口打开时间过长,会出现乱码。
3,仍然是串口问题,不进入仿真调试,没法将数据发回来。
同时我在DMP及串口回传的基础上,加上了遥控油门的代码,已加注释。
DMP V1.0 遥控油门
——回复可见内容——
附视串口回传欧拉角及四元数视频:
视频地址:http://player.youku.com/player.php/sid/XNjk1MTUzOTY4/v.swf
这讲四元数,欧拉角的,还不错 :http://www.cnblogs.com/wqj1212/archive/2010/11/21/1883033.html
下面视频是讲欧拉角旋转产生的万向锁问题:
视频地址:http://player.youku.com/player.php/sid/XNjk1MTkzMTM2/v.swf
2401驱动成功!!!
需要注意的问题:
1,遥控器驱动2401使用SPI2,初始化时钟得用
RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);
2,四轴驱动2401使用SPI1,初始化时钟得用
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);
其他就改一下IO口,直接能用。
附视频:
视频地址:http://player.youku.com/player.php/sid/XNjk1NDE4NzUy/v.swf
附工程文件:
我自己的开发板发送数据,烈火遥控器接收数据。
——回复可见内容——
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 | |
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 | |
汽车电子中巡航控制系统的使用被打赏10分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏100分 |