《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 串行通信UART及PROTEUS仿真設計
串行通信UART及PROTEUS仿真設計
摘要: C51跟atmega64的串行通信。相關理論知識這里就不多說,只提幾個:51的UART所用的幾個寄存器
Abstract:
Key words :

  C51跟atmega64的串行通信。相關理論知識這里就不多說,只提幾個:

  51的UART所用的幾個寄存器

  SCON:SM0 SM1 SM2 REN RB8 TX8 RI TI

  PCON: SMOD --   --      --      ---    ---    PD IDLE

  T2CON: TF2 EXF2  RCLK  TCLK  EXEN2  TR2  C/_T  CP/_RL2

  TH2,TL2

  波特率為9600bps

  avr:atmega64的USART的兩個

  所用到的寄存器

  這里用的是uart0,所以初始化時應該設置相關的寄存器有:

  UCSR0A : RXC TXC UDRE FE DOR UPE U2X MPCM

  UCSR0C :--  UMSEL UPM1 UPM0 USBS UCSZ1 UCSZ0 UCPOL

  UBRR0H 、 UBRR0L、

  UCSR0B :RXCIE TXCIE UDRIE RXEN TXEN UCSZ2 RXB8 TXB8

  別問我這些都是代表什么含義,不懂自己翻書去。。

  PROTEUS仿真如下圖:

proteus仿真

  仿真結果如下圖所示:

仿真結果

  其中要注意的是:

  因為我在仿真中只能選擇atmega64的CKSEL Fuse中的8MHz,所以在AVR的程序中初始化波特率是按8MHz來計算的。所以仿真歸仿真,注意實際中應用。

  51單片機用定時器1來產生波特率時,看書據說模式2下,12MHz時最高只能到達4800bps。這里就只好用定時器2來。不過也挺好用的。。仿真時用的是8052核。。否則沒反應不要怪我哦。。

  最后把程序附上,里面有些變量聲明了沒有用到,當初只是實驗。。

  51的:

  #include "reg52.h"

  #define AA 0x61
#define commun_symbol 0x31
sbit LED="P2"^0;
unsigned char Tx[]={"my name is seven!"};
void uart_init(void)
{
  SCON   = 0x50;
  RCAP2H = 0xFF;
  RCAP2L = 0xD9;
  TH2    = 0xFF;
  TL2    = 0xD9;
  T2CON  = 0x34;
 
}

  void uart_send(unsigned char byData)
{
 TI=0;
 SBUF=byData;
 while(TI==0);
 TI=1;
}

  unsigned char uart_receive(void)
{
 RI=0;
 while(RI==0);
 RI=1;
 return(SBUF);
}

  void main()
{
 unsigned char byBuff,i;
 uart_init();
 uart_send(commun_symbol);
 while(1)
 {
 
 
  byBuff="uart"_receive();
  LED="1";
  if(byBuff==0x31)
  {
   for(i=0;i<20;i++)
  {
   P1=byBuff;
   uart_send(Tx[i]);
  }
  }
 }

  
}

  atmega64的程序:

  兩個文件,一個是將函數模塊化,別一個是主函數,調用(- -!最近習慣將程序模塊化。。。)

  //------------------uart.c---------------------

  //----這里將通信函數模塊化------------

  #include

void UART0_init(void)
{
 UCSR0B = 0x00; //disable while setting

baud rate
 UCSR0A = 0x00;
 UCSR0C = 0x06;
 UBRR0L = 0x33; //set baud rate lo
 UBRR0H = 0x00; //set baud rate hi
 UCSR0B = 0x18;
}

  
void uart0_Transmit( unsigned char data )
{
/* Wait for empty transmit buffer */
while ( !( UCSR0A & (1<;
/* Copy ninth bit to TXB8 */
UCSR0B &= ~(1<//if ( data & 0x0100 )
//UCSR0B |= (1</* Put data into buffer, sends the data */
UDR0 = data;
}

  unsigned char uart0_Receive( void )
{
/* 等待接收數據*/
while ( !(UCSR0A & (1<;
/* 從緩沖器中獲取并返回數據*/
return UDR0;
}

  //--------------main.c-----------

  //--------------------------------

  #include
#include "spi.h"
#define commun_symbol 0x31

  //-----------send a commun_symbol-----
//-----------receive a commun_symbol--
//      <--no,continue receive||||||yes-->receive the data and send
void main()
{
 unsigned char bybuff;
 DDRB=0xff;
 PORTB=0xff;
 uart0_init();
  {
 
  do
  {
  bybuff="uart0"_Receive();
  }
  while (bybuff!=commun_symbol);//commun_symbol);
  while(1)
  {
  
 uart0_Transmit(bybuff);
 bybuff=uart0_Receive();
 PORTB=(0xff|bybuff);
  }
 }
}

  ok,任務完成了,改天實驗一下!

 

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美在线视频一区二区三区| 日韩视频免费| 亚洲大胆美女视频| 国产一区二区在线观看免费播放 | 一区精品在线| 国产亚洲福利社区一区| 国产精品网站在线| 国产精品视频xxxx| 国产精品视频xxx| 国产精品自拍一区| 国产午夜精品久久| 国产视频一区三区| 国产日韩在线视频| 国产在线拍偷自揄拍精品| 国产欧美日韩精品一区 | 国产精品美女久久久浪潮软件| 欧美视频中文字幕在线| 欧美日韩精品| 欧美日精品一区视频| 欧美视频在线视频| 国产精品视频成人| 国产日本亚洲高清| 国产亚洲美州欧州综合国| 国产又爽又黄的激情精品视频 | 性欧美video另类hd性玩具| 午夜视频在线观看一区二区| 香港久久久电影| 久久精品国产91精品亚洲| 亚洲国产精品视频| 亚洲精品视频在线观看免费| 日韩亚洲在线| 国产精品99久久久久久有的能看 | 日韩亚洲综合在线| 国产精品99久久久久久白浆小说| 中文国产一区| 午夜免费在线观看精品视频| 欧美一区综合| 亚洲靠逼com| 亚洲调教视频在线观看| 午夜精品剧场| 久久一日本道色综合久久| 欧美国产激情二区三区| 欧美性猛交一区二区三区精品| 国产精品综合| 亚洲第一页中文字幕| 亚洲免费久久| 午夜精品视频| 亚洲国产天堂久久综合| 一本一本a久久| 欧美亚洲专区| 欧美暴力喷水在线| 欧美特黄视频| 黑人一区二区三区四区五区| 亚洲国产天堂久久综合网| 国产精品卡一卡二| 欧美成人免费在线视频| 欧美日韩专区在线| 国产一区二区三区的电影 | 国产精品久久久一区麻豆最新章节| 国产日韩欧美| 亚洲欧洲免费视频| 亚洲在线成人| 亚洲精品乱码视频| 性欧美长视频| 欧美国产激情| 国产免费成人| 亚洲另类春色国产| 欧美伊人久久久久久久久影院| av不卡在线看| 亚洲自拍偷拍麻豆| 亚洲在线日韩| 麻豆精品在线视频| 国产精品vvv| 尤物在线精品| 亚洲一区影院| 日韩午夜电影| 久久久久国产一区二区| 欧美理论电影在线观看| 国产亚洲亚洲| 亚洲深夜福利视频| 亚洲乱码国产乱码精品精98午夜| 午夜欧美精品| 欧美日韩国产免费| 狠狠色综合网| 亚洲综合色视频| 99re6热在线精品视频播放速度 | 欧美大片免费观看在线观看网站推荐| 国产精品欧美日韩| 亚洲人成毛片在线播放女女| 欧美影院成年免费版| 亚洲砖区区免费| 欧美国产综合| 狠狠色狠色综合曰曰| 中文在线一区| 亚洲视频一区二区在线观看| 美女免费视频一区| 国产欧美一区二区精品忘忧草 | 亚洲区国产区| 久久久久免费视频| 国产精品视频导航| 夜夜嗨av一区二区三区中文字幕 | 国产一区二区三区奇米久涩| 在线一区二区日韩| 99成人在线| 欧美va亚洲va日韩∨a综合色| 国产日产亚洲精品系列| 亚洲视频免费| 亚洲视频 欧洲视频| 欧美劲爆第一页| 欧美人成在线视频| 亚洲国产精品成人一区二区| 欧美一区日本一区韩国一区| 欧美亚洲一区二区三区| 国产精品jvid在线观看蜜臀| 91久久国产综合久久| 亚洲精品国产精品久久清纯直播| 噜噜噜91成人网| 一区二区三区在线免费观看| 亚洲第一二三四五区| 久久人人爽人人爽| 国产亚洲精品美女| 欧美亚洲免费在线| 久久精品123| 国产一区二区三区在线观看网站 | 国产精品视频xxx| 亚洲免费伊人电影在线观看av| 亚洲在线观看视频| 欧美日韩在线另类| 在线视频免费在线观看一区二区| 在线视频欧美精品| 欧美日韩视频在线一区二区观看视频| 亚洲人成网站在线观看播放| 99国产精品久久久久老师| 欧美精品久久天天躁| 亚洲美女免费精品视频在线观看| 一区二区三区视频在线播放| 欧美三级午夜理伦三级中文幕| 亚洲最新视频在线播放| 亚洲欧美日韩视频二区| 国产欧美一区二区视频| 欧美诱惑福利视频| 玖玖国产精品视频| 亚洲激情网站| 亚洲手机在线| 国产伦精品一区二区三区视频孕妇 | 欧美美女日韩| 一区二区三区蜜桃网| 午夜伦欧美伦电影理论片| 国产日韩欧美在线视频观看| 久久精品99国产精品日本| 欧美~级网站不卡| 99av国产精品欲麻豆| 欧美有码在线视频| 依依成人综合视频| 一区二区三区成人精品| 国产精品一区在线观看你懂的| 久久精品国产99国产精品澳门| 欧美激情a∨在线视频播放| 一本色道久久88综合日韩精品| 欧美中文在线免费| 在线成人h网| 亚洲永久免费观看| 国产香蕉久久精品综合网| 亚洲国产一区二区三区青草影视 | 欧美日韩亚洲激情| 亚洲欧美制服另类日韩| 久久躁狠狠躁夜夜爽| 亚洲人成在线观看一区二区| 亚洲欧美日韩综合国产aⅴ| 国内精品久久久久影院薰衣草| 亚洲免费高清| 国产欧美日韩一级| 亚洲精品久久久久久久久久久久久 | 国产精品久久久91| 久久激情视频| 欧美日韩在线播放一区| 久久av红桃一区二区小说| 欧美日韩国产成人| 欧美在线高清| 欧美日韩另类丝袜其他| 欧美一区二区三区视频在线观看| 欧美激情综合| 欧美在线一二三| 欧美视频精品一区| 久久精品夜夜夜夜久久| 国产精品大片| 亚洲精品国产精品乱码不99按摩| 国产精品欧美日韩一区| 日韩午夜黄色| 国内精品久久久久久影视8| 亚洲调教视频在线观看| 在线成人小视频| 欧美伊久线香蕉线新在线| 亚洲精品五月天| 久久综合久久综合这里只有精品 | 欧美一级久久久| 欧美午夜在线观看| 亚洲激情第一页| 国产日韩欧美视频| 亚洲午夜国产成人av电影男同|