国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

初學(xué)51單片機(jī)幾個(gè)不易掌握的概念

發(fā)布時(shí)間:2013-8-27 11:21    發(fā)布者:edu118gct
關(guān)鍵詞: 51單片機(jī)
隨著電子技術(shù)的迅速發(fā)展,計(jì)算機(jī)已深入地滲透到我們的生活中,許多電子愛好者開始學(xué)習(xí)單片機(jī)
識(shí),但單片機(jī)的內(nèi)容比較抽象,相對(duì)電子愛好者已熟悉的模擬電路、數(shù)字電路,單片機(jī)中有一些新的
概念,這些概念非常基本以至于一般作者不屑去談,教材自然也不會(huì)很深入地講解這些概念,但這些
內(nèi)容又是學(xué)習(xí)中必須要理解的,下面就結(jié)合本人的學(xué)習(xí)、教學(xué)經(jīng)驗(yàn),對(duì)這些最基本概念作一說明,希
望對(duì)自學(xué)者有所幫助。
  一、總線:我們知道,一個(gè)電路總是由元器件通過電線連接而成的,在模擬電路中,連線并不成
為一個(gè)問題,因?yàn)楦髌骷g一般是串行關(guān)系,各器件之間的連線并不很多,但計(jì)算機(jī)電路卻不一樣,
它是以微處理器為核心,各器件都要與微處理器相連,各器件之間的工作必須相互協(xié)調(diào),所以就需要
的連線就很多了,如果仍如同模擬電路一樣,在各微處理器和各器件間單獨(dú)連線,則線的數(shù)量將多得
驚人,所以在微處理機(jī)中引入了總線的概念,各個(gè)器件共同享用連線,所有器件的8根數(shù)據(jù)線全部接
到8根公用的線上,即相當(dāng)于各個(gè)器件并聯(lián)起來,但僅這樣還不行,如果有兩個(gè)器件同時(shí)送出數(shù)據(jù),
一個(gè)為0,一個(gè)為1,那么,接收方接收到的究竟是什么呢?這種情況是不允許的,所以要通過控制線
進(jìn)行控制,使器件分時(shí)工作,任何時(shí)候只能有一個(gè)器件發(fā)送數(shù)據(jù)(可以有多個(gè)器件同時(shí)接收)。器件
的數(shù)據(jù)線也就被稱為數(shù)據(jù)總線,器件所有的控制線被稱為控制總線。在單片機(jī)內(nèi)部或者外部存儲(chǔ)器及
其它器件中有存儲(chǔ)單元,這些存儲(chǔ)單元要被分配地址,才能使用,分配地址當(dāng)然也是以電信號(hào)的形式
給出的,由于存儲(chǔ)單元比較多,所以,用于地址分配的線也較多,這些線被稱為地址總線。
  二、數(shù)據(jù)、地址、指令:之所以將這三者放在一起,是因?yàn)檫@三者的本質(zhì)都是一樣的──數(shù)字,
或者說都是一串‘0’和‘1’ 組成的序列。換言之,地址、指令也都是數(shù)據(jù)。指令:由單片機(jī)芯片
的設(shè)計(jì)者規(guī)定的一種數(shù)字,它與我們常用的指令助記符有著嚴(yán)格的一一對(duì)應(yīng)關(guān)系,不可以由單片機(jī)的
開發(fā)者更改。地址:是尋找單片機(jī)內(nèi)部、外部的存儲(chǔ)單元、輸入輸出口的依據(jù),內(nèi)部單元的地址值已
由芯片設(shè)計(jì)者規(guī)定好,不可更改,外部的單元可以由單片機(jī)開發(fā)者自行決定,但有一些地址單元是一
定要有的(詳見程序的執(zhí)行過程)。數(shù)據(jù):這是由微處理機(jī)處理的對(duì)象,在各種不同的應(yīng)用電路中各
不相同,一般而言,被處理的數(shù)據(jù)可能有這么幾種情況:
1·地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2·方式字或控制字(如MOV TMOD,#3),3即是控制字。
3·常數(shù)(如MOV TH0,#10H)10H即定時(shí)常數(shù)。
4·實(shí)際輸出值(如P1口接彩燈,要燈全亮,則執(zhí)行指令:MOV P1,#0FFH,要燈全暗,則執(zhí)行指令:
MOV P1,#00H)這里0FFH和00H都是實(shí)際輸出值。又如用于LED的字形碼,也是實(shí)際輸出的值。
理解了地址、指令的本質(zhì),就不難理解程序運(yùn)行過程中為什么會(huì)跑飛,會(huì)把數(shù)據(jù)當(dāng)成指令來執(zhí)行了。
  三、P0口、P2口和P3的第二功能用法初學(xué)時(shí)往往對(duì)P0口、P2口和P3口的第二功能用法迷惑不解,
認(rèn)為第二功能和原功能之間要有一個(gè)切換的過程,或者說要有一條指令,事實(shí)上,各端口的第二功能
完全是自動(dòng)的,不需要用指令來轉(zhuǎn)換。如P3.6、P3.7分別是WR、RD信號(hào),當(dāng)微片理機(jī)外接RAM或有外
部I/O口時(shí),它們被用作第二功能,不能作為通用I/O口使用,只要一微處理機(jī)一執(zhí)行到MOVX指令,就
會(huì)有相應(yīng)的信號(hào)從P3.6或P3.7送出,不需要事先用指令說明。事實(shí)上‘不能作為通用I/O口使用’也
并不是‘不能’而是(使用者)‘不會(huì)’將其作為通用I/O口使用。你完全可以在指令中按排一條
SETB P3.7的指令,并且當(dāng)單片機(jī)執(zhí)行到這條指令時(shí),也會(huì)使P3.7變?yōu)楦唠娖剑褂谜卟粫?huì)這么去
做,因?yàn)檫@通常這會(huì)導(dǎo)致系統(tǒng)的崩潰(即死機(jī))。
  四、程序的執(zhí)行過程單片機(jī)在通電復(fù)位后8051內(nèi)的程序計(jì)數(shù)器(PC)中的值為‘0000’,所以程
序總是從‘0000’單元開始執(zhí)行,也就是說:在系統(tǒng)的ROM中一定要存在‘0000’這個(gè)單元,并且在
‘0000’單元中存放的一定是一條指令。
  五、堆棧堆棧是一個(gè)區(qū)域,是用來存放數(shù)據(jù)的,這個(gè)區(qū)域本身沒有任何特殊之處,就是內(nèi)部RAM
的一部份,特殊的是它存放和取用數(shù)據(jù)的方式,即所謂的‘先進(jìn)后出,后進(jìn)先出’,并且堆棧有特殊
的數(shù)據(jù)傳輸指令,即‘PUSH’和‘POP’,有一個(gè)特殊的專為其服務(wù)的單元,即堆棧指針SP,每當(dāng)執(zhí)
一次PUSH指令時(shí),SP就(在原來值的基礎(chǔ)上)自動(dòng)加1,每當(dāng)執(zhí)行一次POP指令,SP就(在原來值的基
礎(chǔ)上)自動(dòng)減1。由于SP中的值可以用指令加以改變,所以只要在程序開始階段更改了SP的值,就可
以把堆棧設(shè)置在規(guī)定的內(nèi)存單元中,如在程序開始時(shí),用一條MOV SP,#5FH指令,就時(shí)把堆棧設(shè)置在
從內(nèi)存單元60H開始的單元中。一般程序的開頭總有這么一條設(shè)置堆棧指針的指令,因?yàn)殚_機(jī)時(shí),SP
的初始值為07H,這樣就使堆棧從08H單元開始往后,而08H到1FH這個(gè)區(qū)域正是8031的第二、三、四工
作寄存器區(qū),經(jīng)常要被使用,這會(huì)造成數(shù)據(jù)的渾亂。不同作者編寫程序時(shí),初始化堆棧指令也不完全
相同,這是作者的習(xí)慣問題。當(dāng)設(shè)置好堆棧區(qū)后,并不意味著該區(qū)域成為一種專用內(nèi)存,它還是可以
象普通內(nèi)存區(qū)域一樣使用,只是一般情況下編程者不會(huì)把它當(dāng)成普通內(nèi)存用了。
  六、單片機(jī)的開發(fā)過程這里所說的開發(fā)過程并不是一般書中所說的從任務(wù)分析開始,我們假設(shè)已
設(shè)計(jì)并制作好硬件,下面就是編寫軟件的工作。在編寫軟件之前,首先要確定一些常數(shù)、地址,事實(shí)
上這些常數(shù)、地址在設(shè)計(jì)階段已被直接或間接地確定下來了。如當(dāng)某器件的連線設(shè)計(jì)好后,其地址也
就被確定了,當(dāng)器件的功能被確定下來后,其控制字也就被確定了。然后用文本編緝器(如EDIT、
CCED等)編寫軟件,編寫好后,用編譯器對(duì)源程序文件編譯,查錯(cuò),直到?jīng)]有語法錯(cuò)誤,除了極簡單
的程序外,一般應(yīng)用仿真機(jī)對(duì)軟件進(jìn)行調(diào)試,直到程序運(yùn)行正確為止。運(yùn)行正確后,就可以寫片(將
程序固化在EPROM中)。在源程序被編譯后,生成了擴(kuò)展名為HEX的目標(biāo)文件,一般編程器能夠識(shí)別這
種格式的文件,只要將此文件調(diào)入即可寫片。在此,為使大家對(duì)整個(gè)過程有個(gè)認(rèn)識(shí),舉一例說明:
ORG 0000H
LJMP START
ORG 040H
START:
MOV SP,#5FH ;設(shè)堆棧
LOOP:
NOP
LJMP LOOP ;循環(huán)
END ;結(jié)束
表1
:03000000020040BB
:0700400075815F000200431F
表2
02 00 40 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF 75 81 5F 00 02 00 43
表3
表1為源程序,表2是匯編后得到的HEX文件,表3是由HEX文件轉(zhuǎn)換成的目標(biāo)文件,也就是最終寫入
EPROM的文件,它由編程器轉(zhuǎn)換得到,也可以由HEXBIN一類的程序轉(zhuǎn)換得到。學(xué)過手工匯編者應(yīng)當(dāng)不
難找出表3與表1的一一對(duì)應(yīng)關(guān)系,值得注意的是從02 00 40后開始的一長串‘FF’,直到75 81,這
是由于偽指令:ORG 040H造成的結(jié)果。
  七、仿真、仿真機(jī)仿真是單片機(jī)開發(fā)過程中非常重要的一個(gè)環(huán)節(jié),除了一些極簡單的任務(wù),一般
產(chǎn)品開發(fā)過程中都要進(jìn)行仿真,仿真的主要目的是進(jìn)行軟件調(diào)試,當(dāng)然借助仿真機(jī),也能進(jìn)行一些硬
件排錯(cuò)。一塊單片機(jī)應(yīng)用電路板包括單片機(jī)部份及為達(dá)到使用目的而設(shè)計(jì)的應(yīng)用電路,仿真就是利用
仿真機(jī)來代替應(yīng)用電路板(稱目標(biāo)機(jī))的單片機(jī)部份,對(duì)應(yīng)用電路部份進(jìn)行測試、調(diào)試。仿真有CPU
仿真和ROM仿真兩種,所謂CPU仿真是指用仿真機(jī)代替目標(biāo)機(jī)的CPU,由仿真機(jī)向目標(biāo)機(jī)的應(yīng)用電路部
份提供各種信號(hào)、數(shù)據(jù),進(jìn)行調(diào)試的方法。這種仿真可以通過單步運(yùn)行、連續(xù)運(yùn)行等多種方法來運(yùn)行
程序,并能觀察到單片機(jī)內(nèi)部的變化,便于改正程序中的錯(cuò)誤。所謂ROM仿真,就是用仿真機(jī)代替目
標(biāo)機(jī)的ROM,目標(biāo)機(jī)的CPU工作時(shí),從仿真機(jī)中讀取程序,并執(zhí)行。這種仿真其實(shí)就是將仿真機(jī)當(dāng)成一
片EPROM,只是省去了擦片、寫片的麻煩,并沒有多少調(diào)試手段可言。通常這是二種不同類型的仿真
機(jī),也就是說,一臺(tái)仿真機(jī)不能既做CPU仿真,又做ROM仿真。可能的情況下,當(dāng)然以CPU仿真好。
專業(yè)單片機(jī)、嵌入式專業(yè)學(xué)習(xí)754634522

本文地址:http://m.qingdxww.cn/thread-119984-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
edu118gct 發(fā)表于 2013-9-21 14:52:42
edu118gct 發(fā)表于 2013-9-10 11:34
很不錯(cuò),專業(yè)嵌入式、單片機(jī)學(xué)習(xí)技術(shù)交流754634522

專業(yè)的,必須頂起!!
edu118gct 發(fā)表于 2013-9-10 11:34:12
很不錯(cuò),專業(yè)嵌入式、單片機(jī)學(xué)習(xí)技術(shù)交流754634522
edu118gct 發(fā)表于 2013-10-8 12:07:59
學(xué)習(xí)這么簡單
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評(píng)估工具包演示CAN轉(zhuǎn)USB橋接器以及基于CAN的主機(jī)和自舉程序應(yīng)用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級(jí)模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲国产成人精彩精品 | 久色 | 好男人官网在线观看 | 亚色国产| 久久久国产精品视频 | 成人在线观看一区 | 一本毛片 | 天堂色区 | 国产大片中文字幕在线观看 | 国产a精品三级 | 欧美视频一 | 国产精品国产三级在线高清观看 | 国产成人精品1024在线 | 精品免费国产一区二区三区 | h精品导航| 日韩免费在线视频 | 国产一卡2卡3卡四卡国色天香 | 国产福利麻豆精品一区 | 亚洲欧美日韩高清在线看 | 久草国产精品 | 香蕉久久精品国产 | 2021国产精品视频 | 日本欧美中文字幕人在线 | 韩国一级片在线播放 | 日本高清免费不卡视频 | 成人a免费α片在线视频网站 | 在线精品欧美日韩 | 国产精品色 | 国产亚洲精aa在线观看不卡 | 欧美大片va欧美在线播放 | 日韩小视频网站 | 久久久精品国产 | 国产vr一区二区在线观看 | 杰罗德游戏在线观看完整版免费 | 韩国一级毛片视频 | 欧美黑人性大免费高清视频 | 四虎影视在线永久免费看黄 | 手机在线观看国产精选免费 | 亚洲一级毛片中文字幕 | 欧美成人另类 | 欧美日韩国产综合在线 |