error

1.procise设置800M,uboot中是720M

了解到整个过程是,当procise配置后,通过FSBL中的ps_init.c反应出来

// ARM_PLL_FDIV = 48
    // [22:16]
    EMIT_MASKWRITE(SLCR_REG_BASE + 0x100, 0x007f0000U, 0x00300000U),
    // ARM_PLL_CLKOUT0_DIVISOR = 2
    // [6:0]
    EMIT_MASKWRITE(SLCR_REG_BASE + 0x104, 0x0000007fU, 0x00000002U),

因为在procise中设置的输入频率为33.3333M

33.3333/2*48=799.999

为什么在uboot中 clk dump得到的是720M呢

因为虽然procise中设置了,但是我fmsh_nb1708_defconfig中使用的是fmsh-ql7010.dts

fmsh-ql7010.dts又包含了fmsh-psoc.dtsi

fmsh-psoc.dtsi中重新将clk设置为30000000

slcr: slcr@e0026000 {
            u-boot,dm-pre-reloc;
            #address-cells = <1>;
            #size-cells = <1>;
            compatible = "fmsh,psoc-slcr", "syscon", "simple-mfd";
            reg = <0xE0026000 0x1000>;
            ranges;

clkc: clkc@100 {
                u-boot,dm-pre-reloc;
                compatible = "fmsh,psoc-clkc";
                reg = <0x100 0x100>;
                #clock-cells = <1>;
                ps-clk-frequency = <30000000>;

30/2*48=720

解决办法就是,使用fmsh-ql7010-ai.dts,里面没有对ps-clk-frequency的定义,使用FSBL中定义的33.3333。

另/home/zhangyi/work/psoc_linux/u-boot-2018.07-fmsh-idyll/board/fmsh/fmql/Makefile

obj-y    += board.o
#obj-y    += ps_init_zb1.o
#obj-y    += ps_init_zb2.o
#obj-y    += ps_init_zb3.o
#obj-y    += ps_init_zb4.o
#obj-y    += ps_init_ai_demo.o
如果将全部都注释掉,那么在board.c中需要将ps_init();注释掉,因为其定义在ps_init_zbx中。

int board_early_init_f(void)
{
    //ps_init();
#ifdef CONFIG_DEBUG_UART
    debug_uart_init();
#endif

clocks_init();
    return 0;
}

是为记。

转载于:https://www.cnblogs.com/idyllcheung/p/11244201.html

procise 时钟的坑相关推荐

  1. 2.9寸墨水屏制作互联网时钟填坑手记

    制作要求:显示公历日期/农历日期/天气/风向/温度/节日/提醒(屏幕较小,先显示这么多).派加电即可显示,派正常关机屏幕白    屏(休眠)以保护墨水屏,天气相关信息每12小时更新一次.天气信息来源于 ...

  2. STM32定时器3配置时钟的坑

    STMf1的配置TIM3 我用的是原子的F1精英版,配置定时器3的时候出了点问题 问题描述 这里是主函数,在TIM3_Int_Init函数中,4999是重装载值,3599是预分频系数 计算: 如果AP ...

  3. GD32驱动DS3231显示时钟踩坑记录

    近日调试GD32驱动ds3231的程序,程序从STM 32移植过来的,所以就没想太多.当时STM32有HAL库开发,运行在内部晶振经PLL后的64MHZ频率.具体驱动程序网上一大堆,我这里就不在赘述了 ...

  4. 【STM32】初学者必读STM32时钟系统详解

    目录 1 前言 2 时钟系统介绍 3 时钟源 3.1 系统时钟源 3.2 次级时钟源 3.3 时钟源特点 4 时钟 4.1 AHB总线时钟 4.2 APB1总线时钟 4.3 APB2总线时钟 5 时钟 ...

  5. 用python Turtle海龟绘制时钟遇到的各种坑汇总

    目标:用Turtle绘制一个时钟. 在了解了turtle的基本用法之后就开始了绘制过程,结果遇到了很多坑,这里一一列出,在总结的同时也方便其他朋友们也能更快的了解的turtle的使用. 第一版:静态的 ...

  6. STM8关于IWDG看门狗和HSI高速时钟和复位的坑

    前言:我的第一篇博客,快被逼疯了.用的STM8S003F3,耗时5天,问题已解决,结局很坑! 但因为这一个问题,我似乎将stm8的时钟,复位,看门狗,iar的使用几乎全吃透了. 忠告:不要随随便便相信 ...

  7. STM32填坑:时钟使能必须在外设初始化之前

    最近在STM32上写了一份串口通信的程序,但下载复位后串口却不能工作,初始化的代码如下: //发送/接收的GPIO.串口和中断的初始化结构体 GPIO_InitTypeDef GPIO_InitStr ...

  8. 入坑esp-01s 1.3寸OLED带农历时钟及天气显示(四)

    农历终于做完了!花了差不多三天时间,一直在网上逛,其实C++写的农历还真不少,但不是不开源就是收费,开源的还有9成不好用.一开始想用爬网页的方案,连腾讯云网页都租好了,网页也做完了,但是爬下来的是代码 ...

  9. 入坑esp-01s 1.3寸OLED时钟及天气显示(二)

    电路板到了,做工非常的好.关键是便宜,每张一块.7.6*3.2cm. 有两处设计错误,一个是type-c电源线搞错了,不得不飞线解决. 下面的3.3V电源板的引脚间距差了0.5mm,也能插进去,只不过 ...

最新文章

  1. 细节之处方显linux真功夫
  2. 修改与删除@property封装的数据属性
  3. 判定Java源文件名称_JAVA
  4. oracle精简版_使用Entity Framework Core访问数据库(Oracle篇)
  5. apache hive_通过6个简单的步骤在Windows上运行Apache Hive
  6. python动态执行语句_Python Language
  7. OSPF Packet Details
  8. 2017 让机器给我们干活
  9. Acrobat Pro DC 教程,如何使用文本和图片文件创建 PDF?
  10. [乐意黎转载]从零开始学习jQuery (十) jQueryUI常用功能实战
  11. java SNS网络系统,Java源码:SNS社交管理系统JEESNS v1.3
  12. ajax直接发PUT,DELETE请求报错500
  13. 网络安全之认证,数字签名,报文摘要
  14. 软件开发入门【3分钟课程】
  15. ACM教程 - (数论)正整数分解使得乘积最大问题
  16. Mining Hero於ETHDenver峰會提交專案,整合IPFS應用場景
  17. 11月YouTube全球视频点赞Top10 :碧梨、比伯、萌德、A妹神仙打架
  18. English # 英语学习第一天(audience)
  19. 基于深度学习的图像超分辨率重建
  20. 案例分享-智慧景区智能管控系统

热门文章

  1. virtualenv 安装不同版本的虚拟环境的办法
  2. css img 等比例平铺怎么个屏幕
  3. Javascript Asynchonous Progamming
  4. 第三周 分队列 mooc 翁恺 c语言
  5. c语言中用指针倒序输出,菜鸟求助-如何用指针法将一串字符按单词的倒序输出?如:i love yo...
  6. java判断字符串是json_java中如何判断字符串是否为json格式
  7. 金秋10月丰收季,送3本Java书New一个秋天的对象
  8. kaggle实战笔记_1.数据处理
  9. 美国爱荷华州批准参议院541号文件,允许使用分布式账本技术和智能合约
  10. CryptoQuant CEO:比特币大规模从Coinbase流出是最强劲的看涨信号