完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
您好,我正在尝试使用PIC16LF1575生成三个PWM信号,但是我看不出有任何选择将它们与计时器关联起来。没有他们他们会跑得好吗?他们有专用的PWM模块定时器吗?更新:所以我只是看了数据表,它说它有独立的定时器用于PWM。现在我正试图让它们使用Microchip代码配置器的功能来工作,但是它不起作用。附加的是自动生成的PWM头和源文件。我使用下面的序列,1。调用PWM初始化函数2。调用PWMLSTART函数3。负载循环,但没有任何宾素可以帮助我吗?感谢更新:如果我手动设置占空比值(附图),PWM信号就在那里,但是当我手动地在主代码中进行时,什么也没有发生。
PWM2H.C(7.11 KB)-下载36次 以上来自于百度翻译 以下为原文 Hello, I am trying to generate three pwm signals using the PIC16LF1575, However i dont see any option to associate any timers with them. Will they run fine without them? Do they have dedicated timers for PWM modules? Update: So i just looked at the datasheet, and it says that it has independent timers for the PWM. now i am trying to get them working using the functions of Microchip Code Configurator, but it wont work. Attached are the auto generated PWM header and source files. I use the following sequence, 1. Call the PWM initialize function 2. Call the PWM_start function 3. Load Duty Cycle but nothing is on the pins Can anyone help me? Thanks Quick update: So if i manually set the duty cycle value(image attached), the PWM signal is there, but when i manually do it during my main code, nothing happens. Attached Image(s) Attachment(s) pwm2.c (4.37 KB) - downloaded 50 times pwm2h.c (7.11 KB) - downloaded 36 times |
|
相关推荐
3个回答
|
|
在这个PIC中的PWM模块有专用定时器,你不需要选择一个定时器来使用,每个PWM都有它自己的。张贴你的主要代码,也许这个问题是在你试图从那里设置占空比的方式。
以上来自于百度翻译 以下为原文 The PWM modules in this pic have dedicated timers, you do not need to select a timer to use, each PWM has it's own. Post your main code, maybe the issue is in the way you are attempting to set the duty cycle from there. |
|
|
|
有些人似乎忽略了MCC的事情是,使用MCC并不能使您免除阅读数据表的责任。(悲伤,也许,但是,绝对,至少这是我的经验。)别忘了看勘误表文件。所以…我假设在你的主程序中你正在调用MCC函数pWM2Y-DutyCysEnter()。(或者,你可以直接加载PWM2DCH和PWM2DCL)。初始化后,每次加载DCH和DCL时,必须手动设置PWM2LDCON的LDA位,使PWM输出信号的占空比承担新的值。这不是由PWM2YDutyCysEnter()所关心的,但可以通过调用PWM2Load BuffSert()来完成。参考文献:参考文献:关于PWM的数据表部分,特别是在PWMXLDCON寄存器中的LDA位的描述。底线:它适用于我,正如我的PC16F1579的数据表中所描述的,并且我“非常肯定”,对于1575,它的工作原理是一样的,因为它们是SHA。同样的数据表,问候,戴夫
以上来自于百度翻译 以下为原文 The thing about MCC that some people seem to miss is that using MCC doesn't free you from the responsibility of reading the Data Sheet. (Sad, maybe, but true, absolutely---at least that's my experience.) Don't forget to look at the Errata document, too. So... I'm assuming that in your main program you are calling the MCC function PWM2_DutyCycleSet() (or, you could just load PWM2DCH and PWM2DCL directly). I either case, the thing is... After initialization, you have to manually set the LDA bit of PWM2LDCON every time you load DCH and DCL to make the duty cycle of the PWM output signal take on its new value. This is not taken care by PWM2_DutyCycleSet(), but can be done by calling PWM2_LoadBufferSet(). (Or by setting LDA directly). Reference: Data Sheet section on PWM, and, in particular, the description of the LDA bit in the PWMxLDCON register. Bottom line: It works for me, exactly as described in the Data Sheet on my PC16F1579, and I'm "pretty sure" it works the same for the '1575, since they share the same data sheet. Regards, Dave |
|
|
|
它工作,非常感谢。你是对的,我曾经手动地做每件事,但是这个MCC使我懒洋洋的:
以上来自于百度翻译 以下为原文 It works, thank you so much. You are right, i used to do everything manually, but this mcc has made me lazysad: |
|
|
|
只有小组成员才能发言,加入小组>>
5081 浏览 9 评论
1954 浏览 8 评论
1888 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3116 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2188 浏览 5 评论
633浏览 1评论
507浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
371浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
538浏览 0评论
441浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-30 14:32 , Processed in 1.146505 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号