打印

PIC 16F630 I/O问题

[复制链接]
4032|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
h_x_zhong|  楼主 | 2007-5-24 18:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
// 用PIC16F630 内部晶振4MHz
// 程式如下,检测键盘总是两个都检到,请高人指点
// MPLAB IDE V7.5 模拟仿真(没仿真器)

#include    <pic.h>
#include    <pic16630.h>

#define _NOP()      asm("nop")
//-------------------------------------------------------------------------------------------------
__CONFIG (INTOSCIO & WDTEN & PWRTEN & MCLREN & BOREN & CPROTECT & CPD & BGLOW); // 配置位定义

//-------------------------------------------------------------------------------------------------
// 引脚定义
#define     P_KeyRead1          RA1
#define     P_KeyRead2          RA2

/*-----------------------------------------------------------------------------------------------*/
void ScanKey(void)
{
    unsigned char i;
    unsigned char t_Key = 0x00;

//-----------------------------------------------
//  A1A2为输入

    P_KeyRead1 = 1;
    P_KeyRead2 = 1;

    for(i=0; i<40; i++) _NOP();

    if(P_KeyRead1==0)    // 程式运行此口为低
    {
        t_Key = 0x01;
    }
    if(P_KeyRead2==0)    // 程式运行此口为低
    {
        t_Key = 0x02;
    }
}
/*-----------------------------------------------------------------------------------------------*/

void main(void)
{
    GIE = 0;        // 清总中断

    RAPU   = 0;     // 上拉电阻使能
    WPUA1  = 1;     // 上拉弱电阻
    WPUA2  = 1;     // 上拉弱电阻 

    TRISA = 0x06;   // A1A2为输入
    TRISC = 0x00;
    PORTA = 0xFF;
    PORTC = 0xFF;

    GIE = 1;        // 开总中断

    while(1)
    {
        ScanKey();
    }

}
 请问 在运行时P_KeyRead1,P_KeyRead2为什么一直为低。

 烧写芯片后,在目标板上运行也是一样!

  谢谢!
沙发
兰天白云| | 2007-5-25 07:39 | 只看该作者

首先不要把PIC当51来用

1:硬件上是否已没问题?
2:注意RA1,RA2的复用功能
3:如果两键同时按下???   t_Key=????

if(P_KeyRead1==0)    // 程式运行此口为低
    {
        t_Key = 0x01;
    }
    if(P_KeyRead2==0)    // 程式运行此口为低
    {
        t_Key = 0x02;
    }

使用特权

评论回复
板凳
xieyuanbin| | 2007-5-25 08:01 | 只看该作者

2:注意RA1,RA2的复用功能

630的PA0,1,2是比较器复用脚,在上电后默认为比较器的功能.你应将其设置成数字引脚.

使用特权

评论回复
地板
h_x_zhong|  楼主 | 2007-5-28 22:47 | 只看该作者

RA1,RA2的复用功能

原来上电后默认为比较器的功能,要设置成数字引脚,谢谢!

使用特权

评论回复
5
armauk| | 2013-1-12 21:22 | 只看该作者
PIC芯片到现在还是居高不下

使用特权

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

本版积分规则

8

主题

54

帖子

1

粉丝