打印

大家帮忙看看这个程序,为什么读取IO口不成功?

[复制链接]
1633|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
金字塔陷阱|  楼主 | 2013-8-26 17:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<pic.h>

#define uint8 unsigned char
#define uint16 unsigned int
#define Micro_Spaker_Out         RA5                //喇叭输出
void delaym(uint16 t)
{
        uint8 i;
        while(t--)
        {
                for(i=120;i>0;i--);
        }
}
void Init_MCU()
{
        TRISA  = 0x1F;
        ANSELA = 0x10;
}
int main()
{
        Init_MCU();
while(1)
        {
                //Keycan();
                if(RA4 == 1)
                {
                        Micro_Spaker_Out  = 0;
                        delaym(100);
                        Micro_Spaker_Out  = 1;
                        delaym(100);                       
                }
                else
                {
                        Micro_Spaker_Out  = 0;
                        delaym(50);
                        Micro_Spaker_Out  = 1;
                        delaym(50);               
                }
        }       
}
沙发
NE5532| | 2013-8-26 17:15 | 只看该作者
我记得ANSEL置1是模拟端口状态,0才是数字口吧。

使用特权

评论回复
板凳
soso| | 2013-8-26 17:18 | 只看该作者
你这也叫程序,一堆东西,程序格式都没有,谁能给你看啊 。

使用特权

评论回复
地板
yklstudent| | 2013-8-26 20:21 | 只看该作者
楼主来玩的 问题也不出清楚  什么芯片?
PIC芯片引脚一般都是复用的 仔细自己看看芯片手册吧

使用特权

评论回复
5
opal11| | 2013-8-26 22:02 | 只看该作者
定义错误

使用特权

评论回复
6
y651503148| | 2013-8-28 09:09 | 只看该作者
不知LZ用的什么芯片?初始化设置还是需要蛮多配置的

使用特权

评论回复
7
wzx2088| | 2013-8-30 19:36 | 只看该作者
Note:On a Power-On Reset,these pins are configured as analog inputs and read as '0'.
所以应该还得配置一下ADCON1寄存器为数字输入口。
仅供参考,我是看的PIC16F877的datasheet

使用特权

评论回复
8
tianyazhix| | 2013-9-5 14:52 | 只看该作者
程序,发给我,我帮你调试!嘿嘿

使用特权

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

本版积分规则

13

主题

112

帖子

2

粉丝