原创
ATmega16_App_V1.0开发板范例6:USART实验(查询方式收发数据)(ICC)
一、
程序结构
二、
仿真效果
三、main主函数
- /*******************************************************************************
- Platform: ATmega16_App_V1.0开发板(http://bbs.armavr.com)
- Project : 范例6:USART实验(查询方式收发数据)(ICC)
- Clock F : 内部2MHz
- Software: ICCAVR7.14C
- Author : 林夕依然
- Version : 09.11.03
- comments:
- 1、以学习板LED,MAX232为硬件电路
- 2、接收发自电脑的数据,将其显示在LED上,并将接到到的数据减1后返回电脑
- 3、用串口助手工具调试,理解串口通讯协议
- 4、有返回值的函数,需要定义函数返回值类型,否则出错
- problem :
- 1、LED灯点亮正常,PC收到的数据不正常,不稳定,不知何因
- *******************************************************************************/
- #include <iom16v.h>
- #include <macros.h>
- #include "uart.h"
- /*-----------------------------------------------------------------
- 函数名称: void IO_init(void)
- 函数功能: 端口初始化
- 参 数:
- 返 回 值: 无
- -----------------------------------------------------------------*/
- void IO_init(void)
- {
- DDRA =0X00;
- PORTA=0XFF;
- DDRB =0XFF;
- PORTB=0XFF;
- DDRC =0X00;
- PORTC=0XFF;
- DDRD =0X02; //RXD输入,TXD输出
- PORTD=0XFF;
- }
- void main(void)
- {
- unsigned char temp;
- IO_init();
- Usart_init();
- while(1)
- {
- temp=Usart_Receive(); //接收来自PC的数据
- PORTB=~temp; //将数据显示在LED上
- temp=temp-1;
- Usart_Transmit(temp); //将收到的数据发回PC(接收到的数据不稳定,不知何因)
- }
- }
四、完整项目文件
https://static.assets-stash.eet-china.com/album/old-resources/2009/11/9/9bdb075a-3db4-4e28-9925-39299efb70b9.rar
文章评论(0条评论)
登录后参与讨论