怎么我的没有振荡呢?

2020-02-09 09:37发布

我用的是PIC16F873A的芯片,采用脉宽调制,在RC2脚输20KHZ的方波,在软件仿真是都是正常的,但是焊在板上,没功能,晶振没有起振,换一个也是一样的。请各位高手帮忙看看。 以下是程序:

LIST P=16F873A
INCLUDE <P16F873A.INC>
__CONFIG(0X3F71)
TEMP EQU 20H
ORG 00H
START
BSF STATUS,RP0 ;区1
MOVLW B'11111011'
MOVWF TRISC ;设置CCP1为输出
MOVLW 30H
MOVWF PR2 ;设置频率为60KHZ
BCF STATUS,RP0 ;选区0
MOVLW 0CH ;设定为PWM输出
MOVWF CCP1CON ;脉宽低2位固定为0
MOVLW 0E0H ;设定脉宽
MOVWF CCPR1L
CLRF T2CON ;分频比预分比设为1:1,暂不开TMR2
BSF T2CON,2 ;开启TMR2
LOOP
GOTO LOOP
END
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
aliangnisno1
1楼-- · 2020-02-10 07:11
如果你的时钟用的是外部晶振的话,只要配置位没有任何问题的话,程序你能烧进去吗?烧进去能运行吗?如果不行的话,你通过配置位选择内部时钟,再看下,如果这样行的话,就是你的晶振的问题了。
给你一个链接,你看一下:http://www.dz3w.com/mcu/picmcu/0076941.html
yealien
2楼-- · 2020-02-10 08:56
 精彩回答 2  元偷偷看……
yealien
3楼-- · 2020-02-10 14:42
是不是用外部晶振要在程序里设置什么?我仿真都可以的,一烧到板上就不行了。同样一块板,烧其他程序,晶振又是正常的4MHZ的正弦波。
aliangnisno1
4楼-- · 2020-02-10 15:07
回复【9楼】yealien
-----------------------------------------------------------------------

哦,我写过产生PWM波的程序,我的配置位写成:#pragma config FOSC = HS 也就是外部晶振的高速模式
然后还有一个地方你要注意编译环境自带的configuration bits 里面有个configuration bits set in code,可以选也可以不选,你自己再看下,应该就是这块的问题吧,我个人感觉。不知道这样解释是否对你有帮助。
yealien
5楼-- · 2020-02-10 19:15
多谢各位!PWM输出有波形了,原来是参数传入错了,不过看了一下晶振,好象还是没有振荡波形,不知是怎么回事。看看是不是示波器有问题。

一周热门 更多>