找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3045|回復: 0
收起左側

Proteus8.9編譯器仿真PIC16F887A_系列002_PC機與單片機雙向串口通訊HTC仿真

[復制鏈接]
ID:371233 發(fā)表于 2020-8-21 21:46 | 顯示全部樓層 |閱讀模式
本帖最后由 kaillen 于 2020-8-21 22:56 編輯

一,打開文件(可以隨文下載放置在文檔中打開)。(如下圖1所示)
1.png
圖1

二,調整原理圖大小,適合可視,另存工程文件。(如下圖2,3,4所示)
2.png
圖2

3.png
圖3

4.png
圖4

三,點擊Source Code標簽。(如下圖5所示)
5.png
圖5

四,編輯main.c Proteus8.9 VSM Studio PIC編譯器仿真PIC16F887A_系列002_PC機與單片機雙向串口通訊HTC仿真 (如下圖6所示)
6.png
圖6


五,Main.c 代碼:
/* Main.c file generated by New Project wizard
*
* Created:   周五 7月 31 2020
* Processor: PIC16F630
* Compiler:  HI-TECH C for PIC10/12/16
*/

#include "muart.h"

extern u8 RecStr[],  R[], rec_OK;


void main() {
        ADCON1 = 6;                   //RA端口設為數(shù)字端口
    TRISA5 = 1;
        TRISB=0x00;                 //設置B口方向全為輸出
        TRISC=0xF0;                 //設置C口方向全為輸出
        SPBRG=0x19;                  //設置波特率為9600BPS
        TXSTA=0x25;                 //使能串口發(fā)送,選擇高速波特率
        RCSTA=0x90;                 //使能串口工作,連續(xù)接收
        RCIE=0x01;                   //使能接收中斷
        GIE=0x01;                    //開放全局中斷
        PEIE=0x01;                   //使能外部中斷
        while(1)                    //等待中斷
        {
                if(rec_OK == 1) {
                        Show_Dgt();
                        mprint(RecStr);
                        mprint("\r\n");
                        mZero(RecStr);
                        for(u8 i= 0; i< 10; i++) __delay_ms(100);
                        rec_OK= 0;
                }
                else{
                        if(Key_DOWN()) {
                                __delay_ms(10);
                                if(Key_DOWN()) {
                                        mprint(w);
                                        mprint("\r\n");
                                }
                        }
                        mprint("Good Luck!");
                        mprint("\r\n");
                        for(u8 i= 0; i< 2; i++) __delay_ms(200);                        
                }
        }
  }



Muart.h:

/* Main.c file generated by New Project wizard
*Coder:       Ziegler Yin
* Created:   周日 5月 3 2020
* Processor: AT89C51RD2
* Compiler:  Keil for 8051
*/

#ifndef __MUART_H_
#define __MUART_H_


#include <htc.h>
#include <string.h>

#define u8 unsigned char
#define Buf_Max 80
#define Key_DOWN() (RA5== 0)


const u8 p[] = "$GPGGA", w[]= "PIC Serial Port Send codes.";
const u8 DSY_CODE[]= {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x01};  //= {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x01};

void interrupt  Serial_Port_Recv_ISR();
int uiptrn(char* s[]);
void Show_Dgt();
void WrtChar(u8 Ch);
void mprint(u8 *s);
void mZero(u8 *s);
u8* gtnFld(u8* s, u8 chr, u8 n);

#endif



六,點擊構建工程按鈕,編譯工程。(如下圖7所示)
7.png
圖7

七,點擊窗口左下方仿真按鈕,可見虛擬Serial Port顯示。 (如下圖8,9,10所示)
8.png
圖8

9.png
圖9
10.png
圖10


八,選擇release,點擊構建工程按鈕,編譯工程生成Hex文件。(如下圖11所示)

11.png
圖11


附件Proteus8.9 VSM Studio PIC編譯器仿真PIC16F887A_系列002_PC機與單片機雙向串口通訊HTC仿真在已安裝Proteus8.9的計算機文件夾中打開即可
需要進一步了解,請加入QQ群:976235464


PC機與單片機雙向串口通訊仿真25pt.rar

136.46 KB, 下載次數(shù): 25, 下載積分: 黑幣 -5

評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表