这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 让Quadcopter不再是个别人的专利&四轴活动进程帖(wopt QuadCo

共29条 3/3 1 2 3 跳转至
菜鸟
2014-07-09 22:07:29     打赏
21楼



stm32f103 系列,串口有3种工作模式:查询、中断、DMA。本次应用采用DMA中断模式。:DMA是在专门的硬件( DMA)控制下,实现高速外设和主存储器之间自动成批交换数据尽量减少CPU干预的输入,输出操作方式。其USART配置流程:1、串口时钟配置;2、管脚配置(如重映射,管脚模式);3、串口配置;4、DMA配置;中断配置;5、打开串口。

本实验USART(128000 BaudRate,8个数据位,1个停止位,无校验码)功能:  1、开机输出一段字符串; 2、输入 "1"  打开LED,串口输出“LED->ON”; 3、输入 "0"  关闭LED,串口输出“LED->OFF”。

USART程序流程图如图2-10所示。



     实验效果图如下



Quadcopter_usb.rar




高工
2014-07-10 00:17:42     打赏
22楼

把点滴都记录下来,有时间再回顾一下,感觉会很不错


菜鸟
2014-07-12 14:33:48     打赏
23楼

软件环境: Keil MDK

 

    1、利用"printf"函数调试的时候,进入不到主函数。解决方法。

       1)“Option targets ....” -> "Target" -> "Use MicroLIB".

             因printf()之类的函数,使用了半主机模式。使用微库的话,不会使用半主机模式。

       2)至于修改_sys_exit()”函数这种方法,没有深入研究,暂不做评论。


菜鸟
2014-07-12 14:49:30     打赏
24楼

软件环境: Keil MDK; 库函数版本:STM32库3.5

 

       2、飞行器外部晶振16MHz设通用72MHz芯片主频

           1)“Option targets ....” -> "Target" ->"Xtal(MHz)" 设为"16.0"(默认8.0);

           2) 修改"#define HSE_VALUE    ((uint32_t)8000000)" 成 "#define HSE_VALUE    ((uint32_t)16000000)" @stm32f10x.h第119行。

           3) 修改"RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9)" 为 "RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLMULL9)" @system_stm32f10x.c第1056行。

         


菜鸟
2014-07-12 14:59:01     打赏
25楼
      PWM是通过控制固定电压的直流电源开关频率,从而改变负载两端的电压,进而达到控制要求的一种电压调整方法。PWM可以应用在许多方面,如电机调速、温度控制、压力控制等。在PWM驱动控制的调整系统中,按一个固定的频率来接通和断开电源,并根据需要改变一个周期内接通断开时间的长短。通过改变直流电机电枢上电压的占空比来改变平均电压的大小,从而控制电动机的转速。因此,PWM又被称为开关驱动装置

    对于PWM频率的选择,其实没有统一的标准, PWM的频率和电机感抗和速度响应时间有很大的关系。电机 一般的电机的PWM频率在5KHz-20KHz就足够了。如果电机转速比较高,感抗比较小,可以使用比较高的频率,一般最好不要超过20KHz。其次PWM频率还要根据驱动电路来,  因为一般IGBT最高20K的开关频率,采用3KHz-15KHzPWM频率, MOS 的开关频率比较高,一般在8KHz-20KHz 但是过高的频率需要专用的驱动电路,不然MOS工作在放大区的时间比较长。 如果电机转速比较低,感抗比较大, 而且又是在做伺服, 那开关频率就需要低一点。

    对于电机应用,功率越大,PWM频率越低,最低有500Hz或者1KHz的,在兆瓦级的应用中。普通中小功率的,5KHz-20KHz常见,功率越低,电压等级越低,你所能使用的PWM频率越高。因为低压的开关频率可以做到很高,而高压的却很难快速开关。本次实验PWM频率采用18KHz

PWM配置(STM32为例)流程如表2-1

步骤

说明

1

设定TIM信号周期

2

设定TIM预分频值

3

设定TIM分频系数

4

设定TIM计数模式

5

初始化TIM

6

设定TIMOC模式

7

TIM输出使能

8

设定电平跳变值

9

设定PWM信号极性

10

使能TIM信号通道

11

使能TIM重载寄存器CCRX

12

使能TIM重载寄存器ARR

13

使能TIM计数器

 

本实验采用串口控制,其串口指令说明如表2-2所示。

序列

指令

串口响应值

说明

 1

LED ON

LED->ON

彩灯亮

 2

LED OF

LED->OFF

彩灯熄灭

3

PWM UP

PWM->UP

电机加速

4

PWM DN

PWM->DOWN

电机减速

5

PWM OF

PWM->OFF

电机关闭

6

PWM ST

PWM Compare Value

Compare Value1

Compare Value2

Compare Value3

Compare Value4

电机状态;

Duty Ratio = Compare ValueX / 1000

 

QuadCopter_fly.rar

 

 


菜鸟
2014-07-29 10:58:43     打赏
26楼

NRF无线通讯实验

 NRF24L01.rar


工程师
2014-10-08 09:15:11     打赏
27楼
不错~,加油!加精华!

菜鸟
2014-10-09 14:17:47     打赏
28楼
谢谢,后续的内容会继续补上。 虽然已经过了评测。

高工
2021-03-06 11:00:23     打赏
29楼

谢谢分享


共29条 3/3 1 2 3 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]