EDA365电子论坛网

标题: 单片机的 IO扩展-8255 仿真及源程序 [打印本页]

作者: relchhiclty    时间: 2018-12-3 13:27
标题: 单片机的 IO扩展-8255 仿真及源程序
单片机的 IO扩展-8255 仿真及源程序
) Z0 K$ b9 b  d* T: Z* X. A
# g% e5 X: G6 s! M: P+ e, y
8 a+ l$ z' H% B& T; A8 k# F; H6 W: ~
51单片机的IO扩展-8255仿真图:
+ o; H' F7 k  q7 m- `8 \ / k5 F8 C1 o6 b* u
: `0 g  ~; p& r. s9 L
' y# t& L" |3 I( @/ g8 J
/*
1 A" ~& V1 ~# k) i' X3 k在应用系统中扩展1片8255, 使A口接8个发光二极管,B口接8个开关,( S3 r: R3 e1 A2 p; g
A口工作在方式1输出, B口工作在方式0输入# s1 c9 a% O$ L  F0 D) P! K9 l
要求: 将开关状态赋值到LED灯上9 s' e1 ^. C- b* J9 s
*/
1 d9 ?% q& a2 o& M. \0 P" a- f% Q& n#include<reg51.h>2 x* F. V6 e: Z- Y3 q- p
#include<absacc.h>
  Z* V# x0 Q) v8 Z, Y#define uchar unsigned char
9 l+ M9 O" M' g' P1 t" y#define uint unsigned int
9 I% [, x+ U4 _5 z8 w//PA、PB、PC端口及命令端口地址定义
( u, T  ]9 Z& n! k! }# }//#define PA XBYTE[0x0000]: J% [" |4 j% ~
//#define PB XBYTE[0x0001]/ w' O! t! ~4 n# e' |4 x
//#define PC XBYTE[0x0002]
; \: m1 a9 Y, p5 b% T% P//#define COM XBYTE[0x0003]
5 o3 ?! v, x& G% g$ O2 }: m6 i" M. ~
2 ]( v' [! A( r/ }, c
  O" `& x$ s3 h/ I% ~1 f9 L
uchar xdata * PA = 0x0000;
  h& ^2 @" N# {% m/ n2 ^+ r% puchar xdata * PB = 0x0001;% @) ^- Q! n* o
uchar xdata * PC = 0x0002;
1 n* d2 |: V, N( v9 d+ Uuchar xdata * COM = 0x0003;
5 X, r) l# n3 H. \6 ]* A/ o+ _- M( q/ i! H, S& b! u
0 [: a& z4 G' T3 F
void delay(uint ms)
5 Q2 x" G/ ]7 K{+ S; E! |& X+ H) t- W/ U
        uchar i;
$ M( D" N2 |; i5 G5 `1 I  w        while (ms--) $ }. y! D3 F, T) i
                for (i = 0; i<120; i++);4 T( K# l& Y) q8 D
}+ t' S5 I7 K( B1 g9 J8 d# ~; P
//主程序
2 @1 w" n4 X$ H9 Q, Vvoid main()
" M0 m2 y# f! C% |: e1 {+ w' c" o; }{$ u9 L  U- X) ~. u4 [. \6 X
        *COM = 0xA2;                //8255工作方式选择: A口工作在方式1输出, B口工作在方式0输入 1010 0010* b7 V+ M+ S- A$ K: `2 y# K/ Y3 Q
        while (1)* {3 N9 r9 X, K2 v* h
        {
0 {" ~1 T- S& l7 I5 ^; l, D$ B                *PA = *PB;
8 ^# J  V! c7 s) ^! U. {                delay(10);
, ^0 Z) n! U2 p2 B& D: Y3 I- z/ i' @  q  Z, T0 C! m
3 j+ h: r; ]8 I  Y2 l$ i9 ~3 |  K
…………限于本文篇幅 余下代码请从论坛下载附件…………
3 [/ j& n6 `: w4 J6 D+ K; l2 B: I: A9 t

( n9 d8 t. X) c: v; P0 F0 \
作者: kinidrily    时间: 2018-12-3 14:14
学习一下  支持
作者: Dc2025111336a    时间: 2025-11-14 20:53
厉害厉害




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2