1、我也是刚入手单片机,今天编了一段小程序,就是关于单片机串口转并口和并口转串口的一个小实验,本程序在 PTOTUES 中完美运行。在单片机开发试板上也是完美运行。今天贴出来供大家分享,看完本历程,有助于提高您对单片机 IO 口的基本操作,锁存器的用法以及串并转换的使用技能#include本例程的电路连接图如上,在电路中使用了 AT89C51 单片机一块,74HC595 八路串/并转换器,74HC165 八路并串转换器和一片 74HC573锁存器。实验者请按上图连接好实验电路。#include#include#define uchar unsigned char#define uint unsig
2、ned int#define ulong unsigned longcode uint a=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;sbit SO=P10; /定义 165 的输出sbit STCP=P11;sbit DS=P12;sbit SHCP=P13;sbit SHLD=P14;sbit CLK=P15;sbit cs573=P16;/*/void delay(ulong X) /延时函数,采用了形参传递函数while(X-);/*/void LED(); /函数声明/*/void main() /主函数while(1)LED ();/*/voi
3、d LED() uint i,j,k;uchar n,m;for(i=0;i8;i+) cs573=1;P2=ai; /往 P2 口送流水灯字符,因为有 8 个流水灯,所以 i=8 循环八次,LED 小灯依次被点亮cs573=0; /把 P2 口送过来的数据锁存SHLD=0; /74HC165 开始装载数据delay(10);SHLD=1; for(j=0;j8;j+) /开始八次循环移位n=1;delay(10);CLK=0;n|=SO;delay(10);CLK=1;P3=n;m=n;for(k=0;k8;k+) /74HC595 开始转换数据SHCP=0;if(melseDS=0;m=1;SHCP=1;delay(300);STCP=0;STCP=1;delay(30000);