基於Proteus仿真的AVR單片機串口程序

2021-01-11 電子產品世界

  以前在Proteus上做過51的串口仿真沒有成功,昨天再次嘗試atmega16的串口仿真居然成功了;當然仿真是最簡單的,實際做事的時候需要加上max232晶片,但仿真時就不需要了,

本文引用地址:http://www.eepw.com.cn/article/201610/311532.htm

  程序功能:由串口助手向單片機發送一組數據「I LOVE YOUSBILY1988」,單片機收到數據後發送回串口助手,

  數據傳輸方向:計算機——>單片機; 單片機——>計算機;

  現送上仿真圖和程序:

  

 

  #include

  #include

  void init();

  void send(unsigned char);

  unsigned char receive();

  void main()

  {unsigned char i=0,a=300;

  init();

  while(1)

  {

  i=receive();

  send(i);

  }

  }

  void init() //初始化函數

  {

  UCSRB=BIT(4)|BIT(3); //使能發送和接收器

  UCSRC=BIT(7)|(3<<1); //設置數據幀格式(8數據位)

  UBRRH=0; //設置波特率為8MHZ晶振下 9600bps

  UBRRL=51;

  }

  void send(unsigned char data) //數據發送

  {

  while(!(UCSRA&BIT(5))); //等待發送緩衝器準備完畢

  UDR=data;

  while(!(UCSRA&BIT(6))); //等待發送結束

  UCSRA&=BIT(6);

  }

  unsigned char receive() //數據接收

  {unsigned char data=0;

  while(!(UCSRA&BIT(7))); //等待數據接收完畢

  data=UDR;

  return data;

  }


相關焦點

  • AVR的程式語言Arduino可用Proteus仿真調試
    ATMEGA168P控制器的AD轉換是10位的轉換器,5V對應的數字量為1024,2.5V應該是512,所以單片機一旦得知AD轉換後的數字量超過512時,把數字接口13的LED的變量ledpin為HIGH。下面是Arduino程序:
  • 介紹一個非常好用的單片機仿真軟體PROTEUS(帶下載連結)
    從事單片機教學多年,雖說不夠精通,但帶領學生入門單片機足夠了。說實話,一個從沒有接觸過計算機語言的初學者,因為沒有程序的概念,學習單片機是有一定難度的。但如果方法得當,則能再最短時間內入門,也會為之後的深入學習打好一個良好的基礎。以下我將從幾方面來總結入門單片機需要做的幾步。首先,選好設備。
  • 基於proteus的51單片機開發實例37-DAC0832
    基於proteus的51單片機開發實例37-DAC08321.1. 實驗目的之前我們學習了數模轉換晶片DAC0808,今天我們繼續學習另一種D/A轉換晶片DAC0832。DAC0832與51單片機的接口VCC、ILE同時接到+5V,WR1和WR2同時接到單片機的同一個埠P3.6;CS和XFER也同時接到單片機的一個埠P2.7。這種接法使DAC0832相當於一個單片機的外部擴展存儲器,其地址為0x7fff。只要採用對片外存儲器尋址的方法將數據寫入該地址,DAC0832就會自動開始數模轉換。
  • 學習電路仿真:基於proteus電路仿真軟體的步進電機仿真
    本文中,將基於proteus電路仿真軟體的步進電機仿真,一起來了解下吧。步進電機廣泛應用在生產實踐的各個領域。它最大的應用是在數控工具機的製造中,因為步進電機不需要A/D轉換,能夠直接將數字脈衝信號轉化成為角位移,所以被認為是理想的數控工具機的執行元件。
  • 有關Keil軟體仿真的51單片機串口調試技巧
    傳統方式串口程序的調試,往往是利用專用的單片機硬體仿真器。在編寫好程序後,利用仿真器來設置斷點,觀察變量和程序的流程,逐步對程序進行調試,修正錯誤。使用硬體仿真器的確是很有效的方法,但是也有一些缺點:  很多仿真器不能做到完全硬體仿真,因而會造成仿真時正常,而實際運行時出現錯誤的情況;也有仿真不能通過,但是實際運行正常的情況。
  • 基於proteus的51單片機開發實例33-單片機的編程規範
    基於proteus的51單片機開發實例33-單片機程序的編程規範說明:本文中所說的編程規範只是我個人的一些想法和實踐,有些經驗可能並不能適合所有場合,當然也不可避免的有比較偏頗的看法,請大家多多批評指正。
  • avr單片機和stm32區別與優缺點分析
    摘要:avr單片機和stm32單片機是目前使用較廣泛的單片機,那麼avr單片機和stm32單片機有什麼區別呢?有什麼優劣勢呢?   avr單片機特點:   1. avr系列沒有類似累加器A的結構,它主要是通過R16~R31寄存器來實現A的功能。
  • 基於proteus的51單片機開發實例30-模塊化程序設計
    基於proteus的51單片機開發實例30-模塊化程序設計1.1.設計思路本實例的設計思路是:將《基於proteus的51單片機開發實例29-單總線DS18B20的讀寫》中的程序代碼按照延時功能、LCD1602液晶顯示功能、DS18B20的讀寫控制功能這三個部分,使用模塊化程序設計的方法,將這三個部分分別封裝為三個.c和.h文件
  • Proteus-PIC-虛擬串口---串口調試仿真
    用不同的LED燈做指示燈  註:PIC和COMP1M電路連接:用串口調試助手作為輸入/輸出顯示,相關連線為對應連接,即RX-RXD;TX-TXD(虛擬終端SCMR用於觀察單片機接受到的數據值,可去掉
  • Proteus軟體仿真與Keil的51單片機系統設計
    單片機功能越來越強大,價格卻不斷下降的優勢無疑成為嵌入式系統方案設計的首選,同時單片機應用領域的擴大也使得更多人加入到基於單片機系統的開發行列中,推動著單片機技術的創新進步。  然而傳統的單片機系統開發除了需要購置諸如仿真器、編程器、示波器等價格不菲的電子設備外,開發過程也較繁瑣。如圖1所示,用戶程序需要在硬體完成的情況下才能進行聯調,如果在調試過程中發現需修改硬體,則要重新制板。
  • AVR單片機驅動無源蜂鳴器C程序
    定時器實險,周期信號驅動無源蜂鳴器,些實驗基於定時器的CTC模式,由硬體產生頻率信號。程序中實現單一頻率的周期性提示音。程序採用單任務方式,軟體延時。AVR單片機需要設置合適的熔絲位才能實現其功能,如果熔絲位設置的不對將有可能導致單片機自鎖,這是我整理的AVR單片機熔絲位的設置及拯救方,希望對大家有幫助。
  • 基於proteus的51單片機開發實例24-矩陣鍵盤(行列式鍵盤)
    基於proteus的51單片機開發實例24-矩陣鍵盤1.1.設計思路我們在前面已經學習過獨立按鍵,在獨立按鍵電路中,一個按鍵連接單片機的一位I/O埠。這樣通過檢測I/O的狀態就能很方便的識別該按鍵是否按下。這種電路的優點是:電路簡單,程序簡單,缺點是一個按鍵就要佔用一個I/O口。
  • 【安裝包】AVR開發環境_AVR_ studio4b528.zip
    AVR 所使用開發環境 avrstudio是一款avr單片機開發軟體,atmel公司推出的avr集成開發環境,,工程師常用軟體 ATMEL的AVR單片機的集成環境彙編級開發調試軟體,完全免費。ATMEL AVR Studio集成開發環境(IDE) ,包括了AVR Assembler編譯器、AVR Studio調試功能、AVR Prog串行、並行下載功能和JTAG ICE仿真等功能。它集彙編語言編譯、軟體仿真、晶片程序下載、晶片硬體仿真等一系列基礎功能,與任一款高級語言編譯器配合使用即可完高級語言的產品開發調試
  • 51單片機程序下載、ISP及串口基礎知識
    一方面USB接口負責給單片機供電,另一方面,USB轉TTL或RS232轉TTL已經集成的學習板上。 51單片機程序的燒寫 我們最常見的51單片機是美國Atmel公司生產的AT系列單片機和中國宏晶公司生產的STC系列單片機。
  • labview實現PC與單片機之間的串口通信
    使用Proteus進行單片機仿真,仿真硬體連接,串口通信部分使用keil與labview編寫程序,實現:PC通過串行口將數字(00,01,02,03...
  • 基於單片機與計算機串口的溫度實時監控系統設計
    該系統通過單片機實現實時控制,並通過串口連接單片機與上位計算機,在計算機中實現實時監控、大容量的數據存儲及數據分析等功能,解決了常規溫度測量方法在溫度測量實時性差、不能儲存數據及缺乏數據分析功能等方面的缺陷。
  • 基於RS485的組態王與單片機多機串口通信設計
    KingView軟體基於Microsoft Windows XP,NT/2000作業系統.具有友好的人機操作界面、強大的IO設備埠驅動能力,可與各種PLC、智能儀表、智能模塊、板卡、變頻器等實時通訊。由 於在檢測大量模擬量的工業現場使用PLC與組態軟體通訊勢必增加產品成本。而單片機接口豐富,與A/D轉換模塊組合可以完成相同的工作,並且系統可靠、成本低。
  • 「Proteus」單片機H橋驅動24V直流有刷電機-電子芯吧客
    前言一般有關直流有刷電機的仿真都是直接高低電平驅動,或者ULN2003,這種電路是只能驅動小電壓小功率的電機的,如果碰到電壓稍高一些,電流大一些的電機,2003驅動是驅動不起來的,這時候對於大電流的電機,一般就是MOS管或者IGBT,相對來說,NMOS是經濟實用之選,本節就帶領大家使用單片機,搭建H橋驅動電路來驅動一個24V
  • 自學單片機第四篇:proteus pro軟體
    私信回復:軟體或單片機,可領取正版程序寫好,如果有硬體,可以直接刷,如果沒有,我建議還是用仿真軟體,這樣調試時不用考慮硬體問題,把軟體調好,就可以慢慢調硬體了。以後這是我們仿真的主戰場了。我們輸入網址labcenter,進入官網。