当前位置:首页 >> 信息与通信 >>

AVR单片机教程22-第二十二课 单片机与PC机的串行通信编程实践

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

第二十二课 单片机与 PC 机的串行通信编程实践

本教程节选自周兴华老师 《手把手教你学 AVR 单片机 C 程序设计》 教程, 如需转载, 请注明出处!读者可通过当当网、淘宝网等网站购买本教程,如需购买配书实验器 材,可登陆周兴华单片机培训中心网购部自助购买!

13.3.1 在 AVR 单片机开发板板上,进行单片机与 PC 机(个人电脑)的通信试验1 PC 机发送一个字符给单片机,单片机收到后即在发光管 D1~D8上进行显示,同时将其回发给 PC 机。为便于初学者实验成功,单片机的发送接收均采用查询方式。实验电路可参考第4章的 图4-1(AVR DEMO 单片机综合试验板电路原理图)。 在我的文档中新建一个 ac13-1的文件夹。建立一个 ac13-1.prj 的工程项目,最后单片机培训建 立源程序文件 ac13-1.c。输入下面的程序: #include <iom16v.h>//包含头文件 #include <macros.h> //==================================

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——
void port_init(void) //初始化端口子函数 { PORTA = 0xFF; //PD 端口初始化输出11111111 DDRA = 0x00; //将 PA 端口设为输入 PORTB = 0xFF; //PD 端口初始化输出11111111 DDRB = 0xFF; //将 PB 端口设为输出 //51单片机培训

PORTC = 0xFF; //PD 端口初始化输出11111111 DDRC = 0x00; //将 PC 端口设为输入 PORTD = 0xFF; //PD 端口初始化输出11111111

DDRD = 0x02; //将 PD 端口的 PD1设为输出,其它设为输入 } //********************************************** void uart0_init(void) //初始化 UART 子函数 { UCSRB = 0x00; //禁止 UART 发送和接收 UCSRA = 0x02;//倍速 UCSRC = 0x06;//8位数据位 UBRRL = 0x67; //波特率9600 UBRRH = 0x00; UCSRB = 0x18;// 允许 UART 发送和接收 } 单片机 C 语言教程

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——
//********************************************** void init_devices(void) //芯片的初始化子函数 { port_init();//调用端口初始化子函数 uart0_init();//调用 UART 初始化子函数 } //********************************************** void uart0_send(unsigned char i)//发送1个字符的子函数 { while(!(UCSRA&(1<<UDRE)));//等待发送缓冲区为空 UDR=i;//发送1个字符 } //************************************************ unsigned char uart0_receive(void) //接收1个字符的子函数 { while(!(UCSRA&(1<<RXC)));//等待接收数据 return UDR;//返回接收到的数据 } //--------------------------------------------------------------void main(void) //主函数 { 单片机教材

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——
unsigned char temp;//定义局部变量 init_devices();//调用芯片初始化子函数 while(1) //无限循环 { temp=uart0_receive();//等待接收数据 PORTB=~temp; //接收的数据转成低电平后点亮 LED uart0_send(temp);//再将接收的数据发送出去 } } 编译通过后,AVR 单片机综合试验板接通5V 稳压电源,将生成的 ac13-1.hex 文件下载到试验 板上的单片机中,注意,标示“UART”及“LED”的双排针应插上单片机开发短路块。在做实验时, 我们需要在 PC 机上进行信息发送。这里使用的是一个名叫 COMPort Debuger(串口调试器软 件)的免安装共享软件,其下载地址为:http://emouze.com 或 http://www.hlelectron.com AVR 单片机教程

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

图13-1 打开串口调试器软件,其界面如图13-1所示。右上方为发送区,右下方 protel 培训为接收区。 左上方的初始化区域(如波特率、数据位等)一般不必更改(初始化为:端口号1、波特率9600、 数据位8、停止位1、校验位无) 。若你的 PC 机串口 COM1已占用时,才可考虑改用 COM2。 将 PC 机的串口与 AVR 单片机综合试验板的串口连接好。清空发送区、接收区的原有内容,然 后打开串口。 我们做的实验比较简单,每次只能输入一位字符进行发送。 发送区输入1,点发送,我们发现 AVR 单片机综合试验板的8个 LED(D1~D8)中,D6、D5、D1 发光管点亮(即数据为0x31) ,同时接收区立即显示收到的1(见图13-2) 。发送区单片机论坛 输入 A,点发送,我们发现 D7、D1发光管点亮(即数据为0x41) ,同时接收区立即显示收到的 A(见图13-3) 。通过查对 ASCII 码表可知,0x31是数字1的 ASCII 码,0x41是字母 A 的 ASCII 码。

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

图13-2

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

图13-3 发送区勾选“按16进制显示或发送”, 接收区勾选“按16进制显示”,发送区输入8,点发送,我 们发现 AVR 单片机综合试验板的中,D4发光管点亮(即数据为0x80) ,同时接收区立即显示收 到的08,其界面如图13-4所示。发送区输入 F,点发送,我们发现 AVR 单片机综合试验板的中, D1~4发光管点亮(即数据为0x0F) ,同时 FPGA 开发板接收区立即显示收到的0F,其界面如图 13-5所示。与16进制的数据完全相符。

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

图13-4

周兴华单片机培训中心 2010 年 6 月制

上海周兴华单片机培训中心 Http://www.zxmcu.com ———————————————————————— ——

图13-5

周兴华单片机培训中心 2010 年 6 月制


相关文章:
AVR单片机教程22-第二十二课 单片机与PC机的串行通信编....doc
AVR单片机教程22-第二十二课 单片机与PC机的串行通信编程实践 - 在AVR
走进精彩的AVR单片机世界AVR与PC机的串行通信_免费....pdf
PC机与AVR单片机之间串行通... 3页 1财富值 AVR单片机教程22-第二十二... ...字符 还没 有被读 取时 ,该位 自动变 为 1该位对于串口通信编程的意义在 ...
PC机与AVR单片机之间串行通信的实现_丁易新.pdf
PC机与AVR单片机之间串行通信的实现_丁易新_互联网_...( ) 实现; 单片机端通信程序采 用 C51 编程, ...因此单片机与计算机通信成为 一个必不可少的环节。 ...
PC机与AVR单片机之间串行通信的实现.pdf
PC机与AVR单片机之间串行通信的实现_信息与通信_工程科技_专业资料。基于RS 232 ...AVR单片机教程22-第二十... 8页 1下载券 单片机与PC机串口通信的... ...
PC机与AVR单片机之间串行通信的实现_图文.pdf
PC机与AVR单片机之间串行通信的实现_计算机硬件及网络_IT/计算机_专业资料。pc ...AVR单片机教程22-第二十... 8页 1下载券 单片机与PC机串口通信的... ...
AVR单片机项目十 AVR单片机USART 串行通信应用_图文.ppt
AVR单片机项目十 AVR单片机USART 串行通信应用_信息通信_工程科技_专业资料。单片机应用技术 项目十 AVR单片机USART 串行通信应用 【知识目标】 ? 了解通信基础知识...
实验六 单片机串行口与PC机通信实验_图文.doc
实验六 单片机串行与PC机通信实验_电脑基础知识_IT/计算机_专业资料。实验六一、实验目的 单片机串行与 PC 机通信实验 1.掌握 8051 串行口的工作原理和编程...
基于Delphi的PC机与AVR单片机的串行通讯.pdf
基于Delphi的PC机与AVR单片机的串行通讯_电子/电路_...监 Del控系统中, 通信编程显得及其重要。因此设计...上 位机再将十六进制 0x22 转化为十进制 34, 在...
单片机与PC机串行通信综合课程设计_图文.doc
单片机与PC机串行通信综合课程设计_信息与通信_工程...这对 PC 端软件和单片机 程序的编程提出了一个更...数字电子技术与实训教程[M].北京:人民邮电出版社,...
单片机与PC机串口通信实现正文_图文.doc
单片机与PC机串口通信实现正文_制度/规范_工作范文_...机串口通信实现【摘要】微机与单片机串行通信端口在...22 23 24 25 26 27 28 10 11 12 13 14 15 ...
单片机与PC机串行通信的毕业设计论文.doc
单片机与PC机串行通信的毕业设计论文_工学_高等教育_教育专区。毕业论文,毕业论文...单片机应用与实践[M].北京:北京航空航天大学出版社,1995.08 二、课题的内容和...
单片机与PC机串行通信系统硬件及上位机程序设计.doc
论文详细介绍了单片机与 PC 机通信的软硬件实现。在硬件设计中,单片机系统 与 PC 机系统通过 RS-232 串行通信端口进行互连,单片机系统将由 PC 机传输过来 的数据...
单片机与PC机串行通信的毕业论文设计.doc
单片机与PC机串行通信的毕业论文设计_工学_高等教育_教育专区。安徽矿业职业技术...单片机应用与实践[M].北京:北京航空航天大学出版社,1995.08 二、课题的内容和...
PC机与单片机之间的串口通信分析.doc
PC机与单片机之间的串口通信分析_计算机软件及应用_IT...单片机的串行口在单片机的日常教学实践和实际的工程...实现利用虚拟终端仿真单片机与 PC 机的串行通信。...
ARM系列单片机与PC机之间的串行通信.pdf
ARM系列单片机与PC机之间的串行通信_信息与通信_工程...基于软件编程与上位机进行通讯, 下位机中断子 程序...嵌入式C编程与AVR单片机... 2页 免费 ARM之间...
用c+builder60实现avr单片机与pc机的串行通讯_图文.pdf
用c+builder60实现avr单片机与pc机的串行通讯_信息与通信_工程科技_专业资料。2 设备设计与维修2 用 ! " " #$%&’()*+ , 实现 -./ 单片机与 0! 机的...
利用MsComm实现单片机与PC机的串行通信_图文.pdf
//www.dnzs.net.cn5690964 利用MsComm实现单片机与PC机的串行通信刘艳.张文超.龙云玲(新乡医学院生命科学技术系.河南新乡453003) 摘要:单片机与PC机的串行通信在...
AVR单片机教程21-第二十一课 使用定时计数器1产生0至5V....doc
AVR单片机教程21-第二十一课 使用定时计数器1产生0至5V的基准电压 - 在
单片机与PC机串行通信系统设计_图文.doc
单片机与PC机串行通信系统设计_电子/电路_工程科技_专业资料。单片机应用系统设计说明书 设计题目: 单片机与 PC 机的串行通信系统设计 设计者姓名: 苗刚 学号: ...
Delphi环境下PC机与AVR单片机的串行通讯.pdf
Delphi环境下PC机与AVR单片机的串行通讯Delphi环境下PC机与AVR单片机的串行通讯隐藏>> 《现代电子技术》 2008 年第 2 期总第 265 期 计算机应用技术 Delphi 环境下...
更多相关标签: