英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

标题: 在用pc并口和PIC单片机通讯时 [打印本页]

作者: winnie    时间: 2009-5-20 14:19
标题: 在用pc并口和PIC单片机通讯时
我在用pc并口和PIC单片机通讯时:
    1: 我用并口25pin的11脚为握手线,
    2:  1脚接单片机的外部中断 ,当有pc命令时,单片机马上反应,
   3:  14脚为片选即选择单片机,
   4:   12脚为当单片机准备好数据后通知pc来取数据,
     5:  2-9较为数据脚,
      我想问你:pc 写数据到单片机,和从单片机读数据时,这四条线
    的高低电平分别是怎样的?
       以下是 我的想法,正确吗?
          pc 写数据到单片机,14较为低(选单片机),11脚为高?为低?,1脚为低去中断单片机,单片机从中线上  取数据,
            pc读数据从单片机,14较为低(选单片机),11脚为高?为低?,12脚为低去告诉pc
     单片机已准备好数据,可取了。
作者: winnie    时间: 2009-5-20 14:20
PC并行口(LPT)是具有I/O功能的,下面列表中的地址以LPT1为例
=========================
   引脚                  功能        地址   
2--9                      I/O          0x378
1,14,16,17            OUT       0x37A  
10,11,12,13,15     IN           0x379  
18--25                  GND        
=========================
把0x378切换为输入需要向地址0x37A送数0x2x(个位即是向0x37A送的数,十位上的2便是把0x378切换为输入)
作者: winnie    时间: 2009-5-20 14:27
PC传送数据到单片机
1、送1字节数据
2、PC置1脚一个低电平脉冲(通知单片机有数据,请接收)
3、单片机接收完后,置RA0一个低电平脉冲(通知PC,我已接收完)

单片机传送数据到PC
1、送1字节数据
2、置RA0一个低电平脉冲(通知PC接收数据)
3、PC接收完后,置1脚一个低电平脉冲(通知单片机,我已接收完)

PC的1、12脚以及与单片机相连的那2个脚在这里是双重功能,上述方法PC与单片机没有主次之分,是平等的。但是我觉得还是应该把PC设为主,单片机为次,读取数据或发送数据,由PC控制,单片机则没有主动权。
作者: winnie    时间: 2009-5-20 14:27
把PC设为主,单片机为次,读取数据或发送数据,由PC控制,单片机则没有主动权,只用LPT的25PIN中的两根1,12够吗?

我已做好pcb:我若一下面的步骤,可行吗?

         1:1脚接单片机的外部中断,当有pc置1脚为低电平脉冲,单片机马上反应,去数据总线上读取数据。

         2: 12脚为当单片机准备好数据,放在数据总线上后置一个低电平脉冲通知 pc来数据总线上读取数据。

         3:pc置14脚一个低电平脉冲通知单片机,我(PC)已接收完数据。

          4:11脚(接PIC的一个I/O):单片机接收完后,置一个低电平脉冲(通知PC,我已接收完)



也就是:

   PC传送数据到单片机:

1、送1字节数据
2、PC置1脚一个低电平脉冲(通知单片机有数据,请接收)
3、单片机接收完后,置11脚一个低电平脉冲(通知PC,我已接收完)

单片机传送数据到PC
1、送1字节数据
2、置12脚一个低电平脉冲(通知PC接收数据)
3、PC接收完后,置14脚一个低电平脉冲(通知单片机,我已接收完)




欢迎光临 英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 (http://enroobbs.com/) Powered by Discuz! X3.2