美国ATMEL公司推出的90系列单片机是增强RISC内载Flash的高性能八位单片机,通称为AVR单片机,设计上采用低功耗CMOS技术,而且在软件上有效支持C高级语言(用IAR系统的ICC90C编译器编译)及汇编语言(用ATP汇编器编译)。 【基于AT90S8515的串行通信及其应用】 AT90S8515是由美国ATMEL公司推出的AVR系列单片机,它是一款高性能、低功耗的8位微处理器,内置Flash存储器,采用增强型RISC结构。此系列单片机在设计时兼顾了C语言和汇编语言的支持,如IAR系统的ICC90C编译器用于C语言编程,而ATP汇编器则用于汇编语言的编译。 串行通信是AT90S8515的重要功能之一,主要通过通用异步收发传输器(UART)实现。UART是一种全双工通信接口,能够进行双向数据传输。以下是其主要特性: 1. 波特率生成器:可以根据需要设置任意波特率,提供了灵活的通信速率选择。 2. 高波特率:即便在较低的XTAL晶振频率下,也能实现较高的波特率。 3. 数据位宽度:支持8位和9位数据传输。 4. 噪声滤波:通过硬件机制减少噪声对通信的影响。 5. 错误检测:包括超越误差检测、帧错误检测和错误起始位检测,确保数据传输的准确性。 6. 中断机制:提供3个独立的中断源,分别是TX完成、TX数据寄存器空和RX完成,便于实时处理通信事件。 UART的工作原理如下:数据发送时,先将要发送的数据写入I/O数据寄存器UDR,然后数据会被移至移位寄存器,由TXD引脚依次送出。接收时,UART以16倍波特率采样RXD引脚,通过多个采样点判断起始位和数据位,以减少误判概率。接收器在检测到起始位后,会连续采样数据位,3取2方法确定每个数据位的逻辑值。若检测到帧错误或超越错误,相应的错误标志会被设置,供用户在读取数据前检查。 UART的主要寄存器包括I/O数据寄存器UDR、波特率寄存器UBRR以及控制寄存器UCR和状态寄存器USR。UDR寄存器在写入时用于发送数据,在读取时用于接收数据。UBRR寄存器用于设置波特率。UCR寄存器包含多个控制位,如RXCIE(RX完成中断使能)、TXCIE(TX完成中断使能)、UDRIE(UART数据寄存器空中断使能)等,用于控制UART的中断功能。USR寄存器则提供了通信状态信息,如RXC(UART接收完成)、TXC(TX完成)等标志位,用于监测通信状态。 通过适当的配置这些寄存器,用户可以实现AT90S8515与外部设备间的串行通信,例如在嵌入式系统中构建串口通信链路,进行数据传输或者与其他设备进行通讯。同时,利用中断机制可以提高系统响应速度,实现多任务并行处理。在实际应用中,开发者需要根据具体需求设置波特率、数据位数、奇偶校验位、停止位以及中断控制,确保串行通信的稳定性和可靠性。
- 粉丝: 5
- 资源: 971
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助