Forums

MSP430 F 5438A计时器/环境问题。很奇怪。

开始于 布莱克利 2012年5月13日
进度:(最初是5419A计时器问题和8KB KickStart限制)

8K Kickstart限制:已解决。
计时器问题:未解决。

计时器问题现在让我发疯。

我有两个密切相关的编程环境。每个使用 适用于MSP430 5.4版工具的KickStart。一个完全在Kickstart内部, 另一个不在Kickstart上。

环境1:Kickstart
汇编程序:KickStart中包含的a430.exe版本4.21.2。
链接器:Kickstart中包含的xlink.exe版本4.6.10。
程序员:IAR CSpy调试器。
JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。

在这种环境下,我可以组装程序并将其加载到目标板上 通过使用调试和下载模式的JTAG端口。
在调试中,我释放了要通过“ Go”运行的程序,一切运行正常。我可以 退出调试器,拔下JTAG电缆,然后重新给我的板子供电, 仍按设计运行。我启用了链接器选项以产生额外的 英特尔十六进制格式的输出文件。

环境2:离散工具。
汇编器:上面的KickStart上的a430.exe通过命令行。
链接器:上面的KickStart上的xlink.exe通过命令行。
程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。

在这种环境下,程序将通过Bat文件执行并生成一个 英特尔十六进制格式文件,然后由Elprotronic程序员通过 第二个“升级的” FET430UIF进入目标板。此十六进制文件相同 到环境#1产生的额外输出文件。

我看到的唯一区别是编程方法和JTAG pods.

之前的所有代码都可以正确运行,直到添加了Timer A0例程为止。
我有一个简短的测试例程,可以通过命令从串行端口访问。
在工作版本中,按一个键会在输出上产生100 ms的脉冲 别针。在失败的版本中,似乎计时器从未被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在ACLK端口引脚上输出。

代码本质上是:
1)初始化计时器以重置条件。即停止/清除/模式0。
2)将捕获比较寄存器0初始化为0x0000。
3)使能CCR0中断。
4)设置MC模式以计数到CCR0。
5)加载CCR0间隔,有效地启动计数器。
6)将端口引脚3.0放低。
7)等待间隔完成。
8)将端口引脚3.0设置为高。

在TA0源0 ISR中,我们只需在
前景。

由于代码在一个环境中运行而不在另一个环境中运行,因此我认为它是 不是问题的原因,而是其他问题的目标。

CSpy显然在添加一些我需要包含在其中的内容 独立环境。

有任何想法吗)?

布莱克利

---在m ...中,“布雷克利”写道:
>
>我正在提出一种基于MSP430F5419A的新设计,并且遇到了 unusual problem.
>
>我已经移植了一个使用TA0的非中断驱动定时器等待例程。 它在F148零件上运行,但不在5419A上运行。我已经尝试过两个SMCLK 和ACLK,两者都在端口引脚上输出,因此我可以看到它们正在运行。 其他一切都很好。
>
>TA0似乎没有被计时,因为它永远不会递增,并且 永远不会达到CCR0中的值,也永远不会设置CCIF。 MC位不为零。 模式为01 =计数到CCR0限制,达到该限制时应设置CCIF。
>
>我确实使用IAR CSpy加载了缩小版本,但仅运行了一次 使用ACLK。这使我认为调试器的步进模式可能是 启用通常未启用的功能。有任何想法吗?我没有那个 剩下的头发要丢掉。
>
>有人在IAR下载/调试中找到新的8K限制解决方案吗? 有点傻,突然开始限制了这一点。我搜索了更早的 版本的KickStart可能没有限制。任何人都有 工作版本他们可以发送给我吗?
>
> Blakely
>

MSP430入门微控制器

我不知道为什么这在两种环境下会有所不同,但是
正如您所描述的,初始化计时器的方法是错误的。

代码本质上是:
1)初始化计时器以重置条件。即停止/清除/模式0。
2)将捕获比较寄存器0初始化为0x0000。

此时将设置CCTLA0中的CCIFG

3)使能CCR0中断。

您已在比较中有效地启用了CCRA0中断,比较值为 0,计数到值是0,可能不是计数器运行,而是 在发生0中断时停止。也可能会有中断 pending from POR

4)设置MC模式以计数到CCR0。

在启用计时器之前,您应该先将计数初始化为值 或中断,然后先清除待处理的中断标志,然后再启用 interrupt

5)加载CCR0间隔,有效地启动计数器。

不,清除复位位TACLR时计数器是否开始计数 您期望的是完全不同的事情

6)将端口引脚3.0放低。
7)等待间隔完成。
8)将端口引脚3.0设置为高。

您必须在初始化中断值之前启用它们。这 sequence I use is:-

MOV #TICKRATE,&CCRA0; TIMER A 1第二中断
MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF禁用
BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
BIS #CCIE,&CCTLA0;启用TIMERA0 1秒



布莱克利(Blakely)在14/05/2012 1:24 AM写道:
>进度:(最初是5419A计时器问题和8KB KickStart limit)
>
>8K Kickstart限制:已解决。
>计时器问题:未解决。
>
>计时器问题现在让我发疯。
>
>我有两个密切相关的编程环境。每个使用 适用于MSP430 5.4版工具的KickStart。一个完全在Kickstart内部, 另一个不在Kickstart上。
>
>环境1:Kickstart
>汇编程序:KickStart中包含的a430.exe版本4.21.2。
>链接器:Kickstart中包含的xlink.exe版本4.6.10。
>程序员:IAR CSpy调试器。
>JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
>
>在这种环境下,我可以汇编程序并将其加载到目标中 通过调试和下载模式通过JTAG端口连接板。
>在调试中,我释放了要通过“ Go”运行的程序,一切运行正常。一世 可以退出调试器,拔下JTAG电缆,然后重新给我的板供电,然后 一切仍按设计运行。我启用了链接器选项以产生一个 英特尔十六进制格式的额外输出文件。
>
>环境2:离散工具。
>汇编器:上面的KickStart上的a430.exe通过命令行。
>链接器:上面的KickStart上的xlink.exe通过命令行。
>程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
>JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
>
>在这种环境下,程序将通过Bat文件执行并生成一个 英特尔十六进制格式文件,然后由Elprotronic程序员通过 第二个“升级的” FET430UIF进入目标板。此十六进制文件相同 到环境#1产生的额外输出文件。
>
>我看到的唯一区别是编程方法和JTAG pods.
>
>之前的所有代码都可以正确运行,直到添加了Timer A0例程为止。
>我有一个简短的测试例程,可以通过命令从串行端口访问。
>在工作版本中,按一个键会在输出上产生100 ms的脉冲 别针。在失败的版本中,似乎计时器从未被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在ACLK端口引脚上输出。
>
>代码本质上是:
>1)初始化计时器以重置条件。即停止/清除/模式0。
>2)将捕获比较寄存器0初始化为0x0000。
>3)使能CCR0中断。
>4)设置MC模式以计数到CCR0。
>5)加载CCR0间隔,有效地启动计数器。
>6)将端口引脚3.0放低。
>7)等待间隔完成。
>8)将端口引脚3.0设置为高。
>
>
> foreground.
>
>由于代码在一个环境中运行而不在另一个环境中运行,因此我认为 不是问题的原因,而是其他问题的目标。
>
>CSpy显然在添加一些我需要包含在其中的内容 独立环境。
>
> Any idea(s)?
>
> Blakely
>---在m ...中,“布雷克利”写道:
>>我正在提出一种基于MSP430F5419A的新设计,并且遇到了 unusual problem.
>>
>>我已经移植了一个使用TA0的非中断驱动定时器等待例程。 它在F148零件上运行,但不在5419A上运行。我已经尝试过两个SMCLK 和ACLK,两者都在端口引脚上输出,因此我可以看到它们正在运行。 其他一切都很好。
>>
>>TA0似乎没有被计时,因为它永远不会递增,并且 永远不会达到CCR0中的值,也永远不会设置CCIF。 MC位不为零。 模式为01 =计数到CCR0限制,达到该限制时应设置CCIF。
>>
>>我确实使用IAR CSpy加载了缩小版本,但仅运行了一次 使用ACLK。这使我认为调试器的步进模式可能是 启用通常未启用的功能。有任何想法吗?我没有那个 剩下的头发要丢掉。
>>
>>有人在IAR下载/调试中找到新的8K限制解决方案吗? 有点傻,突然开始限制了这一点。我搜索了更早的 版本的KickStart可能没有限制。任何人都有 工作版本他们可以发送给我吗?
>>
>> Blakely
>>


感谢您及时的回复!你是一个伟大的资源。

我有一些独立于代码问题的更多信息。

首先,我使用Elprotronics程序员拉回了
工作代码和非工作代码。这些作为文字回来
文件,因此它们很容易相互检查。他们比赛!
现在,我头上剩下的最后一根头发都消失了。疯狂的。

变得更好:我使用了失败的环境来对目标进行编程
木板。代码主体似乎运行良好。我输入命令
测试计时器代码,并且按预期,它将失败。我删除了JTAG
电缆,断开电源,然后重新通电。代码主体再次出现
运行良好。我输入命令来测试计时器代码,这一次
作品。

我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
与Elprotronics程序一起使用会以某种方式干扰ACLK
到达计时器。如果我编程目标并留下JTAG电缆
连接后,测试例程失败。删除JTAG后,测试
例行运行。

JTAG使用的引脚可用作通用端口引脚,并且
分配为输入。系统控制寄存器中有一个位(位
5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
(= 0)状态。我会再试一次,看看问题何时消失
将其设置为专用(= 1)

该代码示例是我尝试尝试的十几种变体中的最后一个
找到有用的东西。在极端中砍死。当什么终于
工作,我保持原样,然后转到其他地方。

布莱克利
---在...中,Onestone写道:
>
>我不知道为什么这在两种环境下会有所不同,但是
>正如您所描述的,初始化计时器的方法是错误的。
>
>代码本质上是:
>1)初始化计时器以重置条件。即停止/清除/模式0。
>2)将捕获比较寄存器0初始化为0x0000。
>
>此时将设置CCTLA0中的CCIFG
>
>3)使能CCR0中断。
>
>您已经在比较中有效地启用了CCRA0中断,
value为0,count为value为0,计数器行为不为
可能会运行,但会在0生成中断时停止。也有
可能是POR挂起的中断
>
>4)设置MC模式以计数到CCR0。
>
>在启用之前,您应该先将计数初始化为值
计时器或中断,然后清除待处理的中断标志, before
启用中断
>
>5)加载CCR0间隔,有效地启动计数器。
>
>不,清除复位位TACLR时,计数器启动,是否
它正在做您期望的完全不同的事情
>
>6)将端口引脚3.0放低。
>7)等待间隔完成。
>8)将端口引脚3.0设置为高。
>
>您需要在初始化中断之前启用它们
价值观。我使用的顺序是:-
>
> MOV #TICKRATE,&CCRA0;定时器A 1第二中断
>MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
已停用
> BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒 TICK
> BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
>
> Al
>布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> >进度:(最初是5419A计时器问题和8KB KickStart限制)
> >
> >8K Kickstart限制:已解决。
> >计时器问题:未解决。
> >
> >计时器问题现在让我发疯。
> >
> >我有两个密切相关的编程环境。每个
使用适用于MSP430 5.4版的KickStart工具。一个完全是 within
Kickstart,另一个不在Kickstart之外。
> >
> >环境1:Kickstart
> >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> >程序员:IAR CSpy调试器。
> >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> >
> >在这种环境下,我可以汇编程序并将其加载到我的程序中
调试和下载模式通过JTAG端口访问目标板。
> >在调试中,我发布了要通过“ Go”运行的程序,然后 everything runs
美好的。我可以退出调试器,拔下JTAG电缆并重新通电
板,一切仍按设计运行。我有一个链接器选项
使之能够生成intel十六进制格式的额外输出文件。
> >
> >环境2:离散工具。
> >汇编器:上面的KickStart上的a430.exe通过命令行。
> >链接器:上面的KickStart上的xlink.exe通过命令行。
> >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> >
> >在这种环境下,该程序通过Bat文件执行,并且
生成int十六进制格式的文件,然后由 Elprotronic
程序员通过第二个“升级的” FET430UIF进入目标板。
此十六进制文件与由...生成的额外输出文件相同
环境#1。
> >
> >我看到的唯一区别是在编程方法和
JTAG窗格。
> >
> >之前的所有代码均正确运行,直到Timer A0例程
添加。
> >我有一个通过命令访问的简短测试例程 over the serial
港口。
> >在工作版本中,按一个键会导致 100 ms pulse on
输出引脚。在失败的版本中,似乎计时器是
永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
在ACLK端口引脚上输出。
> >
> >代码本质上是:
> >1)初始化计时器以重置条件。即停止/清除/模式
0.
> >2)将捕获比较寄存器0初始化为 0x0000.
> >3)使能CCR0中断。
> >4)设置MC模式以计数到CCR0。
> >5)加载CCR0间隔,有效地启动计数器。
> >6)将端口引脚3.0放低。
> >7)等待间隔完成。
> >8)将端口引脚3.0设置为高。
> >
> >
> > foreground.
> >
> >由于代码在一个环境中运行而不在另一个环境中运行,所以我
假设这不是问题的原因,而是某些目标
其他问题。
> >
> >CSpy显然在添加一些我需要包含的内容
在我的独立环境中。
> >
> > Any idea(s)?
> >
> > Blakely
> >
> >
> >
> >
> >---在m ...中,“ Blakely” blakely.lacroix @写道:
> >>我正在提出一个基于MSP430F5419A的新设计,并且具有
遇到一个不寻常的问题。
> >>
> >>我已经移植了一个非中断驱动的计时器等待例程,
使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
它同时带有SMCLK和ACLK,两者都在端口引脚上输出,所以我
可以看到他们在跑步。其他一切都很好。
> >>
> >>TA0似乎没有被计时,因为它从不
递增,并且永远不会达到CCR0中的值,并且永远不会达到CCIF set.
MC位不为零。模式为01 =计数到CCR0限制,该限制应
到达时设置CCIF。
> >>
> >>我确实使用IAR CSpy加载了缩减版本
它是否使用ACLK运行。这让我认为
调试器可能正在启用通常未启用的功能。
有任何想法吗?我没有剩下太多的头发了。
> >>
> >>是否有人在IAR中找到新的8K限制解决方案
下载/调试?有点傻,突然开始限制了这一点。我做了 a
搜索可能没有的早期版本的KickStart
这个限制。有人有可以发送给我的有效版本吗?
> >>
> >> Blakely
> >>
> >
> >
> >
> >
> >
> >
> >
> >
现在,我有了Al的代码。结果相同。
如果选择定时器A0或定时器A1或使用ACLK或SMCLK都没有区别。如果 复位后,JTAG电缆就位,计时器不会运行。出现 甚至在我退出Elprotronics计划后也是如此。拔下JTAG电缆, PUC设备,它们运行。

我将仔细检查我的硬件连接并添加另一个重置源- 端口1引脚上的DTR,查看它是否与PUC或其他有关。

谜仍在继续。

布莱克利

---在m ...中,“布雷克利”写道:
>
> Al
>
>感谢您及时的回复!你是一个伟大的资源。
>
>我有一些独立于代码问题的更多信息。
>
>首先,我使用Elprotronics程序员拉回了
>工作代码和非工作代码。这些作为文字回来
>文件,因此它们很容易相互检查。他们比赛!
>现在,我头上剩下的最后一根头发都消失了。疯狂的。
>
>变得更好:我使用了失败的环境来对目标进行编程
>木板。代码主体似乎运行良好。我输入命令
>测试计时器代码,并且按预期,它将失败。我删除了JTAG
>电缆,断开电源,然后重新通电。代码主体再次出现
>运行良好。我输入命令来测试计时器代码,这一次
> Works.
>
>我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
>与Elprotronics程序一起使用会以某种方式干扰ACLK
>到达计时器。如果我编程目标并留下JTAG电缆
>连接后,测试例程失败。删除JTAG后,测试
> routine runs.
>
>JTAG使用的引脚可用作通用端口引脚,并且
>分配为输入。系统控制寄存器中有一个位(位
>5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
>(= 0)状态。我会再试一次,看看问题何时消失
>将其设置为专用(= 1)
>
>该代码示例是我尝试尝试的十几种变体中的最后一个
>找到有用的东西。在极端中砍死。当什么终于
>工作,我保持原样,然后转到其他地方。
>
> Blakely
>---在...中,Onestone写道:
> >
> >我不知道为什么这在两种环境下会有所不同,但是
> >正如您所描述的,初始化计时器的方法是错误的。
> >
> >代码本质上是:
> >1)初始化计时器以重置条件。即停止/清除/模式0。
> >2)将捕获比较寄存器0初始化为0x0000。
> >
> >此时将设置CCTLA0中的CCIFG
> >
> >3)使能CCR0中断。
> >
> >您已经在比较中有效地启用了CCRA0中断,
>value为0,count为value为0,计数器行为不为
>可能会运行,但会在0生成中断时停止。也有
>可能是POR挂起的中断
> >
> >4)设置MC模式以计数到CCR0。
> >
> >在启用之前,您应该先将计数初始化为值
>计时器或中断,然后在清除之前的未决中断标志
>启用中断
> >
> >5)加载CCR0间隔,有效地启动计数器。
> >
> >不,清除复位位TACLR时,计数器启动,是否
>它正在做您期望的完全不同的事情
> >
> >6)将端口引脚3.0放低。
> >7)等待间隔完成。
> >8)将端口引脚3.0设置为高。
> >
> >您需要在初始化中断之前启用它们
>价值观。我使用的顺序是:-
> >
> > MOV #TICKRATE,&CCRA0;定时器A 1第二中断
> >MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> DISABLED
> > BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
> > BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
> >
> > Al
> >
> >
> >
> >
> >布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> > >进度:(最初是5419A计时器问题和8KB KickStart限制)
> > >
> > >8K Kickstart限制:已解决。
> > >计时器问题:未解决。
> > >
> > >计时器问题现在让我发疯。
> > >
> > >我有两个密切相关的编程环境。每个
>使用适用于MSP430 5.4版的KickStart工具。一个完全在里面
>Kickstart,另一个不在Kickstart之外。
> > >
> > >环境1:Kickstart
> > >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> > >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> > >程序员:IAR CSpy调试器。
> > >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> > >
> > >在这种环境下,我可以汇编程序并将其加载到我的程序中
>调试和下载模式通过JTAG端口访问目标板。
> > >在调试中,我释放了要通过“ Go”运行的程序,一切都运行了
>美好的。我可以退出调试器,拔下JTAG电缆并重新通电
>板,一切仍按设计运行。我有一个链接器选项
>使之能够生成intel十六进制格式的额外输出文件。
> > >
> > >环境2:离散工具。
> > >汇编器:上面的KickStart上的a430.exe通过命令行。
> > >链接器:上面的KickStart上的xlink.exe通过命令行。
> > >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> > >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> > >
> > >在这种环境下,该程序通过Bat文件执行,并且
>生成inte十六进制格式的文件,然后由Elprotronic加载
>程序员通过第二个“升级的” FET430UIF进入目标板。
>此十六进制文件与由...生成的额外输出文件相同
> Environment #1.
> > >
> > >我看到的唯一区别是在编程方法和
> the JTAG pods.
> > >
> > >之前的所有代码均正确运行,直到Timer A0例程
> added.
> > >我有一个简短的测试例程,可以通过串行命令访问
> port.
> > >在工作版本中,按一个键会导致100 ms的脉冲开启
>输出引脚。在失败的版本中,似乎计时器是
>永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
>在ACLK端口引脚上输出。
> > >
> > >代码本质上是:
> > >1)初始化计时器以重置条件。即停止/清除/模式
> 0.
> > >2)将捕获比较寄存器0初始化为0x0000。
> > >3)使能CCR0中断。
> > >4)设置MC模式以计数到CCR0。
> > >5)加载CCR0间隔,有效地启动计数器。
> > >6)将端口引脚3.0放低。
> > >7)等待间隔完成。
> > >8)将端口引脚3.0设置为高。
> > >
> > >
> > > foreground.
> > >
> > >由于代码在一个环境中运行而不在另一个环境中运行,所以我
>假设这不是问题的原因,而是某些目标
> other problem.
> > >
> > >CSpy显然在添加一些我需要包含的内容
>在我的独立环境中。
> > >
> > > Any idea(s)?
> > >
> > > Blakely
> > >
> > >
> > >
> > >
> > >---在m ...中,“ Blakely” blakely.lacroix @写道:
> > >>我正在提出一个基于MSP430F5419A的新设计,并且具有
>遇到一个不寻常的问题。
> > >>
> > >>我已经移植了一个非中断驱动的计时器等待例程,
>使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
>它同时带有SMCLK和ACLK,两者都在端口引脚上输出,所以我
>可以看到他们在跑步。其他一切都很好。
> > >>
> > >>TA0似乎没有被计时,因为它从不
>递增,并且永远不会达到CCR0中的值,也永远不会设置CCIF。
>MC位不为零。模式为01 =计数到CCR0限制,该限制应
>到达时设置CCIF。
> > >>
> > >>我确实使用IAR CSpy加载了缩减版本
>它是否使用ACLK运行。这让我认为
>调试器可能正在启用通常未启用的功能。
>有任何想法吗?我没有剩下太多的头发了。
> > >>
> > >>是否有人在IAR中找到新的8K限制解决方案
>下载/调试?有点傻,突然开始限制了这一点。我做了一个
>搜索可能没有的早期版本的KickStart
>这个限制。有人有可以发送给我的有效版本吗?
> > >>
> > >> Blakely
> > >>
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
将JTAG引脚置于专用模式(SYSJTAGPIN = 1)将导致以下问题 一些希望目标具有共享引脚的编程工具。我找到了这个 用REP430(复制器)输出。如果JTAG引脚处于专用模式, 用于检索CoreId的JTAG序列不起作用。通常,I / O 使用TEST信号将引脚切换到JTAG模式。我不得不挑战 首先在TEST信号为高的情况下检索CoreId的序列,如果 无法删除测试信号,然后重试。 TEST信号未用于 1xx系列,但是具有共享I / O引脚的5xx系列是必需的。
- - - 原始信息 - - -
From: Blakely
To: m...
发送:2012年5月13日,星期日,11:52
主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。很奇怪。

现在,我有了Al的代码。结果相同。
如果选择定时器A0或定时器A1或使用ACLK或SMCLK都没有区别。如果 复位后,JTAG电缆就位,计时器不会运行。这似乎 即使我退出了Elprotronics计划也是如此。拔下JTAG电缆,PUC 设备并运行。

我将仔细检查我的硬件连接并添加另一个重置源- 端口1引脚上的DTR,查看它是否与PUC或其他有关。

谜仍在继续。

Blakely

---在m ...中,“布雷克利”写道:
>
> Al
>
>感谢您及时的回复!你是一个伟大的资源。
>
>我有一些独立于代码问题的更多信息。
>
>首先,我使用Elprotronics程序员拉回了
>工作代码和非工作代码。这些作为文字回来
>文件,因此它们很容易相互检查。他们比赛!
>现在,我头上剩下的最后一根头发都消失了。疯狂的。
>
>变得更好:我使用了失败的环境来对目标进行编程
>木板。代码主体似乎运行良好。我输入命令
>测试计时器代码,并且按预期,它将失败。我删除了JTAG
>电缆,断开电源,然后重新通电。代码主体再次出现
>运行良好。我输入命令来测试计时器代码,这一次
> Works.
>
>我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
>与Elprotronics程序一起使用会以某种方式干扰ACLK
>到达计时器。如果我编程目标并留下JTAG电缆
>连接后,测试例程失败。删除JTAG后,测试
> routine runs.
>
>JTAG使用的引脚可用作通用端口引脚,并且
>分配为输入。系统控制寄存器中有一个位(位
>5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
>(= 0)状态。我会再试一次,看看问题何时消失
>将其设置为专用(= 1)
>
>该代码示例是我尝试尝试的十几种变体中的最后一个
>找到有用的东西。在极端中砍死。当什么终于
>工作,我保持原样,然后转到其他地方。
>
> Blakely
>
>
>---在...中,Onestone写道:
> >
> >我不知道为什么这在两种环境下会有所不同,但是
> >正如您所描述的,初始化计时器的方法是错误的。
> >
> >代码本质上是:
> >1)初始化计时器以重置条件。即停止/清除/模式0。
> >2)将捕获比较寄存器0初始化为0x0000。
> >
> >此时将设置CCTLA0中的CCIFG
> >
> >3)使能CCR0中断。
> >
> >您已经在比较中有效地启用了CCRA0中断,
>value为0,count为value为0,计数器行为不为
>可能会运行,但会在0生成中断时停止。也有
>可能是POR挂起的中断
> >
> >4)设置MC模式以计数到CCR0。
> >
> >在启用之前,您应该先将计数初始化为值
>计时器或中断,然后在清除之前的未决中断标志
>启用中断
> >
> >5)加载CCR0间隔,有效地启动计数器。
> >
> >不,清除复位位TACLR时,计数器启动,是否
>它正在做您期望的完全不同的事情
> >
> >6)将端口引脚3.0放低。
> >7)等待间隔完成。
> >8)将端口引脚3.0设置为高。
> >
> >您需要在初始化中断之前启用它们
>价值观。我使用的顺序是:-
> >
> > MOV #TICKRATE,&CCRA0;定时器A 1第二中断
> >MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> DISABLED
> > BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
> > BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
> >
> > Al
> >
> >
> >
> >
> >布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> > >进度:(最初是5419A计时器问题和8KB KickStart限制)
> > >
> > >8K Kickstart限制:已解决。
> > >计时器问题:未解决。
> > >
> > >计时器问题现在让我发疯。
> > >
> > >我有两个密切相关的编程环境。每个
>使用适用于MSP430 5.4版的KickStart工具。一个完全在里面
>Kickstart,另一个不在Kickstart之外。
> > >
> > >环境1:Kickstart
> > >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> > >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> > >程序员:IAR CSpy调试器。
> > >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> > >
> > >在这种环境下,我可以汇编程序并将其加载到我的程序中
>调试和下载模式通过JTAG端口访问目标板。
> > >在调试中,我释放了要通过“ Go”运行的程序,一切都运行了
>美好的。我可以退出调试器,拔下JTAG电缆并重新通电
>板,一切仍按设计运行。我有一个链接器选项
>使之能够生成intel十六进制格式的额外输出文件。
> > >
> > >环境2:离散工具。
> > >汇编器:上面的KickStart上的a430.exe通过命令行。
> > >链接器:上面的KickStart上的xlink.exe通过命令行。
> > >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> > >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> > >
> > >在这种环境下,该程序通过Bat文件执行,并且
>生成inte十六进制格式的文件,然后由Elprotronic加载
>程序员通过第二个“升级的” FET430UIF进入目标板。
>此十六进制文件与由...生成的额外输出文件相同
> Environment #1.
> > >
> > >我看到的唯一区别是在编程方法和
> the JTAG pods.
> > >
> > >之前的所有代码均正确运行,直到Timer A0例程
> added.
> > >我有一个简短的测试例程,可以通过串行命令访问
> port.
> > >在工作版本中,按一个键会导致100 ms的脉冲开启
>输出引脚。在失败的版本中,似乎计时器是
>永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
>在ACLK端口引脚上输出。
> > >
> > >代码本质上是:
> > >1)初始化计时器以重置条件。即停止/清除/模式
> 0.
> > >2)将捕获比较寄存器0初始化为0x0000。
> > >3)使能CCR0中断。
> > >4)设置MC模式以计数到CCR0。
> > >5)加载CCR0间隔,有效地启动计数器。
> > >6)将端口引脚3.0放低。
> > >7)等待间隔完成。
> > >8)将端口引脚3.0设置为高。
> > >
> > >
> > > foreground.
> > >
> > >由于代码在一个环境中运行而不在另一个环境中运行,所以我
>假设这不是问题的原因,而是某些目标
> other problem.
> > >
> > >CSpy显然在添加一些我需要包含的内容
>在我的独立环境中。
> > >
> > > Any idea(s)?
> > >
> > > Blakely
> > >
> > >
> > >
> > >
> > >---在m ...中,“ Blakely” blakely.lacroix @写道:
> > >>我正在提出一个基于MSP430F5419A的新设计,并且具有
>遇到一个不寻常的问题。
> > >>
> > >>我已经移植了一个非中断驱动的计时器等待例程,
>使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
>它同时带有SMCLK和ACLK,两者都在端口引脚上输出,所以我
>可以看到他们在跑步。其他一切都很好。
> > >>
> > >>TA0似乎没有被计时,因为它从不
>递增,并且永远不会达到CCR0中的值,也永远不会设置CCIF。
>MC位不为零。模式为01 =计数到CCR0限制,该限制应
>到达时设置CCIF。
> > >>
> > >>我确实使用IAR CSpy加载了缩减版本
>它是否使用ACLK运行。这让我认为
>调试器可能正在启用通常未启用的功能。
>有任何想法吗?我没有剩下太多的头发了。
> > >>
> > >>是否有人在IAR中找到新的8K限制解决方案
>下载/调试?有点傻,突然开始限制了这一点。我做了一个
>搜索可能没有的早期版本的KickStart
>这个限制。有人有可以发送给我的有效版本吗?
> > >>
> > >> Blakely
> > >>
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
我们正在使用SYSJTAGPIN(= 0)的重置值来运行。然后我们积极调零 将该位清零是确定的一部分。没变化。

如果我们通过JTAG盒(JTAG引脚2的电源)为目标板供电并进行编程 使用Elprotronics编程器(EP)定位目标,直到我们 将电源切换到目标。如果我们只是发出一个重置(这两个 通过EP按钮激活),我们也会失败。

然后,我们增加了支持以使用丢失的终端DTR来调用端口1.7 打断。 P1.7 ISR打开PMMR,设置PMMSWPOR关闭PMMR,然后 做一次RETI(以防万一POR实际上需要一些时间 公认的。终端断开连接(挂断)将调用该中断。部分是 重置。计时器仍无法使用。

如果我使用EP对零件进行编程,请保留连接的JTAG电缆(目标电源 JTAG引脚4)定时器将失败。如果我重启目标的外部电源 板,计时器工作。

基本上,我需要在编程后完全断开电路板的电源 与EP一起运行计时器。在上述所有测试中,ACLK为 在ACLK输出引脚上仍然可见并处于活动状态。

从到目前为止收集的证据来看,我认为这与公正 MSP-FET430UIF。与EP程序员一起使用的一个已“更新”,而另一个 与IAR调试器一起使用是标准问题。不幸的是,标准 问题不再是标准的,因为我们确实有IAR(已执行)下的选项 还要进行更新。

由于我实际上必须产生一些东西并且确实有解决方法(请重新启动 目标板),我继续。我讨厌与工具打架。这减少了 总体信心。有足够的潜在陷阱。工具应该 not be one of them.

这篇文章可以作为其他可能会遇到此问题的人的可搜索标记 问题。但是,使用EP和JTAG端口并不太正确。一世 将再次检查TI勘误表。也许这是一个新事件。

感谢史蒂夫和艾尔在母亲节的支持。

布莱克利

---在m ...中,“史蒂夫·梅菲尔德”写道:
>
>将JTAG引脚置于专用模式(SYSJTAGPIN = 1)将导致问题 与一些编程工具,期望目标具有共享的引脚。我发现 这是通过REP430(复制器)实现的。如果JTAG引脚在专用 模式下,用于检索CoreId的JTAG序列不起作用。通常情况下 使用TEST信号将I / O引脚切换到JTAG模式。我不得不挑战 首先在TEST信号为高的情况下检索CoreId的序列,如果 无法删除测试信号,然后重试。 TEST信号未用于 1xx系列,但是具有共享I / O引脚的5xx系列是必需的。
> - - - 原始信息 - - -
> From: Blakely
> To: m...
>发送:2012年5月13日,星期日,11:52
>主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。非常 Weird.
>
>现在,我有了Al的代码。结果相同。
>如果选择定时器A0或定时器A1或使用ACLK或SMCLK都没有区别。 如果复位后JTAG电缆就位,则计时器不会运行。出现 甚至在我退出Elprotronics计划后也是如此。拔下JTAG电缆, PUC设备,它们运行。
>
>我将仔细检查我的硬件连接并添加另一个重置源 -在端口1引脚上的DTR,看看它是否与PUC或其他有关。
>
>谜仍在继续。
>
> Blakely
>
>---在m ...中,“布雷克利”写道:
> >
> > Al
> >
> >感谢您及时的回复!你是一个伟大的资源。
> >
> >我有一些独立于代码问题的更多信息。
> >
> >首先,我使用了Elprotronics程序员来拉回代码图像 of
> >工作代码和非工作代码。这些作为文字回来
> >文件,因此它们很容易相互检查。他们比赛!
> >现在,我头上剩下的最后一根头发都消失了。疯狂的。
> >
> >变得更好:我使用了失败的环境来对目标进行编程
> >木板。代码主体似乎运行良好。我输入命令
> >测试计时器代码,并且按预期,它将失败。我删除了JTAG
> >电缆,断开电源,然后重新通电。代码主体再次出现
> >运行良好。我输入命令来测试计时器代码,这一次
> > Works.
> >
> >我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
> >与Elprotronics程序一起使用会以某种方式干扰ACLK
> >到达计时器。如果我编程目标并留下JTAG电缆
> >连接后,测试例程失败。删除JTAG后,测试
> > routine runs.
> >
> >JTAG使用的引脚可用作通用端口引脚,并且
> >分配为输入。系统控制寄存器中有一个位(位
> >5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
> >(= 0)状态。我会再试一次,看看问题何时消失
> >将其设置为专用(= 1)
> >
> >该代码示例是我尝试尝试的十几种变体中的最后一个
> >找到有用的东西。在极端中砍死。当什么终于
> >工作,我保持原样,然后转到其他地方。
> >
> > Blakely
> >
> >
> >---在...中,Onestone写道:
> > >
> > >我不知道为什么这在两种环境下会有所不同, but
> > >正如您所描述的,初始化计时器的方法是 wrong.
> > >
> > >代码本质上是:
> > >1)初始化计时器以重置条件。即停止/清除/模式0。
> > >2)将捕获比较寄存器0初始化为0x0000。
> > >
> > >此时将设置CCTLA0中的CCIFG
> > >
> > >3)使能CCR0中断。
> > >
> > >您已在比较中有效地启用了CCRA0中断, compare
> >value为0,count为value为0,计数器行为不为
> >可能会运行,但会在0生成中断时停止。也有
> >可能是POR挂起的中断
> > >
> > >4)设置MC模式以计数到CCR0。
> > >
> > >在启用之前,您应该先将计数初始化为值
> >计时器或中断,然后清除待处理的中断标志, before
> >启用中断
> > >
> > >5)加载CCR0间隔,有效地启动计数器。
> > >
> > >不,清除复位位TACLR时,计数器启动,是否
> >它正在做您期望的完全不同的事情
> > >
> > >6)将端口引脚3.0放低。
> > >7)等待间隔完成。
> > >8)将端口引脚3.0设置为高。
> > >
> > >您需要在初始化中断之前启用它们
> >价值观。我使用的顺序是:-
> > >
> > > MOV #TICKRATE,&CCRA0;定时器A 1第二中断
> > >MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> > DISABLED
> > > BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
> > > BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
> > >
> > > Al
> > >
> > >
> > >
> > >
> > >布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> > > >进度:(最初是5419A计时器问题和8KB KickStart限制)
> > > >
> > > >8K Kickstart限制:已解决。
> > > >计时器问题:未解决。
> > > >
> > > >计时器问题现在让我发疯。
> > > >
> > > >我有两个密切相关的编程环境。每个
> >使用适用于MSP430 5.4版的KickStart工具。一个完全在里面
> >Kickstart,另一个不在Kickstart之外。
> > > >
> > > >环境1:Kickstart
> > > >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> > > >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> > > >程序员:IAR CSpy调试器。
> > > >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> > > >
> > > >在这种环境下,我可以汇编程序并将其加载到我的程序中
> >调试和下载模式通过JTAG端口访问目标板。
> > > >在调试中,我释放了要通过“ Go”运行的程序,一切都运行了
> >美好的。我可以退出调试器,拔下JTAG电缆并重新通电
> >板,一切仍按设计运行。我有一个链接器选项
> >使之能够生成intel十六进制格式的额外输出文件。
> > > >
> > > >环境2:离散工具。
> > > >汇编器:上面的KickStart上的a430.exe通过命令行。
> > > >链接器:上面的KickStart上的xlink.exe通过命令行。
> > > >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> > > >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> > > >
> > > >在这种环境下,该程序通过Bat文件执行,并且
> >生成int十六进制格式的文件,然后由 Elprotronic
> >程序员通过第二个“升级的” FET430UIF进入目标板。
> >此十六进制文件与由...生成的额外输出文件相同
> > Environment #1.
> > > >
> > > >我看到的唯一区别在于编程方法 and
> > the JTAG pods.
> > > >
> > > >之前的所有代码均正确运行,直到Timer A0例程
> > added.
> > > >我有一个简短的测试例程,可以通过串行命令访问
> > port.
> > > >在工作版本中,按一个键会导致100 ms的脉冲开启
> >输出引脚。在失败的版本中,似乎计时器是
> >永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
> >在ACLK端口引脚上输出。
> > > >
> > > >代码本质上是:
> > > >1)初始化计时器以重置条件。即停止/清除/模式
> > 0.
> > > >2)将捕获比较寄存器0初始化为0x0000。
> > > >3)使能CCR0中断。
> > > >4)设置MC模式以计数到CCR0。
> > > >5)加载CCR0间隔,有效地启动计数器。
> > > >6)将端口引脚3.0放低。
> > > >7)等待间隔完成。
> > > >8)将端口引脚3.0设置为高。
> > > >
> > > >
> > > > foreground.
> > > >
> > > >由于代码在一个环境中运行而不在另一个环境中运行,所以我
> >假设这不是问题的原因,而是某些目标
> > other problem.
> > > >
> > > >CSpy显然在添加一些我需要的东西 include
> >在我的独立环境中。
> > > >
> > > > Any idea(s)?
> > > >
> > > > Blakely
> > > >
> > > >
> > > >
> > > >
> > > >---在m ...中,“ Blakely” blakely.lacroix @写道:
> > > >>我正在提出一个基于MSP430F5419A的新设计,并且具有
> >遇到一个不寻常的问题。
> > > >>
> > > >>我已经移植了一个非中断驱动的计时器等待例程,
> >使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
> >它带有SMCLK和ACLK,两者都在端口引脚上输出,因此 I
> >可以看到他们在跑步。其他一切都很好。
> > > >>
> > > >>TA0似乎没有被计时,因为它从不
> > set.
> >MC位不为零。模式为01 =计数到CCR0限制,该限制应
> >到达时设置CCIF。
> > > >>
> > > >>我确实使用IAR CSpy加载了缩减版本
> >它是否使用ACLK运行。这让我认为
> >调试器可能正在启用通常未启用的功能。
> >有任何想法吗?我没有剩下太多的头发了。
> > > >>
> > > >>是否有人在IAR中找到新的8K限制解决方案
> >下载/调试?有点傻,突然开始限制了这一点。我做了一个
> >搜索可能没有的早期版本的KickStart
> >这个限制。有人有可以发送给我的有效版本吗?
> > > >>
> > > >> Blakely
> > > >>
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
我永远无法仅凭UIF功率对5438A进行可靠编程 由USB端口提供。似乎USB端口不能提供足够的自我 为目标板上使用3.3V的所有器件供电。有严格 与初始序列相关的时序,以将设备置于JTAG模式而不是 BSL(复位是序列的一部分)。我们的其中一个董事会的上限为10uf 我们的手动重置按钮(用于抑制噪音),这完全搞砸了我们 具有对单元进行可靠编程的能力(并且该板上有1611)。之一 数据表表明,不得使用不超过10pf的上限 47K上拉(我怀疑大多数人甚至都不需要上限)。一旦有了 芯片处于JTAG模式,手动重置会将其退出JTAG模式-我通常 必须退出编程/调试工具,将吊舱从 USB端口,然后重新连接Pod,然后重新启动工具以获取 一切恢复正常。

- - - 原始信息 - - -
From: Blakely
To: m...
发送:2012年5月13日,星期日,下午3:45
主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。很奇怪。

我们正在使用SYSJTAGPIN(= 0)的重置值来运行。然后我们积极 将该零位清零,作为确定的一部分。没变化。

如果我们使用JTAG盒(JTAG引脚2的电源)为目标板供电,并且 使用Elprotronics编程器(EP)对目标进行编程,直到失败 我们将力量切换到目标。如果我们只是发出一个重置(这两个 通过EP按钮激活),我们也会失败。

然后,我们增加了支持以使用丢失的终端DTR来调用端口1.7 打断。 P1.7 ISR打开PMMR,设置PMMSWPOR关闭PMMR,然后 做一次RETI(以防万一POR实际上需要一些时间 公认的。终端断开连接(挂断)将调用该中断。零件被重置。 计时器仍无法使用。

如果我使用EP对零件进行编程,请保留连接的JTAG电缆(目标 断开JTAG引脚的电源4)定时器将失败。如果我打开外部电源 目标板,计时器工作。

基本上,我需要在编程后完全断开电路板的电源 与EP一起运行计时器。在上述所有测试中,ACLK为 在ACLK输出引脚上仍然可见并处于活动状态。

从到目前为止收集的证据来看,我认为这与公正 MSP-FET430UIF。与EP程序员一起使用的一个已“更新”,而另一个 与IAR调试器一起使用是标准问题。不幸的是,标准 问题不再是标准的,因为我们确实有IAR(已执行)下的选项 还要进行更新。

由于我实际上必须产生一些东西并且确实有解决方法(重新启动 目标板),我继续。我讨厌与工具打架。这减少了 总体信心。有足够的潜在陷阱。工具应该 not be one of them.

这篇文章可以作为其他可能会遇到此问题的人的可搜索标记 问题。但是,使用EP和JTAG端口并不太正确。我会 再次检查TI勘误表。也许这是一个新事件。

感谢史蒂夫和艾尔在母亲节的支持。

Blakely

---在m ...中,“史蒂夫·梅菲尔德”写道:
>
>将JTAG引脚置于专用模式(SYSJTAGPIN = 1)将导致问题 与一些编程工具,期望目标具有共享的引脚。我发现 这是通过REP430(复制器)实现的。如果JTAG引脚在专用 模式下,用于检索CoreId的JTAG序列不起作用。通常情况下 使用TEST信号将I / O引脚切换到JTAG模式。我不得不挑战 首先在TEST信号为高的情况下检索CoreId的序列,如果 无法删除测试信号,然后重试。 TEST信号未用于 1xx系列,但是具有共享I / O引脚的5xx系列是必需的。
>
>
> - - - 原始信息 - - -
> From: Blakely
> To: m...
>发送:2012年5月13日,星期日,11:52
>主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。非常 Weird.
>
>
>
>现在,我有了Al的代码。结果相同。
>如果选择定时器A0或定时器A1或使用ACLK或SMCLK都没有区别。 如果复位后JTAG电缆就位,则计时器不会运行。出现 甚至在我退出Elprotronics计划后也是如此。拔下JTAG电缆, PUC设备,它们运行。
>
>我将仔细检查我的硬件连接并添加另一个重置源 -在端口1引脚上的DTR,看看它是否与PUC或其他有关。
>
>谜仍在继续。
>
> Blakely
>
>---在m ...中,“布雷克利”写道:
> >
> > Al
> >
> >感谢您及时的回复!你是一个伟大的资源。
> >
> >我有一些独立于代码问题的更多信息。
> >
> >首先,我使用了Elprotronics程序员来拉回代码图像 of
> >工作代码和非工作代码。这些作为文字回来
> >文件,因此它们很容易相互检查。他们比赛!
> >现在,我头上剩下的最后一根头发都消失了。疯狂的。
> >
> >变得更好:我使用了失败的环境来对目标进行编程
> >木板。代码主体似乎运行良好。我输入命令
> >测试计时器代码,并且按预期,它将失败。我删除了JTAG
> >电缆,断开电源,然后重新通电。代码主体再次出现
> >运行良好。我输入命令来测试计时器代码,这一次
> > Works.
> >
> >我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
> >与Elprotronics程序一起使用会以某种方式干扰ACLK
> >到达计时器。如果我编程目标并留下JTAG电缆
> >连接后,测试例程失败。删除JTAG后,测试
> > routine runs.
> >
> >JTAG使用的引脚可用作通用端口引脚,并且
> >分配为输入。系统控制寄存器中有一个位(位
> >5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
> >(= 0)状态。我会再试一次,看看问题何时消失
> >将其设置为专用(= 1)
> >
> >该代码示例是我尝试尝试的十几种变体中的最后一个
> >找到有用的东西。在极端中砍死。当什么终于
> >工作,我保持原样,然后转到其他地方。
> >
> > Blakely
> >
> >
> >---在...中,Onestone写道:
> > >
> > >我不知道为什么这在两种环境下会有所不同, but
> > >正如您所描述的,初始化计时器的方法是 wrong.
> > >
> > >代码本质上是:
> > >1)初始化计时器以重置条件。即停止/清除/模式0。
> > >2)将捕获比较寄存器0初始化为0x0000。
> > >
> > >此时将设置CCTLA0中的CCIFG
> > >
> > >3)使能CCR0中断。
> > >
> > >您已在比较中有效地启用了CCRA0中断, compare
> >value为0,count为value为0,计数器行为不为
> >可能会运行,但会在0生成中断时停止。也有
> >可能是POR挂起的中断
> > >
> > >4)设置MC模式以计数到CCR0。
> > >
> > >在启用之前,您应该先将计数初始化为值
> >计时器或中断,然后清除待处理的中断标志, before
> >启用中断
> > >
> > >5)加载CCR0间隔,有效地启动计数器。
> > >
> > >不,清除复位位TACLR时,计数器启动,是否
> >它正在做您期望的完全不同的事情
> > >
> > >6)将端口引脚3.0放低。
> > >7)等待间隔完成。
> > >8)将端口引脚3.0设置为高。
> > >
> > >您需要在初始化中断之前启用它们
> >价值观。我使用的顺序是:-
> > >
> > > MOV #TICKRATE,&CCRA0;定时器A 1第二中断
> > >MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> > DISABLED
> > > BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
> > > BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
> > >
> > > Al
> > >
> > >
> > >
> > >
> > >布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> > > >进度:(最初是5419A计时器问题和8KB KickStart限制)
> > > >
> > > >8K Kickstart限制:已解决。
> > > >计时器问题:未解决。
> > > >
> > > >计时器问题现在让我发疯。
> > > >
> > > >我有两个密切相关的编程环境。每个
> >使用适用于MSP430 5.4版的KickStart工具。一个完全在里面
> >Kickstart,另一个不在Kickstart之外。
> > > >
> > > >环境1:Kickstart
> > > >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> > > >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> > > >程序员:IAR CSpy调试器。
> > > >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> > > >
> > > >在这种环境下,我可以汇编程序并将其加载到我的程序中
> >调试和下载模式通过JTAG端口访问目标板。
> > > >在调试中,我释放了要通过“ Go”运行的程序,一切都运行了
> >美好的。我可以退出调试器,拔下JTAG电缆并重新通电
> >板,一切仍按设计运行。我有一个链接器选项
> >使之能够生成intel十六进制格式的额外输出文件。
> > > >
> > > >环境2:离散工具。
> > > >汇编器:上面的KickStart上的a430.exe通过命令行。
> > > >链接器:上面的KickStart上的xlink.exe通过命令行。
> > > >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> > > >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> > > >
> > > >在这种环境下,该程序通过Bat文件执行,并且
> >生成int十六进制格式的文件,然后由 Elprotronic
> >程序员通过第二个“升级的” FET430UIF进入目标板。
> >此十六进制文件与由...生成的额外输出文件相同
> > Environment #1.
> > > >
> > > >我看到的唯一区别在于编程方法 and
> > the JTAG pods.
> > > >
> > > >之前的所有代码均正确运行,直到Timer A0例程
> > added.
> > > >我有一个简短的测试例程,可以通过串行命令访问
> > port.
> > > >在工作版本中,按一个键会导致100 ms的脉冲开启
> >输出引脚。在失败的版本中,似乎计时器是
> >永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
> >在ACLK端口引脚上输出。
> > > >
> > > >代码本质上是:
> > > >1)初始化计时器以重置条件。即停止/清除/模式
> > 0.
> > > >2)将捕获比较寄存器0初始化为0x0000。
> > > >3)使能CCR0中断。
> > > >4)设置MC模式以计数到CCR0。
> > > >5)加载CCR0间隔,有效地启动计数器。
> > > >6)将端口引脚3.0放低。
> > > >7)等待间隔完成。
> > > >8)将端口引脚3.0设置为高。
> > > >
> > > >
> > > > foreground.
> > > >
> > > >由于代码在一个环境中运行而不在另一个环境中运行,所以我
> >假设这不是问题的原因,而是某些目标
> > other problem.
> > > >
> > > >CSpy显然在添加一些我需要的东西 include
> >在我的独立环境中。
> > > >
> > > > Any idea(s)?
> > > >
> > > > Blakely
> > > >
> > > >
> > > >
> > > >
> > > >---在m ...中,“ Blakely” blakely.lacroix @写道:
> > > >>我正在提出一个基于MSP430F5419A的新设计,并且具有
> >遇到一个不寻常的问题。
> > > >>
> > > >>我已经移植了一个非中断驱动的计时器等待例程,
> >使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
> >它带有SMCLK和ACLK,两者都在端口引脚上输出,因此 I
> >可以看到他们在跑步。其他一切都很好。
> > > >>
> > > >>TA0似乎没有被计时,因为它从不
> > set.
> >MC位不为零。模式为01 =计数到CCR0限制,该限制应
> >到达时设置CCIF。
> > > >>
> > > >>我确实使用IAR CSpy加载了缩减版本
> >它是否使用ACLK运行。这让我认为
> >调试器可能正在启用通常未启用的功能。
> >有任何想法吗?我没有剩下太多的头发了。
> > > >>
> > > >>是否有人在IAR中找到新的8K限制解决方案
> >下载/调试?有点傻,突然开始限制了这一点。我做了一个
> >搜索可能没有的早期版本的KickStart
> >这个限制。有人有可以发送给我的有效版本吗?
> > > >>
> > > >> Blakely
> > > >>
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
嗨,布雷克利,我对程序员之间区别的唯一想法是
可能是时钟或电源负载。我曾经遇到过
程序将在编程工具上运行,但不能独立运行
第一的。这可以追溯到时钟没有完全稳定下来,并且
NMI未处理。 (最终代码会执行此操作,但并非总是测试代码
因为它可以掩盖一些错误)。基本上在这种情况下,时钟不稳定
在负载下,由于开关弹跳,触发了时钟故障,并且
把我封锁了。在其他情况下,我发现我不能干净地跑步
由FET编程器供电时,但没有遇到这个问题
一会儿。除了FET工具和
USB加密狗。

干杯



布莱克利(Blakely)在14/05/2012 2:39 AM写道:
> Al
>
>感谢您及时的回复!你是一个伟大的资源。
>
>我有一些独立于代码问题的更多信息。
>
>首先,我使用Elprotronics程序员拉回了
>工作代码和非工作代码。这些作为文字回来
>文件,因此它们很容易相互检查。他们比赛!
>现在,我头上剩下的最后一根头发都消失了。疯狂的。
>
>变得更好:我使用了失败的环境来对目标进行编程
>木板。代码主体似乎运行良好。我输入命令
>测试计时器代码,并且按预期,它将失败。我删除了JTAG
>电缆,断开电源,然后重新通电。代码主体再次出现
>运行良好。我输入命令来测试计时器代码,这一次
> Works.
>
>我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
>与Elprotronics程序一起使用会以某种方式干扰ACLK
>到达计时器。如果我编程目标并留下JTAG电缆
>连接后,测试例程失败。删除JTAG后,测试
> routine runs.
>
>JTAG使用的引脚可用作通用端口引脚,并且
>分配为输入。系统控制寄存器中有一个位(位
>5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
>(= 0)状态。我会再试一次,看看问题何时消失
>将其设置为专用(= 1)
>
>该代码示例是我尝试尝试的十几种变体中的最后一个
>找到有用的东西。在极端中砍死。当什么终于
>工作,我保持原样,然后转到其他地方。
>
> Blakely
>---在...中,Onestone写道:
>>我不知道为什么这在两种环境下会有所不同,但是
>>正如您所描述的,初始化计时器的方法是错误的。
>>
>>代码本质上是:
>>1)初始化计时器以重置条件。即停止/清除/模式0。
>>2)将捕获比较寄存器0初始化为0x0000。
>>
>>此时将设置CCTLA0中的CCIFG
>>
>>3)使能CCR0中断。
>>
>>您已经在比较中有效地启用了CCRA0中断,
>value为0,count为value为0,计数器行为不为
>可能会运行,但会在0生成中断时停止。也有
>可能是POR挂起的中断
>>4)设置MC模式以计数到CCR0。
>>
>>在启用之前,您应该先将计数初始化为值
>计时器或中断,然后在清除之前的未决中断标志
>启用中断
>>5)加载CCR0间隔,有效地启动计数器。
>>
>>不,清除复位位TACLR时,计数器启动,是否
>它正在做您期望的完全不同的事情
>>6)将端口引脚3.0放低。
>>7)等待间隔完成。
>>8)将端口引脚3.0设置为高。
>>
>>您需要在初始化中断之前启用它们
>价值观。我使用的顺序是:-
>> MOV #TICKRATE,&CCRA0;定时器A 1第二中断
>>MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> DISABLED
>> BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
>> BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
>>
>> Al
>>布莱克利(Blakely)在14/05/2012 1:24 AM写道:
>>>进度:(最初是5419A计时器问题和8KB KickStart限制)
>>>
>>>8K Kickstart限制:已解决。
>>>计时器问题:未解决。
>>>
>>>计时器问题现在让我发疯。
>>>
>>>我有两个密切相关的编程环境。每个
>使用适用于MSP430 5.4版的KickStart工具。一个完全在里面
>Kickstart,另一个不在Kickstart之外。
>>>环境1:Kickstart
>>>汇编程序:KickStart中包含的a430.exe版本4.21.2。
>>>链接器:Kickstart中包含的xlink.exe版本4.6.10。
>>>程序员:IAR CSpy调试器。
>>>JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
>>>
>>>在这种环境下,我可以汇编程序并将其加载到我的程序中
>调试和下载模式通过JTAG端口访问目标板。
>>>在调试中,我释放了要通过“ Go”运行的程序,一切都运行了
>美好的。我可以退出调试器,拔下JTAG电缆并重新通电
>板,一切仍按设计运行。我有一个链接器选项
>使之能够生成intel十六进制格式的额外输出文件。
>>>环境2:离散工具。
>>>汇编器:上面的KickStart上的a430.exe通过命令行。
>>>链接器:上面的KickStart上的xlink.exe通过命令行。
>>>程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
>>>JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
>>>
>>>在这种环境下,该程序通过Bat文件执行,并且
>生成inte十六进制格式的文件,然后由Elprotronic加载
>程序员通过第二个“升级的” FET430UIF进入目标板。
>此十六进制文件与由...生成的额外输出文件相同
> Environment #1.
>>>我看到的唯一区别是在编程方法和
> the JTAG pods.
>>>之前的所有代码均正确运行,直到Timer A0例程
> added.
>>>我有一个简短的测试例程,可以通过串行命令访问
> port.
>>>在工作版本中,按一个键会导致100 ms的脉冲开启
>输出引脚。在失败的版本中,似乎计时器是
>永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
>在ACLK端口引脚上输出。
>>>代码本质上是:
>>>1)初始化计时器以重置条件。即停止/清除/模式
> 0.
>>>2)将捕获比较寄存器0初始化为0x0000。
>>>3)使能CCR0中断。
>>>4)设置MC模式以计数到CCR0。
>>>5)加载CCR0间隔,有效地启动计数器。
>>>6)将端口引脚3.0放低。
>>>7)等待间隔完成。
>>>8)将端口引脚3.0设置为高。
>>>
>>>
>>> foreground.
>>>
>>>由于代码在一个环境中运行而不在另一个环境中运行,所以我
>假设这不是问题的原因,而是某些目标
> other problem.
>>>CSpy显然在添加一些我需要包含的内容
>在我的独立环境中。
>>> Any idea(s)?
>>>
>>> Blakely
>>>
>>>
>>>
>>>
>>>---在m ...中,“ Blakely” blakely.lacroix @写道:
>>>>我正在提出一个基于MSP430F5419A的新设计,并且具有
>遇到一个不寻常的问题。
>>>>我已经移植了一个非中断驱动的计时器等待例程,
>使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
>它同时带有SMCLK和ACLK,两者都在端口引脚上输出,所以我
>可以看到他们在跑步。其他一切都很好。
>>>>TA0似乎没有被计时,因为它从不
>递增,并且永远不会达到CCR0中的值,也永远不会设置CCIF。
>MC位不为零。模式为01 =计数到CCR0限制,该限制应
>到达时设置CCIF。
>>>>我确实使用IAR CSpy加载了缩减版本
>它是否使用ACLK运行。这让我认为
>调试器可能正在启用通常未启用的功能。
>有任何想法吗?我没有剩下太多的头发了。
>>>>是否有人在IAR中找到新的8K限制解决方案
>下载/调试?有点傻,突然开始限制了这一点。我做了一个
>搜索可能没有的早期版本的KickStart
>这个限制。有人有可以发送给我的有效版本吗?
>>>> Blakely
>>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
根据5419A / 5438A数据表,我们在RST线上确实有一个小上限。

真正令我疯狂的是,除了Timer之外,所有代码都可以工作 A0和定时器A1例程。只是没有时钟传递给计时器, 是ACLK还是SMCLK,或者定时器处于永久清除状态。

简直很奇怪。

布莱克利

---在m ...中,“史蒂夫·梅菲尔德”写道:
>
>我永远无法仅凭UIF功率对5438A进行可靠编程 由USB端口提供。似乎USB端口不能提供足够的自我 为目标板上使用3.3V的所有器件供电。有严格 与初始序列相关的时序,以将设备置于JTAG模式而不是 BSL(复位是序列的一部分)。我们的其中一个董事会的上限为10uf 我们的手动重置按钮(用于抑制噪音),这完全搞砸了我们 具有对单元进行可靠编程的能力(并且该板上有1611)。之一 数据表表明,不得使用不超过10pf的上限 47K上拉(我怀疑大多数人甚至都不需要上限)。一旦有了 芯片处于JTAG模式,手动重置会将其退出JTAG模式-我通常 必须退出编程/调试工具,将吊舱从 USB端口,然后重新连接Pod,然后重新启动工具以获取 一切恢复正常。
>
> - - - 原始信息 - - -
> From: Blakely
> To: m...
>发送:2012年5月13日,星期日,下午3:45
>主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。非常 Weird.
>
>我们正在使用SYSJTAGPIN(= 0)的重置值来运行。然后我们积极 将该零位清零,作为确定的一部分。没变化。
>
>如果我们使用JTAG盒(JTAG引脚2的电源)为目标板供电,并且 使用Elprotronics编程器(EP)对目标进行编程,直到失败 我们将力量切换到目标。如果我们只是发出一个重置(这两个 通过EP按钮激活),我们也会失败。
>
>然后,我们增加了支持以使用丢失的终端DTR来调用端口1.7 打断。 P1.7 ISR打开PMMR,设置PMMSWPOR关闭PMMR,然后 做一次RETI(以防万一POR实际上需要一些时间 公认的。终端断开连接(挂断)将调用该中断。零件被重置。 计时器仍无法使用。
>
>如果我使用EP对零件进行编程,请保留连接的JTAG电缆(目标 断开JTAG引脚的电源4)定时器将失败。如果我打开外部电源 目标板,计时器工作。
>
>基本上,我需要在电路板完全断电后 用EP编程以使计时器运行。在所有这些测试中 如上所示,ACLK仍然可见并且在ACLK输出引脚上处于活动状态。
>
>从到目前为止收集的证据来看,我认为这与公正 MSP-FET430UIF。与EP程序员一起使用的一个已“更新”,而另一个 与IAR调试器一起使用是标准问题。不幸的是,标准 问题不再是标准的,因为我们确实有IAR(已执行)下的选项 还要进行更新。
>
>由于我实际上必须产生一些东西并且确实有解决方法(重新启动 目标板),我继续。我讨厌与工具打架。这减少了 总体信心。有足够的潜在陷阱。工具应该 not be one of them.
>
>这篇文章可以作为其他可能会遇到此问题的人的可搜索标记 问题。但是,使用EP和JTAG端口并不太正确。我会 再次检查TI勘误表。也许这是一个新事件。
>
>感谢史蒂夫和艾尔在母亲节的支持。
>
> Blakely
>
>---在m ...中,“史蒂夫·梅菲尔德”写道:
> >
> >将JTAG引脚置于专用模式(SYSJTAGPIN = 1)将导致问题 与一些编程工具,期望目标具有共享的引脚。我发现 这是通过REP430(复制器)实现的。如果JTAG引脚在专用 模式下,用于检索CoreId的JTAG序列不起作用。通常情况下 使用TEST信号将I / O引脚切换到JTAG模式。我不得不挑战 首先在TEST信号为高的情况下检索CoreId的序列,如果 无法删除测试信号,然后重试。 TEST信号未用于 1xx系列,但是具有共享I / O引脚的5xx系列是必需的。
> >
> >
> > - - - 原始信息 - - -
> > From: Blakely
> > To: m...
> >发送:2012年5月13日,星期日,11:52
> >主题:[msp430]收件人:MSP430 F 5438A计时器/环境问题。非常 Weird.
> >
> >
> >
> >现在,我有了Al的代码。结果相同。
> >如果选择定时器A0或定时器A1或使用ACLK或 SMCLK。如果复位后JTAG电缆就位,则计时器不会运行。这 即使我退出了Elprotronics程序,它似乎也是正确的。删除JTAG 电缆,PUC设备并运行。
> >
> >我将仔细检查我的硬件连接并添加另一个来源 复位-端口1引脚上的DTR,看它是否与PUC或其他有关。
> >
> >谜仍在继续。
> >
> > Blakely
> >
> >---在m ...中,“布雷克利”写道:
> > >
> > > Al
> > >
> > >感谢您及时的回复!你是一个伟大的资源。
> > >
> > >我有一些独立于代码问题的更多信息。
> > >
> > >首先,我使用了Elprotronics程序员来拉回代码图像 of
> > >工作代码和非工作代码。这些作为文字回来
> > >文件,因此它们很容易相互检查。他们比赛!
> > >现在,我头上剩下的最后一根头发都消失了。疯狂的。
> > >
> > >变得更好:我使用了失败的环境来对目标进行编程
> > >木板。代码主体似乎运行良好。我输入命令
> > >测试计时器代码,并且按预期,它将失败。我删除了JTAG
> > >电缆,断开电源,然后重新通电。代码主体再次出现 to
> > >运行良好。我输入命令来测试计时器代码,这一次
> > > Works.
> > >
> > >我得出的结论是“已更新”的MSP-FET430UIF JTAG端口
> > >与Elprotronics程序一起使用会以某种方式干扰 ACLK
> > >到达计时器。如果我编程目标并留下JTAG电缆
> > >连接后,测试例程失败。删除JTAG后,测试
> > > routine runs.
> > >
> > >JTAG使用的引脚可用作通用端口引脚,并且
> > >分配为输入。系统控制寄存器中有一个位 (bit
> > >5 = SYSJTAGPIN,在BOR之后清除)我留在Shared中的
> > >(= 0)状态。我会再试一次,看看问题何时消失
> > >将其设置为专用(= 1)
> > >
> > >该代码示例是我尝试尝试的十几种变体中的最后一个
> > >找到有用的东西。在极端中砍死。什么时候 finally
> > >工作,我保持原样,然后转到其他地方。
> > >
> > > Blakely
> > >
> > >
> > >---在...中,Onestone写道:
> > > >
> > > >我不知道为什么这在两种环境下会有所不同, but
> > > >正如您所描述的,初始化计时器的方法是 wrong.
> > > >
> > > >代码本质上是:
> > > >1)初始化计时器以重置条件。即停止/清除/模式 0.
> > > >2)将捕获比较寄存器0初始化为0x0000。
> > > >
> > > >此时将设置CCTLA0中的CCIFG
> > > >
> > > >3)使能CCR0中断。
> > > >
> > > >您已在比较中有效地启用了CCRA0中断, compare
> > >value为0,count为value为0,计数器行为不为
> > >可能会运行,但会在0生成中断时停止。也有
> > >可能是POR挂起的中断
> > > >
> > > >4)设置MC模式以计数到CCR0。
> > > >
> > > >您应该先将计数初始化为值,然后再进行 enabling
> > >计时器或中断,然后清除待处理的中断标志, before
> > >启用中断
> > > >
> > > >5)加载CCR0间隔,有效地启动计数器。
> > > >
> > > >不,清除复位位TACLR时,计数器启动,是否
> > >它正在做您期望的完全不同的事情
> > > >
> > > >6)将端口引脚3.0放低。
> > > >7)等待间隔完成。
> > > >8)将端口引脚3.0设置为高。
> > > >
> > > >您需要在初始化中断之前启用它们
> > >价值观。我使用的顺序是:-
> > > >
> > > > MOV #TICKRATE,&CCRA0;定时器A 1第二中断
> > > >MOV#MC_2 + TASSEL_1 + TACLR + ID_3,&TACTL; ACLK,连续模式,OVF
> > > DISABLED
> > > > BIC #CCIFG,&CCTLA0;启用TIMERA0 1秒
> > > > BIS #CCIE,&CCTLA0;启用TIMERA0 1秒
> > > >
> > > > Al
> > > >
> > > >
> > > >
> > > >
> > > >布莱克利(Blakely)在14/05/2012 1:24 AM写道:
> > > > >进度:(最初是5419A计时器问题和8KB KickStart limit)
> > > > >
> > > > >8K Kickstart限制:已解决。
> > > > >计时器问题:未解决。
> > > > >
> > > > >计时器问题现在让我发疯。
> > > > >
> > > > >我有两个密切相关的编程环境。 Each
> > >使用适用于MSP430 5.4版的KickStart工具。一个完全是 within
> > >Kickstart,另一个不在Kickstart之外。
> > > > >
> > > > >环境1:Kickstart
> > > > >汇编程序:KickStart中包含的a430.exe版本4.21.2。
> > > > >链接器:Kickstart中包含的xlink.exe版本4.6.10。
> > > > >程序员:IAR CSpy调试器。
> > > > >JTAG盒:运行固件版本2.04.01.004的MSP-FET430UIF。
> > > > >
> > > > >在这种环境下,我可以汇编程序并将其加载到 my
> > >调试和下载模式通过JTAG端口访问目标板。
> > > > >在调试中,我发布了要通过“ Go”运行的程序, runs
> > >美好的。我可以退出调试器,拔下JTAG电缆并重新通电
> > >板,一切仍按设计运行。我有一个链接器选项
> > >使之能够生成intel十六进制格式的额外输出文件。
> > > > >
> > > > >环境2:离散工具。
> > > > >汇编器:上面的KickStart上的a430.exe通过命令行。
> > > > >链接器:上面的KickStart上的xlink.exe通过命令行。
> > > > >程序员:Elprotronics FET-Pro430 Lite 3.0-6版本。
> > > > >JTAG盒:运行固件3.02.03.015的其他MSP-FET430UIF。
> > > > >
> > > > >在这种环境下,该程序通过Bat文件执行,并且
> > >生成int十六进制格式的文件,然后由 Elprotronic
> > >程序员通过第二个“升级的” FET430UIF进入目标板。
> > >此十六进制文件与由...生成的额外输出文件相同
> > > Environment #1.
> > > > >
> > > > >我看到的唯一区别在于编程方法 and
> > > the JTAG pods.
> > > > >
> > > > >之前的所有代码均正确运行,直到Timer A0例程
> > > added.
> > > > >我有一个简短的测试例程,可以通过串行命令访问
> > > port.
> > > > >在工作版本中,按一个键会产生100毫秒的脉冲 on
> > >输出引脚。在失败的版本中,似乎计时器是
> > >永远不会被计时。 (来自32.768 KH XT1源的ACLK)。 ACLK正在
> > >在ACLK端口引脚上输出。
> > > > >
> > > > >代码本质上是:
> > > > >1)初始化计时器以重置条件。 IE。 Stopped/Cleared/Mode
> > > 0.
> > > > >2)将捕获比较寄存器0初始化为0x0000。
> > > > >3)使能CCR0中断。
> > > > >4)设置MC模式以计数到CCR0。
> > > > >5)加载CCR0间隔,有效地启动计数器。
> > > > >6)将端口引脚3.0放低。
> > > > >7)等待间隔完成。
> > > > >8)将端口引脚3.0设置为高。
> > > > >
> > > > >
> > > > > foreground.
> > > > >
> > > > >由于代码在一个环境中运行而不在另一个环境中运行,所以我
> > >假定这不是问题的原因,而是目标 some
> > > other problem.
> > > > >
> > > > >CSpy显然在添加一些我需要的东西 include
> > >在我的独立环境中。
> > > > >
> > > > > Any idea(s)?
> > > > >
> > > > > Blakely
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >---在m ...中,“ Blakely” blakely.lacroix @写道:
> > > > >>我正在提出一种基于MSP430F5419A和 have
> > >遇到一个不寻常的问题。
> > > > >>
> > > > >>我已经移植了一个非中断驱动的计时器等待例程 that
> > >使用TA0。它在F148零件上运行,但不在5419A上运行。我试过了
> > >它带有SMCLK和ACLK,两者都在端口引脚上输出,因此 I
> > >可以看到他们在跑步。其他一切都很好。
> > > > >>
> > > > >>TA0似乎没有被计时,因为它从不
> > > set.
> > >MC位不为零。模式为01 =计数到CCR0极限 should
> > >到达时设置CCIF。
> > > > >>
> > > > >>我确实使用IAR CSpy加载了缩小版本 once
> > >它是否使用ACLK运行。这让我认为
> > >调试器可能正在启用通常未启用的功能。
> > >有任何想法吗?我没有剩下太多的头发了。
> > > > >>
> > > > >>是否有人在IAR中找到新的8K限制解决方案
> > >下载/调试?有点傻,突然开始限制了这一点。我做了 a
> > >搜索可能没有的早期版本的KickStart
> > >这个限制。有人有可以发送给我的有效版本吗?
> > > > >>
> > > > >> Blakely
> > > > >>
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >