Hi everyone,
I am studying on eTPU AN4907 Engine Control demo.
I am struggling to understand the effect of the above code. I also read the ETPU RM that related the TBSA. Here is the table taken from the ETPURM.
I tought that if I don't enable the output buffer, I assumed that eTPU cannot change the output pin, however when I make that code comment in FUEL function and it still generates the injection pulses.
So, what is the effect of the above code? Also, I understand that if TBS1[3] = 1 and TBS[2:0] = 111, so it means that channel do not match or capture. However, if TBS1[3] = 1and TBS[2:0] != 111, then setting of the TBS1[3] has no effect to the Time Base Selection 1, right?
I hope it's clear, however if you don't understand the question clearly. I can try explain more carefully.
I look forward to your answers friends.
Best regards,
Mert.
解決済! 解決策の投稿を見る。
Hello guys,
I have found following information in the internal documentation for MPC5644A device:
"The eTPU Output Buffer Enable control is ineffective in MPC5644A, and so are its related TBS1 microinstruction field values 1000 and 1001. The output pad drivers are controlled by the SIU block."
I believe it answers your issue.
Hi @johndiener,
After your answer, I check the reference manual of the MPC5644A microcontroller and I tought that OBE can effect the output in MPC5644A. Then I wanted to try it on the development board uses MPC5644A.
The below images taken from the MPC5644ARM.
When I check the second image, I expect that OBE must be effect the output because of the tri-state buffer. However, when I used the channel.TBSA = TBSA_CLR_OBE (0b1001 - disable output buffer) instead of channel.TBSA = TBSA_SET_OBE (0b1000 - enable output buffer) in FUEL function and run it on the board. As a result, I saw the fuel function generating the fuel pulse and I was expecting to not see any FUEL pulse!
Do I understand the purpose of the second image? I thought MPC5644ARM says that usage of the OBE is important for that MCU. However the result of my experiment says that usage of the OBE is NOT important for MPC5644A MCU.
Best regards,
Mert.
Hello Mert,
Ok, this is interesting. The diagram and words still seem to indicate "depending upon eTPU-MC integration". I don't think on your part that signal line that goes through the dotted line boundary to the output pad is actually hooked up. It is speculation by me, but I think any parts that have SIU PCR registers that support OBE configuration (as your part does) do not have the microcode OBE connected to the pad - it would be great to get confirmation from NXP on this however...
Hello guys,
I have found following information in the internal documentation for MPC5644A device:
"The eTPU Output Buffer Enable control is ineffective in MPC5644A, and so are its related TBS1 microinstruction field values 1000 and 1001. The output pad drivers are controlled by the SIU block."
I believe it answers your issue.
Thank you @davidtosenovjan and John for your helps,
Unfortunately I couldn't find the sentence that shared by the David in RM or datasheet. David, could you please share the page number where it includes the sentence shared by you?
Best regards,
Mert.
I am afraid it is not stated in RM or DS. I could report it to the documentation team, however for these outdated devices there is only little chance new manual would be issued.
Hi David,
I understand. Thank you for your supports.
Best regards,
Mert.
Thanks for your helps John. I actually checked the experiments twice. However, I will check the experiments again and also make new experiments about this topic. After them, I will append the results here.
Have a good day,
Mert.
In most parts (maybe all MPC56xx and MPC57xx) the OBE signals out of the eTPU module are not hooked up, so this line of code has no effect. OBE was active on Coldfire and perhaps some MPC55xx parts - I recommend looking at the reference manual for your part to determine the status. In any case, the line of code is there "just in case" to make the code portable across all parts.
Note that the original eTPU Reference Manual is dated and not comprehensive/accurate in all cases - I recommend looking at the eTPU section of your part's reference manual, if it exists, instead. The TBSA opcode field is defined as follows:
Should TBSA[3:0] = 1111 in an opcode, the "do nothing" means any previous TBSA setting remains unchanged.