历史上的今天
返回首页

历史上的今天

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

2020年01月12日 | 如何使用PIC单片机扩展8255A并口

2020-01-12 来源:elecfans

#include

__CONFIG(0x3B31);

#defineA0RB0

#defineA1RB1

#defineCSRB2

#defineLERD0

#defineWRRD6

#defineRDRD7

如何使用PIC单片机扩展8255A并口
 

constunsignedchartab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff};//0-F-全灭-共阳极数码管

unsignedchartmp[]={0,0,0,0,0,0,0,0};

voiddelay1ms(unsignedintx)

{

unsignedchari;

for(;x》0;x--)

for(i=0;i《165;i++);

}

voidinit()

{

TRISB=0x00;

PORTB=0x00;

TRISD=0x00;

PORTD=0x00;

LE=0;WR=1;RD=1;//关373,禁止8255读写

}

voidinit_8255()

{

LE=1;A1=1;A0=1;CS=0;//开373,发送写控制器命令,CS片选允许

LE=0;//锁住373,保持A1.A0,CS

PORTB=0x80;//发送控制命令

WR=0;//打开写入8255信号

NOP();NOP();

}

voidwrite_data(unsignedcharcomm,unsignedchardata)//comm:0=A,1=B,2=C

{

if(comm==0)

{

WR=1;

LE=1;A1=0;A0=0;CS=0;

LE=0;

PORTB=data;

WR=0;

NOP();NOP();

}

if(comm==1)

{

WR=1;

LE=1;A1=0;A0=1;CS=0;

LE=0;

PORTB=data;

WR=0;

NOP();NOP();

}

if(comm==2)

{

WR=1;

LE=1;A1=1;A0=0;CS=0;

LE=0;

PORTB=data;

WR=0;

NOP();NOP();

}

}

voiddisplay()

{

unsignedchari,LED;

LED=0x01;

for(i=0;i《8;i++)

{

write_data(0,tab[tmp[i]]);

write_data(1,LED);

LED《《=1;

delay1ms(2);

write_data(1,0x00);

}

}

voidmain()

{

unsignedchari,j,RR[24];

init();

init_8255();

while(1)

{

for(i=0;i《24;i++)//全部赋值为16,即显示为空,此处可精减,但演示用无所谓了

RR[i]=16;

RR[8]=2;RR[9]=0;RR[10]=0;RR[11]=9;RR[12]=0;RR[13]=7;RR[14]=1;RR[15]=2;

for(j=0;j《16;j++)

{

for(i=0;i《8;i++)//将RR[16]开始内部赋值tmp[]

tmp[i]=RR[16+i];

for(i=0;i《23;i++)

display();

for(i=23;i》0;i--)//此处将RR[]右移一位数组

RR[i+1]=RR[i];

}

}

}


推荐阅读

史海拾趣

长运通(CYT)公司的发展小趣事

作为一家有社会责任感的企业,长运通始终关注环境保护和社会公益事业。公司积极推广绿色、环保的LED照明产品,致力于降低能源消耗和减少环境污染。同时,长运通也积极参与各种社会公益活动,为社会做出自己的贡献。这些举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了基础。

请注意,以上故事仅为概述,具体的细节和内容可能需要根据实际情况进行补充和调整。

Harbour Industries公司的发展小趣事

背景:进入21世纪后,电子行业进入了快速整合阶段,大型企业纷纷通过并购来扩大规模、增强实力。Handok也加入了这一行列,制定了积极的并购扩张战略。

发展:Handok通过精准的市场分析和战略评估,成功并购了几家在电子元器件和电子设备领域具有领先技术的中小企业。这些并购不仅为Handok带来了先进的技术和人才储备,还极大地拓宽了公司的产品线和服务范围。

影响:并购后的Handok实现了从单一产品向多元化产品线的转型,市场竞争力显著提升,为公司的长远发展奠定了坚实的基础。

Davicom公司的发展小趣事

为了进一步提升自身的技术实力和市场竞争力,Davicom积极寻求与业界巨头的合作。经过多轮谈判,Davicom最终与一家国际知名的IC设计大厂达成战略合作协议。双方共同研发出一系列高性能、低功耗的网络通讯IC产品,这些产品一经推出便受到市场的热烈欢迎。

Amphenol RF公司的发展小趣事

在竞争激烈的电子行业中,Davicom始终坚持自主研发,不断突破核心技术。公司投入大量研发资金,建立了一支高素质的研发团队,并申请了多项专利。通过多年的努力,Davicom在DSP IC及系统应用技术方面取得了重大突破,成功开发出多款具有竞争力的产品。

Fronter Electronics Co Ltd公司的发展小趣事

进入21世纪后,Fronter电子意识到技术创新的重要性,开始加大在技术研发方面的投入。公司成立了专门的研发团队,致力于IC模块、晶振、滤波器、电感等电子产品的技术开发与升级。同时,Fronter电子积极申请专利,保护自主知识产权,并逐步打造出了自己的品牌“FT”。随着技术实力的增强和品牌知名度的提升,Fronter电子在电子行业中的影响力进一步扩大。

Feller US公司的发展小趣事

随着全球汽车产业的不断发展,国际合作已成为企业拓展市场、提升竞争力的重要途径。菲斯克也深刻认识到了这一点,积极寻求与全球各地的汽车制造商和供应商建立合作关系。通过与国际巨头的合作,菲斯克不仅获得了先进的技术和管理经验,还成功进入了多个国际市场,实现了全球布局的目标。这一系列的国际合作不仅提升了公司的知名度和影响力,还为公司的长期发展提供了有力的支持。

问答坊 | AI 解惑

对两个.h的疑问

我是新手,在看一些程序时,看到了如下这两个头文件,有哪位高手能告诉我它们都有哪些作用么?有没有这方面的材料给小弟介绍一下。 #include #include …

查看全部问答>

有毒气体报警器毕业设计

有没有全套的啊,原理图也行,求各位高手帮忙,小弟快急死了…

查看全部问答>

嵌入式开发教程及案例

嵌入式开发教程及案例…

查看全部问答>

IGBT保护原理分析

IGBT保护原理分析,供大家分享!…

查看全部问答>

关于移植U-boot ( LPC24系列)

小弟最近在学习U-boot移植. 由于针对的是lpc2478的CPU,U-boot里面又没有支持lpc系列的.. 所以工作一直没进展.. 请移过U-boot的大侠指点一下... 在此拜师...…

查看全部问答>

用C#做工业控制,控制IO卡,行的通吗?

用C#做工业控制,控制IO卡,行的通吗? 公司大多都用研华的io卡,可是他们没有C#的接口函数,只有VB和VC的,可不可以用C#调用他们的接口函数呢? 又没有朋友做过这样的例子啊!还望赐教!…

查看全部问答>

ARM硬件问题求助、万分火急!

最近画了块6层的ARM板,板层结构式T\\\\G\\\\S\\\\S\\\\P\\\\B,板子回来后可以烧录程序,但将程序从NORFLASH拷贝到SDRAM后就出现问题了,程序执行不了。搞了几天了,该排除的都排除了,不知道问题出在哪里。我是第一次画6层板板,没啥经验,请各位 ...…

查看全部问答>

将2700系列的SCPI应用转换为3700系列的系统开关/万用表系统脚本应用

多年来,仪器制造商已经在用“可编程仪器标准指令”或SCPI控制测量仪器系统的可编程测试和测量设备。SCPI为控制测试和测量仪器提供了一种统一、一致的语言。不论制造商还是仪器类型,都能使用相同的指令和响应控制SCPI设备中相应的仪器功能。 &n ...…

查看全部问答>

linux HDMI driver

有一块am335x系列自定义的开发板,HDMI部分的设计参考的是beaglebone的TDA19988、现在要用到HDMI显示,我的内核版本是SDK里的linux-3.2.0,现在不知道HDMI这部分的内容在哪里,网上有价值的资料搜到的也不是很多,求教论坛的各位大神…

查看全部问答>

TIVA WARE库 bug

今天弄了一天的GPIO复用功能。。。书上说要配置GPIOPCTL寄存器。我翻了好久发现只要库函数中的void GPIOPinConfigure(uint32_t ui32PinConfig) 这个函数涉及到了这个寄存器。。。。。。可是,可是,可是!!!!!!这个函数的参数该写什么啊?? ...…

查看全部问答>