|
【技术讨论】
问题请教:RK3399裸跑,I2S管脚无信号输出
发表于 2021-6-14 12:46:28
浏览:10144
|
回复:2
打印
只看该作者
[复制链接]
楼主
现象:
1. I2S主模式,发送数据时,管脚无信号输出,示波器一直低电平
2. I2S模块在运行,逻辑好像正确
连续发送时,产生中断的次数与采样率的设置吻合。改变时钟设置后,产生中断的节奏也会相应改变
3. 硬件没有问题,运行LINUX系统时,音频正常,管脚有输出
设置过程如下:
1. 电源域:sdioaudio打开
2. 时钟源:
cpll设置为200MHz
perilp1时钟源选择cpll, hclk_perilp1设置为50MHz,pclk_perilp1设置为25MHz
3. I2S0管脚设置
GPIOD0,1,2,3,7分别为i2s0_sclk,i2s0_lrckrx,i2s0_lrcktx,i2s0_sdi0,i2s0_sdo0
无上下拉
4. I2S0时钟设置
打开hclk_i2s0
clk_i2s0选择cpll分频,200 * 64 / 3125 = 4096KHz
5. I2S_MCLK输出设置
管脚gpio4a0设置为i2s_clk功能,无上下拉
时钟源选择clk_i2s0
6. I2S0寄存器配置
主模式
i2s0_sclk = clk_i2s0 / 16 = 256KHz
采样率 = 256 / 32 = 8KHz
请教,设置内容有欠缺?设置顺序有错误?有针对性的资料吗? |
|