11822|43

1158

帖子

2

TA的资源

版主

楼主
 

【MSP430趣谈】MSP430第六讲之时钟简介与图形化配置方式 [复制链接]

 
MSP430教程之六



   不知道大家现在有没有一点感觉步入单片机的感觉,这次我们来聊一聊关于单片机的“心脏基调”,也就是单片的时钟。为什么说是心脏呢?也就是说单片机的运行步伐是靠这个时钟来决定的,按照时钟的步伐来一步一步执行代码的。具体的话之后大家慢慢体会。
   同样的我们需要打开数据手册,还是那个文件。

   我们看下它的时钟来源有哪些?
   总共有五个:
1.LFXTCLK:低频晶振。在手册说明中写道可以使用32768HZ的几种晶振,同时也可以外部时钟源输入可支持50kHz或者更小。
2.VLOCLK:内部低功耗的低频晶振,通常在10kHz左右
3.DCOCLK:内部数字可控晶振,具有可选择的频率
4.MODCLK:内部低功耗晶振,通常在5MHz左右
5.HFXTCLK:高频率晶振,范围为4MHz到24MHz。

   下面还说明了对于系统时钟来说可选择的模式,很详细。
我们大概看下来的话我们会发现关于时钟的章节非常多也非常复杂,对于初学者来说确实也比较吃力。我们在这里就知道对于430来说他的三个时钟:


1.MCLK:Main system Clock主系统时钟,顾名思义的话,该时钟决定了CPU的运行速度,该频率配置越高的话,CPU运行速度越快,但是同时带来的是CPU的功耗也就越大。
2.SMCLK:Sub-Main Clock,子系统时钟,专门为一些需要高速运转的时钟的片内外设提供时钟,包括像定时器和ADC等等。
3.ACLK:Auxiliary Clock,辅助时钟,该时钟的频率会很低,功耗也比较低。主要是给一些只需要低频时钟的片内外设,像LCD控制器等。
这几个时钟还可以进行输出。


   大家可能会想,我们之前没有进行配置时钟,但是单片机为什么会运行呢?
   我们在手册中找到如下一段话:

   告诉我们说在没有进行配置时钟的时候,单片机默认进行的时钟配置。这里我们暂时不去管它具体是什么意思,当我们进行到了一定基础的学习之后我们可以再返回这一块进行深入的了解。
   由于这里的时钟配置相对来说会复杂很多,这也是TI低功耗的特色之一,可以通过关闭一些高速时钟来节约定能的损耗。面对复杂的时钟配置TI也给我们提供了一个便利的方式,那就是Grace,一个图形化的配置工具,我们看下怎么用。
   所先,打开CCS,在help下面找到CCS App Store。

   输入Grace。点击select。(我已经安装过了,所以是更新的按钮),之后点击install。

   安装好了之后我们建立工程。这里我们选择的就是Grace工程了。


   得到这个界面,如果没有的话可以在工程目录下面点击main.cfg这个文件即可。

   我们按照Getting Started的步骤进行就可以。点击Device Overview。

   在这里很多模块都可以进行模块化的配置,这里我们就不细讲,大家可以自己一个一个点击进去看。这里已经默认把看门狗(WatchDog)关闭了,就不用自己配置了。这里我们单击Clock System进入。

   继续点击进去,

   我们看到这里给了很多图形化的选项,方便我们进行配置。这里我们配置成如下,由于板子上的高速晶振没有焊接,只有焊接低速时钟的晶振,我们按照我们实际进行配置。

   我们将其配置在最高速度上面,然后将外部低速时钟输入。将main.cfg这个文件关掉,点击保存即可。下面再点击编译即可生成代码了。记住保存main.cfg这个步骤很重要,要不然会出现如下错误。

   好了,我们在工程中得到如下代码,

   当然这个图像化的配置不仅仅可以配置时钟,其他的很多东西也可以通过快速的图形化配置来达到快速开发的目的,相对还是很方便的。

在main函数中已经自动添加了Grace_init();那么这个函数是什么呢?我们右键open declaration进去看下。(或者是按住键盘上的Ctrl,在点击这个函数即可)

  这次的时钟配置我们就讲到这里,有点粗糙,后面我们会在用一讲来剖析430的时钟配置,以及他这样设计的好处在哪里。


code5_1.rar (485.02 KB, 下载次数: 89)
code6_1.rar (103.01 KB, 下载次数: 78)

最新回复

ccs 6.2.0版本在app center 中找不到grace,怎么办?  详情 回复 发表于 2017-4-20 11:45
 
点赞 关注(5)

回复
举报

828

帖子

216

TA的资源

管理员

沙发
 
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身

点评

谢谢支持!!!  详情 回复 发表于 2015-12-21 15:02
 
个人签名在路上……

EEworld 有你有我
 

回复

1158

帖子

2

TA的资源

版主

板凳
 
 
 
 

回复

1228

帖子

0

TA的资源

纯净的硅(高级)

4
 
grace支持FR5969了都,才知道

点评

现在基本都支持了  详情 回复 发表于 2016-2-20 22:38
 
个人签名

喝最烈的酒,..DIY最实用的东西

 
 

回复

1158

帖子

2

TA的资源

版主

5
 
lidonglei1 发表于 2016-2-20 21:46
grace支持FR5969了都,才知道

现在基本都支持了

点评

我想起来了,FR5969早就支持,FR4133和F5529到现在也没支持,感觉launchpad开发板应该优先支持  详情 回复 发表于 2016-2-23 09:44
 
 
 

回复

1228

帖子

0

TA的资源

纯净的硅(高级)

6
 
michael_llh 发表于 2016-2-20 22:38
现在基本都支持了

我想起来了,FR5969早就支持,FR4133和F5529到现在也没支持,感觉launchpad开发板应该优先支持

点评

恩恩,有可能,launchpad作为TI出的对该系列的评估板,对评估板的芯片会优先支持  详情 回复 发表于 2016-2-23 10:06
 
个人签名

喝最烈的酒,..DIY最实用的东西

 
 

回复

1158

帖子

2

TA的资源

版主

7
 
lidonglei1 发表于 2016-2-23 09:44
我想起来了,FR5969早就支持,FR4133和F5529到现在也没支持,感觉launchpad开发板应该优先支持

恩恩,有可能,launchpad作为TI出的对该系列的评估板,对评估板的芯片会优先支持
 
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

8
 
我用的是f5529,这个以前没了解过,今天长知识了。开学啦~
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

9
 
楼主编译出现你上面提到的这个错误怎么解决,我保存了main.cfg。可能我有地方操作不对能不能详细说一下。

点评

你配置完了之后要保存,生成代码,之后才可以编译  详情 回复 发表于 2016-4-7 13:17
 
 
 

回复

1158

帖子

2

TA的资源

版主

10
 
xjx9966 发表于 2016-4-7 11:31
楼主编译出现你上面提到的这个错误怎么解决,我保存了main.cfg。可能我有地方操作不对能不能详细说一下。

你配置完了之后要保存,生成代码,之后才可以编译
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

11
 
你好,我保存了main.cfg,然后直接点 之后开始生成和编译结果 但是提示出错!

点评

你的错误提示是什么?  详情 回复 发表于 2016-4-8 12:41
 
 
 

回复

1158

帖子

2

TA的资源

版主

12
 
xjx9966 发表于 2016-4-8 09:38
你好,我保存了main.cfg,然后直接点之后开始生成和编译结果但是提示出错!

你的错误提示是什么?
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

13
 

**** Build of configuration Debug for project code5959 ****

"D:\\Program Files\\ti\\ccsv6\\utils\\bin\\gmake" -k all
making ../src/grace/grace.lib ...
gmake[1]: Entering directory `D:/Project/workspace_v6_1/code5959/src/grace'
gmake[1]: *** No rule to make target `objs/adc12_b.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/aes256.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/comp_e.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/crc.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/crc32.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/cs.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/dma.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/esi.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/eusci_a_spi.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/eusci_a_uart.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/eusci_b_i2c.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/eusci_b_spi.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/framctl.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/framctl_a.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/gpio.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/lcd_c.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/mpu.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/mpy32.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/pmm.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/ram.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/ref_a.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/rtc_b.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/rtc_c.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/sfr.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/sysctl.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/timer_a.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/timer_b.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/tlv.obj', needed by `grace.lib'.
gmake[1]: *** No rule to make target `objs/wdt_a.obj', needed by `grace.lib'.
gmake[1]: Target `all' not remade because of errors.
gmake[1]: Leaving directory `D:/Project/workspace_v6_1/code5959/src/grace'
gmake: *** [../src/grace/grace.lib] Error 2
'Building file: ../main.cfg'
'Invoking: XDCtools'
"D:/Program Files/ti/xdctools_3_31_01_33_core/xs" --xdcpath="D:/Program Files/ti/grace_3_10_00_82/packages;D:/Program Files/ti/msp/MSPWare_3_20_00_37/driverlib/packages;D:/Program Files/ti/msp/MSPWare_3_20_00_37/driverlib;D:/Program Files/ti/ccsv6/ccs_base;" xdc.tools.configuro -o configPkg -t ti.targets.msp430.elf.MSP430X -p ti.platforms.msp430:MSP430FR5959 -r debug -c "D:/Program Files/ti/ccsv6/tools/compiler/ti-cgt-msp430_4.4.7" -Dxdc.cfg.tsort.policy=fast -Dxdc.cfg.gen.metadataFiles=false -Dxdc.cfg.SourceDir.verbose=7 --compileOptions "-vmspx --abi=eabi --data_model=restricted --use_hw_mpy=F5 --include_path=\"D:/Program Files/ti/ccsv6/ccs_base/msp430/include\" --include_path=\"D:/Program Files/ti/ccsv6/tools/compiler/ti-cgt-msp430_4.4.7/include\" --advice:power=all --advice:hw_config=all -g --define=__MSP430FR5959__ --define=_MPU_ENABLE --display_error_number --diag_warning=225 --diag_wrap=off --silicon_errata=CPU21 --silicon_errata=CPU22 --silicon_errata=CPU40 --printf_support=minimal  " "../main.cfg"
configuring main.xe430X from package/cfg/main_pe430X.cfg ...
Starting build of library sources ...
    cd D:/Project/workspace_v6_1/code5959/src
    D:/PROGRA~1/ti/xdctools_3_31_01_33_core/gmake.exe -f D:/Project/workspace_v6_1/code5959/src/makefile.libs GEN_SRC_DIR=D:/Project/workspace_v6_1/code5959/src
making D:/Project/workspace_v6_1/code5959/src/grace/grace.lib ...
gmake[1]: Entering directory `D:/Project/workspace_v6_1/code5959/src/grace'
gmake[1]: Leaving directory `D:/Project/workspace_v6_1/code5959/src/grace'
gmake[1]: *** No rule to make target `objs/adc12_b.obj', needed by `grace.lib'.  Stop.
gmake: *** [D:/Project/workspace_v6_1/code5959/src/grace/grace.lib] Error 2
error: xdc.cfg.SourceDir: "D:/Program Files/ti/xdctools_3_31_01_33_core/packages/xdc/cfg/SourceDir.xs", line 209: xdc.cfg.SourceDir : Build of generated source libraries failed: exit status = 2:

js: "D:/Program Files/ti/xdctools_3_31_01_33_core/packages/xdc/cfg/Main.xs", line 160: Error: Configuration failed!
Build of libraries failed.
xdctools_3_31_01_33_core\gmake.exe: *** [package/cfg/main_pe430X.xdl] Error 1
xdctools_3_31_01_33_core\gmake.exe: *** Deleting file `package/cfg/main_pe430X.xdl'
xdctools_3_31_01_33_core\gmake.exe: *** [package/cfg/main_pe430X.xdl] Deleting file `package/cfg/main_pe430X.h'
xdctools_3_31_01_33_core\gmake.exe: *** [package/cfg/main_pe430X.xdl] Deleting file `package/cfg/main_pe430X.c'
Warning: directory "D:/Program Files/ti/msp/MSPWare_3_20_00_37/driverlib" on package path has a "packages" subdirectory - did you mean this instead?
js: "D:/Program Files/ti/xdctools_3_31_01_33_core/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
gmake: *** [configPkg/linker.cmd] Error 1
gmake: Target `all' not remade because of errors.

**** Build Finished ****

点评

没有grace.lib的库文件,估计你安装上面有错误。你是安装ccs v6的版本吗?然后在app store当中安装grace吗  详情 回复 发表于 2016-4-8 16:14
 
 
 

回复

1158

帖子

2

TA的资源

版主

14
 
xjx9966 发表于 2016-4-8 14:22
**** Build of configuration Debug for project code5959 ****

"D:\\Program Files\\ti\\ccsv6\%util ...

没有grace.lib的库文件,估计你安装上面有错误。你是安装ccs v6的版本吗?然后在app store当中安装grace吗
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

15
 
是的(Code Composer Studio 6.1.2),我也找了半天没找到这个库,真是郁闷!难道是安装的时候不对???

点评

你要通过ccs中的app store进行安装  详情 回复 发表于 2016-4-8 17:46
 
 
 

回复

1158

帖子

2

TA的资源

版主

16
 
xjx9966 发表于 2016-4-8 16:48
是的(Code Composer Studio 6.1.2),我也找了半天没找到这个库,真是郁闷!难道是安装的时候不对???

你要通过ccs中的app store进行安装
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

17
 
是在CCS的app store当中安装的grace,是不是我安装的时候没有关闭杀毒软件?
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

18
 
非常感谢楼主的帮助,已经弄好了现在可以用。卸载了重新安装,在安装前关闭所有的杀毒软件和防护(担心中毒可先断开网络连接)然后再安装,这样就不会被拦截了!

点评

恩恩,解决了就好哈!如果可以的话可以把你遇到的问题整合成一个帖子,这样可以帮助到更多的人咯!  详情 回复 发表于 2016-4-11 12:17
 
 
 

回复

1158

帖子

2

TA的资源

版主

19
 
xjx9966 发表于 2016-4-11 11:10
非常感谢楼主的帮助,已经弄好了现在可以用。卸载了重新安装,在安装前关闭所有的杀毒软件和防护(担心中毒 ...

恩恩,解决了就好哈!如果可以的话可以把你遇到的问题整合成一个帖子,这样可以帮助到更多的人咯!
 
 
 

回复

18

帖子

0

TA的资源

一粒金砂(初级)

20
 
就目前看应该是因为安装时被杀毒软件拦截了导致无法完整安装,其它原因暂时没发现。在安装时会有一个提示,只是我当时忽略了,大家只要安装的时候注意一下提示应该就没啥问题!

点评

恩恩,好的,我到时加到帖子里去,谢谢支持咯!!  详情 回复 发表于 2016-4-11 13:35
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表