色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

用proteus和keil實現串口通信仿真

CHANBAEK ? 來源: 郎哥編程課堂 ? 作者: 郎宏林 ? 2023-11-27 16:42 ? 次閱讀

前面一課講述了串行口通信的技術原理,本課通過安裝虛擬串口,用proteuskeil實現串口通信仿真

虛擬串口

編寫仿真程序之前,需要安裝VSPD,VSPD是虛擬串口工具,通過VSPD虛擬出兩個串口用于通信。大家可以通過搜索引擎找到VSPD安裝方式。

VSPD安裝完成后,運行VSPD,并虛擬出兩個串口COM1和COM2。具體過程如下:

(1)啟動VSPD

圖片

(2)虛擬一對串口

圖片

單擊【Create】按鈕,確認創建當前設定的一對虛擬串口。

圖片

(3)啟動串口助手

隨VSPD安裝包附帶的一般會有串口助手程序,可以使用串口助手測試串口的數據發送和數據接收。

圖片

啟動串口助手打開COM1口,另外再啟動一個串口助手,打開COM2口。在打開COM1的串口助手發送窗口輸入“abc”或“123”,單擊發送按鈕發送數據。觀察打開COM2串口的串口助手窗口,發送的數據會出現在數據接收窗口。

51單片機串行口結構

51單片機串行口結構是一個可編程全雙工的通信接口,能同時進行數據的發送和接收,它由兩個獨立的串行數據緩沖寄存器SBUF(一個發送緩沖寄存器,一個接收緩沖寄存器)和發送控制、接收控制器控制電路構成。

51單片機通過SBUF對串行接收或串行發送寄存器進行訪問,SBUF的地址是99H。SCON寄存器是串行口控制寄存器,它用來設定串行口的工作方式、接收發送控制以及設置狀態標志等。SCON寄存器的地址為98H,可進行位尋址,各位的定義如下表所示。

圖片

SM0和SM1共同確定串行口的工作方式,SM0為0,SM1為1時,串行口工作方式為異步通信口,這也是串口最常用的一種工作方式,TXD(P3.1)為數據發送引腳,RXD(P3.0)為數據接收引腳。

REN為允許串行口接收位,REN=1:允許串行口接收數據,REN=0:禁止串行口接收數據。

在操作串行口之前,需要設置產生波特率的定時器T1、串行口控制和中斷控制。

定時器設置:確定T1的工作方式,計算T1的初值,裝載TH1和TL1。設置串行口工作方式:SM0=0,SM1=1。允許串行口接收數據:REN=1。RI為接收中斷標志位,當串行數據接收完成后,向CPU發出中斷申請,在處理程序中,將該位清零,取消此中斷申請。TI為發送中斷標志位,當串行口發送數據結束后,向CPU發出中斷申請,在處理程序中,將該位清零,取消此中斷申請。

串口通信仿真實驗

實驗要求:通過串口控制發光二極管的狀態。

在proteus仿真電子元器件庫搜索“COMPIM”,添加串口器件到電路模型元器件庫,添加一個串口器件到電路模型,Physical port設置為COM1,并設置Physical Baud rate為9600。

圖片

Physical Baud rate為波特率,波特率通常單位是bit/s,即每秒傳輸的二進制位數。

實驗電路如下圖所示:

圖片

實驗電路非常簡單,器件P1為串口器件,串口器件的TXD引腳接單片機的TXD引腳,串口器件的RXD引腳接單片機的RXD引腳,串口器件的其它引腳可以懸空。

單片機內運行的完整C程序如下:

#include
void init();
void main(){
 unsigned char temp=0xff;
 init();
 while(1){
    if(RI){ 
         RI=0;  
         temp=SBUF; 
     }else{
         P1=temp;
     }
 }
}
void init(){
 TMOD=0x20; 
 TH1=0xfd;
 TL1=0xfd;
 TR1=1;
           
 SM0=0;
 SM1=1; 
 REN=1;
}

函數init()用來設置單片機串行口工作方式、定時器、中斷等控制項,TMOD=0x20設置定時器為計數器方式并設置初值,TR1=1啟動T1定時器,SM0=0和 SM1=1設置串口工作方式為異步通信方式,REN=1允許串行口接收數據。

main()函數應用while循環結構監測串行口,判斷SCON寄存器的RI中斷標志位是否為1,若為1,說明串口已接收到數據,數據存儲在SBUF緩沖寄存器,RI中斷標志位清零,SBUF賦值給temp變量,若RI中斷標志位為0,將temp變量的值賦值給P1口。

實驗過程:

在proteus啟動實驗電路,啟動虛擬串口和串口助手,串口助手設置為COM2,打開COM2串口,選擇16進制發送,在發送窗口輸入00,單擊發送,實驗電路的二極管點亮,再次發送ff可熄滅二極管。

圖片

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6035

    文章

    44554

    瀏覽量

    634634
  • Proteus
    +關注

    關注

    79

    文章

    1692

    瀏覽量

    106515
  • 仿真
    +關注

    關注

    50

    文章

    4070

    瀏覽量

    133552
  • 串口通信
    +關注

    關注

    34

    文章

    1624

    瀏覽量

    55507
  • 虛擬串口
    +關注

    關注

    3

    文章

    62

    瀏覽量

    13876
收藏 人收藏

    評論

    相關推薦

    Proteus教程:STM32仿真串口+定時器

    Proteus教程:STM32仿真串口+定時器
    的頭像 發表于 06-14 11:40 ?4329次閱讀
    <b class='flag-5'>Proteus</b>教程:STM32<b class='flag-5'>仿真</b><b class='flag-5'>串口</b>+定時器

    基于Proteus 的串行通信仿真,字模提取

    字模提取及基于Proteus 的串行通信仿真"Verdana">采用掃描VB 圖片框的方法提取字模,并利用VB、ProteusKeil
    發表于 06-28 01:12

    通過proteus,VSPD虛擬串口,串口小助手仿真單片機串口通信

    求大家幫忙。我proteus、VSPD、串口助手來仿真和調試串口通信,出現問題了,想不出來怎么
    發表于 12-26 18:38

    keil5和Proteus仿真運行stm32程序

    Proteus仿真運行stm32程序摘要:本文介紹了keil5和Proteus仿真運行stm
    發表于 08-24 08:00

    如何實現VSPD+XCOM+Proteus仿真stm32串口通信

    如何實現VSPD+XCOM+Proteus仿真stm32串口通信
    發表于 02-08 06:42

    字模提取及基于Proteus 的串行通信仿真

    字模提取及基于Proteus 的串行通信仿真::采用掃描VB 圖片框的方法提取字模,并利用VB、ProteusKeil 軟件聯合
    發表于 06-21 22:44 ?0次下載

    Proteus串口仿真應用

    Proteus串口仿真應用: 最為簡單且常用的是三線制接法,即地、接收數據和發送數據三腳相連,本文只涉及到最為基本的接法,且直接RS232相連。
    發表于 06-23 16:16 ?194次下載
    <b class='flag-5'>Proteus</b>的<b class='flag-5'>串口</b><b class='flag-5'>仿真</b>應用

    單片機485PC串口通信proteus仿真程序資料

    單片機485PC串口通信proteus仿真程序資料,很好設計資料,快來學習吧。
    發表于 05-09 17:10 ?67次下載

    串口雙機通信 keil uVision4程序代碼下載

    串口雙機通信 keil程序代碼(c語言及匯編語言)及proteus仿真圖 兩機聯調
    發表于 05-15 10:46 ?5次下載
    <b class='flag-5'>串口</b>雙機<b class='flag-5'>通信</b> <b class='flag-5'>keil</b> uVision4程序代碼下載

    使用單片機實現控制循環輸出彩燈的proteus仿真Keil程序免費下載

    本文檔的主要內容詳細介紹的是使用單片機實現控制循環輸出彩燈的proteus仿真Keil程序免費下載。
    發表于 07-01 08:00 ?8次下載
    使用單片機<b class='flag-5'>實現</b>控制循環輸出彩燈的<b class='flag-5'>proteus</b><b class='flag-5'>仿真</b>和<b class='flag-5'>Keil</b>程序免費下載

    C51_keil匯編+proteus仿真(小白教程)

    C51_keil匯編+proteus仿真(小白教程)
    發表于 11-23 09:36 ?18次下載
    C51_<b class='flag-5'>keil</b>匯編+<b class='flag-5'>proteus</b><b class='flag-5'>仿真</b>(小白教程)

    VSPD+XCOM+Proteus仿真stm32串口通信

    傳“LED1 OFF”在串口發送過程中,打開LED2作為發送數據指示燈相關軟件使用說明STM32CubeMX+Keil+Proteus相關的安裝、使用、配置等基礎操作不再贅述,有關內容的詳細介紹如下STM32CubeMX+Keil5+P
    發表于 12-05 14:06 ?13次下載
    VSPD+XCOM+<b class='flag-5'>Proteus</b><b class='flag-5'>仿真</b>stm32<b class='flag-5'>串口</b><b class='flag-5'>通信</b>

    【HAL庫】Proteus+VSPD實現仿真stm32虛擬串口

    也可以直接keil創建固件庫工程,非必需,本實驗采用CubeMX建立工程keil5 / IAR用于編寫程序。Proteus用于繪制電路仿真
    發表于 12-06 18:36 ?41次下載
    【HAL庫】<b class='flag-5'>Proteus</b>+VSPD<b class='flag-5'>實現</b><b class='flag-5'>仿真</b>stm32虛擬<b class='flag-5'>串口</b>

    Proteuskeil聯合仿真

    keil Debug部分第六步:配置proteus,聯系keilproteus第七步:proteus
    發表于 12-29 19:50 ?26次下載
    <b class='flag-5'>Proteus</b>與<b class='flag-5'>keil</b>聯合<b class='flag-5'>仿真</b>

    基于單片機RS485-PC串口通信proteus仿真設計

    基于單片機RS485-PC串口通信proteus仿真設計包含仿真及源程序
    發表于 04-20 15:12 ?18次下載
    主站蜘蛛池模板: 扒开 浓密 毛| 伧理片午夜伧理片| 岛国片免费看| 国内卡一卡二卡三免费网站| 久久橹| 欧美日韩亚洲综合2019| 新新电影理论中文字幕| 538视频这里只有精品| 沟沟人体一区二区| 久久91精品国产91久久户| 强开乳罩摸双乳吃奶视频| 亚洲国产AV一区二区三区四区| 7723手机游戏破解版下载 | 2018国产天天弄谢| 国产成人自产拍免费视频| 久久精品国产免费中文| 日韩精品一区二区亚洲AV观看| 一色狗影院| 国产成人在线播放视频| 米奇影视999| 亚洲精品在线免费| 福利一区国产| 嗯啊…嗯np男男双性总受| 亚洲精品一区二区在线看片 | 俄罗斯性xxxx| 伦理片在线线看手机版| 午夜福到在线2019| 啊好深啊别拔就射在里面| 久久久久久九九| 我要色色网| 1788vv视频| 吃奶摸下的羞羞漫画| 精品无码久久久久久动漫| 久久精品无码一区二区日韩av| 四虎精品久久| wwwzzz日本| 免费观看激烈日板子| 亚洲视频在线免费看| 国产精品玖玖玖影院| 日本美女论坛| BL全肉多攻NP高H|