Protues使用說明及Protues與Keil聯合仿真實現點亮小燈和流水燈

目錄

1Protues介紹及新建工程

1.1進入軟件

1.2文件創建

1.3默認選項

1.5設計面板

1.6添加元器件

1.7終端模式

1.8激勵源模式

1.9探針模式

1.10儀表

1.11二維直線

1.12字符

2 Protues電路原理圖仿真

2.1 220V交流電轉5V直流電穩壓電路仿真原理圖

2.1.1 仿真原理圖分析

2.1.2 仿真結果分析

2.2 仿真過程中示波器的調出

3 Protues和Keil聯合仿真實現點亮小燈和流水燈

3.0 燒錄程序實現

3.0.1 Keil生成程序

3.0.2 Protues燒錄程序

3.1 點亮一個小燈

3.1.1 電路原理圖

3.1.2 小燈閃爍控制程序(高電平點亮小燈)

3.2 流水燈

3.2.1電路原理圖

3.2.2控制程序(共陰極接法)


文章概述

本文系統介紹了Proteus仿真軟件的使用方法,包括:1. 工程創建與界面操作,詳細說明了元器件添加、終端模式、激勵源模式等基本功能;2. 220V交流轉5V直流穩壓電路的仿真實現,分析原理圖設計及示波器調試技巧;3. Proteus與Keil聯合仿真應用,通過實例演示了點亮單個LED和實現流水燈效果的全過程。文章重點講解了Keil程序編寫、HEX文件生成、Proteus程序燒錄等關鍵步驟,并提供了共陰極/共陽極兩種接法的電路原理圖和完整控制程序代碼。

1Protues介紹及新建工程

1.1進入軟件

雙擊軟件快捷鍵——>點擊:新建工程

1.2文件創建

依次:

填寫:工程名稱——>選擇:工程路徑——>選擇:新工程

1.3默認選項

DEFAULT——>Next

不創建PCB布板設計——>Next

沒有固件項目——>Next

原理圖——>Finish

1.5設計面板

設計界面如上圖所示,主要由菜單欄、工具欄、輸入模式選擇欄、選擇目錄、仿真控制按鍵和設計面板組成。不同欄模塊又可以進行細分,如上圖所示。

1.6添加元器件

點擊P(進入器件選擇界面)

1:器件名稱——>2:對應器件——>3:器件原理圖——>4:PCB封裝圖——>確認

常用元器件對應縮寫表

類別

縮寫/關鍵詞

中文名稱

說明/備注

電源類

BATTERY

電池/直流電源

提供直流電壓源

POWER

電源符號

用于供電節點

GROUND

接地符號

電阻類

RES / RESISTOR

電阻

固定阻值電阻

POT / POT-LIN

可調電阻/電位器

三端可調電阻

RESPACK

排阻

多個電阻封裝在一起

電容類

CAP / CAPACITOR

無極性電容

普通電容

CAPACITOR POL

有極性電容

電解電容

ELECTRO

電解電容

大容量電容

CAPVAR

可調電容

用于調諧電路

電感類

INDUCTOR

電感

普通電感

INDUCTOR IRON

帶鐵芯電感

低頻大電感

INDUCTOR3

可調電感

可調磁芯電感

晶體類

CRYSTAL

晶振

提供時鐘信號

二極管類

DIODE

普通二極管

整流/開關用

ZENER

穩壓二極管

電壓穩壓

DIODE SCHOTTKY

肖特基二極管

高速開關

DIODE VARACTOR

變容二極管

用于調諧電路

三極管類

NPN / PNP

NPN/PNP三極管

普通三極管

MOSFET

MOS管

場效應管

JFET N / JFET P

N溝道/P溝道結型場效應管

低噪聲放大

邏輯門

AND / OR / NOT

與門 / 或門 / 非門

基本邏輯門

NAND / NOR

與非門 / 或非門

組合邏輯門

顯示類

LED

發光二極管

指示燈

DPY_7-SEG

7段數碼管

顯示數字

DPY_7-SEG_DP

帶小數點7段數碼管

顯示浮點數

LM016L

1602液晶

2行16字符LCD

開關與按鈕

SWITCH

開關

普通開關

SW-SPST

單刀單擲開關

通斷開關

SW-DPDT

雙刀雙擲開關

切換電路

SW-PB / BUTTON

按鈕

手動觸發

電機類

MOTOR

直流電機

普通電機

MOTOR AC

交流電機

AC電機

MOTOR SERVO

伺服電機

可控角度

傳感器類

MICROPHONE

麥克風

聲音輸入

THERMISTOR

熱敏電阻

溫度傳感

PHOTO

光敏二極管

感光元件

繼電器類

RELAY-DPDT

雙刀雙擲繼電器

控制電路通斷

變壓器類

TRANS1

普通變壓器

電壓變換

TRANS2

可調變壓器

輸出可調

調試與虛擬儀器

VTERM

虛擬串口終端

串口通信調試

LOGIC ANALYSER

邏輯分析儀

數字信號調試

VOLTMETER / AMMETER

電壓表 / 電流表

實時測量電路參數

器件可移動狀態

器件放置好狀態

雙擊器件:編輯器件內容

1.7終端模式

1:終端模式圖標 2:終端模式包含內容 3:終端模式內容對應的圖標

“終端模式”(Terminal Mode)提供了一組非常常用的電路節點標識符號,用于表示電源、地、輸入/輸出端口、信號流向等。

名稱

含義

DEFAULT

默認終端,無特殊定義,通常用于自定義標簽或連接點。

INPUT

輸入端口,表示信號從外部進入電路(如傳感器輸入)。

OUTPUT

輸出端口,表示信號從電路輸出到外部(如LED、電機)。

BIDIR

雙向端口,既可輸入也可輸出(如I2C、UART引腳)。

POWER

電源正極(如 +5V、+3.3V),用于給電路供電。

GROUND

地線(GND),電路參考點,所有電壓相對它測量。

CHASSIS

機殼地,用于接地保護,常見于金屬外殼設備。

RETURN

返回信號線,常用于模擬電路或差分信號回流路徑。

DYNAMIC

動態終端,用于仿真中臨時變化的節點(較少用)。

BUS

總線終端,用于連接多條信號線(如數據總線 D0-D7)。

TESTPOINT

測試點,便于仿真時測量電壓、電流或波形。

NC

未連接(No Connect),明確標識某引腳不連接任何信號。

1.8激勵源模式

“激勵模式”(Generator Mode)用于向電路提供各種仿真信號源

名稱

含義說明

DC

直流電壓源,輸出恒定電壓(如 5V、3.3V)。

SINE

正弦波發生器,可設置頻率、幅度、相位等。

PULSE

脈沖信號源,方波或矩形波,可設置占空比、周期等。

EXP

指數信號源,產生指數上升或下降波形。

SFFM

單頻調頻信號源(Single Frequency FM),用于模擬調制信號。

PWLIN

分段線性信號源,通過多個時間點定義任意波形。

FILE

從外部文件讀取波形數據(如CSV或WAV文件)。

AUDIO

音頻信號源,可導入WAV文件作為輸入信號。

RANDOM

隨機噪聲信號源,用于測試電路抗干擾能力。

DSTATE

數字狀態信號源,輸出高/低電平(邏輯0/1)。

DEDGE

數字邊沿信號源,產生單個上升沿或下降沿。

DPULSE

數字脈沖信號源,用于測試數字電路響應。

DCLOCK

數字時鐘信號源,產生周期性方波(如1kHz時鐘)。

DPATTERN

數字模式信號源,可自定義多位數字序列(如101101)。

SCRIPTABLE

可編程信號源,使用腳本語言(如Lua)自定義復雜波形。

1.9探針模式

1:探針模式圖標 2:探針模式包含內容 3:探針模式內容對應的圖標

探針模式包含電壓探針、電流探針和信號探針

1.10儀表

1:虛擬儀表圖標 2:虛擬儀表包含內容 3:虛擬儀表內容對應的圖標

虛擬儀表(Virtual Instruments)是一組可交互的軟件仿真工具,用于在電路仿真過程中實時測量、生成或調試信號。

名稱

功能

用途

示波器(Oscilloscope)

顯示模擬信號的電壓-時間波形,支持多通道(如雙蹤示波器)。

觀察信號波形、測量頻率/幅值、檢查噪聲或失真。

邏輯分析儀

(Logic Analyser)

捕獲并顯示數字信號的高低電平狀態(0/1),支持多通道(通常16或更多)。

調試數字電路時序(如SPI、I2C、UART通信)。

計數器/定時器(Counter Timer)

測量信號的頻率、周期、脈沖寬度或作為事件計數器。

分析時鐘信號、PWM波形參數。

虛擬終端

(Virtual Terminal)

模擬串口終端(如UART),支持ASCII碼收發。

調試單片機的串口通信(如發送AT指令或接收傳感器數據)。

SPI調試器

(SPI Debugger)

監控SPI總線通信(MOSI、MISO、SCK、SS信號),解碼數據幀。

驗證SPI Flash、傳感器等設備的通信協議。

I2C調試器

(I2C Debugger)

捕獲I2C總線的起始/停止條件、地址和數據幀。

調試EEPROM、RTC等I2C設備。

信號發生器

(Signal Generator)

輸出可調的正弦波、方波、三角波等模擬信號。

測試放大器、濾波器頻率響應。

模式發生器(Pattern Generator)

生成自定義數字信號序列(如8位并行數據)。

模擬數字輸入(如鍵盤掃描信號)。

直流電壓表(DC Voltmeter)

測量電路中某點的直流電壓值。

檢查電源電壓、分壓電路輸出。

直流電流表

(DC Ammeter)

測量直流電流(需串聯在電路中)。

驗證功耗或負載電流。

交流電壓表

(AC Voltmeter)

測量交流信號的有效值(RMS)電壓。

檢查交流電源或信號幅度。

交流電流表

(AC Ammeter)

測量交流電流的RMS值。

分析交流負載(如電機)的電流。

功率計

(Wattmeter)

計算瞬時功率(P=VI)及能量消耗。

評估電路效率或功耗。

1.11二維直線

1:二維直線圖標 2:二維直線包含內容 3:二維直線內容對應的圖

1.12字符

雙擊字符模式

依次填寫一下內容

1:文本字符串內容? 2:位置? 3:變量類型 4:字體? 5:字高

2 Protues電路原理圖仿真

2.1 220V交流電轉5V直流電穩壓電路仿真原理圖

2.1.1 仿真原理圖分析

如上圖所示,220V交流電轉5V直流穩壓電路實現220V交流轉換為5V直流電的功能,整個電路由220V交流輸入、變壓器、整流橋和線性電源電路組成。其中220V交流電作為電路輸入,變壓器實現降壓,整流橋實現整流、電容C1、C2、C3和C4實現濾波功能,7805組成線性電源電路實現5V電壓的輸出。

2.1.2 仿真結果分析

如上圖所示,示波器為四通道實時顯示輸入、整流、濾波和輸出的波形變化,黃色線表示輸入波形、藍色線表示整流波形、紅色線表示濾波波形和綠色表示輸出波形。

2.2 仿真過程中示波器的調出

仿真過程中會出現示波器界面不顯示的情況,解決方法如下:

點擊仿真開始:此時未出現示波器界面

依次點擊:調試——>3.Digital Oscilloscope

出現示波器界面

3 Protues和Keil聯合仿真

Protues和Keil聯合仿真以點亮一個小燈和流水燈為例進行說明,仿真使用Protues進行仿真電路的繪制,使用Keil進行控制程序的編寫,然后通過Protues和Keil聯合仿真實現單個小燈閃爍和流水燈的功能。

3.0 燒錄程序實現

3.0.1 Keil生成程序

新建項目:項目——>新uVision項目

命名及保存:選擇文件夾——>命名——>保存

選擇芯片過程如下圖所示

Legacy Device…——>芯片型號——>選定芯片型號——>ok

如果沒有想用芯片,解決方法:

1官網下載數據包(速度慢): C51 Version 9.61 Evaluation Software Request

2以下載好的數據包(直接安裝)(速度快)https://download.csdn.net/download/XU157303764/91664454

選擇是否都可以

新建控制程序文件

Source Group(鼠標右鍵)——>.C——>命名——>add

編寫程序

設置編譯文件

點擊魔術棒——>Output——>勾選Create HEX File——>ok

.HEX文件生成

重構——>成功

3.0.2 Protues燒錄程序

雙擊單片機

選擇程序文件按鈕

找到程序——>選中——>打開

確定

運行仿真

3.1 點亮一個小燈

3.1.1 電路原理圖

高電平點亮小燈

如上圖所示,流水燈仿真電路原理圖主要由51單片機、晶振電路、復位電路和LED燈點亮電路組成,其中LED燈為高電平點亮,低電平熄滅,當P1.0為高電平時LED點亮,當P1.0為低電平時LED熄滅。

低電平點亮小燈

如上圖所示,流水燈仿真電路原理圖主要由51單片機、晶振電路、復位電路和LED燈點亮電路組成,其中LED燈為低電平點亮,高電平熄滅,當P1.0為高電平時LED熄滅,當P1.0為低電平時LED點亮。

3.1.2 小燈閃爍控制程序(高電平點亮小燈)

控制程序主要包含頭文件、延時函數和主函數,控制程序如下所示:

//小燈閃爍
#include <reg52.h>//庫文件
#define uint unsigned int//預處理宏命令 進行短命名
#define uchar unsigned char
sbit L1=P1^0;//將P1賦值給L1
void delay(uint n)//延時函數ms/
{uchar i;uint j;for(j=0;j<n;j++)for(i=0;i<123;i++);
}
void flash()//LED燈亮2s后熄滅1秒
{L1=1;//LED亮delay(2000);//2秒L1=0;//LED滅delay(1000);//1秒
}
//主函數實現死循環
void main (void)
{while(1){flash();}
}

3.2 流水燈

3.2.1電路原理圖

流水燈共陰極接法

如上圖所示,流水燈仿真電路原理圖主要由51單片機、晶振電路、復位電路和流水燈電路組成,其中流水燈電路中的8個LED燈采用共陰極接法,即當P1.n(n=1、2、3…5、6、7)管腳為高電平時LED燈點亮,初始化階段P1.n全部置于高電平即上電后所有亮燈全部點亮。

流水燈共陽極接法

如上圖所示,流水燈仿真電路原理圖主要由51單片機、晶振電路、復位電路和流水燈電路組成,其中流水燈電路中的8個LED燈采用共陽極接法,即當P1.n(n=1、2、3…5、6、7)管腳為低電平時LED燈點亮,初始化階段P1.n全部置于高電平即上電后所有亮燈全部熄滅。

3.2.2控制程序(共陰極接法)

控制程序主要包含頭文件、延時函數和主函數,控制程序如下所示:

//流水燈(8個)
#include <reg52.h>//庫文件
#define uchar unsigned char//預處理宏 進行短命名
#define uint unsigned int
sbit L1=P1^0;//將P1賦值給變Ln(1、2、3…7、8)
sbit L2=P1^1;
sbit L3=P1^2;
sbit L4=P1^3;
sbit L5=P1^4;
sbit L6=P1^5;
sbit L7=P1^6;
sbit L8=P1^7;
void delay(uint n)//延時函數ms
{uchar i;uint j;for(j=0;j<n;j++)for(i=0;i<500;i++);
}void flash1()//LED燈亮1s后熄滅
{L1=1;//LED亮delay(1000);L1=0;//LED滅
}void flash2()
{L2=1;delay(1000);L2=0;
}void flash3()
{L3=1;delay(1000);L3=0;
}void flash4()
{L4=1;delay(1000);L4=0;
}void flash5()
{L5=1;delay(1000);L5=0;
}void flash6()
{L6=1;delay(1000);L6=0;
}void flash7()
{L7=1;delay(1000);L7=0;
}void flash8()
{L8=1;delay(1000);L8=0;
}//實現流水燈功能
void main (void)
{while(1){flash1();flash2();flash3();flash4();flash5();flash6();flash7();flash8();flash8();flash7();flash6();flash5();flash4();flash3();flash2();flash1();}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/96683.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/96683.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/96683.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux PCI 子系統:工作原理與實現機制深度分析

Linux PCI 子系統&#xff1a;工作原理與實現機制深度分析 1. Linux PCI 子系統基礎概念 1.1 PCI/PCIe 基礎概念回顧 總線拓撲&#xff1a; PCI/PCIe 系統是一個樹形結構。CPU 連接到 Root Complex (RC)&#xff0c;RC 連接至 PCIe 交換機 (Switch) 和 PCIe 端點設備 (Endpoint…

RabbitMQ 全面指南:架構解析與案例實戰

目錄一、RabbitMQ 簡介1.1 什么是 RabbitMQ1.2 RabbitMQ 的核心組件1.3 RabbitMQ 的應用場景二、環境搭建2.1 安裝 RabbitMQ2.2 安裝 Erlang2.3 配置 RabbitMQ三、RabbitMQ 核心概念與工作原理3.1 消息模型3.2 交換機類型3.3 隊列特性3.4 消息確認機制四、Spring Boot 集成 Rab…

6.2 el-menu

一、 <el-menu>: 菜單組件&#xff0c;定義了側邊欄內部的具體導航項、層級結構和交互行為。<el-container><!-- 側邊欄容器 --><el-aside width"200px"><!-- 菜單內容 --><el-menu default-active"1" class"el-men…

Windows 筆記本實現僅關屏仍工作:一種更便捷的 “偽熄屏” 方案

在使用 Windows 筆記本作為臨時服務器或需要后臺持續運行程序時&#xff0c;我們常面臨一個需求&#xff1a;關閉屏幕以節省電量或減少光污染&#xff0c;同時保持系統正常工作。然而&#xff0c;網絡上流傳的諸多方法往往存在局限&#xff0c;要么無法兼顧 “熄屏” 與 “工作…

Linux應急響應一般思路(二)

進程排查進程(Process)是計算機中的程序關于某數據集合上的一次運行活動&#xff0c;是系統進行資源分配和調度的基本單位&#xff0c;是操作系統結構的基礎無論是在Windows系統還是Linux系統中&#xff0c;主機在感染惡意程序后&#xff0c;惡意程序都會啟動相應的進程&#x…

基于 SkyWalking + Elasticsearch + Grafana 的可落地調用鏈監控方案

這個方案成熟穩定、社區活躍、部署相對簡單,非常適合中小型團隊作為第一代調用鏈系統落地。 一、核心組件選型與角色 組件 版本建議 角色 優點 Apache SkyWalking v9.x+ 核心平臺 (采集、分析、存儲、UI) 國產優秀,Java Agent無侵入接入,功能全面,性能損耗低 Elasticsearc…

APP逆向——某站device-id參數

免責聲明本博客所涉及的 爬蟲技術、逆向分析方法 僅用于 學習、研究和技術交流。文中所有示例代碼、工具和方法&#xff0c;均不得用于以下行為&#xff1a;未經授權的數據采集侵犯他人知識產權干擾或破壞正常業務系統任何違反國家法律法規的行為因讀者將本教程內容用于 非法用…

C/C++數據結構之循環鏈表

概述循環鏈表本質上也是一個單向或雙向鏈表&#xff0c;但其最后一個節點的指針并不指向NULL&#xff0c;而是指向鏈表的第一個節點&#xff0c;從而形成一個閉合的環。這種結構使得在遍歷鏈表時&#xff0c;可以從任意一個節點開始&#xff0c;并最終回到起始點。音樂播放軟件…

Mongodb的教程

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言 一、mongodb是什么&#xff1f; 二、mongodb的下載與安裝教程 三、mongodb的常見操作 總結 前言 在當今數據驅動的世界中&#xff0c;數據庫技術是構建高效…

MySQL視圖有什么用?一文讀懂虛擬表的六大核心價值

引言 在數據庫開發中&#xff0c;你是否遇到過這樣的困境&#xff1a;業務人員需要查看復雜關聯數據卻難以理解多表JOIN&#xff0c;或需要限制某些用戶只能訪問特定字段&#xff1f;MySQL視圖正是為此設計的"數據透視鏡"。本文將通過官方定義、典型場景和最佳實踐&a…

ubuntu24.04 frps服務器端自動啟動設置【2025-08-20】

Ubuntu 24.04采用systemd作為默認的init系統&#xff0c;我們可以通過創建systemd服務單元文件來實現開機自啟動。以下是具體實施步驟&#xff1a;創建服務文件使用文本編輯器創建服務配置文件&#xff1a;sudo nano /etc/systemd/system/frps.service編寫服務配置內容在文件中…

數據結構與算法-字符串、數組和廣義表(String Array List)

3 字符串、數組和廣義表&#xff08;String Array List&#xff09; 3.1 字符串&#xff08;String&#xff09; 3.1.1 串的順序存儲 a. 定長順序&#xff1a; #define MAXLEN 255 // 串的定長順序存儲結構 typedef struct {char ch[MAXLEN 1]; // 字符串數據&#xff0c;…

【網絡運維】Shell 腳本編程:if 條件語句

Shell 腳本編程&#xff1a;if 條件語句 if 條件語句概述 if 條件語句是 Linux Shell 腳本編程中最基礎且使用頻率最高的控制結構之一&#xff0c;其語義類似于自然語言中的“如果…那么…”。熟練掌握 if 語句的用法&#xff0c;是成為一名合格運維工程師的基本要求。 if 語句…

浮點型的位結構和表示的值

位結構float 各部分的含義 符號位&#xff1a; 為 0 表示正數&#xff0c;為 1 表示負數。 指數部分&#xff1a; 指數部分是一個移碼。指數部分有 8 位&#xff0c;首先當成無符號整型&#xff0c;則值域是 [0, 255] .因為是移碼&#xff0c;所以 移碼值 無符號整型值 - 127 …

39_基于深度學習的行人摔倒檢測識別系統(yolo11、yolov8、yolov5+UI界面+Python項目源碼+模型+標注好的數據集)

目錄 項目介紹&#x1f3af; 功能展示&#x1f31f; 一、環境安裝&#x1f386; 環境配置說明&#x1f4d8; 安裝指南說明&#x1f3a5; 環境安裝教學視頻 &#x1f31f; 二、數據集介紹&#x1f31f; 三、系統環境&#xff08;框架/依賴庫&#xff09;說明&#x1f9f1; 系統環…

【系統分析師】高分論文:論企業數據治理

【摘要】 2022年3月&#xff0c;我作為系統分析師及IT 負責人&#xff0c;參加了我司的企業級數據平臺建設項目&#xff0c;該項目作為我司在企業數字化轉型過程中重要的里程碑&#xff0c;在我司數字化運營中扮演著關鍵的角色。該項目主要包含企業級數據倉庫&#xff0c;數據治…

Seata原理分析

簡介Apache Seata? (incubating) 是什么&#xff1f;Seata 是一款開源的分布式事務解決方案&#xff0c;致力于在微服務架構下提供高性能和簡單易用的分布式事務服務。在 Seata 開源之前&#xff0c;其內部版本在阿里系內部一直扮演著應用架構層數據一致性的中間件角色&#x…

力扣 30 天 JavaScript 挑戰 第38天 (第九題)學習了 語句表達式的區別 高級函數 promise async await 節流

開始答題 版本一&#xff1a; /*** param {Function} fn* return {Function}*/ var once function(fn) {let runCount0return function(...args){runCountrunCount 1 ? return fn(...args) :return undefined} };/*** let fn (a,b,c) > (a b c)* let onceFn once(fn)…

25年八月份寧德時代社招部分崗位入職Verify測評演繹數字推理SHL題型變更、題庫使用說明

開始測評前&#xff0c;請注意:1、挑選一個安靜的環境&#xff0c;選擇一臺網速正常且無任何網絡端口限制的電腦進行測評;2、移動設備無法兼容遠程監考功能&#xff0c;請使用配備有可正常運作的攝像頭的臺式機或筆記本電腦&#xff0c;建議使用最新版本的Chrome&#xff0c;Fi…

【KO】前端面試四

以下是剩余題目的詳細解答,結合前端知識體系和實際應用場景展開: 91. JS 放在 head 里和放在 body 里有什么區別? 對比維度 放在 <head> 放在 <body> 加載阻塞性 會阻塞頁面渲染,需等待 JS 下載/執行完成后,才繼續渲染頁面 一般放在 </body> 前,頁面渲…