你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F0标准库中缺失core_cm0.0

[复制链接]
khadgar 提问时间:2015-3-17 10:35 /
悬赏8ST金币已解决
从论坛的资料区下载了STM32F0xx_StdPeriph_Lib_V1.5.0的固件库。新建工程的时候发现找不到core_cm0.c的文件,只在STM32F0xx_StdPeriph_Lib_V1.5.0\Libraries\CMSIS\Device\ST\STM32F0xx\Include目录下找到了core_cm0.h的头文件。
是STM32F0系列不需要core_cm0.c文件了吗,还是ST的工程师忘记添加了。

最佳答案

查看完整内容

没有.C文件,只有头文件,编译一下 就 ok了,和10x的不同,开始我也迷糊过
收藏 评论17 发布时间:2015-3-17 10:35

举报

17个回答
wamcncn 回答时间:2015-3-17 10:35:01
本帖最后由 wambob 于 2015-3-17 11:23 编辑
卡德加 发表于 2015-3-17 11:16
头文件是有的,C文件不是必须的吗


没有.C文件,只有头文件,编译一下 就 ok了,和10x的不同,开始我也迷糊过
foxglove 回答时间:2015-3-17 10:45:08
发了这么多?
khadgar 回答时间:2015-3-17 10:47:49

能解决问题都不算多
wamcncn 回答时间:2015-3-17 11:02:08
添加路径吧,在keil下面的ARM
wamcncn 回答时间:2015-3-17 11:03:11
本帖最后由 wambob 于 2015-3-17 11:09 编辑

DD.JPG D:\Keil_v5\ARM\Pack\ARM\CMSIS\4.2.0\CMSIS\Include
也可以把缺少的文件拷贝到你的 工程下
Mandelbrot_Set 回答时间:2015-3-17 11:07:47
自己在工程里新建一个,把原版内容复制进去.这个.c也确实不是必须要有的.
khadgar 回答时间:2015-3-17 11:15:27
wambob 发表于 2015-3-17 11:03
D:\Keil_v5\ARM\Pack\ARM\CMSIS\4.2.0\CMSIS\Include
也可以把缺少的文件拷贝到你的 工程下
...

可是这个目录下面也是只有头文件啊,没有C文件,和库给的一样
截图.PNG
khadgar 回答时间:2015-3-17 11:16:42
wambob 发表于 2015-3-17 11:03
D:\Keil_v5\ARM\Pack\ARM\CMSIS\4.2.0\CMSIS\Include
也可以把缺少的文件拷贝到你的 工程下
...

头文件是有的,C文件不是必须的吗
khadgar 回答时间:2015-3-17 11:18:17
Mandelbrot_Set 发表于 2015-3-17 11:07
自己在工程里新建一个,把原版内容复制进去.这个.c也确实不是必须要有的.

core_cm0.h我已经添加到工程里了,core_cm0.c没找到。只添加一个头文件就可以了?
Mandelbrot_Set 回答时间:2015-3-17 11:34:15
.c肯定是有的(原始版本在哪就不知道了) ,基本内容就是.h里 extern函数申明的实现
khadgar 回答时间:2015-3-17 12:01:23
谢谢大家的帮助!!!
下载了一个原子的STM32F051的例程,里面没有添加core_m0.c文件,编译也是通过了。可能F0系列不需要这个文件吧
khadgar 回答时间:2015-3-17 12:01:57
wambob 发表于 2015-3-17 11:22
没有.C文件,只有头文件,编译一下 就 ok了,和10x的不同,开始我也迷糊过 ...

下载了一个原子的STM32F051的例程,里面没有添加core_m0.c文件
moyanming2013 回答时间:2015-3-17 15:50:41
STM32F0xx_StdPeriph_Lib_V1.5.0程序包ST不再更新了,请下载STM32CubeF0:
http://www.st.com/web/en/catalog/tools/PF260612
解压后在..\Drivers\CMSIS\Include里面会有core_cm0.h的头文件。
不需要对应的.c文件,core_cm0.h声明了一些M0相关的寄存器,必要的预定义,比如inline,还有定义的函数,比如:
__STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
{
  if ((ticks - 1) > SysTick_LOAD_RELOAD_Msk)  return (1);      /* Reload value impossible */

  SysTick->LOAD  = ticks - 1;                                  /* set reload register */
  NVIC_SetPriority (SysTick_IRQn, (1<<__NVIC_PRIO_BITS) - 1);  /* set Priority for Systick Interrupt */
  SysTick->VAL   = 0;                                          /* Load the SysTick Counter Value */
  SysTick->CTRL  = SysTick_CTRL_CLKSOURCE_Msk |
                   SysTick_CTRL_TICKINT_Msk   |
                   SysTick_CTRL_ENABLE_Msk;                    /* Enable SysTick IRQ and SysTick Timer */
  return (0);                                                  /* Function successful */
}
khadgar 回答时间:2015-3-17 16:06:04
moyanming2013 发表于 2015-3-17 15:50
STM32F0xx_StdPeriph_Lib_V1.5.0程序包ST不再更新了,请下载STM32CubeF0:
http://www.st.com/web/en/catal ...

谢谢!在下cube了,速度太慢还没下完。
就是说zhi要有.h就行了吧,.c可有可无。
12下一页

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版