| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 532 人关注过本帖
标题:X5045的问题
只看楼主 加入收藏
a295281315
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2011-7-28
结帖率:100%
收藏
已结贴  问题点数:0 回复次数:3 
X5045的问题
            for (i=0;i<8;i++)     //送读状态寄存器指令
        {
            sck_5045=0;
            if ((tmp&0x80)==0)
            {
                si_5045=0;
            }
            else
            {
                si_5045=1;
            }
            tmp=tmp<<1;
            sck_5045=1;
        }
    这是一段关于芯片X5045的读状态寄存器指令代码。我的理解是这样的送个8位信号,在时钟端信号的上升沿读取数据并锁存,如果暂存器tmp取址80H,并判断信号有没有(暂时这么理解,我就是这里感觉理解好拗口,求帮忙),无信号就5045输入端输入0,有就输入1,然后是数据左移,就是i+次就左移一次。
本人总感觉很别扭……
   
搜索更多相关主题的帖子: 芯片 寄存器 
2011-08-02 22:03
a295281315
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2011-7-28
收藏
得分:0 
我也知道这个是监视CPU工作的独立芯片,通过单片机送信号,从而使单片的复位定时器复位,如果一直低电平或高电平或超过信号的限制的定时时间都会使X5045的复位端产生一个复位信号使他监视的单片机复位。上面的就是感觉老是不对。。。
本人表达能力有限!
2011-08-02 22:10
a295281315
Rank: 1
等 级:新手上路
帖 子:13
专家分:2
注 册:2011-7-28
收藏
得分:0 
//-----------------------求高人指点!!!!!!!!!------------------
//--------------------------跟我说说呀--------------------------
2011-08-02 22:45
kidwillow
Rank: 2
等 级:论坛游民
帖 子:5
专家分:77
注 册:2011-7-14
收藏
得分:20 
if((tmp&0x80)==0)判断tmp最高位是否为0,即状态寄存器最高位,是则si_5045=0,不是则si_5045=1。tmp<<1,将状态寄存器第二位移至tmp最高位,再比较判断该位值。循环8次,读入状态寄存器8位的值。
2011-08-04 09:14
快速回复:X5045的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055499 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved