你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

请教下,stm32f7xx 的lcd与sai的时钟源是否相同 ?

[复制链接]
hpdell 提问时间:2017-12-9 14:00 /
请教下,stm32f7xx 的lcd与sai的时钟源是否相同 ?

sai 时钟配置如下:

u8 SAIA_SampleRate_Set(u32 samplerate)
{   
  u8 i=0;
  RCC_PeriphCLKInitTypeDef RCCSAI1_Sture;  

  for(i=0;i<(sizeof(SAI_PscTab)/10);i++)//看看改采样率是否可以支持
  {
    if((samplerate/10) == SAI_PscTab[i][0])
      break;
  }
  if(i == (sizeof(SAI_PscTab)/10))
    return 1;//搜遍了也找不到

    /* Configure PLLSAI prescalers */
    /* PLLI2S_VCO: VCO_429M
    SAI_CLK(first level) = PLLI2S_VCO/PLLSAIQ = 429/2 = 214.5 Mhz
    SAI_CLK_x = SAI_CLK(first level)/PLLI2SDivQ = 214.5/19 = 11.289 Mhz */  

  RCCSAI1_Sture.PeriphClockSelection = RCC_PERIPHCLK_SAI1;        //外设时钟源选择
  RCCSAI1_Sture.Sai1ClockSelection   = RCC_SAI1CLKSOURCE_PLLSAI;  
  RCCSAI1_Sture.PLLSAI.PLLSAIN       = (u32)SAI_PscTab[i][1];    //设置PLLSAIN
  RCCSAI1_Sture.PLLSAI.PLLSAIQ       = (u32)SAI_PscTab[i][2];    //设置PLLSAIQ
  RCCSAI1_Sture.PLLSAIDivQ           = SAI_PscTab[i][3];         //设置PLLSAIDivQ   
  HAL_RCCEx_PeriphCLKConfig(&RCCSAI1_Sture);                  //设置时钟

  __HAL_SAI_DISABLE(&SAI1A_PlayHandler);                          //关闭SAI
  SAI1A_PlayHandler.Init.AudioFrequency=samplerate;               //设置播放频率  
  HAL_SAI_Init(&SAI1A_PlayHandler);                               //初始化SAI
  SAIA_DMA_Enable();                                          //开启SAI的DMA功能
  __HAL_SAI_ENABLE(&SAI1A_PlayHandler);                           //开启SAI
  return 0;
}



lcd 时钟配置如下:
static u8 LTDC_UserClkSet(u32 pllsain,
                           u32 pllsair,
                           u32 pllsaidivr )
{
        RCC_PeriphCLKInitTypeDef PeriphClkIniture;
       
        //LTDC输出像素时钟,需要根据自己所使用的LCD数据手册来配置!
  PeriphClkIniture.PeriphClockSelection = RCC_PERIPHCLK_LTDC;        //LTDC时钟        
        PeriphClkIniture.PLLSAI.PLLSAIN       = pllsain;   
        PeriphClkIniture.PLLSAI.PLLSAIR       = pllsair;  
        PeriphClkIniture.PLLSAIDivR           = pllsaidivr;
        if(HAL_RCCEx_PeriphCLKConfig(&PeriphClkIniture)==HAL_OK) //配置像素时钟,这里配置为时钟为18.75MHZ
  {
    return 0;   //成功
  }
  else
    return 1;  //失败   
}




上述的两个时钟源都使用到

PLLSAI.PLLSAIN   
PLLSAI.PLLSAIQ  
PLLSAIDivQ         


,他们在同时使用时是否会发生冲突啊 ?????







收藏 1 评论4 发布时间:2017-12-9 14:00

举报

4个回答
toofree 回答时间:2018-2-12 09:32:39
本帖最后由 toofree 于 2018-2-12 09:37 编辑

给你上个图,看能说明问题不。图片放大看 傲游截图20180212093216.png


意思就是LCD可以与SDI1是由同一个时钟模块PLLSAI1产生,但是输出的分频系数可以不同。
SDI1时钟输出也可以从SDI2的时钟模块产生。

点评

你懂的真多  发表于 2018-2-12 10:46

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

无薪税绵 回答时间:2018-2-12 14:22:20
toofree 发表于 2018-2-12 09:32
给你上个图,看能说明问题不。图片放大看

大神的回复,
真到位,一针见血了。
toofree 回答时间:2018-2-12 14:28:00
无薪税绵 发表于 2018-2-12 14:22
大神的回复,
真到位,一针见血了。

有好工具得用
各种MCU,我一上来就喜欢看时钟树

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版