|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
51单片机-8255接口芯片 实验,含源代码和仿真图
5 l) M8 X; w- G
( G. g* Q, v6 ]/ c. G, [7 `. X
/ y4 u2 X+ m5 n; y2 d* Y, N( j这是一个使用51单片机通过8255的B口读取8个开关状态,并通过8255的A口送给8个led显示对应开关状态的实验。对8255的A口和B口的识别,是通过地址进行区分。
5 t5 s: Y8 X& Y, F4 D; C* ]& L$ F2 C附件里有keil里的c语言源程序,和proteus里画的仿真图。
- Y/ S4 [% o8 L$ M# j
# X0 U Z4 I# d! u' O$ R. N7 p8 P) M& ?1 e
- X6 d1 s. [/ r) ?1 e
#include<reg51.h>
& R( j2 }$ X& B! S#include<absacc.h>
- o0 T0 X; b9 F& c! Z+ Z#define pa8255 XBYTE[0xffe0]
. y( p& K9 `! ~; e/ W$ _#define pb8255 XBYTE[0xffe1]; } ^6 f& o& d7 L
#define cmd8255 XBYTE[0xffe3]( L) ^+ ^% J; L4 u
6 Y9 O% B! b s8 ~9 evoid main()' f, r @8 j5 f/ W/ J b$ g
{ V" w' C0 Z1 T0 G: o/ U2 d
cmd8255=0x82;
( x) S6 B8 V, W5 U6 i( t! i" L while(1)1 p+ [% r& ]9 H
{% u' k( _5 ?" [( x* k3 }
ACC=pb8255;
7 J. z# C7 Q+ m+ d& M ACC=~ACC;
2 L \% a- H2 s pa8255=ACC;
2 o2 f- F) s1 T/ x + U# j2 S- F2 U+ o% |. K$ h) \
}; ~! M \) J/ Q" C& @$ N; U- n
}1 ~: O% h) R3 f5 n0 Q3 o6 v7 n
. W4 G4 [1 r7 v) V
2 {6 B( p7 U5 r7 z0 O |
|