发 帖  
原厂入驻New
[问答] pic18f2431的问题如何解决
142 PIC PWM
分享
你好,我对pic18f2431有问题。我用pwm 0-5作为互补模式来管理三相电桥。Pwm 0-1和2-3可以,但问题是pwm 4和5是反转的。当PWM4必须高,这是低的,反之亦然??!它是一个PIC18F2431的bug吗?谢谢你,雷纳德。
0
2020-4-29 07:40:43   评论 分享淘帖 邀请回答

相关问题

19个回答
我的经验是,微芯片不会装运有故障的设备。我的经验是不知何故,在某个地方被忽略了。你用它做无刷电机吗?伯特
2020-4-29 07:54:37 评论

举报

你是否已经检查了PCD2控制寄存器的正确设置?伯特
2020-4-29 08:10:42 评论

举报

如果您使用调试器,如ICD2LE或ICD3,请在“视图”下向左角查看,滚动到特殊功能寄存器,然后转到位置F74和F75,您可以看到它是否与F75相同,直到F78。如果没有,则必须更改设置。伯特
2020-4-29 08:23:00 评论

举报

你好,伯特,谢谢你的帮助。是的,我用的是异步电动机tri 400v。我目前只模拟MPLAB 8,有Proteus和没有Proteus,而且观察的结果是一样的。这可能是我的错误,但我不明白为什么pcpwm模块要配置成两个分支,而不是三个分支。D????再次感谢。雷纳德
2020-4-29 08:29:09 评论

举报

谢谢您我今天收到您的回复。如果您不使用调试器,那么在设置中很难分析问题。我假设你在汇编程序中。如果是,就测试它是否可以解决您的问题,执行以下操作.movfPCD1,w(或PCD0)movwfPCD2,看看现在这三者是否都正常工作。然而,如果你在生命回路中进行测试,最好是在你的DC和马达之间串联一对灯泡/球。如果你有一个问题,地球仪/灯泡会发光,你不会损坏你的马达(或电路)。但我对你真正创造的信息太少了,这可能只是一个荒谬的声明。无论如何,我总是串行使用globes/灯泡,直到我确信电路正常工作,特别是因为我进行内联调试和编程。伯特
2020-4-29 08:40:04 评论

举报

谢谢你,伯特。我的项目在“C”编译器mcc18下。这个项目是一个简单的逆变器和交流频率。在proteus仿真中,一切似乎都工作得很好,但不是pwm4和pwm5所管理的分支3。pwm4-5信号与我期望的相反。pwm4输出必须是激活的。它是不活跃的,反之亦然。根据缺点,PWM5是PWM4的补充。伯特再次感谢你的帮助。
2020-4-29 08:52:05 评论

举报

博尼尔。很抱歉没有及时回复,但我有,他们所谓的“猪烟道”,并发展成支气管炎。40多年前,我用4位西门子微处理器完成了第一个汇编程序项目,从那时起就一直坚持下去。我对C语言有基本的知识。只是一些信息,也许对你有帮助,也许对你没有帮助。如果你对Ifthe读是10位“1110000101”,你将在8位寄存器中得到“10000101”。很好,现在它读到“1100000101”。你会得到“00000101”,也就是说,你的ADC像疯子一样上下跳动,它不会是一个很好的上下线性滑动秤。回到你的问题上来。你看过PIC18F2431的DelaTa.PDF了吗?它看起来像是硅问题。我已经苦苦挣扎了好几个月,但还是没法把它弄清楚。这肯定与那4个寄存器有关。PTCON0,PTCON1,PTCON2,PTCON3(我试图上传勘误表文件,但失败了,因为它太大了。伯特)
2020-4-29 09:07:00 评论

举报

你的密码可能混淆了吗?PWM0在RB0PWM1上在RB1PWM2在RB2PWM3在RB3PWM4在RB5<——注意,这里改变PWM5在RB4<——并且HEREPWM 4和5在引脚上颠倒,而不是根据误差数据表在内部。
2020-4-29 09:12:59 评论

举报

嗨,杰克,你说得对,我没有选那个。也许你能帮助我。我向雷纳德道歉。是不是真的,我们还需要考虑13到14年的勘误表2005?我想在2016,Microchip将通过改变硅来解决这些问题。我问的原因。我有一个非常奇怪的问题,我的PIC18F2431与PIC16F877A和5千瓦三相无刷电机一起在调试模式下工作得很好。但是,一旦我编程芯片,一旦我启动我的电机,过电流和过热的ADC读数行程是我的PIC16F877A和电机。而它只能在60安培和75摄氏度之间跳闸。?????????抱歉,Reynald,我希望您原谅我,您的线程崩溃了,但是它也许也适用于您。从调试器阶段到实际测试有什么不同?伯特
2020-4-29 09:32:03 评论

举报

什么是“调试器模式”?您的意思是在模拟器上或在调试程序中使用调试工具(如PIDIT 3或ICD3)进行实际调试吗?
2020-4-29 09:45:02 评论

举报

是的,这就是我的意思。我的ICD3在Wi10下出现问题,我现在在WiXP下使用ICD2LE。可信赖的操作系统在笔记本电脑上,不见互联网。在调试模式下驱动该系统,效果非常好。我试图放置几个1uF电容超过5伏,看看这是否有帮助。我花了8个月的时间,因为我不能让ADC的正确阅读。我现在感觉失败了,因为我可能不得不依靠老式的缓慢的普通保险丝,以防止无刷电机停放(6米船)。低电感,电机将从我的锂电池汲取几千安培。谢谢,如果你能给我一些其他的暗示,我还能做什么。伯特
2020-4-29 09:57:18 评论

举报

我唯一的结论是CPU有一个内部错误。为什么?下面的程序不能给出否定的结果,这是不可能的。除非有人能证明我是个该死的白痴,浪费了我8个月的时间。或者也许在某个地方有一张勘误表,我不知道,或者忽略了。BTT1-MOVWF TEMP2:结果,CA是TEMP2的含量(热敏电阻温度的结果)。温度上升,但电阻值下降。结果当温度达到75摄氏度以上时,值从CA下降到048;结果W寄存器包含483-bcf STATUS,N;结果确保状态负是04-subwf Temp2;结果应该是正的,即CA减去48=82正的。T状态:0x13,即否定的位被设置(应该是零)!!!!(6)btfsc STATUS,N;它应该跳过,但不要跳过并分支到错误的区域,它应该跳回到7-goto过热例行程序。虽然热敏电阻测量20摄氏度,即CA,我的电机切断8-.。
2020-4-29 10:15:02 评论

举报

当你进入那个程序时,W的值是多少?我猜它是130,正如你所说的“CA-48=82”。8位签名算法中最大正数为127。130实际上是-126,所以当从它减去48时,就会出现溢出。如果要执行UNSIGNED算法,那么应该测试Carry标志,而不是Minus标志。
2020-4-29 10:21:33 评论

举报

0xCASLY:@ OP:就像@ QHB所说,N位用于符号运算。它的值等于结果的最高有效位(符号)。在0xCA-0x48=0x82中,最高有效位是“1”,所以N位=“1”。这些宏可能有帮助:http://www..hip.com/for./FindPost/763697。
2020-4-29 10:33:55 评论

举报

D'OHHWAIN一直呆在十六进制,我错误地转换为十进制。我仍然认识到这个基本问题…
2020-4-29 10:40:18 评论

举报

我早点张贴时很着急。无论如何,我会RTFM,不跳这么快归咎于MCU。如前所述,N位用于有符号算术。在有符号算术中,0xCA-0x48=0x82-表示- 54 - 72=-126,因此N位被设置。
2020-4-29 10:56:34 评论

举报

好吧,伙计们,我得承认。我是个该死的白痴。也许我已经老去做编程了。再过几天我就76岁了。我假设翻转是在255,而不是在127。希望我现在能用随身携带的钻头来工作。谢谢所有给我上了好一课的人,伯特。
2020-4-29 11:14:07 评论

举报

谢谢大家,特别QHB和1和0。这是其中一个有趣的情况,这是突出了你们俩。当我开始在办公室工作时(现在是冬天),温度是合理的,但是到了晚上温度开始快速下降。虽然我有一个加热器。结果是,在夜晚开始时,它在ICD2LE调试器中工作,傍晚结束时,温度刚刚超过127,并设置了N标志。不再工作。感谢你们俩,在3.6伏齐纳二极管超过热敏电阻的情况下,热敏电阻的值是否增加不再重要,因为齐纳二极管将最大电压限制在127/N标记之下。我非常感谢你们俩。几个月和几个月,我一直在挣扎,我现在可以自信地监测海上马达的性能。谢谢伯特
2020-4-29 11:24:59 评论

举报

只有小组成员才能发言,加入小组>>

113个成员聚集在这个小组

加入小组

创建小组步骤

关闭

站长推荐 上一条 /7 下一条

快速回复 返回顶部 返回列表