在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > Proteus-PIC-虛擬串口----串口調(diào)試仿真

            Proteus-PIC-虛擬串口----串口調(diào)試仿真

            作者: 時間:2016-09-05 來源:網(wǎng)絡 收藏

              1、準備工作

            本文引用地址:http://www.biyoush.com/article/201609/296524.htm

              首先,需要準備齊全的軟件:①;②MPLAB;③調(diào)試助手;④虛擬Virtual Serial Port Driver

              2、繪制簡單電路圖

              

             

              用不同的LED燈做指示燈

              注:PIC和COMP1M電路連接:用調(diào)試助手作為輸入/輸出顯示,相關連線為對應連接,即RX-RXD;TX-TXD(虛擬終端SCMR用于觀察單片機接受到的數(shù)據(jù)值,可去掉),也可以通過LED指示燈查看程序是否按照設定正常執(zhí)行。

              3、編寫相應的程序

              應用MPLAB編寫對應的程序:

              //*******************************************************

              // 工程: 檢驗-虛擬串口

              //*******************************************************

              #include

              /****************定義函數(shù)**********************/

              void init_PORT();

              void init_com();

              void interrupt ISR();

              /*******************************************************/

              __CONFIG(0X3F71);

              /******************************************************/

              /*初始化PIC單片機端口*/

              void init_PORT()

              {

              TRISC=0x80; //置RC6/TX與RC7/RX分別為UART的傳送與接收引腳

              TRISD=0x00;

              RD7=1;

              RD6=1;

              RC1=1;

              RC2=1;

              }

              //*********************************************************************

              //初始化串口

              //*********************************************************************

              void init_com()

              {

              TXSTA=0x24;//發(fā)送數(shù)據(jù)控制位配置00100100,異步方式、高波特率,波特率=Fosc/16*(SPBTG+1);

              //TXSTA寄存器的D5(TXEN)=1,啟動UART的發(fā)送功能

              RCSTA=0x90;//接收數(shù)據(jù)控制位配置10010000,設置連續(xù)接收數(shù)據(jù)

              //RCSTA寄存器的D4(CREN)=1,啟動UART的接收功能

              SPBRG=25; //設置波特率9600,系統(tǒng)時鐘4MHZ,波特率=4000000/16/(25+1)=9615(Bps)

              RCIE=1; //接收中斷使能

              TXIE=1; //發(fā)送中斷使能

              PEIE=1; //INTCON的D6(PEIE)=1,外圍中斷開關打開

              GIE=1; //總中斷開啟

              }

              //***********************************************************************************

              //中斷服務子程序

              //***********************************************************************************

              void interrupt ISR()

              {

              int RE;

              if(RCIF==1) //接收到數(shù)據(jù)產(chǎn)生中斷

              {

              RCIF=0;

              RE=RCREG;

              TXREG=RCREG; //將接收到的數(shù)據(jù)返回給上位機,檢驗接受和發(fā)送是否正常

              RD6=0; //進入到中斷,點亮LED-D2

              if( RE==0xCC)

              {

              RC1=0;//接收到0XCC,點亮LED-D3

              RC2=1;

              }

              else

              {

              RD7=0;//接收到數(shù)據(jù),且是非0XCC,點亮LED-D1

              RC1=1;

              RC2=0;//點亮LED-D4

              }

              }

              }

              /***********************************************************

              主程序

              ***********************************************************/

              void main()

              {

              init_PORT();

              init_com();

              while(1) ;

              }

              4、設置參數(shù)

             ?、貾IC單片機的晶振設置要與外部鏈接晶振設置一致,本文設置為4MHz,you see!

             ?、谠O置燒寫路徑 Program File,選擇“.hex”文件

              

             

             ?、墼O置串口參數(shù),如下圖所示:(注:此處Physical Port選擇的是COM1,其實選擇任何一個都可以,但是要配合虛擬串口Virtual Serial Port Driver中的設定,具體見下文)

              

             

              ④設置虛擬終端SCMR,參數(shù)基本不需要更改

              

             

              

             

              如果輸入的是ASCII碼----不勾選Hex Display mode

              如果輸入的是16進制-----勾選Hex Display mode

              clear screen 是清屏

              echo typed characters 是當你在虛擬終端窗口輸入字符時,輸入的字符顯示在虛擬中斷窗口內(nèi)。

             ?、菰O置虛擬串口Virtual Serial Port Driver和串口調(diào)試助手

              

             

              標記①處默認是COM1和COM2,可任意選擇,本文選取默認值,點擊旁邊按鈕后,在左側出現(xiàn)標記②,同時標記①處便變成如上圖的COM3和COM4。

              上文提到,中串口設置為COM1,根據(jù)實際情況,選取標記②中的任意一個均可,然后串口調(diào)試助手選取標記②中的另外一個,即本文為COM2。

              5、運行

              

             

              下圖為正常運行的效果圖:

              



            關鍵詞: Proteus 串口

            評論


            相關推薦

            技術專區(qū)

            關閉