找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2230|回复: 0
收起左侧

Proteus8.9编译器仿真PIC16F887A_系列002_PC机与单片机双向串口通讯HTC仿真

[复制链接]
ID:371233 发表于 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端口设为数字端口
    TRISA5 = 1;
        TRISB=0x00;                 //设置B口方向全为输出
        TRISC=0xF0;                 //设置C口方向全为输出
        SPBRG=0x19;                  //设置波特率为9600BPS
        TXSTA=0x25;                 //使能串口发送,选择高速波特率
        RCSTA=0x90;                 //使能串口工作,连续接收
        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, 下载次数: 25, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表