[PIC®/AVR®/dsPIC®产品] pic16f72与hc165信号采集问题

[复制链接]
3324|19
 楼主| xuxiangming2013 发表于 2013-10-16 14:29 | 显示全部楼层 |阅读模式
本帖最后由 xuxiangming2013 于 2013-10-16 14:33 编辑

下面是我写的程序,按照时序写的,可信号无法采集,求高手指教!!
#include<pic.h>
#include<stdio.h>
#include<math.h>
#define uint unsigned int
#define uchar unsigned char
#define data RA0
#define clk RA1
#define sl RA2
#define nop() asm("nop")
//__CONFIG(0X0052);
//void init_time0();
void gathernum();//采集
void display(uchar m,uchar n,uchar j);//显示
const uchar table[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x09};
uchar dat;
uchar bit1,bit2,bit3;
void delay(uint x)//延时1ms
{
        uint a,b;
        for(a=x;a>0;a--)
                for(b=400;b>0;b--);
}
void delaynop()
{
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
        nop();
}
void main()
{
        TRISA=0x01;
        TRISB=0;
        TRISC=0;
        while(1)
        {
                gathernum();
        }
}
void gathernum()
{
        uint i;        
        sl=0;
        delaynop();
        sl=1;
//        clk=0;
        for(i=0;i<8;i++)
        {
                dat=dat<<1;
                clk=0;
                nop();
                nop();
                dat|=data;
                clk=1;
                nop();
                nop();
        }
        bit1=dat/100;
        bit2=dat%100/10;
        bit3=dat+1;
        display(bit1,bit2,bit3);
}
void display(uchar m,uchar n,uchar j)
{
        PORTB=table[m];
        RC0=0;
        delay(2);
        RC0=1;
        PORTB=table[n];
        RC1=0;
        delay(2);
        RC1=1;
        PORTB=table[j];
        RC2=0;
        delay(2);
        RC2=1;
}
yewuyi 发表于 2013-10-16 16:11 | 显示全部楼层
你这题目比哥德巴赫猜想难多了。。。
NE5532 发表于 2013-10-16 17:16 | 显示全部楼层
大家没有电路图,不知道楼主设计思路,只有一对程序,小伙伴们表示无能力为啊。
yewuyi 发表于 2013-10-17 08:54 | 显示全部楼层
如果HC165指的是74HC165这种串并转换芯片的话,那根本就没啥问的,你自己对照其手册上的时序收发串行数据即可。
 楼主| xuxiangming2013 发表于 2013-10-17 09:32 | 显示全部楼层
本帖最后由 xuxiangming2013 于 2013-10-17 10:38 编辑

时序发射,端口电压不对,说明没有信号啊

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| xuxiangming2013 发表于 2013-10-17 10:10 | 显示全部楼层
NE5532 发表于 2013-10-16 17:16
大家没有电路图,不知道楼主设计思路,只有一对程序,小伙伴们表示无能力为啊。 ...

按照时序写的,调试了好一段时间了就是没有效果,很是焦急,过两天就要用了。。。data直接接的是信号口(高低电平)电路图以附。晶振20mhz
NE5532 发表于 2013-10-17 10:20 | 显示全部楼层
xuxiangming2013 发表于 2013-10-17 10:10
按照时序写的,调试了好一段时间了就是没有效果,很是焦急,过两天就要用了。。。data直接接的是信号口( ...

楼主也太抠门了哈,电路图发个单片机局部,大家连HC165是啥都看不到~
 楼主| xuxiangming2013 发表于 2013-10-17 10:26 | 显示全部楼层
电路板很大,截图看不清。。。。
yewuyi 发表于 2013-10-17 10:30 | 显示全部楼层
很久前用74HC165有一段代码的,但很久很久了,产品都停产了,代码也删除掉了,所以,只能自己BAIDU相关网络**找答案去吧,我不可能重给你写示范代码的。
 楼主| xuxiangming2013 发表于 2013-10-17 10:39 | 显示全部楼层
NE5532 发表于 2013-10-17 10:20
楼主也太抠门了哈,电路图发个单片机局部,大家连HC165是啥都看不到~

上传了,问一下16f72用晶振20mhz没影响吧??
 楼主| xuxiangming2013 发表于 2013-10-17 10:41 | 显示全部楼层
yewuyi 发表于 2013-10-17 10:30
很久前用74HC165有一段代码的,但很久很久了,产品都停产了,代码也删除掉了,所以,只能自己BAIDU相关网络 ...

会不会是pic16f72的问题啊???我刚刚接触这个芯片。。。。20mhz晶振没关系吧??我复位键直接接10k上拉电阻没关系吧?
yewuyi 发表于 2013-10-17 11:11 | 显示全部楼层
PIC16F72最高可以达到20MHZ振荡频率,此时配置字必须选择HS,同时VCC应当选择5V系统
oldda 发表于 2013-10-17 12:18 | 显示全部楼层
建议单步调试看看管脚输出状态
 楼主| xuxiangming2013 发表于 2013-10-17 12:27 | 显示全部楼层
yewuyi 发表于 2013-10-17 11:11
PIC16F72最高可以达到20MHZ振荡频率,此时配置字必须选择HS,同时VCC应当选择5V系统 ...

谢谢
jiabin1024 发表于 2013-10-17 12:50 | 显示全部楼层
用示波器看看数据端口不就晓得了
 楼主| xuxiangming2013 发表于 2013-10-17 15:37 | 显示全部楼层
NE5532 发表于 2013-10-17 10:20
楼主也太抠门了哈,电路图发个单片机局部,大家连HC165是啥都看不到~

现在用示波器查看,就是sl(RA2)一直是低电平,照理说大部分应该是高电平,只有4us的低电平,我把其他功能都屏蔽掉,单独给sl置高电平,测出来还是低电平,为什么????
NE5532 发表于 2013-10-17 16:03 | 显示全部楼层
xuxiangming2013 发表于 2013-10-17 15:37
现在用示波器查看,就是sl(RA2)一直是低电平,照理说大部分应该是高电平,只有4us的低电平,我把其他功 ...

端口的模拟功能关闭了没??
 楼主| xuxiangming2013 发表于 2013-10-18 09:26 | 显示全部楼层
NE5532 发表于 2013-10-17 16:03
端口的模拟功能关闭了没??

怎么关啊??大侠
NE5532 发表于 2013-10-18 10:42 | 显示全部楼层
xuxiangming2013 发表于 2013-10-18 09:26
怎么关啊??大侠

看数据手册,端口相关章节,寄存器部分。

评分

参与人数 1威望 +1 收起 理由
xuxiangming2013 + 1 2

查看全部评分

 楼主| xuxiangming2013 发表于 2013-10-18 12:32 | 显示全部楼层
NE5532 发表于 2013-10-18 10:42
看数据手册,端口相关章节,寄存器部分。

谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

30

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部