历史上的今天
返回首页

历史上的今天

今天是:2025年02月02日(星期日)

2020年02月02日 | pic单片机硬件iic例子

2020-02-02 来源:eefocus

PIC -IIC硬件驱动程序

#include
#define uchar unsigned char
#define uint unsigned int
__CONFIG(0x3B31);
const uchar ee_data[]={1,2,3,4,5,6};
uchar read_data[6];
unsigned char duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; 
unsigned char wei[]={0x3e,0x3d,0x3b,0x37,0x2f,0x1f};
const uchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
                        0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
void FBI(uint x);
void init();
void didi(uchar num);
void disp(uchar num1,uchar num2,uchar num3,uchar num4,uchar num5,uchar num6);
void write(uchar add, uchar value);
int read(uchar r_add);
uchar a1,a2,a3,a4,a5,a6;
int vv;
void main()
{
    uchar i;
init();
/* for(i=3;i<9;i++)
{
   write(i,i);// 对应地址写入数据
}*/
     FBI(1000);
    

while(1)
{
     a1=read(3);// 对应地址读出
   
a2=read(4);// 对应地址读出
a3=read(5);// 对应地址读出
a4=read(6);// 对应地址读出 
a5=read(7);// 对应地址读出
     a6=read(8);

    PORTA=wei[0];
    PORTD=duan[a1];
    FBI(1);
    PORTA=wei[1];
    PORTD=duan[a2];
    FBI(1);
    PORTA=wei[2];
    PORTD=duan[a3];
    FBI(1);
    PORTA=wei[3];
    PORTD=duan[a4];
    FBI(1);
    PORTA=wei[4];
    PORTD=duan[a5];
    FBI(1);
    PORTA=wei[5];
    PORTD=duan[a6];
    FBI(1);
}

     
  
}
void FBI(uint x)
{
uint a,b;
for(a=x;a>0;a--)
   for(b=110;b>0;b--);
}
void init()
{
TRISD=0;
TRISA=0;
TRISE0=0;
// ADCON1=0x07;
RC2=0;
PORTD=0;
PORTA=0;
TRISC=0x00;
SSPSTAT=0x80;
SSPCON=0x38;
SSPCON2=0;
SSPADD=0x09;
}
void write(uchar add ,uchar value)
{
uchar i;
SSPIF=0;
SEN=1;   
while(!SSPIF); 
SSPIF=0;
SSPBUF=0XA0;   
while(!SSPIF); 
SSPIF=0; 
SSPBUF=add; 
while(!SSPIF); 
SSPIF=0;

   SSPBUF=value;
   while(!SSPIF);
   SSPIF=0;

PEN=1;
while(!SSPIF);
SSPIF=0;
didi(1);
}

 

 

int read( uchar r_add)
{
uchar i;
SSPIF=0;
SEN=1;
while(!SSPIF);
SSPIF=0;
SSPBUF=0xA0;
while(!SSPIF);
SSPIF=0;
SSPBUF=r_add;
while(!SSPIF);
SSPIF=0;
SSPIF=0;
RSEN=1;
while(!SSPIF);
SSPIF=0;
SSPBUF=0xA1;
while(!SSPIF);
SSPIF=0;

   RCEN=1;
   while(!SSPIF);
     vv=SSPBUF;
   while(!SSPIF);
   SSPIF=0;
     ACKDT=1;
   ACKEN=1;
   while(!SSPIF);
   SSPIF=0;  

PEN=1;
while(!SSPIF);
SSPIF=0;
    return vv;
}
void didi(uchar num)
{
uchar di_num;
for(di_num=num;di_num>0;di_num--)
{
   RC2=1;
   FBI(50);
   RC2=0;
   FBI(20);
}
}

推荐阅读

史海拾趣

FCI [First Components International]公司的发展小趣事

在电子行业中,FCI(First Components International)公司作为一家知名的连接器和互联系统制造商,其发展历程中确实有许多值得分享的故事。以下是关于FCI公司的五个发展故事:

  1. FCI的气体流量计与传感器技术突破

FCI作为一家全球性的气体流量计、气体和液体流量开关以及液位开关的制造商,其产品广泛应用于各种工业领域。为了满足不断增长的市场需求,FCI投入大量研发资源,成功开发出高精度、高可靠性的气体流量计和传感器。这些产品在化工、能源、环保等多个领域得到了广泛应用,为FCI赢得了良好的市场口碑。随着技术的不断创新和产品质量的持续提升,FCI逐渐成为了行业内的佼佼者。

  1. FCI中国分公司的成立与服务升级

随着中国市场的快速发展,FCI看到了在中国市场发展的巨大潜力。为了更好地服务中国客户,FCI决定在中国成立分公司。分公司的成立,不仅为FCI提供了更贴近本地市场的服务平台,还为其在中国市场的业务拓展提供了有力支持。分公司雇佣了一批在过程仪表和测量控制方面经验丰富的员工,并新增了数条经过认证的高精度流体标定台,以提供专业的服务和技术支持。这一举措显著提升了FCI在中国市场的竞争力和品牌影响力。

  1. FCI的AirMax VS高速背板连接器技术革新

为了满足未来高速数据传输的需求,FCI投入巨资研发新一代的高速背板连接器技术。经过多年的努力,FCI成功开发出了先进的AirMax VS高速背板连接器技术,为未来传输速率达到40Gb/s的设计奠定了基础。这一技术的推出,不仅巩固了FCI在连接器行业的领先地位,还为其在高速数据传输领域的发展打开了新的市场空间。

  1. FCI与航空领域的深度合作

随着航空技术的不断发展,对高精度传感器和流量计的需求也日益增长。FCI凭借其在气体流量计和传感器方面的技术优势,成功打入了航空领域市场。公司与多家知名航空企业建立了深度合作关系,为其提供定制化的产品和解决方案。这些产品在航空器的燃油系统、液压系统以及环境控制系统中发挥着重要作用,为航空安全提供了有力保障。

  1. FCI的全球化战略布局

为了适应全球化的市场趋势,FCI积极拓展其国际业务。公司通过并购、合资等方式,在全球范围内建立了多个生产基地和销售网络。这些举措不仅提高了FCI的生产效率和响应速度,还使其能够更好地服务全球客户。同时,FCI也加大了对新兴市场的投入,通过与当地合作伙伴的紧密合作,成功打入了多个具有潜力的市场领域。

以上五个故事展示了FCI在电子行业发展中的关键里程碑和重大成就。从技术创新到市场拓展,再到全球化布局,FCI始终保持着敏锐的市场洞察力和强大的竞争力,不断推动着电子行业的发展进步。

Electronic Concepts Inc公司的发展小趣事

随着公司规模的不断扩大,ECI越来越重视团队建设。公司高层认识到,一个团结、高效的团队是企业持续发展的关键。在人力资源部经理刘女士的策划下,ECI开展了一系列团队建设活动,如拓展训练、员工分享会等。这些活动不仅增强了员工的凝聚力,也提升了员工的工作效率和创新能力。

Electric Imp Inc.公司的发展小趣事

在物联网设备管理平台的基础上,Electric Imp Inc.公司不断推动技术创新。公司研发团队经过数年的努力,成功研发出了一款基于边缘计算的物联网设备。这款设备具有更高的数据处理能力、更低的延迟和更好的安全性,能够满足更广泛的应用场景。这一技术突破使得公司在物联网领域的技术实力得到了显著提升。

B&F;公司的发展小趣事

在B&F公司的早期发展阶段,Peter Funk和Dirk Breitkreutz先生意识到,要想在竞争激烈的航空市场中脱颖而出,必须依赖技术创新。他们决定研发一款具有独特设计和高性能的轻型飞机——FK系列。这款飞机在电子系统上进行了大量创新,如采用先进的导航系统和通信设备,提高了飞行的安全性和舒适性。这些技术创新为B&F公司赢得了良好的声誉,也为公司的快速发展奠定了基础。

Apx-Crystal公司的发展小趣事

面对日益激烈的市场竞争,Apx-Crystal公司意识到单凭自身的力量难以保持长期的竞争优势。于是,公司积极寻求与行业内外的合作伙伴进行技术交流和合作研发。通过与知名高校、科研机构以及同行的紧密合作,Apx-Crystal成功开发出了一系列具有创新性和领先性的电子产品,进一步巩固了其在行业内的领先地位。同时,公司还加大了对产业链的整合力度,推动了产业升级和可持续发展。

EVER-WAY公司的发展小趣事

在电子行业,技术创新是企业发展的关键。EVER-WAY公司深知这一点,因此在技术研发方面投入了大量资源。公司成立了专门的研发团队,不断引进先进的生产设备和技术人才,致力于开发具有自主知识产权的电子产品。经过多年的努力,EVER-WAY公司成功推出了一系列高性能、高可靠性的电子元器件产品,获得了国内外客户的广泛认可。这些技术创新的突破不仅提升了公司的核心竞争力,也为公司带来了丰厚的经济回报。

问答坊 | AI 解惑

热敏电阻如何做温度补偿?

通常要使用到热敏电阻的单片机系统中,热敏电阻都会与一个固定电阻串联,那么这个固定电阻是如何确定阻值的呢?请大家讨论讨论。…

查看全部问答>

在Linux操作系统中,如何通过蓝牙连接到个人局域网和拨号上网的?

如题,对蓝牙的上网功能了解很少,希望高手指点! 谢谢…

查看全部问答>

关于vec调试。在线等

关于vec调试中,怎么调才能让频率正确(具体的参数) 例如:720*572(13.5hz)转换成vga 800*600(75hz)。大小可以跳出,但75hz调不出来 请教大虾指导。…

查看全部问答>

要做PCI的驱动,需要看DMA相关的东西吗?

没做过,对硬件不是很动,现在看接口部分,有些驱动程序里还有DMA的处理,不知道要不要看?…

查看全部问答>

开发板上怎么挂载标准键盘啊?

请教各位 开发板上怎么挂载标准PC键盘(usb的)啊? …

查看全部问答>

求助电机驱动芯片

我要帮忙做一个项目,用430F1611做主控,驱动的电机直流24V,额定电流13.4A,请问各位谁有好的建议用那款驱动芯片?小弟我才疏学浅,只知道用器件搭H桥了。(这个项目对与控制时效性要求不高)…

查看全部问答>

*****香版主:IAR422+st-linkII在中断内调试出问题

用IAR442,IAR5.X还未支持ST-LINK II,  ST-LINK II也不支高密度的FLASH,IAR422下用st-link II 在中断内断点调试,老是会跳不出中断!何解?打算以后用IAR5.X+WIGGLER+HJTAG.EXE 不知功能如何?有没有ST&nb ...…

查看全部问答>

74LS164时序图与实际应用程序相关度,高吗?

近日看74LS164的用法以及一些相关程序。配上时序图,真的,感觉基本没关联。 程序一般都是循环8次,每次都是一位检验。然后再移动一位。 观74LS164的时序图,自己分析如下:   AB     A  B  C  D  ...…

查看全部问答>

至芯科技zx-2fpga开发板,初学者实践学习之数码管简单评测

ZXOPEN-2 FPGA初学者开发板数码管简单评测 4月7号收到至芯科技邮寄的电路板 全家福 左侧USB Blaster               中间FPGA学习板         右侧USB方口 ...…

查看全部问答>

电路设计中二极管选用准则

二极管又称晶体二极管,简称二极管(diode),另外,还有早期的真空电子二极管;它是一种具有单向传导电流的电子器件。在半导体二极管内部有一个PN结两个引线端子,这种电子器件按照外加电压的方向,具备单向电流的转导性。一般来讲,晶体二极管是一个 ...…

查看全部问答>