其实搞小车已经有一段时间了,到目前为止小车的基本程序已基本搞定,昨天已经把mpu6050的dmp调通,接下来就是一些数据的处理,也是自平衡小车的算法核心,这才是重中之重
顺便说以下我项目托管在Github,想要研究的同学直接clone我的项目到本地即可
项目地址:https://github.com/GaoMjun/balancer
在本贴的最下方有pdf文档,有需要的同学可以下载
1. 提前 建立基础工程:http://forum.eepw.com.cn/thread/274707/1
2.实验一 点亮LED:http://forum.eepw.com.cn/thread/274707/1#2
3.实验二 让灯闪:http://forum.eepw.com.cn/thread/274707/1#3
4.实验三 重定向printf:http://forum.eepw.com.cn/thread/274707/1#4
5.实验四 UART实现控制台:http://forum.eepw.com.cn/thread/274707/1#5
6.实验五 编码器读取车轮转速:http://forum.eepw.com.cn/thread/274707/1#6
7.实验六 PWM驱动电机:http://forum.eepw.com.cn/thread/274707/1#8
提前 建立基础工程
1. 首先建立如下文件夹
balancer –- startup 启动汇编文件
|- cmsis cortex3 内核必要文件
|- lib stm32 官方标准库文件
|- MDKProj keil 工程建立在此
|- driver 自己将要编写的各种驱动, 各位主要在此发挥
|- user 用户目录,主要是 main.c
2. 下载stm32 官方标准库文件,点此下载
在网页最下方
点击 download 下载即可
下载完成之后解压
1. 将 Libraries->STM32F10x_StdPeriph_Driver 下的 inc 和 src 复制到上面的 lib 下
2. 将 Libraries->CMSIS->CM3->CoreSupport 下的 core_cm3.c和 core_cm3.h 和Libraries->CMSIS->CM3->DeviceSupport->ST->STM32F10x下的stm32f10x.h , system_stm32f10x.c, system_stm32f10x.h复制到上面的cmsis 下
3. 将 Libraries->CMSIS->CM3->DeviceSupport->ST->STM32F10x-> startup->arm 下的 startup_stm32f10x_md.s 复制到上面的startup下
4. 将Project->STM32F10x_StdPeriph_Template下的
main.c stm32f10x_conf.h stm32f10x_it.c stm32f10x_it.h复制到上面的user下
3. 打开Keil uVision然后Project->New uVision Project…
然后浏览到上面建立的MDKProj目录下,起个名字,比如balancer, 然后save
然后选择器件,找到STM32F103C8,然后OK
接下来,点NO
然后
出现下图
然后编辑成这样
然后开始Add Files,添加上面复制的一些 .s .c文件,如下
startup-|- startup_stm32f10x_md.s
cmsis-|- core_cm3.c
|- system_stm32f10x.c
lib-|- misc.c
|- stm32f10x_adc.c
|- stm32f10x_gpio.c
|- stm32f10x_rcc.c
|- stm32f10x_tim.c
|- stm32f10x_usart.c
user-|-main.c
|- stm32f10x_it.c
接下来
出现
C/C++这一项很重要
按照下面选择好,然后OK
再接下来将main.c改成这样
继续
然后再全部编译一次,如果编译成功,恭喜基础工程到此结束
NEXT 点灯
本教程pdf文档百度云下载:http://pan.baidu.com/s/1hqm0bw4 提取密码:——回复可见内容——