第05章串行通信接口SCI.ppt

上传人:sccc 文档编号:6614729 上传时间:2023-11-18 格式:PPT 页数:26 大小:969.01KB
返回 下载 相关 举报
第05章串行通信接口SCI.ppt_第1页
第1页 / 共26页
第05章串行通信接口SCI.ppt_第2页
第2页 / 共26页
第05章串行通信接口SCI.ppt_第3页
第3页 / 共26页
第05章串行通信接口SCI.ppt_第4页
第4页 / 共26页
第05章串行通信接口SCI.ppt_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《第05章串行通信接口SCI.ppt》由会员分享,可在线阅读,更多相关《第05章串行通信接口SCI.ppt(26页珍藏版)》请在三一办公上搜索。

1、第5章 串行通信接口SCI,嵌入式系统-使用HCS12微控制器的设计与应用,2,本章目录,5.1 异步串行通信的基础知识5.2 电平转换电路与SCI通用编程原理5.3 DG128 SCI模块寄存器5.4 串行口初始化与收发编程的基本方法5.5 串行通信通用函数与测试实例5.6 有关串行通信编程的进一步讨论,嵌入式系统-使用HCS12微控制器的设计与应用,3,5.1 异步串行通信的基础知识,1.异步串行通信的格式(NRZ),5.1.1 基本概念,2.串行通信的波特率定义:每秒内传送的位数。单位:b/s或bps常用:1200bps、4800bps、9600bps,嵌入式系统-使用HCS12微控制器

2、的设计与应用,4,5.1 异步串行通信的基础知识,5.1.1 基本概念,3.奇偶校验奇校验:校验位为0或1,使得1的数目是奇数偶校验:校验位为0或1,使得1的数目是偶数4.串行通信的传输方式 单工:1根数据线 全双工:2根数据线 半双工:1根数据线,嵌入式系统-使用HCS12微控制器的设计与应用,5,5.1 异步串行通信的基础知识,5.1.2 RS-232C总线标准,1.采用负逻辑逻辑“1”:-15V-3V 逻辑“0”:+3V+15V 2.传输距离30m,通信速率20Kbps 3.接口9芯、25芯地线、发送数据线、接收数据线,嵌入式系统-使用HCS12微控制器的设计与应用,6,5.2电平转换电

3、路与SCI通用编程原理,5.2.1 SCI的外围硬件电路,电平转换芯片MAX232,嵌入式系统-使用HCS12微控制器的设计与应用,7,5.2 电平转换电路与SCI通用编程原理,5.2.2 SCI的基本编程原理,SCI的主要功能是:接收时,把外部的单线输入的数据变成一个字节的并行数据送入MCU内部;发送时,把需要发送的一个字节的并行数据转换为单线输出。,嵌入式系统-使用HCS12微控制器的设计与应用,8,5.3 DG128 SCI模块寄存器,寄存器高8位(SCI0BDH、SCI1BDH),5.3.1 SCI波特率寄存器,寄存器低8位(SCI0BDL、SCI1BDL),嵌入式系统-使用HCS12

4、微控制器的设计与应用,9,5.3 DG128 SCI模块寄存器,5.3.1 SCI波特率寄存器,根据波特率设置寄存器的公式:BR=fBUS/(16Bt)举例:总线频率fBUS19.6608MHz,定义波特率Bt=9600(针对SCI0)SCI0BDL=0 x80;/须先给低8位赋值SCI0BDH=0 x00;/再给高5位赋值,嵌入式系统-使用HCS12微控制器的设计与应用,10,5.3 DG128 SCI模块寄存器,缩写:SCI0CR1、SCI1CR1位定义:,5.3.2 SCI控制寄存器1,3.举例:设置允许SCI、正常码输出、8位数据、无校验 SCI0CR1=Ox00;,嵌入式系统-使用H

5、CS12微控制器的设计与应用,11,5.3 DG128 SCI模块寄存器,缩写:SCI0CR2、SCI1CR2位定义:,5.3.3 SCI控制寄存器2,3.举例:设置允许发送、允许接收,查询方式收发 SCI0CR2=0 x0C;,嵌入式系统-使用HCS12微控制器的设计与应用,12,5.3 DG128 SCI模块寄存器,缩写:SCI0SR1、SCI1SR1位定义:只读,5.3.4 SCI状态寄存器1,3.常用:D7=1:可以发送数据;D7=0:不可以发送数据,需等待 D5=1:可以取出数据;D5=0:不可以取出数据,需等待,嵌入式系统-使用HCS12微控制器的设计与应用,13,5.3 DG12

6、8 SCI模块寄存器,缩写:SCI0SR2、SCI1SR2位定义:只读,5.3.5 SCI状态寄存器2,3.常用:D0=1:正在接收数据;,嵌入式系统-使用HCS12微控制器的设计与应用,14,5.3 DG128 SCI模块寄存器,缩写:SCI0DRH、SCI0DRL、SCI1DRH、SCI1DRL位定义:,5.3.6 SCI数据寄存器,DRH:,DRL:,嵌入式系统-使用HCS12微控制器的设计与应用,15,5.4 串行口初始化与收发编程的基本方法,5.4.1 SCI初始化,嵌入式系统-使用HCS12微控制器的设计与应用,16,5.4 串行口初始化与收发编程的基本方法,5.4.2 发送一个数

7、据与接收一个数据,嵌入式系统-使用HCS12微控制器的设计与应用,17,5.5 串行通信通用函数与测试实例,5.5.1 串行通信子函数,SCI.h:串行通信头文件 串行通信寄存器及标志位定义 串行通信相关函数声明 SCIInit.c:串行口SCI0初始化函数 void SCIInit(void)SCI.c:串行发送与接收通用子函数 void SCISend1(INT8U o)void SCISendN(INT8U n,INT8U ch)INT8U SCIRe1(INT8U*p)INT8U SCIReN(INT8U n,INT8U ch),嵌入式系统-使用HCS12微控制器的设计与应用,18,5

8、.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,1查询方式收发测试工程主函数文件main.c,嵌入式系统-使用HCS12微控制器的设计与应用,19,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,2查询方式收发测试工程MT环境的工程结构,嵌入式系统-使用HCS12微控制器的设计与应用,20,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,3查询方式收发测试工程CW环境的工程结构,嵌入式系统-使用HCS12微控制器的设计与应用,21,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,4中断方式测试工程辅助工具,嵌

9、入式系统-使用HCS12微控制器的设计与应用,22,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,5中断方式HCS12 C语言主程序,嵌入式系统-使用HCS12微控制器的设计与应用,23,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,6串行中断子函数声明(isr.h),#ifndef ISR_H/避免重复定义#define ISR_Hvoid ISR_Receive(void);/接收中断函数声明void _attribute_(interrupt)ISR_Empty(void);void _start(void);/复位函数(StartCode

10、.s中定义,特殊)/芯片开关总中断的宏定义#define ENABLE_INTERRUPTS _asm_(cli)/开中断#define DISABLE_INTERRUPTS _asm_(sei)/关中断/开关各模块中断的宏定义/开放或禁止SCI0的接收中断的宏定义#define EnableSCIReInt SCI0CR2|=0 x20/开放SCI0接收中断#define DisableSCIReInt SCI0CR2&=0 xDF/禁止SCI0接收中断#endif,嵌入式系统-使用HCS12微控制器的设计与应用,24,5.5 串行通信通用函数与测试实例,5.5.2 查询方式收发测试工程,7

11、串行中断函数(isr.c),/ISR_Receive:SCI0接收中断函数void _attribute_(interrupt)ISR_Receive(void)INT8U i;INT8U SerialBuff1;/存放接收数据的数组 DISABLE_INTERRUPTS;/关总中断 i=SCIReN(1,SerialBuff);/等待接收1个数据 if(i=0)SCISendN(1,SerialBuff);/发送接到的数据 ENABLE_INTERRUPTS;/开总中断/ISR_Empty:空中断函数定义void _attribute_(interrupt)ISR_Empty(void),嵌入式系统-使用HCS12微控制器的设计与应用,25,5.6 有关串行通信编程的进一步讨论,5.6.1 将串口端用作电源5.6.2 握手5.6.3 唤醒功能 空闲线唤醒 地址标志唤醒,嵌入式系统-使用HCS12微控制器的设计与应用,26,谢谢!,Ver 1.0,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号