avr串口配置很简单,配置就几个寄存器就可以进收发;

但有几点要搞明白的是:

1、串口一但被配置成功IO功能自动被占用,这点与LPC或STM8/32不同(需要寄存配置);

2、没有专门的串口开起或闭关功位(整个串口);

3、读写控制寄存器C需要把URSEL位写成1,而读写UBRRH寄存器时须要URSEL写成0;

   1: //晶振频率  

   2: #define F_CPU 6000000UL  

   3: //波特率  

   4: #define BAUD 9600  

   5:  

   6: //M8串口1初始化

   7: void UsartInit(void)

   8: {

   9:     unsigned int tmp;

  10:     FifoInit(&RxFifo, sizeof(RxFifo.data));

  11:     FifoInit(&TxFifo, sizeof(TxFifo.data));

  12:     tmp= F_CPU/BAUD/16-1;

  13:     SetBit(SREG, 7);

  14:     UCSRB = 0;

  15:     UCSRC = 0;

  16:     UBRRH=(unsigned char)(tmp>>8);

  17:     UBRRL=(unsigned char)tmp;

  18:     UCSRB |= (1<<RXEN)|(1<<TXEN);  //允许发送和接收

  19:     UCSRC |= (1 << URSEL)|(1<<UCSZ1)|(1<<UCSZ0); //8位数据位+1位停止位

  20: }

最新文章

  1. 在Linux和Windows的Docker容器中运行ASP.NET Core
  2. [转]easyui data-options的使用
  3. SharePoint自动化系列——Create a local user and add to SharePoint
  4. 动态加载的数据,hover效果
  5. HTML内容整理
  6. 怎样通过ajax提交数据
  7. hdu1500 (排序+单调队列优化 )
  8. Mybatis(1)
  9. python语言 第一个程序
  10. SSM-SpringMVC-10:SpringMVC中PropertiesMethodNameResolver属性方法名称解析器
  11. 最大子段和的DP算法设计及其效率测试
  12. 某app的安全性分析过程
  13. 利用Syslog Watcher在windows下部署syslog日志服务器
  14. linux shell 之尝试编写 企业级 启动脚本
  15. 关于expect的实战总结
  16. 甘特图 (Gantt )的优缺点
  17. 简化Getter 与 Setter 的插件 Lombok
  18. 笔记本键盘开关方法 仅限window系统
  19. linux 终端输出颜色
  20. ajax请求成功回调函数没有执行问题

热门文章

  1. BZOJ 3747 POI2015 Kinoman
  2. ANDROID_MARS学习笔记_S01_006ImageView
  3. D3DXCOLOR 和 D3DCOLOR 和 D3DCOLORVALUE
  4. Git教程之分支管理之二
  5. python脚本工具-1 制作爬虫下载网页图片
  6. knowledge about apache
  7. 安装TokuDB引擎
  8. 【HDOJ】3686 Traffic Real Time Query System
  9. 1126. Magnetic Storms(单调队列)
  10. Java [leetcode 15] 3Sum