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. lua与C交互 具体

    什么样类型的函数可以被Lua调用 typedef int (*lua_CFunction) (lua_State *L); 符合类型的函数怎样处理后才可以被Lua调用 使用lua_register或者 ...

  2. 关于ajax及相关数据传输问题

    之前整理的ajax相关应用笔记,一直没有时间整理,今天突然翻到特此将初稿大概的整理了一下,可能有点乱,欢迎指出不足之处. jQuery的ajax请求:complete函数一般无论服务器有无数据返回都会 ...

  3. sqlserver字符串分割

    create function sp_split( @c nvarchar(4000), @splitchar nvarchar(1) ) returns @table table (word nva ...

  4. 电路板上的元件R,T,D,C,U

    参考链接: https://zhidao.baidu.com/question/194132005.html

  5. Python简介(2017-07-16)

    2017-07-15,这是我学习python的第一天. 首先,python是一门当下很火热的开发语言,它的创始人是Guido Van Rossum.就目前情况而言,python语言的热度持续上升,已经 ...

  6. Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客

    ==他的博客应该不错,没有细看 Spring Boot学习记录(二)--thymeleaf模板 - CSDN博客 http://blog.csdn.net/u012706811/article/det ...

  7. HashSet、TreeSet和LinkedHashSet分别基于HashMap、TreeMap和LinkedHashMap

    1.如果你需要一个访问快速的Set,你应该使用HashSet: 当你需要一个排序的Set,你应该使用TreeSet: 当你需要记录下插入时的顺序时,你应该使用LinedHashSet. 2.因为Tre ...

  8. 获取汉字拼音&首字母

    pinyin4j https://www.cnblogs.com/yjq520/p/7681537.html

  9. flask 连接数据库

    FLASK 连接mysql 数据库 1 # -*- encoding: utf-8 -*- 2 3 from flask import Flask 4 #导入第三方连接库 5 from flask_s ...

  10. RabbitMQ简单应用の公平分发(fair dipatch)

    公平分发(fair dipatch)和轮询分发其实基本一致,只是每次分发的机制变了,由原来的平均分配到现在每次只处理一条消息 1.MQ连接工厂类Connection package com.mmr.r ...