2、RH850外设时钟选择及配置

article/2025/11/6 16:48:55

前言

 

上一篇文章完成了RH850时钟源寄存器配置,外设要正常工作,必须要配置对应的时钟,这篇文章说明RH850外设时钟配置。

 

  • 时钟选择寄存器

   下面表格是RH850-F1K技术规格书列出的外设时钟寄存器。

ba8422bad7d445f6b7fd5fa17bf05777.png

 

   外设时钟寄存器基本都相同,如TAUJ代表的是定时器J的时钟,ADCA代表是A/D转换时钟。下面以RH850-F1K 定时器TAUJ为例,介绍外设时钟相关寄存器。

 

1.1 TAUJ时钟源选择寄存器  C_AWO_TAUJ Source Clock Selection Register

5cbaaa008c0049f28049064b125a6f20.png

 

CKSC_ATAUJS_CTL定时器TAUJ时钟源选择寄存器可以32bit读写。地址:FFF8 2100H,复位值0000 0001H。

Bit position

Bit Name

Function

31 - 3

保留

 

2 - 0

ATAUJSCSID[2:0]

000: 禁止配置

001: 内部高速振荡器

010: 外部主晶振

011: 内部低速晶振

100: PPLLCLK2

其他禁止配置

 

这个寄存器选择定时器时钟的来源,比较简单,按需要选择。

 

1.2 TAUJ时钟源激活状态寄存器  C_AWO_TAUJ Source Clock Active Register

745d976656b24afe81f66e776df79d2c.png

 

CKSC_ATAUJS_ACT定时器TAUJ时钟源激活状态寄存器可以32bit读。地址:FFF8 2108H,复位值0000 0001H。

Bit position

Bit Name

Function

31 - 3

保留

 

2 - 0

ATAUJSACT [2:0]

000: 禁止配置

001: 内部高速振荡器

010: 外部主晶振

011: 内部低速晶振

100: PPLLCLK2

其他禁止配置

 

时钟源选择寄存器配置后,需要读这个寄存器,直到这个寄存器值和时钟源选择寄存器值一致,说明时钟源选择寄存器配置成功。

 

1.3 TAUJ时钟分频寄存器 C_AWO_TAUJ Clock Divider Selection Register

62db06821b484889953b01b8a4e77ec9.png

CKSC_ATAUJD_CTL定时器TAUJ时钟分频寄存器可以32bit读写。地址:FFF8 2200H,复位值0000 0001H。

Bit position

Bit Name

Function

31 - 3

保留

 

2 - 0

ATAUJDCSID [2:0]

000: 禁止配置

001: 选择时钟/1

010: 选择时钟/2

011: 选择时钟/4

100: 选择时钟/8

其他禁止配置

 

1.4 TAUJ时钟分频激活状态寄存器C_AWO_TAUJ Clock Divider Active Register

c31d870430834596a0dff7690c7c2ff8.png

 

CKSC_ATAUJD_ACT定时器TAUJ时钟分频激活状态寄存器可以32bit读。地址:FFF8 2208H,复位值0000 0001H。

Bit position

Bit Name

Function

31 - 3

保留

 

2 - 0

ATAUJDACT [2:0]

000: 禁止配置

001: 选择时钟/1

010: 选择时钟/2

011: 选择时钟/4

100: 选择时钟/8

其他禁止配置

 

时钟分频寄存器配置后,需要读这个寄存器,直到这个寄存器值和时钟时钟分频寄存器值一致,说明时钟分频寄存器配置成功。

 

1.5 TAUJ时钟待机模式停止寄存器C_AWO_TAUJ Stop Mask Register

8534dff0e6ed493d83ca366856609295.png

 

CKSC_ATAUJD_STPM定时器TAUJ待机模式停止寄存器可以32bit读写。地址:FFF8 2218H,复位值0000 0002H。

Bit position

Bit Name

Function

31 - 1

保留

 

0

ATAUJD

STPMSK

0: 待机模式停止

1: 待机模式不停止

 

其他外设寄存器和TAUJ基本相同,这里就不介绍了。

 

二、RH850-F1K时钟源及外设时钟配置例程

 

void Init_Clocks(void)

{

/*配置主晶振 16M*/

if((CLKCTLMOSCS&0x04u) != 0x4u)  /* 检测MainOsc 有没有启动 */

       {

CLKCTLMOSCC=0x06;  /* 10B,(8MHz < MOSC frequency =< 16MHz) */

            CLKCTLMOSCST=0x8000;  /* 设置稳定延时时间(8,19 ms) */

protected_write(WPROTRPROTCMD0,WPROTRPROTS0,CLKCTLMOSCE,0x01u);  /* MOSCE=0x01,使能主晶振*/

while (((CLKCTLMOSCS&0x04u) != 0x04u) != 0x04u); /* 等待MainOSC正常工作 */

}

/*配置PLL 80M*/

if((CLKCTLPLLS&0x04u) != 0x04u)  /* 检测PLL有没有启动 */

{

CLKCTLPLLC=0x00010B3B;  /* 配置PLL控制寄存器,主晶振 16M,CPLLOUT,PPLLOUT输出80M,数据来源见前面分析*/

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLPLLE,0x01u);  /*使能 PLL */

while((CLKCTLPLLS&0x04u) != 0x04u){}   /*等待 PLL正常工作 */

}

/*配置CPU时钟80M*/

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_CPUCLKD_CTL,0x01u); /*CPU时钟480/6=80M */

  while(CLKCTLCKSC_CPUCLKD_ACT!=0x01u);

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_CPUCLKS_CTL,0x03u); /*CPU时钟源选择,BIT1-0, 3-PLL输出CPLLCLK*/

while(CLKCTLCKSC_CPUCLKS_ACT!=0x03u); /*等待 CPU时钟正常工作 */

/* 设置PERI2总线 40 MHZ (PPLLCLK2) */

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_IPERI2S_CTL,0x02u);

while(CLKCTLCKSC_IPERI2S_ACT!=0x02u);

/*设置ADCA0时钟 40 MHZ (PPLLCLK2)  */

protected_write(WPROTRPROTCMD0,WPROTRPROTS0,CLKCTLCKSC_AADCAS_CTL,0x03u);

while(CLKCTLCKSC_AADCAS_ACT!=0x03u);

/*设置ADCA1时钟 40 MHZ (PPLLCLK2)  */

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_IADCAS_CTL,0x03u);

while(CLKCTLCKSC_IADCAS_ACT!=0x03u);

/*设置RLIN时钟 40 MHZ (PPLLCLK2)  */

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_ILINS_CTL,0x03u);

while(CLKCTLCKSC_ILINS_ACT!=0x03u);

/*设置CAN时钟80 MHZ (CPUCLK)  */

protected_write(WPROTRPROTCMD1,WPROTRPROTS1,CLKCTLCKSC_ICANS_CTL,0x03u);

while(CLKCTLCKSC_ICANS_ACT !=0x03u);

/*设置CAN通讯时钟16 MHZ (main osc)  */

protected_write(WPROTRPROTCMD1,WPROTRPROTS1, CLKCTLCKSC_ICANOSCD_CTL,0x01u);

while(CLKCTLCKSC_ICANOSCD_CTL !=0x01u);

 

/* Select the Low Speed IntOsc(240kHz) as TAUJ Clock */  

/*设置TAUJ时钟40 MHZ (PPLLCLK2)  */

protected_write(WPROTRPROTCMD0,WPROTRPROTS0,CLKCTLCKSC_ATAUJS_CTL,0x04u);  //??

while(CLKCTLCKSC_ATAUJS_CTL!=0x04u);

}

 

RH850时钟相关说明完成了,时钟是单片机系统最基本部分,时钟初始化完成后,系统就可以跑起来了。

 

 

 


http://chatgpt.dhexx.cn/article/O0heAjqP.shtml

相关文章

3、RH850端口说明及及复用功能配置

RH850端口有3种工作模式 通用IO口(普通数字口)。PMC控制寄存器对应bit为0。软件配置复用模式。PMC控制寄存器对应bit为1。PIPC寄存器对应bit为0。硬件直接连接模式。PMC控制寄存器对应bit为1。PIPC寄存器对应bit为1。 主要控制寄存器 PIPC 0: 端口由软件配置(software I/O c…

10、RH850 CAN通讯功能和配置

前言: CAN 是 Controller Area Network 的缩写&#xff08;以下称为 CAN&#xff09;&#xff0c;是 ISO国际标准化的串行通信协议。 在当前的汽车产业中&#xff0c;出于对安全性、舒适性、方便性、低公害、低成本的要求&#xff0c;各种各样的电子控制系统被开发了出来。由于…

瑞萨RH850芯片在IAR和CS+编译环境下设置堆(heap)和栈(stack)的大小

博主联系方式&#xff1a;QQ&#xff1a;1256153255 &#xff0c;邮箱&#xff1a;1256153255qq.com 点击这里了解RH850开发板 点击这里了解瑞萨E1仿真器 点击这里了解GHS Multi 在实际使用RH850开发的过程中&#xff0c;有时会需要调整芯片的堆栈空间大小。 对于RH850芯片&…

播放rtmp在线网站及播放器

2019独角兽企业重金招聘Python工程师标准>>> 网站地址 http://www.cutv.com/demo/live_test.swf 推流地址 rtmp://ip:8005/live/32010020160918113426717107expxqe 或者采用flash player 也可以 -----------------------------------------------------------------…

rtmp/rtsp播放器

相信大家在做rtmp、rtsp直播的时候&#xff0c;最大的困惑就是选个靠谱的播放器&#xff0c;直播的延迟&#xff0c;一定意义上说&#xff0c;90%的取决于播放器的好坏。 那啥样的播放器才是靠谱的播放器呢&#xff1f;笔者以为&#xff0c;稳定、低延迟、支持路数多&#xff0…

网页可以播放RTMP视频流?支持RTMP的网页播放器

随着4G/5G网络的发展&#xff0c;以及有限带宽越来越大&#xff0c;人们对视频直播的需求也越来越多。不仅普通的互联网直播发展很快&#xff0c;传统的安防监控也开始互联网化&#xff0c;走起了互联网直播的路。雪亮工程、明厨亮灶、手机看店、智慧幼儿园监控等等都是将传统的…

rtmp播放器,使用videojs播放,稳定

rtmp播放器测试dome下载 https://download.csdn.net/download/zhou_yongzhe/10923743 三步走 1.把video-jsplay文件夹下的文件放到nginx服务器的html文件夹下&#xff08;Ubuntu系统nginx的路径为、usr/local/nginx/html/&#xff09; 2.启动ngixn 3.如果是本机测试&#x…

RTMP播放器网页互联网直播音视频流媒体播放器EasyPlayer-RTMP-iOS播放H265格式的视频源

背景分析 RTMP是Real Time Messaging Protocol&#xff08;实时消息传输协议&#xff09;的首字母缩写。该协议基于TCP&#xff0c;是一个协议族&#xff0c;包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议&#xff0c;主要用…

windows下支持H265的rtmp ffplay播放器 ffmpeg的编译

前几天在项目中添加了rtmp对H265的支持&#xff0c;需要推流端 服务器端 以及播放器三个方面的处理。功能已经实现 &#xff0c;感兴趣的可以 去我的上一篇文章看下。 RTMP 推送H265的实现&#xff08;推流端、服务器、播放端&#xff09;ffmpeg 播放H265 之前是在的播放器是在…

服务器(公网推rtmp流),网页本地(qq浏览器)播放rtmp流,且可切换rtmp流播放。使用了video.js、videojs-flash.js、jquery-3.4.1.js和我自己写的一个js

问题&#xff1a; 最开始我想在下拉列表的值发生变化时将video标签包含的source标签里面的src中的rtmp流直接替换掉&#xff0c;达到切换rtmp源播放的目的&#xff0c;但是一直无法生效&#xff0c;最后我想每个源直接做一个html页面&#xff0c;发现如果有几百个源就需要做很多…

Android手机RTMP播放工具(APK,支持秒开)

Android手机RTMP播放工具是一款可以在安卓手机播放rtmp流的工具&#xff0c;基于FFmpegopenCV开发。 下载地址&#xff1a;Android手机RTMP播放工具&#xff08;APK&#xff0c;支持秒开&#xff09;-C文档类资源-CSDN下载

rtmp http mp4 网页播放器

对于页面上如何播放rtsp视频时&#xff0c;项目经过查阅资料后最终采用转成rtmp流在进行播放。在播放时调研了一下网页播放器&#xff0c;最终选择ckplayer。还有一款叫萤石云内部调用得也是ckplayer。 1. ckplayer(http://www.ckplayer.com/) ckplayer是国内网页上播放视频的…

QT实现低延迟的RTSP、RTMP播放器

好多开发者在QT环境下实现RTMP或RTSP播放时&#xff0c;首先考虑到的是集成VLC&#xff0c;集成后&#xff0c;却发现VLC在延迟、断网重连、稳定性等各个方面不尽人意&#xff0c;无法满足上线环境需求。本文以调用大牛直播SDK&#xff08;官方&#xff09;的Windows平台播放端…

【技术分享】如何实现功能完备性能优异的RTMP、RTSP播放器?

技术背景 这几年&#xff0c;我们对接了太多有RTSP或RTMP直播播放器诉求的开发者&#xff0c;他们当中除了寻求完整的解决方案的&#xff0c;还有些是技术探讨&#xff0c;希望能借鉴我们播放端的开发思路或功能特性&#xff0c;完善自己的产品。 忙里偷闲&#xff0c;今天我…

高稳定、低延时、高并发RTMP播放器流媒体音视频播放器EasyPlayer-RTMP-iOS器如何将核心代码打包成静态库

背景分析 RTMP是Real Time Messaging Protocol&#xff08;实时消息传输协议&#xff09;的首字母缩写。该协议基于TCP&#xff0c;是一个协议族&#xff0c;包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议&#xff0c;主要用…

Windows平台RTMP、RTSP播放器录像模块精细化控制

技术背景 上篇文章&#xff0c;我们介绍了Unity平台RTMP、RTSP播放器录像功能&#xff0c;这里&#xff0c;我们详细的介绍下&#xff0c;做个RTSP或RTMP拉流端录像模块有哪些需要考虑的技术点&#xff1f; 在我们常规的考量&#xff0c;RTMP或RTSP流录制&#xff0c;无非就是…

RTMP视频播放器

感谢作者tcking、Bilibili&#xff0c;本项目借鉴了GiraffePlayer项目&#xff0c;项目一开始的灵感来源于GiraffePlayer项目&#xff0c;后期做纯粹做了视频播放器的界面的定制&#xff0c;基于ijkplayer项目进行的播放器界面UI封装。 简介 当前项目是基于ijkplayer项目进行…

从零开发一款Android RTMP播放器

1. 背景介绍 15年移动端直播应用火起来的时候&#xff0c;主要的直播协议是RTMP&#xff0c;多媒体服务以Adobe的AMS、wowza、Red5、crtmpserver、nginx rtmp module等&#xff0c;后面过长RTMP服务SRS开始流行。Android端播放器主要以开始以EXOPlayer播放HLS&#xff0c;但是…

rtsp+rtmp多路网页播放

一、前言 之前博主有写过 一篇博文&#xff0c;讲的是使用videojs在谷歌浏览器网页上播放rtmp流媒体&#xff0c;具体可参考我之前的博客&#xff1a;videojshlsrtmp网页播放 - 蛋片鸡 - 博客园 最近又开始研究了一下网页播放流媒体&#xff0c;在这里我主要补充一些播放rtmp、…

低延时极简RTMP播放器

RtmpPlaySdk简介 近期将项目上RTMP播放相关功能进行打包整理&#xff0c;实现了一款低延时的极简接口RTMP播放器&#xff08;Windows版和Android版&#xff09;。市面上的RTMP播放器较多&#xff0c;有开源的ijkplayer及其衍生品&#xff0c;也有收费的功能繁多的播放器&#…