1、一、实验要求编写程序,以实现实验机与PC机之间的串行通讯。下图是实验的原理图:
2、二、实验目的1.学习用8251实验串行通讯的编程方法。2.进一步学习8088与PC机的通讯方法。
3、三、实验电路连线cs53接200-207,out1分别接TXCLK和RXCLK,CLK1接1M的频率,GATE1接+5V;8251的CS51接208-20F,CLK接1M的频率,RXD接通信接口的RXI,TXD接通信接口的TDX,用九孔对九孔的串口线将通信接口的J14和PC机的串口连接起来。
4、四、实验说明由8253通品疏饯懒道1分频提供8251TXCLK和RXCLK所需的频率,用串口调试助手接收从8251发送的数据。操作步骤:首先用串口线把PC机和实验箱连接起来,各搏皋咬夼实验连线连接完毕,打开程序,编译连接运行后,打开串口调试助手设置好串口,波特率设为1200,在发送区输入数据可在接收区显示出来。
5、注:串口调试助手的原理就是从发送区发送数据通过串口输出,接收区是接收从串口送来的数据并显示在接收区。
6、实验程序如下:stacksegmentstackstacken蟠校盯昂dsdatasegmentdataendsc泠贾高框odesegmentassumecs:code,ds:data,ss:stackstart:PUSHCSPOPDSmovdx,203h;设置8253计数1工作方式3moval,56houtdx,almovdx,201hmoval,52;给8253计数器1送初值outdx,almovdx,209h;初始化8251xoral,almovcx,03;向8251控制端口送3个0delay:callout1loopdelaymoval,40h;向8251控制端口送40H,使其复位callout1moval,4eh;设置为1个停止位,8个数据位,波特率因子为16callout1moval,27h;向8251送控制字允许其发送和接收callout1next:movdx,209hinal,dxtestal,02;检查接收是否准备好jznext;没有,等待movdx,208hinal,dx;准备好,接收pushaxmovcx,40hs51:loops51;延时waiti:movdx,209hinal,dxtestal,01;发送是否准备好jzwaitimovdx,208hpopaxoutdx,aljmpnextout1procnear;向外发送一字节的子程序outdx,alpushcxmovcx,400hgg:loopgg;延时popcxretout1endpcodeendsendstart