详细介绍了AVR串口通信初始化设置及例程
Atmega128 串口详解
Atmega128有两个串口:USART0与USART1
以USART0为例
串口的初始化包括:
传输模式的选择:同步还是异步,默认为异步模式,可通过选择USART控制和状态寄存器UCSR0C中的UMSEL位来选择,UMSEL为0,是异步模式.
波特率的设置:通信的双方都必须有相同的波特率,波特率可以通过设置波特率发生寄存器UBRR0来确定,UBRR0为两字节16位的寄存器,可分为 UBRR0H和UBRR0L.同时起作用的还有UCSR0A中的波特率加倍位UX2,当UX2为1时设置的波特率加倍.
传输帧格式的设置:默认是8位数据位,一位停止位
发送接受的使能与中断:通过设置UCSR0B来根据需要选择接收或发送的使能和是否使用中断,对使用中断的USART操作,初始化前要关闭中断
USART0的控制和状态寄存器有:UCSR0A,UCSR0B,UCSR0C,波特率寄存器有UBRR0,即UBRR0H和UBRR0L,数据寄存器为UDR0
1、初始化:
设置波特率前,要关闭USART0的所有使用,包括使能和中断:
UCSR0B=0B00000000; //关闭USART0
2、设置UCSR0A:
UCSR0A能写的有Bit0,Bit1,Bit6,其他5位为状态位.我们一般使用的有Bit1-U2X0,当这一位为1时,波特率的分频因子从16降到8,能够有效的将异步通信模式的传输速率加倍,但是这一位仅对异步操作有影响,使用同步操作时应将此位清零.
UCSR0A=0B00000000; //不使用倍速发送
3、设置UCSR0C:
Bit6-UMSEL0:USART0的模式选择,0为异步模式,1为同步模式
Bit5:4-UPM01:0:奇偶校验模式,00禁止,01,保留,10偶校验,11,奇校验 Bit3-USBS0:停止位的选择,0停止位为1bit,1停止位为2-bits
Bit2:1-UCSZ01:0:字符长度,当UCSZ02为0时,00表示5位,01表示6位,10表示7位,11表示8位.当UCSZ02为1时,11表示9位.(UCSZ02为UCSR0B里的一位寄存器)
eg:
UCSR0C=0B00000110 //异步模式,禁止奇偶校验,停止位为1位,数据位为8位
4、设置UBRR:
UBRR的设置和这些参数有关:U2X0,CPU频率,波特率
当U2X0为0时,即异步正常模式下,UBRR的计算公式:
1、U2X=0时的公式计算
avr 单片机 USART 串口通讯初始化配置说明 avr atmega16 单片机通用同步和异步...《单片机C程序设计》第1... 25页 免费 AVR单片机异步串行通信(... 21页 2...
AVR 单片机 串口通信 串行通讯 详细例程介绍_小学作文_小学教育_教育专区。这是...进制来设置这些寄存器: UCSR0B=0x98;或者 UCSR0B=152; 串口的初始化函数: ...
51单片机串口通信(相关例程)_信息与通信_工程科技_专业资料。51单片机串口通信(...初始化串口设置,如波特率设置,工作方式的设置,这些都是程序运行的一切初始化设置...
AVR单片机 mega16 C语言 串口通信实验程序_信息与通信_工程科技_专业资料。AVR单片机...异步串口初始化参 数: baud--设置的波特率返回值 : 无 /***/ void Uart...
AVR程序范例(USART串口通讯)_计算机软件及应用_IT/计算机_专业资料。AVR程序范例...(void) //ADC 初始化 { ADCSRA=0xe3;//自动转换方式:ADC 使能,ADC 开始...
AVR单片机串口USART与PC通讯实例和中断程序分析_计算机软件及应用_IT/计算机_专业...限定 本范例可直接使出厂状态的新 M16 芯片,无需对芯片的熔丝位进行配置。 出于...
avr单片机串口通信协议程序_信息与通信_工程科技_专业资料。avr单片机多机的串口通信协议 包括五个方向的数据传输主机程序 #include <avr/io.h> #include <stdio....
(GPIOA, &GPIO_InitStructure); 设置 //初始化 GPIO_Pin_9 GPIO_InitStruct...{} } #endif 将 AVR 上的队列串口驱动程序修改后,运行在 STM32 开发板,...
将AVR 上的队列串口驱动程序修改后,运行在 STM32 开发板,采用中断方式 接收和...(USART1, ENABLE);// } //串口初始化 void UART0_InitUART( unsigned long...
AVR串口通信初始化设置及... 5页 免费 单片机串口通信2 6页 1下载券喜欢...(void); #endif 主程序: #include "STC_NEW_8051.h" #include "Uart.h"...
闽公网安备 35021102001881号 
热门文档