介紹一種運(yùn)用PIC16F84單片機(jī)實(shí)現(xiàn)與PC機(jī)串行通信的方法,并給出其硬件接口電路及通信源程序。關(guān)鍵詞 異步串行通信 發(fā)送與接收 VB4 Win95 串口查詢法 1 前言 美國Microchip公司的PIC16系列單片機(jī)是一種新型的CMOS工藝的8位單片機(jī)。其中,PIC16FXX單片機(jī)的程序存儲器為電可擦除閃速存儲器(flash),可多次修改程序,甚至可以在線編程。PIC16F83和PIC16F84片內(nèi)數(shù)據(jù)存儲器除RAM外,還有64字節(jié)的EEPROM,可以當(dāng)作一般的或非易失性的數(shù)據(jù)存儲器使用,簡單方便。它還具有片內(nèi)上電復(fù)位、延時電路、看門狗電路等。另外,PIC16系列單片機(jī)功耗極低,因而是一種非常適合在各種便攜式設(shè)備中使用的高性價比的單片機(jī),并已經(jīng)得到了越來越廣泛的應(yīng)用。 但是在許多需要大量計算的運(yùn)用中,還必須借助微機(jī)的強(qiáng)大數(shù)據(jù)處理能力。這樣必須通過通信電路實(shí)現(xiàn)PIC單片機(jī)與微機(jī)間的可靠數(shù)據(jù)傳輸。有的PIC16單片機(jī)內(nèi)并沒有提供串行口,所以串行通信必須通過自己設(shè)計的硬件電路和通信軟件來實(shí)現(xiàn)。 下面介紹用查詢法實(shí)現(xiàn)異步串行通訊的方法。同時給出了用PIC16F84單片機(jī)的兩個I/O口模擬2線串行口的硬件接口電路、程序流程框圖、單片機(jī)內(nèi)通信程序以及微機(jī)內(nèi)的通信程序等。2 硬件實(shí)現(xiàn)方法與電路 PIC16F84的程序存儲器由1K×14的閃速(flash)存儲器構(gòu)成,它只有13條I/O口,1個定時器,為了盡量節(jié)省單片機(jī)的軟硬件資源,采用下述異步串行通信的實(shí)現(xiàn)方法。 如圖1所示,PIC16F84在4MHz時鐘下,采用半雙工方式,可實(shí)現(xiàn)9600波特率的異步串行數(shù)據(jù)通信,1位停止位,8位數(shù)據(jù)位,無校驗(yàn)位。接收和發(fā)送以低位在先(一般模式),采用軟件延時。為節(jié)省篇幅,單片機(jī)內(nèi)的通信程序中未提供任何握手協(xié)議,用戶可根據(jù)自己的需要在軟件中加入握手方式。
標(biāo)簽: PIC 16 PC機(jī) 單片機(jī)
上傳時間: 2014-12-27
上傳用戶:偷心的海盜
電加熱爐是典型工業(yè)過程控制對象,其溫度控制具有升溫單向性,大慣性,純滯后,時變性等特點(diǎn),很難用數(shù)學(xué)方法建立精確的模型和確定參數(shù)。而PID控制因其成熟,容易實(shí)現(xiàn),并具有可消除穩(wěn)態(tài)誤差的優(yōu)點(diǎn),在大多數(shù)情況下可以滿足系統(tǒng)性能要求,但其性能取決于參數(shù)的整定情況。且快速性和超調(diào)量之間存在矛盾,使其不一定滿足快速升溫、超調(diào)小的技術(shù)要求。模糊控制在快速性和保持較小的超調(diào)量方面有著自身的優(yōu)勢,但其理論并不完善,算法復(fù)雜,控制過程會存在穩(wěn)態(tài)誤差。 將模糊控制算法引入傳統(tǒng)的加熱爐控制系統(tǒng)構(gòu)成智能模糊控制系統(tǒng),利用模糊控制規(guī)則自適應(yīng)在線修改PID參數(shù),構(gòu)成模糊自整定:PID控制系統(tǒng),借此提高其控制效果。 基于PID控制算法,以ADuC845單片機(jī)為主體,構(gòu)成一個能處理較復(fù)雜數(shù)據(jù)和控制功能的智能控制器,使其既可作為獨(dú)立的單片機(jī)控制系統(tǒng),又可與微機(jī)配合構(gòu)成兩級控制系統(tǒng)。該控制器控制精度高,具有較高的靈活性和可靠性。 2 溫度控制系統(tǒng)硬件設(shè)計 該系統(tǒng)設(shè)計的硬件設(shè)計主要由單片機(jī)主控、前向通道、后向通道、人機(jī)接口和接口擴(kuò)展等模塊組成,如圖l所示。由圖1可見,以內(nèi)含C52兼容單片機(jī)的ADuC845為控制核心.配有640 KB的非易失RAM數(shù)據(jù)存儲器、外擴(kuò)鍵盤輸人、320x240點(diǎn)陣的圖形液晶顯示器進(jìn)行漢字、圖形、曲線和數(shù)據(jù)顯示,超溫報警裝置等外圍電路;預(yù)留微型打印機(jī)接口,可以現(xiàn)場打印輸出結(jié)果;預(yù)留RS232接口,能和PC機(jī)聯(lián)機(jī),將現(xiàn)場檢測的數(shù)據(jù)傳輸至PC機(jī)來進(jìn)一步處理、顯示、打印和存檔。
上傳時間: 2013-10-11
上傳用戶:vodssv
用單片機(jī)設(shè)計電子音樂門鈴
上傳時間: 2013-11-03
上傳用戶:gyq
PIC 單片機(jī)的組成習(xí)題解答 解答部分1. PIC 單片機(jī)指令的執(zhí)行過程遵循著一種全新哈佛總線體系結(jié)構(gòu)的原則,充分利用了計算機(jī)系統(tǒng)在程序存儲器和數(shù)據(jù)存儲器之間地址空間的相互獨(dú)立性,取指過程和執(zhí)行指令過程可以流水線操作同時進(jìn)行。因此,當(dāng)PIC 時鐘頻率為4MHZ時,執(zhí)行一條非轉(zhuǎn)移類指令需要4 個系統(tǒng)時鐘周期,即1us,但其指令執(zhí)行的真實(shí)時間應(yīng)為2us(在執(zhí)行n—1 條指令時取第n 條指令,然后執(zhí)行第n 條指令)。所以選項(xiàng)B 正確2. 端口RE 共有3 個引腳RE0~RE2,它們除了用做普通I/O 引腳和第5~7 路模擬信號輸入引腳外,還依次分別承擔(dān)并行口讀出/寫入/片選控制端引腳。A. 對。讀出/寫入(REO~RE1)。B.錯。同步串行的相關(guān)引腳與端口C 有關(guān)。C.錯。通用異步/同步串行的相關(guān)引腳與端口C有關(guān)。D. 錯。CCP模塊的相關(guān)引腳也是與端口C有關(guān)。所以選項(xiàng)A正確。3. 上電延時電路能提供一個固定的72ms 上電延時,從而使VDD有足夠的時間上繁榮昌盛到單片機(jī)合適的工作電壓。所以選項(xiàng)B 正確。
上傳時間: 2013-11-09
上傳用戶:glxcl
單片機(jī)大蝦是怎么樣煉成的 強(qiáng)烈要求學(xué)習(xí)單片機(jī)的同志們看完!前言:近來在論壇總是見到一些菜鳥們在大叫:“我想學(xué)單片機(jī)”,“我要學(xué)單片機(jī)”,“如何入門啊?”,“你們怎么這么厲害,是怎樣學(xué)的??”等等等等一系列的問題,實(shí)在是看多了也感到煩了,今天,就由我電子白菜厚著面皮,頂著無數(shù)老蝦的磚頭,在這里寫上一篇單片機(jī)學(xué)習(xí)心得,讓菜鳥們勇敢地跨出第一步。首先解釋什么是蝦米先,以我個人意見吧。1、來單片機(jī)論壇的時候能夠看懂大多數(shù)家伙在說什么,(當(dāng)然不是看懂他們在灌水的帖子啦)并且能適當(dāng)?shù)靥岢鰡栴}(非弱智的問題)和討論,解答別人的問題。2、當(dāng)希望自己用單片機(jī)開發(fā)一個東東,或公司要求開發(fā)一個方案的時候,能夠很快地在心中建立一個基本模型,知道應(yīng)該需要些什么知識,而自己又掌握多少,并根據(jù)一定的靈感開始搜索資料。就是以上這2 點(diǎn)了,如果你滿足了,基本下面的東西你就當(dāng)作是故事來讀就可以了。然后是心態(tài)問題,不久前看到有人這么問:“我想學(xué)單片機(jī)啊,因?yàn)槁犝f很有錢途,請問學(xué)那種單片機(jī)最有錢途?”這個問題,我看到了就覺得反感,可以這么說,在這個壇子混的單片機(jī)大蝦只有兩種:第一、是一直從事單片機(jī)類工作的;第二、是愛好者,愛好者包括從事單片機(jī)工作的和非單片機(jī)工作的。的確,單片機(jī)是有一定的錢途,但對于那些本來不是從事單片機(jī)工作的,而又沒有興趣的,單從錢的角度出發(fā)的家伙,想學(xué)好單片機(jī)??恐怕是做白日夢。
標(biāo)簽: 單片機(jī)
上傳時間: 2013-11-04
上傳用戶:firstbyte
C8051F單片機(jī) C8051F系列單片機(jī) 單片機(jī)自20世紀(jì)70年代末誕生至今,經(jīng)歷了單片微型計算機(jī)SCM、微控制器MCU及片上系統(tǒng)SoC三大階段,前兩個階段分別以MCS-51和80C51為代表。隨著在嵌入式領(lǐng)域中對單片機(jī)的性能和功能要求越來越高,以往的單片機(jī)無論是運(yùn)行速度還是系統(tǒng)集成度等多方面都不能滿足新的設(shè)計需要,這時Silicon Labs 公司推出了C8051F系列單片機(jī),成為SoC的典型代表。 C8051F具有上手快(全兼容8051指令集)、研發(fā)快(開發(fā)工具易用,可縮短研發(fā)周期)和見效快(調(diào)試手段靈活)的特點(diǎn),其性能優(yōu)勢具體體現(xiàn)在以下方面: 基于增強(qiáng)的CIP-51內(nèi)核,其指令集與MCS-51完全兼容,具有標(biāo)準(zhǔn)8051的組織架構(gòu),可以使用標(biāo)準(zhǔn)的803x/805x匯編器和編譯器進(jìn)行軟件開發(fā)。CIP-51采用流水線結(jié)構(gòu),70%的的指令執(zhí)行時間為1或2個系統(tǒng)時鐘周期,是標(biāo)準(zhǔn)8051指令執(zhí)行速度的12倍;其峰值執(zhí)行速度可達(dá)100MIPS(C8051F120等),是目前世界上速度最快的8位單片機(jī)。 增加了中斷源。標(biāo)準(zhǔn)的8051只有7個中斷源Silicon Labs 公司 C8051F系列單片機(jī)擴(kuò)展了中斷處理這對于時實(shí)多任務(wù)系統(tǒng)的處理是很重要的擴(kuò)展的中斷系統(tǒng)向CIP-51提供22個中斷源允許大量的模擬和數(shù)字外設(shè)中斷一個中斷處理需要較少的CPU干預(yù)卻有更高的執(zhí)行效率。 集成了豐富的模擬資源,絕大部分的C8051F系列單片機(jī)都集成了單個或兩個ADC,在片內(nèi)模擬開關(guān)的作用下可實(shí)現(xiàn)對多路模擬信號的采集轉(zhuǎn)換;片內(nèi)ADC的采樣精度最高可達(dá)24bit,采樣速率最高可達(dá)500ksps,部分型號還集成了單個或兩個獨(dú)立的高分辨率DAC,可滿足絕大多數(shù)混合信號系統(tǒng)的應(yīng)用并實(shí)現(xiàn)與模擬電子系統(tǒng)的無縫接口;片內(nèi)溫度傳感器則可以迅速而精確的監(jiān)測環(huán)境溫度并通過程序作出相應(yīng)處理,提高了系統(tǒng)運(yùn)行的可靠性?! 〖闪素S富的外部設(shè)備接口。具有兩路UART和最多可達(dá)5個定時器及6個PCA模塊,此外還根據(jù)不同的需要集成了SMBus、SPI、USB、CAN、LIN等接口,以及RTC部件。外設(shè)接口在不使用時可以分別禁止以降低系統(tǒng)功耗。與其他類型的單片機(jī)實(shí)現(xiàn)相同的功能需要多個芯片的組合才能完成相比,C8051單片機(jī)不僅減少了系統(tǒng)成本,更大大降低了功耗。 增強(qiáng)了在信號處理方面的性能,部分型號具有16x16 MAC以及DMA功能,可對所采集信號進(jìn)行實(shí)時有效的算法處理并提高了數(shù)據(jù)傳送能力。 具有獨(dú)立的片內(nèi)時鐘源(精度最高可達(dá)0.5%),設(shè)計人員既可選擇外接時鐘,也可直接應(yīng)用片內(nèi)時鐘,同時可以在內(nèi)外時鐘源之間自如切換。片內(nèi)時鐘源降低了系統(tǒng)設(shè)計的復(fù)雜度,提高了系統(tǒng)可靠性,而時鐘切換功能則有利于系統(tǒng)整體功耗的降低。 提供空閑模式及停機(jī)模式等多種電源管理方式來降低系統(tǒng)功耗 實(shí)現(xiàn)了I/O從固定方式到交叉開關(guān)配置。固定方式的I/O端口,既占用引腳多,配置又不夠靈活。在C8051F中,則采用開關(guān)網(wǎng)絡(luò)以硬件方式實(shí)現(xiàn)I/O端口的靈活配置,外設(shè)電路單元通過相應(yīng)的配置寄存器控制的交叉開關(guān)配置到所選擇的端口上。 復(fù)位方式多樣化,C8051F把80C51單一的外部復(fù)位發(fā)展成多源復(fù)位,提供了上電復(fù)位、掉電復(fù)位、外部引腳復(fù)位、軟件復(fù)位、時鐘檢測復(fù)位、比較器0復(fù)位、WDT復(fù)位和引腳配置復(fù)位。眾多的復(fù)位源為保障系統(tǒng)的安全、操作的靈活性以及零功耗系統(tǒng)設(shè)計帶來極大的好處?! 膫鹘y(tǒng)的仿真調(diào)試到基于JTAG接口的在系統(tǒng)調(diào)試。C8051F在8位單片機(jī)中率先配置了標(biāo)準(zhǔn)的JTAG接口(IEEE1149.1)。C8051F的JTAG接口不僅支持Flash ROM的讀/寫操作及非侵入式在系統(tǒng)調(diào)試,它的JTAG邏輯還為在系統(tǒng)測試提供邊界掃描功能。通過邊界寄存器的編程控制,可對所有器件引腳、SFR總線和I/O口弱上拉功能實(shí)現(xiàn)觀察和控制。 C8051F系列單片機(jī)型號齊全,可根據(jù)設(shè)計需求選擇不同規(guī)模和帶有特定外設(shè)接口的型號,提供從多達(dá)100個引腳的高性能單片機(jī)到最小3mmX3mm的封裝,滿足不同設(shè)計的需要?! 』谏鲜鎏攸c(diǎn),Silicon Labs 公司C8051F系列單片機(jī)作為SoC芯片的杰出代表能夠滿足絕大部分場合的復(fù)雜功能要求,并在嵌入式領(lǐng)域的各個場合都得到了廣泛的應(yīng)用:在工業(yè)控制領(lǐng)域,其豐富的模擬資源可用于工業(yè)現(xiàn)場多種物理量的監(jiān)測、分析及控制和顯示;在便攜式儀器領(lǐng)域,其低功耗和強(qiáng)大的外設(shè)接口也非常適合各種信號的采集、存儲和傳輸;此外,新型的C8051F5xx系列單片機(jī)也在汽車電子行業(yè)中嶄露頭角。正是這些優(yōu)勢,使得C8051單片機(jī)在進(jìn)入中國市場的短短幾年內(nèi)就迅速風(fēng)靡,相信隨著新型號的不斷推出以及推廣力度的不斷加大,C8051系列單片機(jī)將迎來日益廣闊的發(fā)展空間,成為嵌入式領(lǐng)域的時代寵兒 此系列單片機(jī)完全兼容MCS-51指令集,容易上手,開發(fā)周期短,大大節(jié)約了開發(fā)成本。C8051F系統(tǒng)集成度高,總線時鐘可達(dá)25M
上傳時間: 2013-11-24
上傳用戶:testAPP
HT45R35在觸控按鍵中的應(yīng)用(使用C語言) HT45R35 Demo Board包含12個Touch Switch,這是一種電容式的非接觸式觸摸按鍵,它可以用來取代任何的機(jī)械式按鍵。由于C語言具有良好的可讀性、可移植性等優(yōu)點(diǎn),本文將介紹如何使用Holtek C語言來完成HT45R35 12Key Touch Switch Demo Board的軟件設(shè)計.
上傳時間: 2013-10-10
上傳用戶:bjgaofei
SPCE061A的指令周期表 SPCE061A的指令周期表[注意]:表中目標(biāo)寄存器為PC時,部分指令周期會發(fā)生改變;建議在非必要的情況下,盡量不用PC作為目標(biāo)寄存器。[符號約定]:表中符號代表的含義如下:R1,R2,R3,R4: 通用寄存器;BP(R5): 基址指針寄存器,也可以作為通用寄存器使用;SR: 段寄存器;SP: 堆棧指針寄存器;PC: 程序計數(shù)器;N: 負(fù)標(biāo)志;Z: 零標(biāo)志;S: 符號標(biāo)志;C: 進(jìn)位標(biāo)志;IM6: 6位立即數(shù)尋址;IM16: 16位立即數(shù)尋址;[A6]: 存儲器絕對尋址,用6位立即數(shù)表示地址;[A16]: 存儲器絕對尋址,用16位立即數(shù)表示地址;R: 寄存器尋址;[R]: 寄存器間接尋址;[BP+IM6]: 變址尋址,地址偏移量為6位立即數(shù);[BP+IM16]: 變址尋址,地址偏移量為16位立即數(shù);{}: 可選項(xiàng);D: 數(shù)據(jù)段基址,D:或省略都表示基址為0(在第0頁);#: 算術(shù)邏輯運(yùn)算符(不能為乘除);n 移位操作時的移位位數(shù)。
上傳時間: 2013-10-23
上傳用戶:nanshan
Cortex-M3 技術(shù)參考手冊 Cortex-M3是一個32位的核,在傳統(tǒng)的單片機(jī)領(lǐng)域中,有一些不同于通用32位CPU應(yīng)用的要求。譚軍舉例說,在工控領(lǐng)域,用戶要求具有更快的中斷速度,Cortex-M3采用了Tail-Chaining中斷技術(shù),完全基于硬件進(jìn)行中斷處理,最多可減少12個時鐘周期數(shù),在實(shí)際應(yīng)用中可減少70%中斷。 單片機(jī)的另外一個特點(diǎn)是調(diào)試工具非常便宜,不象ARM的仿真器動輒幾千上萬。針對這個特點(diǎn),Cortex-M3采用了新型的單線調(diào)試(Single Wire)技術(shù),專門拿出一個引腳來做調(diào)試,從而節(jié)約了大筆的調(diào)試工具費(fèi)用。同時,Cortex-M3中還集成了大部分存儲器控制器,這樣工程師可以直接在MCU外連接Flash,降低了設(shè)計難度和應(yīng)用障礙。 ARM Cortex-M3處理器結(jié)合了多種突破性技術(shù),令芯片供應(yīng)商提供超低費(fèi)用的芯片,僅33000門的內(nèi)核性能可達(dá)1.2DMIPS/MHz。該處理器還集成了許多緊耦合系統(tǒng)外設(shè),令系統(tǒng)能滿足下一代產(chǎn)品的控制需求。ARM公司希望Cortex-M3核的推出,能幫助單片機(jī)廠商實(shí). Cortex的優(yōu)勢應(yīng)該在于低功耗、低成本、高性能3者(或2者)的結(jié)合?! ortex如果能做到 合理的低功耗(肯定要比Arm7 & Arm9要低,但不大可能比430、PIC、AVR低) + 合理的高性能(10~50MIPS是比較可能出現(xiàn)的范圍) + 適當(dāng)?shù)牡统杀?1~5$應(yīng)該不會奇怪)。 簡單的低成本不大可能比典型的8位MCU低。對于已經(jīng)有8位MCU的廠商來說,比如Philips、Atmel、Freescale、Microchip還有ST和Silocon Lab,不大可能用Cortex來打自己的8位MCU。對于沒有8位MCU的廠商來說,當(dāng)然是另外一回事,但他們在國內(nèi)進(jìn)行推廣的實(shí)力在短期內(nèi)還不夠?! τ谝呀?jīng)有32位ARM的廠商來說,比如Philips、Atmel、ST,又不大可能用Cortex來打自己的Arm7/9,對他們來說,比較合理的定位把Cortex與Arm7/9錯開,即<40MIPS的性能+低于Arm7的價格,當(dāng)然功耗也會更低些;當(dāng)然這樣做的結(jié)果很可能是,斷了16位MCU的后路?! τ谌匀辉谕茝V16位MCU的廠商來說,比如Freescal、Microchip,處境比較尷尬,因?yàn)镃ortex基本上可以完全替代16位MCU。 所以,未來的1~2年,來自新廠商的Cortex比較值得期待-包括國內(nèi)的供應(yīng)商;對于已有32位ARM的廠商,情況比較有趣;對于16位MCU的廠商,反應(yīng)比較有意思?! £P(guān)于編程模式 Cortex-M3處理器采用ARMv7-M架構(gòu),它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構(gòu),Cortex-M3處理器不能執(zhí)行ARM指令集?! humb-2在Thumb指令集架構(gòu)(ISA)上進(jìn)行了大量的改進(jìn),它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能?! £P(guān)于工作模式 Cortex-M3處理器支持2種工作模式:線程模式和處理模式。在復(fù)位時處理器進(jìn)入“線程模式”,異常返回時也會進(jìn)入該模式,特權(quán)和用戶(非特權(quán))模式代碼能夠在“線程模式”下運(yùn)行?! 〕霈F(xiàn)異常模式時處理器進(jìn)入“處理模式”,在處理模式下,所有代碼都是特權(quán)訪問的?! £P(guān)于工作狀態(tài) Coretx-M3處理器有2種工作狀態(tài)?! humb狀態(tài):這是16位和32位“半字對齊”的Thumb和Thumb-2指令的執(zhí)行狀態(tài)。 調(diào)試狀態(tài):處理器停止并進(jìn)行調(diào)試,進(jìn)入該狀態(tài)。
標(biāo)簽: Cortex-M 技術(shù)參考手冊
上傳時間: 2013-12-04
上傳用戶:壞壞的華仔
PCA9546A 是一款I(lǐng)2C 多路復(fù)用器和開關(guān),能實(shí)現(xiàn)I2C 總線擴(kuò)展、電平轉(zhuǎn)換及總線功能恢復(fù)
上傳時間: 2013-11-07
上傳用戶:jesuson
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1