您当前的位置:五五电子网电子知识单片机-工控设备51单片机51单片机8255驱动C程序 正文
51单片机8255驱动C程序

51单片机8255驱动C程序

点击数:7840 次   录入时间:03-04 11:42:13   整理:http://www.55dianzi.com   51单片机
                PB_data=a8255_PB;         /*把PA口的数据读到PB_data*/
                return(PB_data);         /*返回PB_data*/
                }
char rd_PC(void)                         /*读PC口*/
                {
               unsigned char PC_data;
               ACC=IO_flags;             /*把状态标志字读到ACC便于进行位操作*/
               do
               {
                IO_flagsC=1;              /*置PC状态标志位为高--输入*/
                IO_flags=ACC;
                PABC_config();              /*调用配置子程序,完成对8255的设置*/
                ACC=IO_flags;                    
                }
                while(IO_flagsC==0);     /*判断状态标志位是否为高*/
                                         /*控制字设置完成*/
                PC_data=a8255_PC;         /*把PC口的数据读到PC_data*/
                return(PC_data);         /*返回PC_data*/
                }

void wd_PA(unsigned char PA_data)          /*写PA口*/
                {
                ACC=IO_flags;              /*把状态标志字读到ACC便于进行位操作*/
             
                {IO_flagsA=0;              /*置PA状态标志位为低--输出*/
                IO_flags=ACC;              /*位操作完成,把ACC的内容写回状态标志字*/
                PABC_config();              /*调用配置子程序,完成对8255的设置*/
                ACC=IO_flags;              
                }
                while(IO_flagsA==1);      /*判断状态标志位是否为高
                                            为高,设置未完成,需从新设置*/

               a8255_PA=PA_data;           /*将PA_data的内容送到PA口*/
                }
void wd_PB(unsigned char PB_data)          /*写PB口*/
                {
                ACC=IO_flags;              /*把状态标志字读到ACC便于进行位操作*/
             
                {IO_flagsB=0;              /*置PB状态标志位为低--输出*/
                IO_flags=ACC;              /*位操作完成,把ACC的内容写回状态标志字*/
                PABC_config();              /*调用配置子程序,完成对8255的设置*/
                ACC=IO_flags;              
                }
                while(IO_flagsB==1);      /*判断状态标志位是否为高
                                            为高,设置未完成,需从新设置*/

               a8255_PB=PB_data;           /*将PB_data的内容送到PB口*/
                }

上一页  [1] [2] [3]  下一页


本文关键字:单片机  程序  51单片机单片机-工控设备 - 51单片机