『壹』 雙cup單片機程序如何寫
CUP是什麼東西啊;
你學會了單片機編程,在多幾個單片機又有何難的;
多機通信有的是手段和方法,簡單的就採用SPI、IIC、USART介面就是了
『貳』 單片機與雙片機有什麼區別
單片機是指一個集成在一塊晶元上的完整計算機系統。盡管它的大部分功能集成在一塊小晶元上,但是它具有一個完整計算機所需要的大部分部件:CPU、內存、內部和外部匯流排系統,目前大部分還會具有外存。同時集成諸如通訊介面、定時器,實時時鍾等外圍設備。而現在最強大的單片機系統甚至可以將聲音、圖像、網路、復雜的輸入輸出系統集成在一塊晶元上未聽說過雙片機!
『叄』 兩個單片機的串列通信
DAT EQU30H
SCANLED EQU32H
FSDAT EQU33H
DSDATEQU34H
ORG0000H
LJMPMAIN
ORG000BH
LJMPT0ISR
ORG0030H
MAIN:
MOVSP,#5FH
MOVTMOD,#21H
MOVTH0,#HIGH(65536-10000)
MOVTL0,#LOW(65536-10000)
MOVTH1,#0FDH
MOVTL1,#0FDH
SETBTR1
MOVSCON,#50H
MOVP2,#00H
MOVSCANLED,#0
MOV30H,#0
MOV31H,#0
MOVR2,#0
SETBEA
SETBET0
SETBTR0
LOOP:
JNBRI,LOOP
CLRRI
MOVA,SBUF
MOVFSDAT,A
SJMPLOOP
DEALDAT:
MOVA,FSDAT
MOVB,#10
DIVAB
MOV30H,A
MOV31H,B
RET
;--------------------
T0ISR:
PUSHACC
CLRTR0
MOVTH0,#0F4H
MOVTL0,#48H
SETBTR0
MOVDPTR,#LEDTAB1
T000:
MOVR0,#DAT
MOVA,SCANLED
ADDA,R0
MOVR0,A
MOVA,SCANLED
JNZT001
MOVP2,#02H
SJMPT0DIS
T001:
MOVP2,#01H
T0DIS:
MOVA,@R0
MOVCA,@A+DPTR
CPLA
MOVP0,A
INCSCANLED
MOVA,SCANLED
ANLA,#01H
MOVSCANLED,A
INCR2
CJNER2,#20,T0E
MOVR2,#0
LCALLDEALDAT
T0E:
POPACC
RETI
;--------------------
LEDTAB1:
DB0C0H ;"0" 00H
DB0F9H ;"1" 01H
DB0A4H ;"2" 02H
DB0B0H ;"3" 03H
DB99H ;"4" 04H
DB92H ;"5" 05H
DB82H ;"6" 06H
DB0F8H ;"7" 07H
DB80H ;"8" 08H
DB90H ;"9" 09H
DB88H ;"A" 0AH
DB83H ;"B" 0BH
DB0C6H ;"C" 0CH
DB0A1H ;"D" 0DH
DB86H ;"E" 0EH
DB8EH ;"F" 0FH
DB0FFH ;"" 10H
;--------------------
END
『肆』 有關雙串口單片機的問題
首先要有雙串口的單片機,比如W77E058、STC12C5A60S2或者STM32等等。
主要是保證數據不丟失,無論怎樣的協議和波特率,都要求單位時間內單片機到上位機的數據傳輸量要大於模塊到單片機的數據傳輸量。
『伍』 什麼是單片機,雙片機
目前只有單片機,沒有雙片機的。
一、關於單片機:
單片機(Microcontrollers)是一種集成電路晶元,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊矽片上構成的一個小而完善的微型計算機系統,在工業控制領域廣泛應用。從上世紀80年代,由當時的4位、8位單片機,發展到現在的300M的高速單片機。
二、單片機的基本結構:
1、運算器
運算器由運算部件——算術邏輯單元(Arithmetic & Logical Unit,簡稱ALU)、累加器和寄存器等幾部分組成。ALU的作用是把傳來的數據進行算術或邏輯運算,輸入來源為兩個8位數據,分別來自累加器和數據寄存器。ALU能完成對這兩個數據進行加、減、與、或、比較大小等操作,最後將結果存入累加器。例如,兩個數6和7相加,在相加之前,操作數6放在累加器中,7放在數據寄存器中,當執行加法指令時,ALU即把兩個數相加並把結果13存入累加器,取代累加器原來的內容6。
運算器有兩個功能:
(1) 執行各種算術運算。
(2) 執行各種邏輯運算,並進行邏輯測試,如零值測試或兩個值的比較。
運算器所執行全部操作都是由控制器發出的控制信號來指揮的,並且,一個算術操作產生一個運算結果,一個邏輯操作產生一個判決。
2、控制器
控制器由程序計數器、指令寄存器、指令解碼器、時序發生器和操作控制器等組成,是發布命令的「決策機構」,即協調和指揮整個微機系統的操作。其主要功能有:
(1) 從內存中取出一條指令,並指出下一條指令在內存中的位置。
(2) 對指令進行解碼和測試,並產生相應的操作控制信號,以便於執行規定的動作。
(3) 指揮並控制CPU、內存和輸入輸出設備之間數據流動的方向。
微處理器內通過內部匯流排把ALU、計數器、寄存器和控制部分互聯,並通過外部匯流排與外部的存儲器、輸入輸出介面電路聯接。外部匯流排又稱為系統匯流排,分為數據匯流排DB、地址匯流排AB和控制匯流排CB。通過輸入輸出介面電路,實現與各種外圍設備連接。
3、主要寄存器
(1)累加器A
累加器A是微處理器中使用最頻繁的寄存器。在算術和邏輯運算時它有雙功能:運算前,用於保存一個操作數;運算後,用於保存所得的和、差或邏輯運算結果。
(2)數據寄存器DR
數據寄存器通過數據匯流排向存儲器和輸入/輸出設備送(寫)或取(讀)數據的暫存單元。它可以保存一條正在解碼的指令,也可以保存正在送往存儲器中存儲的一個數據位元組等等。
(3)指令寄存器IR和指令解碼器ID
指令包括操作碼和操作數。
指令寄存器是用來保存當前正在執行的一條指令。當執行一條指令時,先把它從內存中取到數據寄存器中,然後再傳送到指令寄存器。當系統執行給定的指令時,必須對操作碼進行解碼,以確定所要求的操作,指令解碼器就是負責這項工作的。其中,指令寄存器中操作碼欄位的輸出就是指令解碼器的輸入。
(4)程序計數器PC
PC用於確定下一條指令的地址,以保證程序能夠連續地執行下去,因此通常又被稱為指令地址計數器。在程序開始執行前必須將程序的第一條指令的內存單元地址(即程序的首地址)送入PC,使它總是指向下一條要執行指令的地址。
(5)地址寄存器AR
地址寄存器用於保存當前CPU所要訪問的內存單元或I/O設備的地址。由於內存與CPU之間存在著速度上的差異,所以必須使用地址寄存器來保持地址信息,直到內存讀/寫操作完成為止。
顯然,當CPU向存儲器存數據、CPU從內存取數據和CPU從內存讀出指令時,都要用到地址寄存器和數據寄存器。同樣,如果把外圍設備的地址作為內存地址單元來看的話,那麼當CPU和外圍設備交換信息時,也需要用到地址寄存器和數據寄存器。
三、單片機的應用范圍:
單片機滲透到我們生活的各個領域,幾乎很難找到哪個領域沒有單片機的蹤跡。導彈的導航裝置,飛機上各種儀表的控制,計算機的網路通訊與數據傳輸,工業自動化過程的實時控制和數據處理,廣泛使用的各種智能IC卡,民用豪華轎車的安全保障系統,錄像機、攝像機、全自動洗衣機的控制,以及程式控制玩具、電子寵物等等,這些都離不開單片機。更不用說自動控制領域的機器人、智能儀表、醫療器械以及各種智能機械了。因此,單片機的學習、開發與應用將造就一批計算機應用與智能化控制的科學家、工程師。
單片機廣泛應用於儀器儀表、家用電器、醫用設備、航空航天、專用設備的智能化管理及過程式控制制等領域。
『陸』 雙單片機間串口雙向通信(十萬火急)
一個簡單的模擬實例,改一下就可以了
『柒』 什麼是單片機 雙片機
最簡單有效的方式:網路以下:「什麼是單片機 」,不就解決了。
『捌』 什麼是雙bank單片機
其實很簡單,就是說你裡面有幾塊存儲空間佔用同樣的地址,你用時,就需好用bank來選擇.PIC的單片機大部分都是這樣的.
如果是51系列的話,SST的是的,其它的義隆的,盛群的也是.
『玖』 雙核是不是雙MCU
你問的其實是兩個問題,
1. 什麼叫雙核?
2. 什麼叫MCU?
雙核:
毫無疑問雙內核應該具備兩個物理上的運算內核,而這兩個內核的設計應用方式卻大有文章可作…………英特爾的雙核心卻僅僅是使用兩個完整的CPU封裝在一起,連接到同一個前端匯流排上……
MCU(MicroControllerUnit)中文名稱為微控制單元,又稱單片微型計算機(SingleChipMicrocomputer),是指隨著大規模集成電路的出現及其發展,將計算機的CPU、RAM、ROM、定時數器和多種I/O介面集成在一片晶元上,形成晶元級的計算機,為不同的應用場合做不同組合控制。 其實,簡單點說,就是我們平時所說的單片機。
----------------------------------------------------------------------------------------------------
所以,雙核與MCU是兩個不太相乾的概念,一般來說雙核與CPU對應。
MCU追求小型化,一般來說,不做雙MCU。
如果你問的是雙核是不是雙CPU,可以簡單的說是。
如果你問的是雙MCU是不是雙核,可以簡單的說,是其中的一種。
『拾』 如何實現雙單片機模擬iic通信
對於疑問1:for循環已經把數據從主器件發送到從器件,沒錯,後面加那幾句是為了釋放數據匯流排,這是晶元協議已經規定了的,為什麼是scl=0;而sda=1呢,應該匯流排SCL與SDA都是線與關系,任意一個器件輸出低電平,都使該匯流排的信號變低,你可能會這么想:為什麼不是scl=1;delay();sda=1;delay();呢?那是因為當scl=1;sda=1;這是終止信號。對吧,這樣寫的話IIC將會停止工作。
對於疑問2:加這幾句也一樣,是晶元現已規定:無論是寫數據還是讀數據,寫完讀完之後需釋放匯流排,for循環語句的意思是:
for(i=0;i<8;i++)
{
scl=1; //拉高時鍾匯流排,開始讀數據
delay();
k=(k<<1)|sda; // 將讀取到的sda數據存放到k中,這里你可能有點無法理解,我舉個例子:剛開始k=0x00(系統默認),當讀取到的sda數據為1時,k=0x01;對吧,反之當讀取到的sda數據為0時,k=0x00;
scl=0;// 讀取完一個數據,拉低時鍾匯流排
delay();
}
就這樣循環8次,這樣一個位元組的數據就從主器件讀到了從器件了。對吧。
如果那個釋放匯流排你理解不了,你就記住,這是晶元協議規定,讀完或寫完都必須釋放匯流排。iic協議都是如此。
希望能幫助到你。