This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
大家好、我们最近遇到了 下面描述的 Tiva TM4C123GH6PM 软件复位问题
编程步骤
设置引脚#64 (PD3)启用内部上拉电阻的模拟功能(AIN4)。
2.通过设置 应用中断及复位控制寄存器(APINT)的位2 "SYSRESREQ"来执行软件系统复位请求。
结果:
我们发现整个系统将出现重新引导故障、所有 GPIO 都处于重置状态。
通过 GPIO 功能设置 PD3和 excute 软件复位可以成功地使 MCU 复位。
您可以帮助检查原因吗?
谢谢
Jason
设置引脚#64 (PD3)启用内部上拉电阻的模拟功能(AIN4)。
[报价]尊敬的 Jason:
如果您使用 PD3作为 AIN4的 ADC 输入、那么为什么要启用内部上拉? 只有在 GPIO 模式下使能内部上拉或下拉、而不能在配置为模拟输入时启用。
请使用 SysCtlReset 生成系统复位。 您不能简单地写入 APINT 寄存器的位2。 您还需要将正确的密钥写入31:16。 SysCtlReset 将执行它。
尊敬的 Charles:
感谢您的回复。
是否有任何限制、PD 用 ADC 功能不能设定内部 PU/ADC? 由于我仍然可以使用内部 PU 设置 ADC、而不显示任何警告消息、因此我遇到的唯一问题是软件复位失败。 我想好奇软件复位故障和具有 PU 设置的 ADC 之间的关系。 我在数据表中看不到限制条件的任何信息、您能否分享更多相关信息??
让我更准确地描述症状。 实际上已执行软件复位(可以看到 GPIO 引脚状态已复位为默认状态)。 但是 MCU 储存在复位状态、系统无法成功启动。 重现的故障率是100%。
谢谢
是否有任何限制规定不能使用 PD 功能设置内部 PU/ADC? 由于我仍然可以使用内部 PU 设置 ADC、而不显示任何警告消息、因此我遇到的唯一问题是软件复位失败。 我想好奇软件复位故障和具有 PU 设置的 ADC 之间的关系。 我在数据表中没有看到限制的任何信息、能否分享更多有关信息??
尊敬的 Jason:
如果删除上拉配置、您是否看到相同的问题? 有关如何配置 ADC、请参阅 C:\ti\TivaWare_C_Series-2.2.0.295\examples\peripherals\adc\single_ended.c 中的示例。
让我更频繁地描述这一症状。 实际上已执行软件复位(可以看到 GPIO 引脚状态已复位为默认状态)。 但是 MCU 储存在复位状态、系统无法成功启动。 而且重现的故障率是100%。[/报价]您的意思是 MCU 卡在复位状态? 如果您使用调试器来检查处理器、它会在哪里停止?
您好、Charles
MCU 卡在复位 状态意味着、当我们通过设置 APINT 寄存器来执行软件复位(VECTKEY = 0x05FA、SYSRESREQ = 1)时、MCU 被复位(所有 GPIO 都返回其复位状态)。 但是、MCU 将保持(卡在)在复位状态、并且不会跳过复位。
我们通过检查另一个 GPIO PA1配置发现了问题。 PA1 =输出高电平、经过上述复位过程后、PA1将保持为复位状态、无法进行配置(代码未运行?)
2.如果我们使用 PD3=ADC"不使用"上拉电阻对 MCU 进行复位、则不会出现这样的故障。
谢谢
我仍然不清楚您的意思是 MCU 卡在复位状态。 如果您使用调试器、什么代码行是 MCU 卡住的? 您能否截取处理器卡在哪一行代码上的屏幕截图?
[报价用户 id="275538" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1423730/tm4c123gh6pm-software-reset-failure-with-setting-pd3-pin-as-analogue-in-feature-with-internal-pull-up/5461284 #5461284"] PA1将保留为复位状态、无法配置(代码未在运行??)代码未运行并不意味着它卡在复位状态。 处理器可能已运行一些代码、但在将 PA1设置为高电平之前、它可能已崩溃、出现异常故障或其他原因。 但这并不意味着它卡在复位状态。
[报价 userid="275538" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1423730/tm4c123gh6pm-software-reset-failure-with-setting-pd3-pin-as-analogue-in-feature-with-internal-pull-up/5461284 #5461284"]2.如果我们使用 PD3=ADC"不使用"上拉电阻对 MCU 进行复位、则不会出现这样的故障。
[报价]
尽管我不能解释为什么在 ADC 引脚上添加上拉电阻会导致故障、但我认为绝对没有理由在模拟引脚上添加上拉电阻。