微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 求大神解释一下这个595的程序,ser=1和0是什么意思

求大神解释一下这个595的程序,ser=1和0是什么意思

时间:10-02 整理:3721RD 点击:
#include<reg52.h>
#include<intrins.h>
int i;
sbit ser=P3^4;  //(14脚)串行数据输入
sbit rclk=P3^5;  //(12脚)并行输出控制
sbit srclk=P3^6;  //(11脚)移位时钟控制
void hc595(unsigned char send)
{
unsigned char i;
   rclk=0;
   ser=0;
for(i=0;i<8;i++)
        {
                if((send<<i)&0x80)
                {
                    ser=1;         
            }
            else
            {
               ser=0;        
            }
            srclk=0;
            _nop_();
            srclk=1;
        }
            rclk=0;
           _nop_();
            rclk=1;
}
void main()
{
hc595(0xf0);
for(i=0;i<20000;i++);  
hc595(0x0f);
for(i=0;i<20000;i++);      
}

ser=1是高电位;ser=0是低电位。!

595是串入并出,ser=1就是把1写进移位寄存器里面

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top