打印
[其它]

HT66F3195的时钟介绍

[复制链接]
935|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hudi008|  楼主 | 2022-11-15 22:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 eltonchang2001 于 2022-11-16 09:47 编辑

芯片基础属性
  • 时钟
  • 中断
  • 堆栈
  • 看门狗
  • 工作模式
时钟篇

一时候不知应该从哪里开始写起。不过整体来说的话,这个系列的单片机时钟结构其实并不算复杂。

系统时钟


主要是四个时钟的概念:

外部时钟都是要外接晶振的,内部时钟则是通过RC震荡电路来提供脉冲。
上电的时候默认是都选用内部时钟的。

fsys是系统时钟的意思,可以由高速时钟fH(即HXT或者HIRC其中一个)提供,也可以由低速时钟(即LXT或者LIRC其中一个)提供。高速时钟还提供了多种分频,相对来说比较灵活。

时钟,指令周期,时钟周期

合泰的8位单片机大部分都是4T架构的,可以通过数据手册提供的信息推导出来。

如果系统是16M的话,1个时钟周期则是1/16000000=0.0625us。
指令周期为0.25us的话也就是说明两者关系如下:

指令周期 = 时钟周期 * 4

同理可得,
8M的指令周期是0.5us,时钟周期是0.125us。
12M的指令周期是0.33us,时钟周期是0.08us,这个除不尽。

所有指令都可在 1~3 个指令周期内完成。

这个也是数据手册提到的,一条指令并不是指一句C语言代码,而是将这个C的代码转成的汇编指令,再看用了多少条汇编指令来完成。所以就算是看到的一个简单的C语言程序,转成汇编的话也是几条指令。

如图只是把PB4翻转一下,这里用了18条汇编指令,如果是按照8M的时钟,指令周期位0.5us,一个简单的操作用了9us。


但是如果用异或来完成这个操作,转换成的汇编指令就只有6条,耗时3us。
所以用这种主频较低的单片机就很锻炼程序功底的。很多东西随便都能写出来,但是如果要保证效率,同时兼顾ROM和RAM空间,就要考虑非常多东西,我的意思是,没什么必要不要折腾自己,外面很多资源丰富的单片机

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

240

主题

9407

帖子

11

粉丝