RT1064 MQS Driver Circuitary

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

RT1064 MQS Driver Circuitary

5,575件の閲覧回数
zhirongyang
Contributor I

@kerryzhou 

Hi Kerry,

  We designed a new project using RT1064 MQS with external speaker amplifier to drive a speaker, but  the sound doesnot sound good, from below link, it seems the MQS need external filter circuit, do you have the referce hardware design?

What's the board you are using to drive the speaker for below demo?

 

https://community.nxp.com/t5/i-MX-RT/How-to-use-MQS-on-trial/m-p/1154048

0 件の賞賛
返信
15 返答(返信)

5,573件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @zhirongyang 

This is the recommended MQS hardware:

MQS hardware.jpg

You need to add the external circuit by yourself.

Best Regards,

Kerry

0 件の賞賛
返信

5,569件の閲覧回数
zhirongyang
Contributor I

Hi @kerryzhou 

  I tried in-series a 220uF cap in between RT1064 and Speaker Amplifier, but the waveform(after 220uF cap) is PWM like instead of analog waveform, is it normal?

  Do I need addition RC circuit after 220uF cap?

  From your video, the MQS is output from RT106X demo board, to another board(what's this board? do you have the schematic), then direct to speaker?

zhirongyang_0-1632906159757.png

 

0 件の賞賛
返信

5,561件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @zhirongyang ,

   The other board is our internal validation board, I just use that board's MQS driver circuit, the circuit I have share with you in the last reply. The schematic is from my testing validation board.

  You can use 74vc244, the input is from MQS pins, which don't need to add RC circuit.

   You also can find my 74 circuit is very simple, you even can find the chip and solder one, external circuit is very easy.

 

Wish it helps you!

Best Regards,

Kerry

 

   

0 件の賞賛
返信

5,509件の閲覧回数
zhirongyang
Contributor I

@kerryzhouHi Kerry, thanks for your update, our software engineer have integrated your code, now I want to know how to play the music like your demo music?

0 件の賞賛
返信

5,505件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

HI @zhirongyang ,

  Which code you have integrated?

  If you already get my MQS code, it should can play the music directly.

  Do you get my MQS code?

 

Best Regards,

Kerry

0 件の賞賛
返信

5,465件の閲覧回数
zhirongyang
Contributor I

@kerryzhou 

Can you please help to share your MQS code to us?

Is this MQS mode playing piano music just like your demo board?

0 件の賞賛
返信

5,458件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi  @zhirongyang ,

   Do you work for your company, if yes, please use your comany email create a nxp case instead of the public area, then I will send you the code through the case.

1. Open below SUPPORT site, click blue "Go to Tickets" in the middle.
http://www.nxp.com/support/support:SUPPORTHOME

2.Then you will be requested to Login, if you have no an account, please first Register with your business email.

3.After login, please "Create New Cases" button in the middle, then you can submit your question.

  In your case content, you can write assign to kerry zhou.

  Thanks a lot for your cooperation.

Best Regards,

Kerry

0 件の賞賛
返信

5,454件の閲覧回数
zhirongyang
Contributor I

@kerryzhou 

Case: 00430692 created by using company email account, I don't know how to @ you in the Case: 00430692.

0 件の賞賛
返信

5,445件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @zhirongyang 

  As I didn't get that case, so I give you the related source code directly, it is based on the sdk sai project.

   Please refer to the SDK code:

\SDK_2_10_0_EVK-MIMXRT1064\boards\evkmimxrt1064\driver_examples\sai\edma_transfer

Then use my attached main and the music.h is OK.

  Please try it on your side:

Wish it helps you!

If you still have questions about it, please kindly let me know!

Best Regards,

Kerry

-------------------------------------------------------------------------------

Note:

- If this post answers your question, please click the "Mark Correct" button. Thank you!

 

- We are following threads for 7 weeks after the last post, later replies are ignored

Please open a new thread and refer to the closed one, if you have a related question at a later point in time.

-----------------------------------------------------------------------------

0 件の賞賛
返信

5,438件の閲覧回数
Zhirong_Yang
Contributor I

@kerryzhou 

Hi Kerry,

  We have port your code to our system, and our hardware is using GPIO_AD_B0_04 and GPIO_AD_B0_05 as MQS output.

  With your code we can capture MQS output on GPIO_B0_00 and GPIO_B0_01 instead of our pins, we tried comment the pin configuration of GPIO_B0_00 and GPIO_B0_01 in your code but no help, could you please help to advise how to modify your code to support GPIO_AD_B0_04 and GPIO_AD_B0_05?

0 件の賞賛
返信

5,430件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Zhirong_Yang ,

  That's so easy, you just need to modify the pinmux.c is OK.

Seems you are from china, if yes, you can refer to my eefocus post:

https://www.nxpic.org.cn/module/forum/thread-621220-1-1.html

My attached code in the above already use your mentioned pin.

IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_00_MQS_RIGHT,
0U);
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_01_MQS_LEFT ,
0U);


IOMUXC_SetPinConfig(
IOMUXC_GPIO_B0_00_MQS_RIGHT,
0x10B0u);
IOMUXC_SetPinConfig(
IOMUXC_GPIO_B0_01_MQS_LEFT,
0x10B0u);

Wish it helps you!

Best Regards,

Kerry

0 件の賞賛
返信

5,428件の閲覧回数
Zhirong_Yang
Contributor I

@kerryzhou 

We are using below pin configuration, but no output on GPIO_AD_b0_04 and GPIO_AD_B0_05. Do you have any suggestion?

IOMUXC_SetPinMux(IOMUXC_GPIO_B0_00_MQS_RIGHT, 0U);
IOMUXC_SetPinMux(IOMUXC_GPIO_B0_01_MQS_LEFT, 0U);

IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B0_04_MQS_RIGHT, 0U);
IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B0_05_MQS_LEFT, 0U);

 

IOMUXC_SetPinConfig(IOMUXC_GPIO_B0_01_MQS_LEFT,0x10B0u);
IOMUXC_SetPinConfig(IOMUXC_GPIO_B0_00_MQS_RIGHT,0x10B0u); 

IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B0_05_MQS_LEFT,0x10B0u);
IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B0_04_MQS_RIGHT,0x10B0u);

0 件の賞賛
返信

5,425件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Zhirong_Yang ,

/*
// GPIO_AD_B0_04_MQS_RIGHT SW7_4, GPIO_AD_B0_05_MQS_LEFT SW7_3
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_04_MQS_RIGHT,
0U);
IOMUXC_SetPinMux(
IOMUXC_GPIO_AD_B0_05_MQS_LEFT,
0U);

IOMUXC_SetPinConfig(
IOMUXC_GPIO_AD_B0_04_MQS_RIGHT,
0x10B0u);
IOMUXC_SetPinConfig(
IOMUXC_GPIO_AD_B0_05_MQS_LEFT,
0x10B0u);

*/


// GPIO_B0_00_MQS_RIGHT J8_A30, GPIO_B0_01_MQS_LEFT J8_A34
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_00_MQS_RIGHT,
0U);
IOMUXC_SetPinMux(
IOMUXC_GPIO_B0_01_MQS_LEFT ,
0U);


IOMUXC_SetPinConfig(
IOMUXC_GPIO_B0_00_MQS_RIGHT,
0x10B0u);
IOMUXC_SetPinConfig(
IOMUXC_GPIO_B0_01_MQS_LEFT,
0x10B0u);

 

In fact, both the two method I have tested, all works OK.

If your  GPIO_AD_b0_04 and GPIO_AD_B0_05 no output, comment GPIO_B0_00 and GPIO_B0_01, test it again. Please also note, GPIO_AD_B0_04 and GPIO_AD_B0_05 is the special pin, it is the BOOT_MODE pin.

kerryzhou_0-1635933654800.png

When you do reset, please make sure you connect nothing, after the code is boot, then you can test the related pin, otherwise, it will influence the chip boot, thanks.

 

Best Regards,

Kerry

 

 

0 件の賞賛
返信

5,405件の閲覧回数
Zhirong_Yang
Contributor I

@kerryzhou 

Thanks for your help, the MQS works on our board.

Want to check with you, is there any way to adjust the MQS volume?

0 件の賞賛
返信

5,401件の閲覧回数
kerryzhou
NXP TechSupport
NXP TechSupport

Hi @Zhirong_Yang ,

  Good question!

   No, MQS can't change the volume, as you know the MQS need the external driver circuit. So, normally, if you want to change the volume, you need to associate with your external dirver ciruit.

Best Regards,

Kerry

0 件の賞賛
返信