完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,因为3天我尝试在PIC33上从oc单元中取出一个脉冲,但是没有成功:-(我想在配置寄存器中设置一个位来启动序列,那么,输出脉冲之后应该会有一些s的延迟。延迟和脉冲长度是在开始前定义的。通过oszilloscope,我可以看到输出脉冲,长度可以,但是没有反应或与开始事件同步。当16位计数器溢出时,脉冲总是重复。有人知道我的代码有什么问题吗?或者存在应用程序说明或代码示例,其中其更详细解释的oc单元是我的代码:void init_flashtimer(void)//调用于程序init{TRISF1=0;//outputpin RPOR7bits.RP97R=0x10;//RP97 on OC1-output T2CON=0;//timer2作为OC1[code]void init_flashtimetimer(void)//在程序初始化T2CONbits.TCKPS=2;//预定器64T2CONbits.TCKPS=2;//预定器64T2CONbits.TON=1;//定时器启动OC1R=1;//定时器启动OC1R OC1R=200;//定时器启动OC1R OC1R OC1R=200;//定时器启动OC1R OC1R OC1R=200;//定时器在s OC1RS 1RS 1RS=400;//定时器在s OC1OC1CON1CON1 OC1RS=400;OC1CON1 CON1 CON1=0;OC1CON2=0;OC1CON1CON2=0;OC1CON1CON1CON1CON1=0;OC1CON1CON1CON10×01;//cnt-clr当OCRS==TMR OC1CON2bits.SYNCSEL=0b00000;//没有同步源}//在启动前调用时,如果参数必须改变,则void cfg_flashtimer(UNS16延迟,UNS16脉冲witdh){OC1R=延迟;OC1RS=延迟+脉冲witdh;}//start-eventvoid start-eventvoid start_flashtimer(void){OC1TMR=0;OC1CON1bits.OCM=0b100;OC1CON2biT.StuSTAT=1;}
|
|
相关推荐
1个回答
|
|
只是FY-错误论坛。DSPIC33不是16位核心器件(那些是18F系列)。也许试试PIC32或XC16论坛…
|
|
|
|
只有小组成员才能发言,加入小组>>
5160 浏览 9 评论
1998 浏览 8 评论
1927 浏览 10 评论
请问是否能把一个ADC值转换成两个字节用来设置PWM占空比?
3170 浏览 3 评论
请问电源和晶体值之间有什么关系吗?PIC在正常条件下运行4MHz需要多少电压?
2225 浏览 5 评论
729浏览 1评论
613浏览 1评论
有偿咨询,关于MPLAB X IPE烧录PIC32MX所遇到的问题
503浏览 1评论
PIC Kit3出现目标设备ID(00000000)与预期的设备ID(02c20000)不匹配。是什么原因
628浏览 0评论
526浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 15:32 , Processed in 1.301845 second(s), Total 77, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号