SPCE061A單片機(jī)硬件結(jié)構(gòu) 從第一章中SPCE061A的結(jié)構(gòu)圖可以看出SPCE061A的結(jié)構(gòu)比較簡單,在芯片內(nèi)部集成了ICE仿真電路接口、FLASH程序存儲(chǔ)器、SRAM數(shù)據(jù)存儲(chǔ)器、通用IO端口、定時(shí)器計(jì)數(shù)器、中斷控制、CPU時(shí)鐘、模-數(shù)轉(zhuǎn)換器AD、DAC輸出、通用異步串行輸入輸出接口、串行輸入輸出接口、低電壓監(jiān)測(cè)低電壓復(fù)位等若干部分。各個(gè)部分之間存在著直接或間接的聯(lián)系,在本章中我們將詳細(xì)的介紹每個(gè)部分結(jié)構(gòu)及應(yīng)用。2.1 μ’nSP™的內(nèi)核結(jié)構(gòu)μ’nSP™的內(nèi)核如0所示其結(jié)構(gòu)。它由總線、算術(shù)邏輯運(yùn)算單元、寄存器組、中斷系統(tǒng)及堆棧等部分組成,右邊文字為各部分簡要說明。算術(shù)邏輯運(yùn)算單元ALUμ’nSP™的ALU在運(yùn)算能力上很有特色,它不僅能做16位基本的算術(shù)邏輯運(yùn)算,也能做帶移位操作的16位算術(shù)邏輯運(yùn)算,同時(shí)還能做用于數(shù)字信號(hào)處理的16位×16位的乘法運(yùn)算和內(nèi)積運(yùn)算。1. 16位算術(shù)邏輯運(yùn)算不失一般性,μ’nSP™與大多數(shù)CPU類似,提供了基本的算術(shù)運(yùn)算與邏輯操作指令,加、減、比較、取補(bǔ)、異或、或、與、測(cè)試、寫入、讀出等16位算術(shù)邏輯運(yùn)算及數(shù)據(jù)傳送操作。2. 帶移位操作的16位算邏運(yùn)算對(duì)圖2.1稍加留意,就會(huì)發(fā)現(xiàn)μ’nSP™的ALU前面串接有一個(gè)移位器SHIFTER,也就是說,操作數(shù)在經(jīng)過ALU的算邏操作前可先進(jìn)行移位處理,然后再經(jīng)ALU完成算邏運(yùn)算操作。移位包括:算術(shù)右移、邏輯左移、邏輯右移、循環(huán)左移以及循環(huán)右移。所以,μ’nSP™的指令系統(tǒng)里專有一組復(fù)合式的‘移位算邏操作’指令;此一條指令完成移位和算術(shù)邏輯操作兩項(xiàng)功能。程序設(shè)計(jì)者可利用這些復(fù)合式的指令,撰寫更精簡的程序代碼,進(jìn)而增加程序代碼密集度 (Code Density)。在微控制器應(yīng)用中,如何增加程序代碼密集度是非常重要的議題;提高程序代碼密集度意味著:減少程序代碼的大小,進(jìn)而減少ROM或FLASH的需求,以此降低系統(tǒng)成本與增加執(zhí)行效能。
標(biāo)簽: SPCE 061A 061 單片機(jī)
上傳時(shí)間: 2013-10-10
上傳用戶:星仔
本文列舉了單片機(jī)在熱處理爐中的一個(gè)實(shí)際應(yīng)用,并對(duì)設(shè)計(jì)的WDY-1 溫控儀的組成及主要電路的作用進(jìn)行了詳細(xì)的介紹。關(guān)鍵詞:單片機(jī);控制;溫度。單片微型計(jì)算機(jī)是隨著超大規(guī)模集成電路技術(shù)的發(fā)展而誕生的,由于它具有體積小、功能強(qiáng)、性價(jià)比高等特點(diǎn),所以廣泛應(yīng)用于電子儀表、家用電器、節(jié)能裝置、軍事裝置、機(jī)器人、工業(yè)控制等諸多領(lǐng)域,使產(chǎn)品小型化、智能化,既提高了產(chǎn)品的功能和質(zhì)量,又降低了成本,簡化了設(shè)計(jì)。本文主要介紹單片機(jī)在溫度控制中的應(yīng)用。東風(fēng)汽車公司變速箱廠熱工科無罐爐,主要用于變速箱齒輪、軸類零件的滲碳熱處理工序。原來用XWB 型自動(dòng)平衡記錄儀控制溫度,二位式控溫方式,使得具有大慣量性的無罐爐溫度波動(dòng)大,誤差達(dá)±10℃左右。并且儀表使用環(huán)境教惡劣,油煙、灰塵常使儀表的機(jī)械傳動(dòng)部分卡死,不但維修工作量大,而且產(chǎn)品質(zhì)量不易保證。隨著國民經(jīng)濟(jì)的發(fā)展,汽車工業(yè)不斷壯大,產(chǎn)品市場(chǎng)競(jìng)爭激烈,優(yōu)勝劣汰。由此,我們經(jīng)過認(rèn)真的調(diào)研和設(shè)計(jì),尋求了一種更好的控溫方法,亦即本文介紹的WDY-1 溫控儀取代XWB 型自動(dòng)平衡記錄儀。
標(biāo)簽: 單片機(jī) 中的應(yīng)用 溫度控制
上傳時(shí)間: 2013-10-13
上傳用戶:panpanpan
單片機(jī)開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變?yōu)?CPU可以執(zhí)行的機(jī)器碼有兩種方法,一種是手工匯編,另一種是機(jī)器匯編,目前已極少使用手工匯編的方法了。機(jī)器匯編是通過匯編軟件將源程序變?yōu)闄C(jī)器碼,用于MCS-51 單片機(jī)的匯編軟件有早期的A51,隨著單片機(jī)開發(fā)技術(shù)的不斷發(fā)展,從普遍使用匯編語言到逐漸使用高級(jí)語言開發(fā),單片機(jī)的開發(fā)軟件也在不斷發(fā)展,Keil 軟件是目前最流行開發(fā)MCS-51 系列單片機(jī)的軟件,這從近年來各仿真機(jī)廠商紛紛宣布全面支持Keil 即可看出。Keil 提供了包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境(uVision)將這些部份組合在一起。運(yùn)行Keil 軟件需要Pentium 或以上的CPU,16MB或更多RAM、20M 以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統(tǒng)。掌握這一軟件的使用對(duì)于使用51 系列單片機(jī)的愛好者來說是十分必要的,如果你使用C 語言編程,那么Keil 幾乎就是你的不二之選(目前在國內(nèi)你只能買到該軟件、而你買的仿真機(jī)也很可能只支持該軟件),即使不使用C 語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會(huì)令你事半功倍。我們將通過一些實(shí)例來學(xué)習(xí) Keil 軟件的使用,在這一部份我們將學(xué)習(xí)如何輸入源程序,建立工程、對(duì)工程進(jìn)行詳細(xì)的設(shè)置,以及如何將源程序變?yōu)槟繕?biāo)代碼。圖1 所示電路圖使用89C51 單片機(jī)作為主芯片,這種單片機(jī)性屬于MCS-51 系列,其內(nèi)部有4K 的FLASH ROM,可以反復(fù)擦寫,非常適于做實(shí)驗(yàn)。89C51 的P1 引腳上接8 個(gè)發(fā)光二極管,P3.2~P3.4 引腳上接4 個(gè)按鈕開關(guān),我們的第一個(gè)任務(wù)是讓接在P1 引腳上的發(fā)光二極管依次循環(huán)點(diǎn)亮。
上傳時(shí)間: 2013-11-06
上傳用戶:aesuser
51單片機(jī)動(dòng)態(tài)LED顯示電路編程實(shí)例:上一節(jié)我們講述了單只LED與單片機(jī)的接口電路及編程實(shí)例,目的在于讓初學(xué)者了解LED在單片機(jī)中的應(yīng)用原理,單只LED顯示在實(shí)際應(yīng)用中并無多大用途,一般都是多位的LED顯示。現(xiàn)在我們作進(jìn)一步學(xué)習(xí),我們要講解的是8位LED的顯示原理及實(shí)際的編程方法。這里我們沒有采用多I/O口的8051系列單片機(jī),而是采用了完全兼容C51指令系統(tǒng)的質(zhì)優(yōu)價(jià)廉的AT89C2051單片機(jī),它的軟件編程與C51完全一致。 在多數(shù)的應(yīng)用場(chǎng)合中,我們并不希望使用多I/O端口的單片機(jī),原則上是使用盡量少引腳的器件。在沒有富余端口的情況下,怎樣通過擴(kuò)展電路達(dá)到預(yù)期的目的呢?我們希望通過此例使設(shè)計(jì)人員在實(shí)際應(yīng)用中了解一點(diǎn)電路擴(kuò)展的原理,對(duì)實(shí)際的應(yīng)用有所幫助。 此電路中,74LS273用于驅(qū)動(dòng)LED的8位段碼,8位LED相應(yīng)的"a"—"g"段連在一起,它們的公共端分別連至由74LS138(點(diǎn)擊芯片型號(hào)可瀏覽其詳細(xì)的技術(shù)手冊(cè))譯碼選通后經(jīng)74LS04反相驅(qū)動(dòng)的輸出端。這樣當(dāng)選通某一位LED時(shí),相應(yīng)的地址線(74LS04輸出端)輸出的是高電平,所以我們的LED選用共陽LED數(shù)碼管。 動(dòng)態(tài)掃描的頻率有一定的要求,頻率太低,LED將出現(xiàn)閃爍現(xiàn)象。如頻率太高,由于每個(gè)LED點(diǎn)亮的時(shí)間太短,LED的亮度太低,肉眼無法看清,所以一般均取幾個(gè)ms左右為宜,這就要求在編寫程序時(shí),選通某一位LED使其點(diǎn)亮并保持一定的時(shí)間,程序上常采用的是調(diào)用延時(shí)子程序。在C51指令中,延時(shí)子程序是相當(dāng)簡單的,并且延時(shí)時(shí)間也很容易更改,可參見程序清單中的DELAY延時(shí)子程序。 為簡單起見,我們只是編寫了8位LED同步顯示"00000000"—"11111111"直到"99999999"數(shù)字,并且反復(fù)循環(huán)。程序很簡單,流程圖略去。
標(biāo)簽: LED 51單片機(jī) 動(dòng)態(tài) 顯示電路
上傳時(shí)間: 2013-11-18
上傳用戶:皇族傳媒
介紹用PIC16C73 自帶的八位A/D 轉(zhuǎn)換器擴(kuò)展為十二位A/D 轉(zhuǎn)換器,給出了具體的設(shè)計(jì)方案和程序流程。它是用以 PIC16C73 為MCU 構(gòu)成的海水有機(jī)磷測(cè)控儀A/D 轉(zhuǎn)換部分的一種解決方案。為監(jiān)測(cè)海洋生態(tài)環(huán)境,研制了用于海水有機(jī)磷農(nóng)藥現(xiàn)場(chǎng)監(jiān)測(cè)的生物傳感器。為測(cè)定生物傳感器的信號(hào),使傳感器可用于船載及臺(tái)站的海洋生態(tài)環(huán)境現(xiàn)場(chǎng)自動(dòng)監(jiān)測(cè),需要對(duì)整個(gè)的采樣和排液裝置進(jìn)行控制以及對(duì)傳感器來的信號(hào)進(jìn)行實(shí)時(shí)采集處理,形成有機(jī)磷的濃度傳給上位機(jī)。為此,開發(fā)了以PIC16C73 單片機(jī)為核心的小型測(cè)控儀器,很好的完成了上述功能。PIC1673 單片機(jī)自帶8 位的A/D 轉(zhuǎn)換器,但不能滿足系統(tǒng)對(duì)精度的要求,本設(shè)計(jì)在單片機(jī)自帶8 位A/D 基礎(chǔ)上加少量的硬件和軟件開銷,使其擴(kuò)展為十二位A/D 轉(zhuǎn)換器,滿足了系統(tǒng)的要求。
上傳時(shí)間: 2013-10-30
上傳用戶:a296386173
深入淺出AVR單片機(jī)思路清晰,以AVR單片機(jī)為載體,介紹了初學(xué)單片機(jī)所必須掌握的專業(yè)知識(shí)。書中語言嚴(yán)謹(jǐn)?shù)环τ哪L(fēng)趣,配以大量的照片、圖示和實(shí)例程序,使讀者在愉悅中完成專業(yè)知識(shí)的學(xué)習(xí),并培養(yǎng)了學(xué)習(xí)嵌入式系統(tǒng)的興趣。本書在講述AVR單片機(jī)的同時(shí),更注重于對(duì)讀者學(xué)習(xí)和設(shè)計(jì)能力的啟發(fā)、培養(yǎng),幫助他們養(yǎng)成“從實(shí)踐中來,到實(shí)踐中去”的科學(xué)方法論,為進(jìn)一步的學(xué)習(xí)創(chuàng)造了基礎(chǔ)。 本書講述淺顯、內(nèi)容豐富、編排合理、實(shí)例詳盡。首先介紹了如何閱讀器件資料的方法,然后熟悉ICCAVR集成開發(fā)環(huán)境并搭建實(shí)驗(yàn)開發(fā)裝置,接著從實(shí)際應(yīng)用出發(fā),啟發(fā)式地介紹AVR單片機(jī)的常用資源和對(duì)應(yīng)軟件方法,最后較為全面地補(bǔ)充了從事嵌入式系統(tǒng)開發(fā)要擴(kuò)展的軟件知識(shí)。 第1篇 Are you ready? 第1章 學(xué)會(huì)閱讀Datasheet 1.1 如何閱讀PDF文件,如何獲得Datasheet文件 1.2 Datasheet告訴我們些什么 1.3 如何看懂AVR的Datasheet 1.4 如何得到幫助 1.5 匯編語言執(zhí)行時(shí)間的計(jì)算方法 1.6 ATmega48/88/168常用熔絲的作用及其配置方法 1.7 對(duì)誤燒寫為外部時(shí)鐘模式的解鎖方法 實(shí)例1 閱讀74HC595 Datasheet 第2章 深入開發(fā)環(huán)境 2.1 認(rèn)識(shí)ICC編譯環(huán)境 2.2 事半功倍的代碼生成器 2.3 ICC之不得不說的故事 2.4 AVR最小系統(tǒng)和下載線DIY 實(shí)例2 AVR最小系統(tǒng)DIY第2篇 Let\'s go! 第3章 從跑馬燈開始 3.1 輸入/輸出界面 3.1.1 單片機(jī)的輸入/輸出設(shè)備——引腳 3.1.2 “芯”里有數(shù)——數(shù)碼管顯示 3.1.3 單片機(jī)的輸入/輸出設(shè)備——從按鍵到鍵盤 3.2 用ATmega48/88/168單片機(jī)端口驅(qū)動(dòng)數(shù)碼管 3.3 操縱ATmega48/88/168單片機(jī)端口 3.4 端口內(nèi)建上拉電阻的使用 3.5 端口位操作 實(shí)例3 跑馬燈 實(shí)例4 數(shù)碼管的顯示(上) 實(shí)例5 數(shù)碼管的顯示(下) 實(shí)例6 矩陣鍵盤 第4章 對(duì)不起接個(gè)電話 4.1 十萬火急——中斷 4.2 中斷的特性 4.3 使用中斷時(shí)的注意事項(xiàng) 4.4 ATmega48/88/168單片機(jī)有哪些中斷源 4.5 如何編寫一個(gè)中斷的服務(wù)程序代碼 4.6 ATmega48/88/168單片機(jī)中斷的開關(guān)控制 4.7 ATmega48/88/168中斷標(biāo)志位 4.8 ATmega48/88/168中斷優(yōu)先級(jí) 4.9 ATmega48/88/168單片機(jī)中斷向量 4.10 中斷與查詢之爭 4.11 用查詢方式響應(yīng)外設(shè)中斷 4.12 中斷誤觸發(fā) 4.13 前后臺(tái)與原子操作 實(shí)例7 中斷喚醒的鍵盤掃描 實(shí)例8 旋轉(zhuǎn)編碼器 第5章 一秒究竟有多長 5.1 單片機(jī)與時(shí)間 5.2 軟件延時(shí) 5.3 不需要加載的“自由計(jì)時(shí)器” 5.4 通過重加載控制定時(shí)中斷周期 5.5 使用代碼生成器生成定時(shí)器1初始化代碼 5.6 定時(shí)器的其他工作模式 5.7 PWM波及其應(yīng)用簡介 5.8 人類能看懂的電子時(shí)鐘——實(shí)時(shí)時(shí)鐘簡介 實(shí)例9 閃爍的燈 實(shí)例10 漸明漸暗的燈 實(shí)例11 復(fù)雜閃爍控制 第6章 電量低 6.1 從猜數(shù)游戲到A/D轉(zhuǎn)換器 6.2 ATmega48/88/168的A/D轉(zhuǎn)換器 6.3 ATmega48/88/168單片機(jī)中與A/D相關(guān)的引腳 6.4 ATmega48/88/168單片機(jī)中與A/D相關(guān)的寄存器 6.5 使用A/D時(shí)需要注意些什么 6.6 怎樣知道A/D轉(zhuǎn)換完成 6.7 讀取A/D的轉(zhuǎn)換結(jié)果 6.8 使用代碼生成器生成ADC初始化代碼 6.9 書寫具有工程結(jié)構(gòu)的初始化代碼 6.10 電量計(jì)原理概述 …… 第7章 正在過收費(fèi)站 第8章 包裝的學(xué)問 第9章 傻孩子求職記 第10章 MISSION UPDATE第3篇 Code Name C 第11章 朝花夕拾 第12章 指針都是紙老虎 第13章 來自身邊的啟示 第14章 初識(shí)嵌入式系統(tǒng)
上傳時(shí)間: 2014-05-05
上傳用戶:佳期如夢(mèng)
Keil C51編譯器用戶手冊(cè) 中文版:本手冊(cè)講述對(duì)8051 的目標(biāo)環(huán)境,如何使用Cx51 優(yōu)化C 編譯器編譯C 程序Cx51 編譯器包,可以用在所有的8051 系列處理器上,可以在WINDOWS 32 位命令行中執(zhí)行本手冊(cè),假定你熟悉WINDOWS 操作系統(tǒng),知道如何編程8051處理器,并會(huì)用C 語言編程注意本手冊(cè)用條件窗口來指明32 位WINDOWS 版本是WINDOWS95 WINDOWS98 WINDOWS ME WINDOWS NT WINDOWS 2000 或WINDWOS XP,如果你對(duì)C 編程有問題或者你想知道C 語言編程的更多信息,可參考16 頁的關(guān)于C語言的書手冊(cè)中討論的許多例子和描述是從WINDOWS 命令提示符下調(diào)用的這對(duì)在一個(gè)集成環(huán)境,如μVision2 中運(yùn)行Cx51 的情況是不適用的本手冊(cè)中的例子是通用的可以應(yīng)用到所有編程環(huán)境。
標(biāo)簽: Keil C51 編譯器 用戶手冊(cè)
上傳時(shí)間: 2014-01-13
上傳用戶:hakim
串口調(diào)試軟件SSCOM可供免費(fèi)使用,免費(fèi)下載,本軟件可以在Win95/98、Win2000、WinNT、WinXP下面運(yùn)行.軟件功能主要為: 1.接收從串口進(jìn)來的數(shù)據(jù)并在窗口顯示. 2.所接收到的數(shù)據(jù)數(shù)據(jù)顯示方式可以選擇為字符方式或者HEX方式 4.中文顯示無亂碼,且不影響速度 5.串口波特率可以選擇為110bps-256000bps.(波特率>115200時(shí)需要硬件支持) 6.可以即時(shí)顯示存在的串口號(hào).如果您增加了usb轉(zhuǎn)串口等設(shè)備,串口號(hào)也會(huì)在列表中出現(xiàn). 7.可以選擇“5、6、7、8”四種數(shù)據(jù)長度. 8.可以選擇為“1、1.5、2”三種停止位.(1.5停止位需要硬件支持) 8.第9位數(shù)據(jù)可以選擇為“無、奇校驗(yàn)、偶校驗(yàn)、1、0”四種方式. 9.可以選擇“無流控、軟流控、硬流控、自定義”四種流控方式. 10.串口設(shè)置和字符串操作等設(shè)置在程序關(guān)閉時(shí)自動(dòng)保存,打開時(shí)自動(dòng)載入. 11.可以在接收窗口按鍵即發(fā)送該鍵值. 12.可以在字符串輸入框輸入您想發(fā)送的字符串,并發(fā)送. 13.可以在字符串輸入框輸入您想發(fā)送的HEX數(shù)據(jù)串,數(shù)據(jù)的值從00到FF,沒有任何限制. 14.可以定時(shí)重復(fù)發(fā)送數(shù)據(jù),并可以設(shè)置發(fā)送時(shí)間間隔. 15.可以在發(fā)送字符串時(shí)選擇發(fā)送新行,即自動(dòng)加上回車換行. 16.可以顯示當(dāng)前串口的CTS、DSR、RLSL(CD)信號(hào)線的狀態(tài). 17.可以自由控制當(dāng)前串口的DTR、RTS信號(hào)線的輸出狀態(tài). 18.可以打開一個(gè)文本文件或者一個(gè)二進(jìn)制文件預(yù)覽其內(nèi)容,查看方式可以是文本或者HEX方式. 19.可以打開一個(gè)文本文件或者一個(gè)二進(jìn)制文件并以當(dāng)前波特率發(fā)送到串口. 20.可以保存窗口內(nèi)容到一個(gè)文本文件,文件名取自當(dāng)前時(shí)間,保存在當(dāng)前目錄. 21.可以即時(shí)顯示發(fā)送的字節(jié)數(shù)和接收到的字節(jié)數(shù),按清除窗口將會(huì)清零. 22.帶有功能強(qiáng)大的擴(kuò)展功能:多條字符串發(fā)送定義和網(wǎng)上查找串口資料等. 23.可以定義最多32條預(yù)備發(fā)送的字符串,每條字符串可以定義為HEX數(shù)據(jù)串或者字符串方式.在每一條數(shù)據(jù)的左邊打勾就表示這是一條hex數(shù)據(jù)串. 24.點(diǎn)擊字符串右邊的標(biāo)號(hào)即可以發(fā)送這條定義好的字符串. 25.可以設(shè)置為循環(huán)發(fā)送你定義過的多條字符串,并且可以設(shè)置發(fā)送時(shí)間間隔. 26.在串口資料欄您可以從mcu51網(wǎng)站或者Google查找有關(guān)串口技術(shù)資料. 27.在串口資料欄您可以進(jìn)入技術(shù)討論bbs,在此發(fā)表您的高見或者提出您的問題和需求. 28.在產(chǎn)品信息欄您可以獲得現(xiàn)時(shí)最新的產(chǎn)品信息. 29.這是個(gè)綠色軟件,單個(gè)文件即可執(zhí)行,不會(huì)給您的機(jī)器增加任何負(fù)擔(dān). 此版本使用C++Builder編寫,相對(duì)于上一版本SSCOM2.0,主要改進(jìn)在: 1.程序更穩(wěn)定可靠,修改了一些報(bào)錯(cuò)信息.使用更加人性化。 2.修改了避免顯示漢字亂碼的算法,快了許多. 3.hex數(shù)據(jù)輸入的錯(cuò)誤兼容性. 4.發(fā)送字符串可以加發(fā)回車換行. 5.可以保存窗口內(nèi)容到文件. 6.發(fā)送和接收的字符數(shù)統(tǒng)計(jì)更準(zhǔn)確. 7.不再接收到一定數(shù)量字符數(shù)就清屏,因?yàn)榘l(fā)現(xiàn)即使收到很多內(nèi)容也不會(huì)溢出,速度仍然很快. 8,可以打開二進(jìn)制文件并發(fā)送,從前只能發(fā)文本文件. 9.打開文件后可以用asc方式或者h(yuǎn)ex方式預(yù)覽文件中前4K內(nèi)容. 10.發(fā)送文件前告訴操作者需要發(fā)送多少時(shí)間.免得久等. 11.新增功能強(qiáng)大的擴(kuò)展功能,多達(dá)32條自定義字符串操作,程序關(guān)閉時(shí)這些字符串會(huì)自動(dòng)保存,下次開機(jī)時(shí)再載入,每條可以定義為HEX數(shù)據(jù)串或者ASC字符串,按后邊的數(shù)字按鈕可以發(fā)送.也可以自動(dòng)循環(huán)發(fā)送定義過的字符串. 12.新增串口設(shè)置自動(dòng)保存. 13.加入了網(wǎng)絡(luò)支持功能,用戶很方便討論問題和找到技術(shù)支持.
標(biāo)簽: SSCOMV 3.0 串口調(diào)試 軟件
上傳時(shí)間: 2013-10-26
上傳用戶:448949
用單片機(jī)制作多功能莫爾斯碼電路:用單片機(jī)制作多功能莫爾斯碼電路莫爾斯電碼通信有著悠久的歷史,盡管它已被現(xiàn)代通信方式所取代,但在業(yè)余無線電通信和特殊的專業(yè)場(chǎng)合仍具有重要的地位,這是因?yàn)榈确姶a通信的抗干擾能力是其它任何一種通信方式都無法相比的。在短波波段用幾瓦的功率即可進(jìn)行國際間的通信,收發(fā)射設(shè)備簡單易制成本低廉,所以深受業(yè)余無線電愛好者的喜愛,是業(yè)余無線電高手必備的技能。要想熟練掌握莫爾斯電碼的收發(fā)技術(shù)除了持之以恒的毅力外,還需要相關(guān)的設(shè)備。設(shè)計(jì)本電路的目的就是給愛好者提供一個(gè)實(shí)用和訓(xùn)練的工具。 一、功能簡介 本電路可以配合自動(dòng)鍵體和手動(dòng)鍵體,產(chǎn)生莫爾斯碼控制信號(hào),設(shè)有16種速度,從初學(xué)者到操作高手都能適用。監(jiān)聽音調(diào)也有16種,均可以通過功能鍵進(jìn)行選擇。可以按程序中設(shè)定好的呼號(hào)自動(dòng)呼叫,設(shè)有聽抄練習(xí)功能,聽抄練習(xí)有短碼和混合碼兩種模式,分別對(duì)10個(gè)數(shù)字和常用的38個(gè)混合碼模擬隨機(jī)取樣,產(chǎn)生分組報(bào)碼,供愛好者提高抄收水平之用,速度低4檔的聽抄練習(xí)是專為初學(xué)者所設(shè),內(nèi)容是時(shí)間間隔較長的單字符。設(shè)有PTT開關(guān)鍵,可以決定是否控制發(fā)射機(jī)工作,不需要反復(fù)通斷控制線。無論當(dāng)前處于呼叫狀態(tài)還是聽抄狀態(tài)只要電鍵接點(diǎn)接通則自動(dòng)轉(zhuǎn)到人工發(fā)報(bào)程序。4分鐘內(nèi)不使用電路將自動(dòng)關(guān)閉電源,只有按復(fù)位鍵才能重新開始工作。先按住聽抄練習(xí)鍵復(fù)位則進(jìn)入短碼練習(xí)狀態(tài),其它功能不變。從開機(jī)到自動(dòng)關(guān)機(jī)執(zhí)行每個(gè)功能都有不同的莫爾斯碼提示音。本電路具有較強(qiáng)的抗高低頻干擾的能力和使用方便的大電流開關(guān)接口,以適應(yīng)不同的發(fā)射設(shè)備。 二、硬件電路原理硬件電路如圖1所示。設(shè)計(jì)電路的目的在于方便實(shí)用,以免在緊張的操作中失誤,所以除了聽抄練習(xí)鍵外其它鍵沒有定義復(fù)用功能。各鍵的作用在圖中已經(jīng)標(biāo)出。PTT控制在每次復(fù)位時(shí)處于關(guān)閉狀態(tài),每按動(dòng)一次PTT功能鍵則改變一次狀態(tài),這樣可以使用軟件開關(guān)控制發(fā)射。 PTT處于控制狀態(tài)時(shí)發(fā)光二極管隨控制信號(hào)閃亮。考慮到自制設(shè)備及淘汰軍用設(shè)備與高檔設(shè)備控制電流的不同,PTT開關(guān)管采用了2SC2073,可以承受500mA的電流,同時(shí)還增加了無極性PTT開關(guān)電路,無論外部被控制的端口直流極性如何加到VT3的極性始終不變,供有興趣的愛好者實(shí)驗(yàn)。應(yīng)該注意,如果被控制的負(fù)載是感性,則電感兩端必須并聯(lián)續(xù)流二極管,除自制設(shè)備外成品機(jī)在這方面一般沒有什么問題。手動(dòng)鍵只有一個(gè)接點(diǎn),接通后產(chǎn)生連續(xù)的音頻和發(fā)射控制信號(hào)。在本電路中手動(dòng)鍵的輸入端是P1.5 ,程序不斷檢測(cè)P1.5電平,當(dāng)按鍵按下時(shí)P1.5電平為0,程序轉(zhuǎn)入手動(dòng)鍵子程序。 自動(dòng)鍵的接點(diǎn)分別接到P1.3和P1.4 ,同樣當(dāng)程序檢測(cè)到有接點(diǎn)閉合時(shí)便自動(dòng)產(chǎn)生“點(diǎn)”或“劃”。音頻信號(hào)從P輸出,經(jīng)VT1放大后推動(dòng)揚(yáng)聲器發(fā)音。單片機(jī)的I/O口在輸入狀態(tài)下阻抗較高,容易受到高低頻信號(hào)干擾,所以在每個(gè)輸入端口和三極管的be端并聯(lián)電阻和高頻旁路電容,確保在較長的電鍵連線和大功率發(fā)射時(shí)電路工作穩(wěn)定。圖2是印刷電路版圖,尺寸為110mmX85mm,揚(yáng)聲器用粘合劑直接粘接在電路版有銅箔的面。 三、軟件設(shè)計(jì)方法 “點(diǎn)”時(shí)間長度是莫爾斯電碼中的基本時(shí)間單位。按規(guī)定“劃”的時(shí)間長度不小于三個(gè)“點(diǎn)”,同字符中“點(diǎn)”與“劃”的間隔不小于一個(gè)“點(diǎn)”,字符之間不小于一個(gè)“劃”,詞與詞之間不應(yīng)小于五個(gè)“點(diǎn)”。在本程序中用條件轉(zhuǎn)移指令來產(chǎn)生“點(diǎn)”時(shí)間長度。通過速度功能鍵功可以設(shè)置16種延時(shí)參數(shù)。用T0中斷產(chǎn)生監(jiān)聽音頻信號(hào),并將中斷設(shè)為優(yōu)先級(jí),保證在聽覺上純正悅耳。T1用于自動(dòng)關(guān)機(jī)計(jì)時(shí),如果不使用任何功能四分鐘后將向PCON 位寫1,單片機(jī)進(jìn)入休眠狀態(tài),此時(shí)耗電量僅有幾個(gè)微安。自動(dòng)鍵的“點(diǎn)”或“劃”以及手動(dòng)鍵的連續(xù)發(fā)音都是子程序的反復(fù)調(diào)用。P1.2對(duì)地短接時(shí)自動(dòng)呼叫可設(shè)定為另一內(nèi)容。為了便于熟悉匯編語言的讀者對(duì)發(fā)音內(nèi)容進(jìn)行修改,這里介紹發(fā)音字符的編碼方法。莫爾斯碼的信息與計(jì)算機(jī)中二進(jìn)制恰好相同,我們可以用0表示“點(diǎn)”,用1表示“劃”。提示音、自動(dòng)呼叫、聽抄內(nèi)容等字符是預(yù)先按一定編碼方式存儲(chǔ)在程序中的常數(shù)。每個(gè)字符的莫爾斯碼一般是由1至6位“點(diǎn)”、“劃”組成,也就是發(fā)音次數(shù)最多6次。程序中每個(gè)字符占用1個(gè)字節(jié),字符時(shí)間間隔不占用字節(jié),但更長的延時(shí)或發(fā)音結(jié)束信息占用一個(gè)字節(jié)。我們用字節(jié)的低三位表示字節(jié)的性質(zhì),對(duì)于5次及5次以下發(fā)音的字符我們用存儲(chǔ)器的高5位存儲(chǔ)發(fā)音信息,發(fā)音順序由高位至低位,用低3位存儲(chǔ)發(fā)音次數(shù),發(fā)音時(shí)將數(shù)據(jù)送入累加器A,先得到發(fā)音次數(shù),然后使A左環(huán)移,對(duì)E0進(jìn)行位尋址,判斷是發(fā)“點(diǎn)”還是“劃”,環(huán)移次數(shù)由發(fā)音次數(shù)決定。對(duì)于6次發(fā)音的字符不能完全按照上述編碼規(guī)則,否則會(huì)出現(xiàn)信息重疊,如果是6次發(fā)音且最后一次是“劃”我們把發(fā)音次數(shù)定義為111B,因?yàn)檫@時(shí)第6次位尋址得到的是1。如果第6次發(fā)音是“點(diǎn)”,那么這個(gè)字符的低三位定義為000B。字符間隔時(shí)間由程序自動(dòng)產(chǎn)生,更長的時(shí)間隔或結(jié)束標(biāo)志由字節(jié)低三位110B來定義,高半字節(jié)表示字符間隔的倍數(shù),例如26H表示再加兩倍時(shí)間間隔。如果字節(jié)為06H則表示讀字符程序結(jié)束,返回主程序。更詳細(xì)的內(nèi)容不再贅述,讀者可閱讀源程序。四、使用注意事項(xiàng)手動(dòng)鍵的操作難度相對(duì)大一些,時(shí)間節(jié)拍全由人掌握,其特點(diǎn)是發(fā)出的電碼帶有“人情味”。自動(dòng)鍵的“點(diǎn)”、“劃”靠電路產(chǎn)生,發(fā)音標(biāo)準(zhǔn),容易操作,而且可以達(dá)到相當(dāng)快的速度,長時(shí)間工作也不易疲勞。在干擾較大、信號(hào)微弱的條件下自動(dòng)鍵碼的辨別程度好于手動(dòng)鍵碼。初學(xué)者初次使用手動(dòng)鍵練習(xí)發(fā)報(bào)要有老師指導(dǎo),且不可我行我素,一旦養(yǎng)成不正確的手法則很難糾正。在電臺(tái)上時(shí)常聽到一些讓對(duì)方難以抄收的電碼,這可能會(huì)使對(duì)方反感而拒絕回答。使用自動(dòng)鍵也應(yīng)在一定的聽抄基礎(chǔ)上再去練習(xí)。在暫時(shí)找不老師的情況下可多練習(xí)聽力,這對(duì)于今后能夠發(fā)出標(biāo)準(zhǔn)正確的電碼非常有益。
上傳時(shí)間: 2013-10-31
上傳用戶:sdq_123
設(shè)置復(fù)位標(biāo)志位便于區(qū)分不同原因引發(fā)的復(fù)位,作為一種新技術(shù)被越來越多的新型單片機(jī)所采納。例如Philips公司的P87LPC700和 P89LPC900系列、Freescale公司(原Motorola半導(dǎo)體部)的MC68HC05系列和MC68HC08系列、Sunplus公司的 SPMC65系列、Microchip公司的PIC系列等,內(nèi)部都設(shè)計(jì)了專門用于記錄各種復(fù)位標(biāo)志的狀態(tài)寄存器。MC68HC08系列有一個(gè)復(fù)位狀態(tài)寄存器,負(fù)責(zé)記錄6種復(fù)位標(biāo)志位:上電復(fù)位、引腳復(fù)位、看門狗復(fù)位、非法指令復(fù)位、非法地址復(fù)位和欠壓復(fù)位。SPMC65系列有一個(gè)系統(tǒng)控制寄存器,負(fù)責(zé)記錄5種復(fù)位標(biāo)志位:上電復(fù)位、外部復(fù)位、看門狗復(fù)位、非法地址復(fù)位和欠壓復(fù)位。51兼容的P89LPC900系列有一個(gè)復(fù)位源寄存器,負(fù)責(zé)記錄6種復(fù)位標(biāo)志位:欠壓復(fù)位、上電復(fù)位、外部復(fù)位、看門狗復(fù)位、軟件復(fù)位和UART收到間隔字符復(fù)位(主要作為進(jìn)入ISP監(jiān)控程序的途徑之一)。就連初學(xué)者很常用的 AT89S51/52和P89C52X2,也在其電源控制寄存器PCON中增設(shè)了一個(gè)上電標(biāo)志位POF。1、 復(fù)位標(biāo)志位的設(shè)置方法傳統(tǒng)的80C51單片機(jī)沒有設(shè)計(jì)復(fù)位標(biāo)志位的記錄功能,這應(yīng)該說是一種遺憾,那么能否通過一定的技術(shù)手段來彌補(bǔ)這個(gè)缺憾呢?這里給廣大80C51單片機(jī)用戶提供一種啟示和引導(dǎo)。實(shí)現(xiàn)復(fù)位標(biāo)志位的記錄肯定需要一定的硬件電路支持,而這種電路的設(shè)計(jì)不存在固定模式。筆者利用一片MAX813L設(shè)計(jì)了一種支撐電路,如圖1所示,僅供讀者參考。
標(biāo)簽: 單片機(jī)復(fù)位 標(biāo)志位 應(yīng)用研究
上傳時(shí)間: 2013-10-21
上傳用戶:lhw888
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1