资源描述:
《实验五-串口实验.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、电子科技大学中山学院学生实验报告院别:电子信息学院课程名称:微处理器实验班级:12电信A姓名:学号:实验名称:五、串口实验实验时间:2014年10月27 日成绩:教师签名:批改时间:一、实验原理与目的1、理解单片机的串口通信原理,学会单片机串行口的使用;2、学会单片机串行口中断的使用。串行通信是指数据一位一位地顺序传送,其特点是通信线路简单,只要一对传输线就可以实现双向通信,并可以利用电话线,从而大大降低了成本,特别适用于远距离通信。串行接口通讯实验是单片机和主机之间进行的通讯实验。图5-1为ZSC
2、-1实验箱串口通信电路的硬件结构,该电路提供RS232、USB两种接口,用于单片机与PC机之间的串行连接。CH340G为USB-UART协议转换芯片,在驱动程序支持下,CH340G可将PC机USB口映射为虚拟串口,其信号电平和数据格式与单片机串口兼容。MAX232A为串口电平转换芯片,可实现PC机RS232口与单片机串口之间的电平匹配。图3.5.1串行通信电路二、实验仪器1、PC机一台(已安装KeilµVision、STC_ISP等软件);2、ZSC-1单片机实验箱一台。三、实验内容与分析1、编写一
3、段程序,利用单片机的串行口向PC机发送字符串。1)编写程序,设置目标选项成功通过KEIL系统的编辑、编译和部分程序的动态调试。ORG0000HLJMPMAINORG0050HDB'WELCOMETOZSC!'ORG0100HMAIN:CLREAMOVSP,#60H;给堆栈指针赋初值MOVTMOD,#20H;设置T1为方式2MOVTH1,#0FDH;设置波特率为9600MOVTL1,#0FDHMOVSCON,#50H;设置串口位方式1MOVPCON,#00HSETBTR1;定时器1开始计数MOVR7,
4、#15MOVDPTR,#0050HLOOP:MOVA,#00HMOVCA,@A+DPTRMOVSBUF,A;开始发送JNBTI,$CLRTIINCDPTRDJNZR7,LOOPSJMP$END☆现象:串口助手显示WELCOMETOZSC!2.编写一段程序,接收主机串行口发送来的字符,在单片机接收到‘X’的时候返回一个‘T’表示正确,否则返回一个‘F’表示错误。ORG0000HLJMPMAINORG0100HMAIN:MOVSP,#60H;给堆栈指针赋初值MOVTMOD,#20H;设置T1为方式2MO
5、VTH1,#0FDH;设置波特率为9600MOVTL1,#0FDHMOVSCON,#50H;设置串口为方式1MOVPCON,#00HSETBTR1;定时器1开始计数LOOP:JNBRI,$CLRRIMOVA,SBUFCJNEA,#'X',FSENDMOVA,#'T'AJMPSENDFSEND:MOVA,#'F'SEND:MOVSBUF,A;回发数据JNBTI,$CLRTISJMPLOOPEND☆验证:串口助手发送X,接收到T;发送其它字母,均收到F3、采用串行口中断方式,实现实验内容和步骤2的要求。
6、ORG0000HLJMPMAINORG0023HLJMPZRS232ORG0100HMAIN:CLREAMOVSP,#60H;给堆栈指针赋初值MOVTMOD,#20H;设置T1为方式2MOVTH1,#0FDH;设置波特率为9600MOVTL1,#0FDHMOVSCON,#50H;设置串口位方式1,允许接收MOVPCON,#00HSETBESSETBTR1;定时器1开始计数SETBEASJMP$ZRS232:JBRI,ZRZT:CLRTIAJMPZENDZR:CLRRIMOVA,SBUFCJNEA,#
7、'A',FSENDMOVA,#'T'AJMPSENDFSEND:MOVA,#'F'SEND:MOVSBUF,A;开始发送JNBTI,$CLRTIZEND:RETIEND☆验证:串口助手发送X,接收到T;发送其它字母,均收到F四、实验结论1.串行通信要设定共同波特率。2串行通信分为异步和同步两种,异步通信指发送和接收设备使用各自时钟控制数据的传输过程;同步通信指要建立发送方时钟和接收方时钟的直接控制。3.串口通信难度比较大,要多花时间学习。.