你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
lzm1019 发表于 2016-3-30 21:25 多谢! 关于物理连线,确认过多次,应该没有问题。 昨天调试,发现无法跳转main(),实际应操作失误。但具 ...
watershade 发表于 2016-3-31 13:37 首先你不能选择SetSysClock,这样时钟的配置应该会除了问题。之前你的程序卡在这里,就是因为时钟设置的 ...
lzm1019 发表于 2016-3-31 16:39 多谢! 按您的指导,仔细梳理系统时钟相关的配置: 1)启动时,在System_stm32f4xx.c中给了宏定义 System ...
lzm1019 发表于 2016-3-30 15:16 再麻烦您一下。 之前您提到的STM32F411的移植代码,还能找到吗?可否提供我参考下。多谢! ============= ...
乌了个龟的 发表于 2016-4-26 19:54 你好! 我在运行eMPL-Client.py时也遇到和你一模一样的问题,请问你现在是否已经解决,如果已解决能否请 ...
lzm1019 发表于 2016-5-7 11:48 eMPL_client.py的问题,解决了。版本的问题。 Invensense的文档(Motion Driver 6.12 – Getting Started ...
charmyoung 发表于 2016-7-31 17:27 还有更新的代码么?!
意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器
首先你不能选择SetSysClock,这样时钟的配置应该会除了问题。之前你的程序卡在这里,就是因为时钟设置的问题。如果你用的是nucleo,那么主芯片的时钟是从另一个片子的MCO来得,是8MHZ。我记得之前观察程序发现使用的是外部时钟。时钟的配置需要做一些修改,怎么修改呐。在main函数的开头,有boardInit的部分,这里面的开始就是配置了一下系统时钟,然后是systick。你而SystemCoreClock是系统的宏定义,在原始代码中是168000000。而411则不是这个数值,这个数值与你最终配置的有关。但是这里你是直接追踪不到时钟配置的,时钟的配置是在SystemInit里面执行的,起初会使用HSI时钟,然后再通过SetSysClock()来是能PLL时钟。但是这部分的具体工作你最好查一下网络。
多谢!
按您的指导,仔细梳理系统时钟相关的配置:
1)启动时,在System_stm32f4xx.c中给了宏定义 SystemCoreClock = 100000000; 即100MHz;但systemInit()并未定义 SystemCoreClock;而是调用SetSysClk()来配置系统时钟。若采用您所提到的nucleo,时钟由外部供给,则需定义USE_HSE_BYPASS,进而HSE_ON,使得系统时钟配置为PLL;
不过,我的PCB是自制的,使用板上8MHz Resonator(无源);与nucleo不同,故未定义 USE_HSE_BYPASS。
2)进入main()后,调用board_init();最初,调用SystemCoreClockUpdate(); 这个函数我看后,理解就是配置SystemCoreClock = HSI_VALUE; 即16MHz,另外AHB预分频,但是实际取的是AHBPrescTable[[0],即不分频,SystemCoreClock保持16MHz不变。
综述之,在启动文件里,并未设置系统时钟 = HSE,且将RCC->CFGR复位为0;那么进入main()后调用SystemCoreClockUpdate()配置系统时钟时,tmp = RCC->CFGR & RCC_CFGR_SWS,其值为0;经switch(tmp)选择,SystemCoreClock = HSI_VALUE。也就是说,在启动和初始化两个阶段,系统时钟一直未配置成PLL。
那么,系统时钟是否必须配置成100MHz,以满足后面的代码应用呢?若是,在何处调整代码呢?
起初都是使用HSI然后使用SystemInit里面的程序来设置成HSE pll 至于在哪里设置的,你如果使用keil可以全局搜索一下,我记着应该是在s文件中。
建议你在搜索一下时钟设置的文章,那里面的介绍的更多。祝你成功
你好!
我在运行eMPL-Client.py时也遇到和你一模一样的问题,请问你现在是否已经解决,如果已解决能否请教一下解决方法,谢谢!
eMPL_client.py的问题,解决了。版本的问题。
Invensense的文档(Motion Driver 6.12 – Getting Started Guide )里所给出的链接如下:
-------------------
Python: http://www.python.org/downloads/
Pyserial: http://pypi.python.org/pypi/pyserial
Pygame: http://www.pygame.org/download.shtml
------------------
其中:
python我选择的是2.7版;但pyserial是按链接下载了3.0.1版。问题就在这里。
后面下载pyserial2.7,链接http://pypi.python.org/pypi/pyserial/2.7。
替换安装pyserial后,启动eMPL_client.py就能顺利收到DMP上传的数据了。
真是太感谢了!
最近没有更新,过段时间做自己的底盘的时候再更新。
不过你可以看看Fairchild的FMT-1030和FIS1100,这两款带算法。
如果你想快速的话...
y有更好的方案欢迎沟通。