智能车制作

标题: K60代码的诡异,大家来讨论一下吧 [打印本页]

作者: 动感小麦兜    时间: 2014-1-22 22:44
标题: K60代码的诡异,大家来讨论一下吧

我用的是野火的库,最近调直立车,由于开机自动采集零偏,所以把FTM关了,过几秒后再打开,可每次刚一打开电源,小车的一个轮子就迅速转一下,然后停止,过几秒后两个轮子都转就正常了,可问题是为什么刚一开机会有一个轮子转呢,后来单步调试,发现程序执行完crt0.s中的BL      start               ; call the C code       调用 C语言 编写的 start 函数     就会迅速的转一下,根本就没有进入main函数,这个到底是怎么回事,求大神解释一下
注:我用的是FTM0的CH0,CH1,CH2,CH3通道
作者: gufeng    时间: 2014-1-23 09:03
跳入start内,仿真,一步一步地,看看到底是哪里的问题
作者: Element.    时间: 2014-1-23 12:40
我的也会突然转一下。
作者: ppg小小    时间: 2014-1-23 14:31
不懂
作者: 动感小麦兜    时间: 2014-1-23 15:33
gufeng 发表于 2014-1-23 09:03
跳入start内,仿真,一步一步地,看看到底是哪里的问题

本来昨天只是看到进入start中,也没继续往里调试,今天按你的来弄果然好了,原因是在start.c中多次调用printf函数,而我的FTM0的ch2和ch3通道所用的引脚与printf串口的引脚一致,所以在程序开始时会共同使用一个引脚,造成开机振动,解决方法是把k60_fire.h中的#define FIRE_PORT   UART1中的UART1所对应的引脚改成其他的引脚就好了,多谢你的解答了!



作者: 动感小麦兜    时间: 2014-1-23 15:33
Element. 发表于 2014-1-23 12:40
我的也会突然转一下。

看楼上来解决





欢迎光临 智能车制作 (http://dns.znczz.com/) Powered by Discuz! X3.2