- 單片機C語言程序設計實訓100例:基于STC8051+Proteus仿真與實戰
- 彭偉
- 2128字
- 2022-05-05 20:18:24
2.2 仿真電路原理圖設計
本書案例以STC單片機為核心,在設計原理圖時,可根據當前電路復雜程度和特定要求,在Proteus提供的模板中選擇恰當的模板進行設計。打開模板時可單擊“文件/新建設計”(File/New Design)菜單,打開“創建新設計”(Create New Design)對話框,然后選擇相應模板。直接單擊工具欄上的“新文件”(New File)按鈕時,Proteus會以默認模板建立原理圖文件,調整圖樣大小或樣式時可單擊“系統/設置圖樣尺寸”(System/Set Paper Size)菜單進行設置。默認圖樣背景是灰色的,如果要改成其他背景顏色,以白色為例,可單擊菜單“模板/設置設計默認值”(Template/Set Design Default)菜單,將對話框中的“圖樣顏色”(Paper Colour)改成白色。
創建空白文件后,建議在開始后續操作之前先將pdsprj文件保存到指定位置,然后向原理圖中添加元器件。單擊模式工具欄上的元器件模式(Component Mode)圖標,對象選擇窗口上會出現設備(DEVICE)。對于空白pdsprj文件,對象選擇器中不會顯示任何元器件,這時可單擊“P”(Pick)按鈕,打開圖2-2所示的元器件選擇窗口,在元器件庫中選擇各種模擬元器件、數字芯片、微控制器、光電元器件、機電元器件、顯示元器件等。

圖2-2 元器件選擇窗口
放置在原理圖中的所有元器件旁邊都會出現<TEXT>,單擊“模板/設置設計默認值”菜單,在打開的窗口中取消勾選“顯示隱藏文本”(Show hidden text?)選項,可快速隱藏所有<TEXT>。
放置元器件后,單擊便可以選中元器件。在元器件上雙擊可打開元器件屬性窗口,而先右擊再單擊也可以打開屬性窗口,連續兩次右擊則會刪除元器件。主工具欄上還提供了在當前原理圖內塊復制(Block Copy)、塊移動(Block Move)元器件或子電路的紅綠色相間的工具按鈕。對于選取的塊電路,通過右鍵快捷菜單“復制到剪貼板”(Copy to Clipboard),可以很方便地將部分或全部電路或元器件復制到其他pdsprj文件中。
放置元器件后即可以開始連線,當光標指向連線的起始引腳時,在起始引腳上會出現紅色小方框,這時單擊,然后移動光標指向終點引腳再單擊,連線即成功完成。如果連線過程中要按自己的要求拐彎,只要在移動光標的路徑上單擊要拐彎的地方即可。移動光標時還可以配合按Ctrl鍵,這樣的連線會保持水平或垂直。
如果電路中并行的連線較多,或連接線路較長,這時可以使用模式選擇工具欄中的總線模式(Buses Mode)圖標繪制總線。繪制總線后,將起點出發的連線和到終點的連線都連接到總線上。要注意的是,這樣連線時必須給各連線加上標簽(Label)。標有同名標簽的連線被認為是連通的。加標簽時可直接在連線上右擊,選“Place Wire Label”,或先單擊模式選擇工具欄中的標簽模式(Label Mode)圖標,然后移動光標指向連線,連線上出現“×”號時單擊,在彈出的對話框中輸入標簽即可。
對于連接到總線的同樣長度與形狀的連線,可先繪制好其中一條。在繪制其他連線時,只要雙擊新的起點即可。
對于使用了總線的案例電路,連接到總線的雙方(或多方)要進行對等同名標記。如果這些標記全部用逐個添加Label的方法完成,會浪費很多時間。為實現快速標記,Proteus提供了專門的屬性賦值工具(Property Assignment Tool),操作方法如下。
按下A鍵或單擊菜單“Tools/Property Assignment Tool”,打開圖2-3所示窗口,在“字符串”文本框中輸入“NET=D#”,計數初始值默認為0,計數增量默認為1,然后單擊“確定”按鈕。

圖2-3 屬性賦值工具窗口
接下來,將光標指向連接到總線的任意一條連線,指針旁邊將出現綠色的“=”號,依次單擊這些連線,它們會被分別標上D0、D1、D2……顯然,D#中的“#”號初始值為Count,在單擊過程中不斷遞增1。
如果原理圖中與總線的連線太多,且連線距離較長,原理圖會顯得非常復雜,通過屬性賦值工具逐一單擊輸入Label的工作量也很大。例如,在“可接收串口信息的帶中英文硬字庫的80×16 LED點陣屏”案例中,為簡化連線并快速標記,使用了大量的默認連接端子(TERMINALS/DEFAULT)。假設某8個端子要賦值為R0~R7,可先選中這8個連接端子,然后打開“屬性賦值工具”窗口,輸入“NET=R#”,計數初始值與計數增量保持默認值,然后單擊“確定”按鈕,這8個端子的名稱即可實現一次性快速批量標記。如果要賦值為R8~R15,計數初始值應設為8。如果一組端子要標記為C0~C7,而顯示出來的標記為C7~C0,這時可將計數初始值設為7,然后將計數增量設為?1。當前版本的Proteus不支持根據圈選方向自動設置遞增方向。
上面討論的是連線或端子的快速命名方法。類似地,如果要同時設置一組元器件的名稱,例如,發光二極管LED0~LED7,可在圖2-3中輸入“REF=LED#”,計數初始值默認為0,計數增量默認為1,單擊“確定”按鈕后,在電路圖中逐個單擊要命名的LED即可。如果要一次性命名LED0~LED7,同樣可以先圈選所有的8只LED,再到“屬性賦值工具”窗口中輸入“REF=LED#”,計數初始值與計數增量保持默認值,最后單擊“確定”按鈕即可。
布線過程可能會遇到這樣的問題:將一個pdsprj文件中的部分元器件或子電路復制到另一文件時,粘貼進來的部分元器件無法與電路中已有的元器件連線。這是因為兩者在繪圖時設置的網格分辨率不一樣。遇到該問題時,可打開“查看”(View)菜單,選擇不同的分辨率,分辨率越小越便于繪制密集的線條。
在設計電路原理圖過程中,可能會有元器件加入pdsprj文件,但電路中沒有使用該元器件,或者曾經使用過但隨后又將其刪除了。如果要將這些元器件從文件中徹底清除,可單擊菜單“編輯/清理文件中沒有用的元器件”(Edit/Tidy)。另外,單擊“工具/材料清單”(Tools/Materials List)可以很方便地生成當前案例的所有元器件清單。
- Boost程序庫完全開發指南:深入C++”準”標準庫(第5版)
- Java程序設計(慕課版)
- Hyper-V 2016 Best Practices
- LabVIEW 2018 虛擬儀器程序設計
- Vue.js快跑:構建觸手可及的高性能Web應用
- Unity 2020 Mobile Game Development
- Instant Zepto.js
- Magento 2 Theme Design(Second Edition)
- 物聯網系統開發:從0到1構建IoT平臺(第2版)
- MySQL數據庫基礎實例教程(微課版)
- ASP.NET 3.5程序設計與項目實踐
- 零基礎學Python數據分析(升級版)
- MATLAB 2020從入門到精通
- Learning Unreal Engine Android Game Development
- Python Interviews