基本信息
文件名称:《单片机技术与应用》 课件 项目六任务3-用串口扩展IO口(2).pptx
文件大小:546.03 KB
总页数:16 页
更新时间:2025-06-19
总字数:约1.34千字
文档摘要

项目六温度检测报警系统设计

串口概述任务一用串口扩展I0口(1)任务二用串口扩展I0口(2)任务三单片机双机通信任务四PC与单片机通信任务五DS18B20温度采集报警系统设计任务六

任务三用串口扩展I0口(2)

任务描述通过指拨开关动作产生高低电平,作为74ls165的输入,74ls165将接收到的数据发往串口,串口负责接收,串口将接收到的数据送P0口显示。

知识链接74ls164的基本使用(回顾)74ls165的基本使用

74ls164的基本使用

74ls165的基本使用74ls165是8位并入串出移位寄存器。当74LS165的SH/LD端由高到低跳变,并行输入端的数据被置入寄存器;当SH/LD=1,且时钟禁止端(15脚)为低时,允许TXD(P3.1)移位时钟输入,在该脉冲作用下,数据由右向左方向移动。

任务实施1.硬件电路2.程序设计

1.硬件电路

2.程序设计/***********延时函数***********/voidDelayMS(uintms){uchari;while(ms--)for(i=0;i120;i++);}#includereg51.h//包含单片机寄存器的头文件#defineucharunsignedchar //宏定义,定义uchar为无符号字符型#defineuintunsignedint//宏定义,定义int为无符号整型sbitSPL=P2^5;//shift/load/***********串口初始化函数***********/voidInit(){SCON=0x10;//串口工作于方式0,允许接收EA=1;//CPU开中断ES=1; //允许串口中断}

/***********串口中断服务函数***********/voidDateGet()interrupt4{SPL=0;//数据载入位设为低电平,将按键数据存入74LS165寄存器DelayMS(50);//延时一会等待存入完成P0=SBUF;//将串口收到的数据送P0口SPL=1;//数据载入位设为高电平,将74LS165寄存器数据写入串口寄存器RI=0;//复位串口开始接收74LS165寄存器数据}

知识总结当发送使用时,就采用SBUF=XXX;?(XXX为需要传送的数据);当接收使用时,采用XXX=SBUF;串行传输都是一位一位进行的。

综合评价

课后作业利用串行口设计4位静态LED显示,画出电路图并编写程序,要求4位LED每间隔1s交替显示“1234”和“5678”。

谢谢观看《单片机技术与应用》课程