打印
[MCU]

PIC单片机(PIC16F1503)C语言编程出了一点问题,求大家帮忙看一下

[复制链接]
2765|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
18271623385|  楼主 | 2015-3-13 14:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我最近想用这款单片机做一个东西,写了一个最简单的程序:
#include<pic16f1503.h>

void delay(unsigned int i);

void main()
{
OSCCON=0x6a;    //系统时钟初始化,4MHZ
OSCSTAT=0x13;   //系统时钟初始化,4MHZ

TRISC=0;        //设置C端口为输出口
PORTC=0x00;     //给C端口赋初值
while(1)
{
  delay(2000);
  RC2=!RC2;
}
}

void delay(unsigned int i)
{
unsigned int a,b;
for(a=i;a>0;a--)
  for(b=110;b>0;b--);
}
在实际的测试过程中我发现当delay(2000)时,RC2引脚的电平根本没变化,当delay(1000)时,RC2的引脚输出一个方波。
是我用的编译器有问题还是哪个寄存器没配置好?
我用的是HI TECH9.83的PIC10/12/16的C编译器。config world我在MPLAB中已经配置好了。
求各位指导一下这是怎么回事,大家才入手单片机时也肯定遇见过各种问题,当遇见问题不能解决是的心情大家都是理解的,谢谢各位。。。。。

相关帖子

沙发
zhjyuanji| | 2015-3-13 16:35 | 只看该作者
你这个是兼容模拟输入的,把它改成数字IO试试

使用特权

评论回复
板凳
nevermore008| | 2015-3-14 08:34 | 只看该作者
RC2是读引脚输入 LATC2是输出

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
18271623385 + 1 很给力!
地板
18271623385|  楼主 | 2015-3-14 14:23 | 只看该作者
nevermore008 发表于 2015-3-14 08:34
RC2是读引脚输入 LATC2是输出

嗯,确实在这里没有配置好。我改过来后怎么还是那样   delay(1000)可以,delay(2000)就不正常了,这是没道理的呀。 要是不正常就应该delay(1000)有问题的

使用特权

评论回复
5
gx_huang| | 2015-3-14 14:28 | 只看该作者
是被WDT复位了吗?

使用特权

评论回复
6
18271623385|  楼主 | 2015-3-14 14:56 | 只看该作者
gx_huang 发表于 2015-3-14 14:28
是被WDT复位了吗?

朋友,非常谢谢你的回答,问题已经解决了

使用特权

评论回复
7
18271623385|  楼主 | 2015-3-14 15:00 | 只看该作者
非常感谢上面的几位回答,问题已经解决了。好兴奋啊
问题出在LATC寄存器没配置好。每次新建工程时忘了在MPLAB中配置config world,导致程序不限各种各样的问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

16

帖子

0

粉丝