这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » dawnjeanh的四轴飞行器进程

共19条 1/2 1 2 跳转至

dawnjeanh的四轴飞行器进程

菜鸟
2014-06-15 15:35:48     打赏

迟来的的开发进程贴。

5月28日下单,5月31日拿到套件。拖了半个月才开的进程贴是在抱歉了,实验室里给boss干活只能挤时间更了。

目录

开箱晒板及组装                                 http://forum.eepw.com.cn/thread/256902/1#2

开发环境及下载固件                           http://forum.eepw.com.cn/thread/256902/1#3

基础实验-STM32芯片开发环境的建立     http://forum.eepw.com.cn/thread/256902/1#4

基础实验-LED指示灯实验                     http://forum.eepw.com.cn/thread/256902/2#12

关于时钟配置                                    http://forum.eepw.com.cn/thread/256902/2#13

基础实验-UART串口通讯实验               http://forum.eepw.com.cn/thread/256902/2#14

基础实验-PWM电机驱动实验                http://forum.eepw.com.cn/thread/256902/2#16


出现问题

【已解决】给四轴编程PB3/JTDO控制的led不亮        http://forum.eepw.com.cn/thread/256935/1





关键词: 开发进程    

菜鸟
2014-06-15 15:55:53     打赏
2楼
开箱晒板及组装

先上图。

开箱

收到的套件,贴片的芯片、电阻电容都已经焊好,只剩下直插的没焊,难度不大。

组装

将元件焊好。

之前看到说usb口不好焊,这里说一下我的经验:焊接这类的贴片封装的芯片要在焊接前在焊盘上涂上少量的助焊剂(也叫焊锡膏,个人感觉固态的比较好用,当然液态的也可以),然后在烙铁头上点上焊锡,芯片管脚与焊盘对齐,在管脚上拖动焊枪,焊锡会自动附在管脚与焊盘上,并且不会短路。若是短路了,再涂上焊锡膏,用没有焊锡的焊枪再加热一下,焊锡就会分开。

成品

组装完成。

改装

为了调试方便,在手柄上加装了一块液晶点阵屏,以后调试的时候显示传感器信息。


菜鸟
2014-06-15 16:25:45     打赏
3楼

开发环境及下载固件

飞行器及手柄都使用的是SWD的编程方式。我使用JLINK调试器(先开始用ULINK2但固件下载不成功,这个另开贴讨论)

jink2swd

标准JLINK是20针,SWD只需3.3V,GND,SWDIO,SWDCLK这四根就可以

jlink2swd

这是制作的JLINK转SWD的转换线。

jlink

JLINK与转换线实物图。

固件下载

PC上安装好驱动(好像高版本会识别盗版JLINK),打开SEGGER J-FLASH ARM,首先进行设置,Options->Project settings,CPU选择成STM32F103CB

setting

Target Interface 选择SWD

File->Open data file打开要下载的固件,将JLINK连接好,打开目标板的电源开关,Target->Program&Verify即可,最终显示下载成功


菜鸟
2014-06-15 16:55:36     打赏
4楼

基础实验-STM32芯片开发环境的建立

先给出ST官方的外设库

STM32F103CB:http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF189782

STM32F10x standard peripheral library:http://www.st.com/web/en/catalog/tools/PF257890#

下载外设库后解压得到STM32F10x_StdPeriph_Lib_V3.5.0,内部Libraries文件夹就是我们要用的外设库。

KEIL工程搭建。

1.新建一个文件夹,我一FLY为例,之后工程所有文件都在此文件夹中。在文件夹中再新建LIB、List、Obj、SRC四个文件夹。

2.将解压好的外设库..\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries中的两个文件夹CMSIS和STM32F10x_StdPeriph_Driver拷贝到..\FLY\LIB文件夹下。

3.打开KEIL,新建工程。Project->New uVision Project,工程名以FLY为例,保存到..\FLY。弹出对话框询问是否添加启动代码,选择是。

4.项目配置。

单击Target Options,Output选项卡单击Select Folder for Objects,选择..\FLY\Obj文件夹

Listing选项卡中单击Select Folder for Listings,选择..\FLY\List文件夹


C/C++选项卡中Define中填写STM32F10X_MD,USE_STDPERIPH_DRIVER,在Include Paths中编辑包含路径



Debug选项卡中选择下载器,我已JLINK为例


Utilities选项卡同样选择JLINK


在下载器设置中,设置为SW方式,并设置Programming Algorithm,







菜鸟
2014-06-15 18:07:41     打赏
5楼

配置完成后,就开始添加代码了,为了结构明了,在KEIL的Project视图中添加分组。方法是在FLY上右键Add Group,并且可以更改名称。

在CMSIS中添加了..\FLY\LIB\CMSIS\CM3\DeviceSupport\ST\STM32F10x文件夹中的system_stm32f10x.c

在STM32F10x_StdPeriph_Driver中添加了..\FLY\LIB\STM32F10x_StdPeriph_Driver\src文件夹中的全部文件

把之前解压完的官方外设库..\STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template文件夹中的stm32f10x_conf.h复制到..\FLY\SRC文件夹下,并在此文件夹内新建main.c、common.h,并把这三个文件添加到Project视图的System分组下。

common.h


#ifndef	__COMMON_H__
#define	__COMMON_H__

#include "stm32f10x_conf.h"
#include "stm32f10x.h"

#endif

 main.h


#include "common.h"

int main(void)
{
	while(1)
	{
	}
}

这样一个工程模板就建好了,就可以着手编写程序。编译后点击LOAD就可以下载。




工程师
2014-06-15 19:17:16     打赏
6楼

加油,动手能力不错。进程给力!


工程师
2014-06-15 19:17:22     打赏
7楼

加油,动手能力不错。进程给力!


菜鸟
2014-06-15 20:36:24     打赏
8楼
谢龙神夸奖!

菜鸟
2014-06-15 20:38:38     打赏
9楼
谢龙神夸奖

高工
2014-06-15 22:53:40     打赏
10楼

很细致,加油!!!


共19条 1/2 1 2 跳转至

回复

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