完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,我只是开始学习使用图片。我正在使用MPLABX 3.2,PIC套件3和PIC12F1571.使用MCC插件,我已经配置了芯片,并设法使LED闪烁,其中一个输出被设置为模拟输出。我现在试图做的是使芯片的PWM功能工作。再次使用MCC,分别将PIN 2、3和5分配给PWM1、PWM2和PWM3。我也给IO_RA1和IO_RA0分配了6和7,但是我暂时不打算使用这些,在我测试/编程时,它们以ICSPCLK和ICSPDAT的形式连接到PICKit。我有一个470欧姆的电阻器和LED,从PWM1引脚连接到地面,但是其他PWM引脚都没有连接到任何东西。该电路是外部供电在5V由LM337由9V PP3供电。我在使用LVP。除了电源,编程连接到PICKit和电阻+LED,我没有其他任何东西连接到芯片。我看到的行为很奇怪。如果我有以下程序:我看到LED闪烁一秒钟,去一秒钟,然后眨眼快秒,等等,这正是我所期望的。改变PWM参数也会改变眨眼的速度。但是,如果我改变程序阅读:LED只是停留。由于PWM参数(在前面的例子中工作得很清楚),我希望它能快速闪烁。有什么明显的因素会导致这种行为吗?我是否误解了这是怎么运作的?我没有发布所有的MCC生成的头文件和源文件,因为第一个例子告诉我基本配置是正确的,但是如果人们认为可能会有一些问题导致这个问题,我可以发布所有的配置……多谢,Luci安
|
|
相关推荐
3个回答
|
|
您好,第一个示例没有建议我基本配置是正确的,因为不存在重要的MCC生成函数:“PWM1_Initialize()”。没有It不可能帮助你。
|
|
|
|
好的,我已经搞清楚了一些配置选项,我已经解决了我的问题,但我不明白为什么。如果我在MCWUI中为PWM1解开“启用PWM”,程序就如预期的那样运行。这唯一的变化是,在pWM1x初始化中,pWM1CON被设置为0x40而不是0xC0。但是这本身并不重要,因为随后立即调用PWM1_Start()会将PWM1CON的EN位设置为1。在这个阶段,我对PWM输出的变化如何与其周期相互作用的理解非常有限,所以我毫不怀疑我在这里犯了某种基本的错误。任何指示都将非常感谢!谢谢,
|
|
|
|
好的,我现在更清楚我的(非常基本的)错误了。对于其他在这类芯片上开始使用PWM的人来说,有两件事我不能马上理解:一旦PWM模块启动,对参数的改变只应用于每个周期的末尾。对参数的改变只在设置PWMxLDA位时才应用!谢谢,卢西恩
|
|
|
|
只有小组成员才能发言,加入小组>>
5178 浏览 9 评论
2003 浏览 8 评论
1931 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3177 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2228 浏览 5 评论
738浏览 1评论
622浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
509浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
636浏览 0评论
533浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 04:45 , Processed in 1.207441 second(s), Total 79, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号