int ClockConfig(void)
{
u32 DIVCLK_DIVIDE = 10;
u32 CLKFBOUT_MULT = 53;
u32 CLKFBOUT_FRAC = 625;
u32 CLKOUT0_DIVIDE=11;
u32 CLKOUT0_FRAC=875;
u32 clock_config_reg_0;
u32 clock_config_reg_2;
u32 lock;
u32 timeout;
clock_config_reg_0 = ((u32)1<<26) | (CLKFBOUT_FRAC<<16) | (CLKFBOUT_MULT<<8) | DIVCLK_DIVIDE;
clock_config_reg_2 = ((u32)1<<18) | (CLKOUT0_FRAC<<8) | CLKOUT0_DIVIDE;
Xil_Out32(XPAR_CLK_WIZ_1_BASEADDR+0x200, clock_config_reg_0);
Xil_Out32(XPAR_CLK_WIZ_1_BASEADDR+0x208, clock_config_reg_2);
//fclk*CLKFBOUT_MULT.CLKFBOUT_FRAC/DIVCLK_DIVIDE/CLKOUT0_DIVIDE.CLKOUT0_FRAC=100
//fs=44.1k mclk=90.3168M
//clk0=100*53.625/5/11.875=90.316
usleep(1000);
lock = Xil_In32(XPAR_CLK_WIZ_1_BASEADDR+0x4) & 0x1;
if(lock) //check for lock
{
//Video Clock Generator not locked
Xil_Out32(XPAR_CLK_WIZ_1_BASEADDR+0x25C, 0x7);
usleep(1000);
Xil_Out32(XPAR_CLK_WIZ_1_BASEADDR+0x25C, 0x2);
timeout = 100000;
do
{
lock = Xil_In32(XPAR_CLK_WIZ_1_BASEADDR+0x4) & 0x1;
--timeout;
if(!timeout)
{
print("ERR:: Video Clock Generator failed lock\r\n");
return(XST_FAILURE);
}
}
while(!lock);
}
print("Video Clock Generator locked\r\n");
return(XST_SUCCESS);
}
VideoClockGen_WriteReg 可以更换为 xil_Out32();
VideoClockGen_ReadReg可以更换为xil_In32();
 一共4个寄存器

0x200
【7:0】八位分频值应用于所有输出时钟。
【15:8】乘法的整数部分
【25:16】乘法的小数部分
【26】对于分数乘法,该位应设置为1,将该位设置为0将使用默认配置。

CLKFBOUT分数除法的值可以为0到875,代表乘积乘以1000。

0x208 

位[7:0] = CLKOUT0_DIVIDE    整数
整数部分clkout0除数
例如,对于2.250,该值为2 = 0x2
位[17:8] = CLKOUT0_FRAC除数(3)   小数
clkout0的分数部分划分值
例如,对于2.250,该值为250 = 0xFA
位[18] = CLKOUT0_FRAC_EN(3)    使能
对于分数除法,该位应设置为1

计算方式 clko=mclk*(0x200寄存器)【25:8】/【7:0】/(208寄存器)【17:0】

clock gen sdk 代码笔记的更多相关文章

  1. JS SDK 随手笔记

    JS SDK 随手笔记 窗口模块 Frame/Multi Frame 对话框 页面间的通讯 生命周期 窗口层叠 窗口模块 窗口模块是是AppCan移动应用界面最基本的单位.窗口是每个界面布局的基础,他 ...

  2. <Python Text Processing with NLTK 2.0 Cookbook>代码笔记

    如下是<Python Text Processing with NLTK 2.0 Cookbook>一书部分章节的代码笔记. Tokenizing text into sentences ...

  3. 【hadoop代码笔记】Mapreduce shuffle过程之Map输出过程

    一.概要描述 shuffle是MapReduce的一个核心过程,因此没有在前面的MapReduce作业提交的过程中描述,而是单独拿出来比较详细的描述. 根据官方的流程图示如下: 本篇文章中只是想尝试从 ...

  4. 【hadoop代码笔记】hadoop作业提交之汇总

    一.概述 在本篇博文中,试图通过代码了解hadoop job执行的整个流程.即用户提交的mapreduce的jar文件.输入提交到hadoop的集群,并在集群中运行.重点在代码的角度描述整个流程,有些 ...

  5. 【Hadoop代码笔记】目录

    整理09年时候做的Hadoop的代码笔记. 开始. [Hadoop代码笔记]Hadoop作业提交之客户端作业提交 [Hadoop代码笔记]通过JobClient对Jobtracker的调用看详细了解H ...

  6. 将本地开发完的SDK代码上传到SVN上面:an error occurred while contacting the repository The server may be unreachable or the URL may be incorrect

    将本地开发完的SDK代码上传到SVN上面:an error occurred while contacting the repository  The server may be unreachabl ...

  7. [学习笔记] SSD代码笔记 + EifficientNet backbone 练习

    SSD代码笔记 + EifficientNet backbone 练习 ssd代码完全ok了,然后用最近性能和速度都非常牛的Eifficient Net做backbone设计了自己的TinySSD网络 ...

  8. 《VR入门系列教程》之22---GearVR SDK代码剖析

    GearVR SDK代码剖析     接下来我们来了解一下GearVR开发包的底层代码,它底层的代码和之前在第三章中讲的桌面SDK代码非常类似,当然,也有许多不同的地方.     首先,我们看看如何构 ...

  9. DW网页代码笔记

    DW网页代码笔记 1.样式.       class  插入类样式  标签技术(html)解决页面的内容样式技术(css)解决页面的外观脚本技术       解决页面动态交互问题<form> ...

随机推荐

  1. webpack 优化

    1 优化loader配置 1.1 缩小文件匹配范围(include/exclude)   通过排除node_modules下的文件 从而缩小了loader加载搜索范围 高概率命中文件  module: ...

  2. android 内存回收及怎样避免内存泄露

    http://blog.vunso.com/201307/android%E5%9E%83%E5%9C%BE%E5%9B%9E%E6%94%B6%E6%9C%BA%E5%88%B6%E5%8F%8A% ...

  3. Django REST Framework API Guide 01

    之前按照REST Framework官方文档提供的简介写了一系列的简单的介绍博客,说白了就是翻译了一下简介,而且翻译的很烂.到真正的生产时,就会发现很鸡肋,连熟悉大概知道rest framework都 ...

  4. mysql 案例 ~ insert插入慢的场景

    一简介: insert出现慢日志中,应该怎么检测呢 二 理解:事务提交延迟,一般出现在写日志延迟的情况下,会有几种可能    场景:    1 RR模式下,insert等待gap lock锁导致的  ...

  5. DeepLearning.ai-Week4-Face Recognition for the Happy House

    1 - Task Implement the triplet loss function Use a pretrained model to map face images into 128-dime ...

  6. OsWatcher 使用详解

    软件下载地址: https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=520996062954556&id=30113 ...

  7. Eclipse同时显示两个编辑窗口

    同时打开两个编辑窗口,点住一个窗口,拖到编辑窗口的最下面时或者最右面,会出现两个两个编辑窗口的轮廓,松开即可!

  8. linux 服务器下的基本操作

    1.SSH 上传: scp /path/file(这部分为本地的路径) user(远端目标用户名)@host(远端目标IP):/pathorfile(文件存储路径) 下载: scp user(远端用户 ...

  9. LwIP Application Developers Manual3---链路层和网络层协议之IPV6,ICMP,IGMP

    1.前言 本文主要讲述链路层和网络层的协议IPV6,ICMP 2.IPV6 2.1 IPV6特性 IPv6是IPv4的更新.其最显著的差别在于地址空间由32位转换成128位 2.2 从应用的角度看IP ...

  10. Linux内核很吊之 module_init解析 (下)【转】

    转自:https://blog.csdn.net/richard_liujh/article/details/46758073 版权声明:本文为博主原创文章,未经博主允许不得转载. https://b ...