亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

多自動導(dǎo)引小車系統(tǒng)(AGVS)路徑規(guī)劃研究

  • TinyM0_Routine

    TinyM0配套教程】    * 【TinyM0配套教程】接口技術與可靠性設計(I2C器件應用方案)    * 【TinyM0配套教程】LPC1100系列Cortex-M0最小系統設計      * 【TinyM0配套教程】功能部件(SSP)     * 【TinyM0配套教程】接口技術與可靠性設計(UART器件應用方案)    * 【TinyM0配套教程】接口技術與可靠性設計(串行NOR Flash存儲方案)    * 【TinyM0配套教程】硬件體系結構(存儲器尋址)      * 【TinyM0配套教程】硬件體系結構(功率控制)     * 【TinyM0配套教程】硬件體系結構(時鐘系統)     * 【TinyM0配套教程】功能部件(LPC1100系列器件簡介、引腳連接模塊、GPIO)    * 【TinyM0配套教程】功能部件(定時器計數器)     * 【TinyM0配套教程】接口技術與可靠性設計(DC/DC應用指南)    * 【TinyM0配套教程】硬件體系結構(系統節拍定時器)     * 【TinyM0配套教程】硬件體系結構(系統控制模塊)      * 【TinyM0配套教程】接口技術與可靠性設計(ESD器件應用指南)    * 【TinyM0配套教程】功能部件(I2C)      * 【TinyM0配套教程】功能部件(WDT)      * 【TinyM0配套教程】功能部件(ADC)     * 【TinyM0配套教程】功能部件(UART)       * 【TinyM0配套教程】接口技術與可靠性設計(LDO應用指南)    * 【TinyM0配套教程】接口技術與可靠性設計(復位設計)

    標簽: Routine TinyM

    上傳時間: 2013-11-01

    上傳用戶:litianchu

  • PIC16系列單片機與PC機串行通信的軟硬件實現

     介紹一種運用PIC16F84單片機實現與PC機串行通信的方法,并給出其硬件接口電路及通信源程序。關鍵詞    異步串行通信    發送與接收    VB4 Win95 串口查詢法  1 前言    美國Microchip公司的PIC16系列單片機是一種新型的CMOS工藝的8位單片機。其中,PIC16FXX單片機的程序存儲器為電可擦除閃速存儲器(flash),可多次修改程序,甚至可以在線編程。PIC16F83和PIC16F84片內數據存儲器除RAM外,還有64字節的EEPROM,可以當作一般的或非易失性的數據存儲器使用,簡單方便。它還具有片內上電復位、延時電路、看門狗電路等。另外,PIC16系列單片機功耗極低,因而是一種非常適合在各種便攜式設備中使用的高性價比的單片機,并已經得到了越來越廣泛的應用。   但是在許多需要大量計算的運用中,還必須借助微機的強大數據處理能力。這樣必須通過通信電路實現PIC單片機與微機間的可靠數據傳輸。有的PIC16單片機內并沒有提供串行口,所以串行通信必須通過自己設計的硬件電路和通信軟件來實現。   下面介紹用查詢法實現異步串行通訊的方法。同時給出了用PIC16F84單片機的兩個I/O口模擬2線串行口的硬件接口電路、程序流程框圖、單片機內通信程序以及微機內的通信程序等。2 硬件實現方法與電路   PIC16F84的程序存儲器由1K×14的閃速(flash)存儲器構成,它只有13條I/O口,1個定時器,為了盡量節省單片機的軟硬件資源,采用下述異步串行通信的實現方法。   如圖1所示,PIC16F84在4MHz時鐘下,采用半雙工方式,可實現9600波特率的異步串行數據通信,1位停止位,8位數據位,無校驗位。接收和發送以低位在先(一般模式),采用軟件延時。為節省篇幅,單片機內的通信程序中未提供任何握手協議,用戶可根據自己的需要在軟件中加入握手方式。

    標簽: PIC 16 PC機 單片機

    上傳時間: 2014-12-27

    上傳用戶:偷心的海盜

  • 單片機應用開發實驗指導書

    單片機應用開發實驗指導書 實驗系統概述DICE-5103S是仿真與實驗相結合的多用途開發型實驗系統,自帶CPU,配有鍵盤及LED顯示,可獨立運行。用RAM型芯片作為程序存儲器,可直接修改程序。仿真實驗存儲器空間地址為0000H~7FFFH(32KB)。程序存儲器與片外數據存儲器共用。DICE-5103S自帶一個4×8的鍵盤,大多數鍵有兩個以上功能,實驗儀無上下檔鍵,具體功能取決于鍵的操作順序及當前實驗儀所處狀態。

    標簽: 單片機 應用開發 實驗指導書

    上傳時間: 2013-11-03

    上傳用戶:穿著衣服的大衛

  • 單片機指令系統原理

    單片機指令系統原理 51單片機的尋址方式 學習匯編程序設計,要先了解CPU的各種尋址法,才能有效的掌握各個命令的用途,尋址法是命令運算碼找操作數的方法。在我們學習的8051單片機中,有6種尋址方法,下面我們將逐一進行分析。 立即尋址 在這種尋址方式中,指令多是雙字節的,一般第一個字節是操作碼,第二個字節是操作數。該操作數直接參與操作,所以又稱立即數,有“#”號表示。立即數就是存放在程序存儲器中的常數,換句話說就是操作數(立即數)是包含在指令字節中的。 例如:MOV  A,#3AH這條指令的指令代碼為74H、3AH,是雙字節指令,這條指令的功能是把立即數3AH送入累加器A中。MOV  DPTR,#8200H在前面學單片機的專用寄存器時,我們已學過,DPTR是一個16位的寄存器,它由DPH及DPL兩個8位的寄存器組成。這條指令的意思就是把立即數的高8位(即82H)送入DPH寄存器,把立即數的低8位(即00H)送入DPL寄存器。這里也特別說明一下:在80C51單片機的指令系統中,僅有一條指令的操作數是16位的立即數,其功能是向地址指針DPTR傳送16位的地址,即把立即數的高8位送入DPH,低8位送入DPL。 直接尋址 直接尋址方式是指在指令中操作數直接以單元地址的形式給出,也就是在這種尋址方式中,操作數項給出的是參加運算的操作數的地址,而不是操作數。例如:MOV  A,30H  這條指令中操作數就在30H單元中,也就是30H是操作數的地址,并非操作數。 在80C51單片機中,直接地址只能用來表示特殊功能寄存器、內部數據存儲器以及位地址空間,具體的說就是:1、內部數據存儲器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區。20H-2FH地址單元。3、特殊功能寄存器。專用寄存器除以單元地址形式給出外,還可以以寄存器符號形式給出。例如下面我們分析的一條指令 MOV  IE,#85H 前面的學習我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV  IE,#85H 的形式表述,也可以MOV  80H,#85H的形式表述。 關于數據存儲器RAM的內部情況,請查看我們課程的第十二課。 直接尋址是唯一能訪問特殊功能寄存器的尋址方式! 大家來分析下面幾條指令:MOV  65H,A       ;將A的內容送入內部RAM的65H單元地址中MOV  A,direct    ;將直接地址單元的內容送入A中MOV  direct,direct;將直接地址單元的內容送直接地址單元MOV  IE,#85H      ;將立即數85H送入中斷允許寄存器IE 前面我們已學過,數據前面加了“#”的,表示后面的數是立即數(如#85H,就表示85H就是一個立即數),數據前面沒有加“#”號的,就表示后面的是一個地址地址(如,MOV 65H,A這條指令的65H就是一個單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個工作寄存器組共有32個通用寄存器,但在指令中只能使用當前寄存器組(工作寄存器組的選擇在前面專用寄存器的學習中,我們已知道,是由程序狀態字PSW中的RS1和RS0來確定的),因此在使用前常需要通過對PSW中的RS1、RS0位的狀態設置,來進行對當前工作寄存器組的選擇。2、部份專用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和進位位CY。 寄存器尋址方式是指操作數在寄存器中,因此指定了寄存器名稱就能得到操作數。例如:MOV A,R0這條指令的意思是把寄存器R0的內容傳送到累加器A中,操作數就在R0中。INC R3這條指令的意思是把寄存器R3中的內容加1 從前面的學習中我產應可以理解到,其實寄存器尋址方式就是對由PSW程序狀態字確定的工作寄存器組的R0-R7進行讀/寫操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數的地址,即操作數是通過寄存器間接得到的,因此稱為寄存器間接尋址。 MCS-51單片機規定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內部或外部數據存儲器的256個單元。為什么會是256個單元呢?我們知道,R0或者R1都是一個8位的寄存器,所以它的尋址空間就是2的八次方=256。例:MOV  R0,#30H  ;將值30H加載到R0中    MOV  A,@R0    ;把內部RAM地址30H內的值放到累加器A中    MOVX A,@R0    ;把外部RAM地址30H內的值放到累加器A中 大家想想,如果用DPTR做為間址寄存器,那么它的尋址范圍是多少呢?DPTR是一個16位的寄存器,所以它的尋址范圍就是2的十六次方=65536=64K。因用DPTR做為間址寄存器的尋址空間是64K,所以訪問片外數據存儲器時,我們通常就用DPTR做為間址寄存器。例:MOV   DPTR,#1234H  ;將DPTR值設為1234H(16位)    MOVX  A,@DPTR      ;將外部RAM或I/O地址1234H內的值放到累加器A中 在執行PUSH(壓棧)和POP(出棧)指令時,采用堆棧指針SP作寄存器間接尋址。例:PUSH  30H    ;把內部RAM地址30H內的值放到堆棧區中堆棧區是由SP寄存器指定的,如果執行上面這條命令前,SP為60H,命令執行后會把內部RAM地址30H內的值放到RAM的61H內。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個,R0、R1、DPTR、SP 寄存器間接尋址范圍總結:1、內部RAM低128單元。對內部RAM低128單元的間接尋址,應使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對外部RAM64KB的間接尋址,應使用@DPTR作間址尋址寄存器,其形式為:@DPTR。例如MOVX A,@DPTR;其功能是把DPTR指定的外部RAM的單元的內容送入累加器A中。外部RAM的低256單元是一個特殊的尋址區,除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如MOVX  A,@R0;這條指令的意思是,把R0指定的外部RAM單元的內容送入累加器A。 堆棧操作指令(PUSH和POP)也應算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問特殊功能寄存器??! 寄存器間接尋址也須以寄存器符號的形式表示,為了區別寄存器尋址我寄存器間接尋址的區別,在寄存器間接尋址方式式中,寄存器的名稱前面加前綴標志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計數器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時,把兩者的內容相加,所得到的結果作為操作數的地址。這種方式常用于訪問程序存儲器ROM中的數據表格,即查表操作。變址尋址只能讀出程序內存入的值,而不能寫入,也就是說變址尋址這種方式只能對程序存儲器進行尋址,或者說它是專門針對程序存儲器的尋址方式。例:MOVC  A,@A+DPTR這條指令的功能是把DPTR和A的內容相加,再把所得到的程序存儲器地址單元的內容送A假若指令執行前A=54H,DPTR=3F21H,則這條指令變址尋址形成的操作數地址就是54H+3F21H=3F75H。如果3F75H單元中的內容是7FH,則執行這條指令后,累加器A中的內容就是7FH。 變址尋址的指令只有三條,分別如下:JMP    @A+DPTRMOVC   A,@A+DPTRMOVC   A,@A+PC 第一條指令JMP @A+DPTR這是一條無條件轉移指令,這條指令的意思就是DPTR加上累加器A的內容做為一個16位的地址,執行JMP這條指令是,程序就轉移到A+DPTR指定的地址去執行。 第二、三條指令MOVC   A,@A+DPTR和MOVC   A,@A+PC指令這兩條指令的通常用于查表操作,功能完全一樣,但使用起來卻有一定的差別,現詳細說明如下。我們知道,PC是程序指針,是十六位的。DPTR是一個16位的數據指針寄存器,按理,它們的尋址范圍都應是64K。我們在學習特殊功能寄存器時已知道,程序計數器PC是始終跟蹤著程序的執行的。也就是說,PC的值是隨程序的執行情況自動改變的,我們不可以隨便的給PC賦值。而DPTR是一個數據指針,我們就可以給空上數據指針DPTR進行賦值。我們再看指令MOVC   A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個地址,而PC是固定的,累加器A是一個8位的寄存器,它的尋址范圍是256個地址單元。講到這里,大家應可明白,MOVC   A,@A+PC這條指令的尋址范圍其實就是只能在當前指令下256個地址單元。所在,這在我們實際應用中,可能就會有一個問題,如果我們需要查詢的數據表在256個地址單元之內,則可以用MOVC   A,@A+PC這條指令進行查表操作,如果超過了256個單元,則不能用這條指令進行查表操作。剛才我們已說到,DPTR是一個數據指針,這個數據指針我們可以給它賦值操作的。通過賦值操作。我們可以使MOVC   A,@A+DPTR這條指令的尋址范圍達到64K。這就是這兩條指令在實際應用當中要注意的問題。 變址尋址方式是MCS-51單片機所獨有的一種尋址方式。 位尋址 80C51單片機有位處理功能,可以對數據位進行操作,因此就有相應的位尋址方式。所謂位尋址,就是對內部RAM或可位尋址的特殊功能寄存器SFR內的某個位,直接加以置位為1或復位為0。 位尋址的范圍,也就是哪些部份可以進行位尋址: 1、我們在第十二課學習51單片機的存儲器結構時,我們已知道在單片機的內部數據存儲器RAM的低128單元中有一個區域叫位尋址區。它的單元地址是20H-2FH。共有16個單元,一個單元是8位,所以位尋址區共有128位。這128位都單獨有一個位地址,其位地址的名字就是00H-7FH。這里就有一個比較麻煩的問題需要大家理解清楚了。我們在前面的學習中00H、01H。。。。7FH等等,所表示的都是一個字節(或者叫單元地址),而在這里,這些數據都變成了位地址。我們在指令中,或者在程序中如何來區分它是一個單元地址還是一個位地址呢?這個問題,也就是我們現在正在研究的位尋址的一個重要問題。其實,區分這些數據是位地址還是單元地址,我們都有相應的指令形式的。這個問題我們在后面的指令系統學習中再加以論述。 2、對專用寄存器位尋址。這里要說明一下,不是所有的專用寄存器都可以位尋址的。具體哪些專用寄存器可以哪些專用寄存器不可以,請大家回頭去看看我們前面關于專用寄存器的相關文章。一般來說,地址單元可以被8整除的專用寄存器,通常都可以進行位尋址,當然并不是全部,大家在應用當中應引起注意。 專用寄存器的位尋址表示方法: 下面我們以程序狀態字PSW來進行說明 D7 D6 D5 D4 D3 D2 D1 D0 CY   AC  F0  RS1  RS0  OV    P  1、直接使用位地址表示:看上表,PSW的第五位地址是D5,所以可以表示為D5H   MOV  C,D5H 2、位名稱表示:表示該位的名稱,例如PSW的位5是F0,所以可以用F0表示   MOV  C,F0 3、單元(字節)地址加位表示:D0H單元位5,表示為DOH.5    MOV  C,D0H.5 4、專用寄存器符號加位表示:例如PSW.5    MOV C,PSW.5 這四種方法實現的功能都是相同的,只是表述的方式不同而已。 例題:   1. 說明下列指令中源操作數采用的尋址方式。   MOV R5,R7 答案:寄存器尋址方式   MOV A,55H 直接尋址方式   MOV A,#55H 立即尋址方式   JMP @A+DPTR 變址尋址方式   MOV 30H,C 位尋址方式   MOV A,@R0 間接尋址方式   MOVX A,@R0 間接尋址方式 改錯題   請判斷下列的MCS-51單片機指令的書寫格式是否有錯,若有,請說明錯誤原因。   MOV R0,@R3 答案:間址寄存器不能使用R2~R7。   MOVC A,@R0+DPTR 變址尋址方式中的間址寄存器不可使用R0,只可使用A。   ADD R0,R1 運算指令中目的操作數必須為累加器A,不可為R0。   MUL AR0 乘法指令中的乘數應在B寄存器中,即乘法指令只可使用AB寄存器組合。

    標簽: 單片機指令 系統原理

    上傳時間: 2013-11-11

    上傳用戶:caozhizhi

  • Cortex-M3 技術參考手冊

    Cortex-M3 技術參考手冊 Cortex-M3是一個32位的核,在傳統的單片機領域中,有一些不同于通用32位CPU應用的要求。譚軍舉例說,在工控領域,用戶要求具有更快的中斷速度,Cortex-M3采用了Tail-Chaining中斷技術,完全基于硬件進行中斷處理,最多可減少12個時鐘周期數,在實際應用中可減少70%中斷。   單片機的另外一個特點是調試工具非常便宜,不象ARM的仿真器動輒幾千上萬。針對這個特點,Cortex-M3采用了新型的單線調試(Single Wire)技術,專門拿出一個引腳來做調試,從而節約了大筆的調試工具費用。同時,Cortex-M3中還集成了大部分存儲器控制器,這樣工程師可以直接在MCU外連接Flash,降低了設計難度和應用障礙。   ARM Cortex-M3處理器結合了多種突破性技術,令芯片供應商提供超低費用的芯片,僅33000門的內核性能可達1.2DMIPS/MHz。該處理器還集成了許多緊耦合系統外設,令系統能滿足下一代產品的控制需求。ARM公司希望Cortex-M3核的推出,能幫助單片機廠商實.  Cortex的優勢應該在于低功耗、低成本、高性能3者(或2者)的結合。  Cortex如果能做到 合理的低功耗(肯定要比Arm7 & Arm9要低,但不大可能比430、PIC、AVR低) + 合理的高性能(10~50MIPS是比較可能出現的范圍) + 適當的低成本(1~5$應該不會奇怪)。  簡單的低成本不大可能比典型的8位MCU低。對于已經有8位MCU的廠商來說,比如Philips、Atmel、Freescale、Microchip還有ST和Silocon Lab,不大可能用Cortex來打自己的8位MCU。對于沒有8位MCU的廠商來說,當然是另外一回事,但他們在國內進行推廣的實力在短期內還不夠?! τ谝呀浻?2位ARM的廠商來說,比如Philips、Atmel、ST,又不大可能用Cortex來打自己的Arm7/9,對他們來說,比較合理的定位把Cortex與Arm7/9錯開,即<40MIPS的性能+低于Arm7的價格,當然功耗也會更低些;當然這樣做的結果很可能是,斷了16位MCU的后路。  對于仍然在推廣16位MCU的廠商來說,比如Freescal、Microchip,處境比較尷尬,因為Cortex基本上可以完全替代16位MCU。  所以,未來的1~2年,來自新廠商的Cortex比較值得期待-包括國內的供應商;對于已有32位ARM的廠商,情況比較有趣;對于16位MCU的廠商,反應比較有意思。  關于編程模式  Cortex-M3處理器采用ARMv7-M架構,它包括所有的16位Thumb指令集和基本的32位Thumb-2指令集架構,Cortex-M3處理器不能執行ARM指令集?! humb-2在Thumb指令集架構(ISA)上進行了大量的改進,它與Thumb相比,具有更高的代碼密度并提供16/32位指令的更高性能?! £P于工作模式  Cortex-M3處理器支持2種工作模式:線程模式和處理模式。在復位時處理器進入“線程模式”,異常返回時也會進入該模式,特權和用戶(非特權)模式代碼能夠在“線程模式”下運行。  出現異常模式時處理器進入“處理模式”,在處理模式下,所有代碼都是特權訪問的?! £P于工作狀態  Coretx-M3處理器有2種工作狀態?! humb狀態:這是16位和32位“半字對齊”的Thumb和Thumb-2指令的執行狀態。  調試狀態:處理器停止并進行調試,進入該狀態。

    標簽: Cortex-M 技術參考手冊

    上傳時間: 2013-12-04

    上傳用戶:壞壞的華仔

  • PCA9673—帶中斷、復位的16位Fm+ I2C-bus遠程I/O口

    PCA9673是PCF8575的升級產品,提供快速模式FM+的I2C-bus速度(1MHz),因此,輸出能支持PWM LED調光功能。具有高I2C總線驅動能力(30mA),所以不需要總線緩沖器就能掛接很多器件。且灌電流能力高(200mA),能同21時驅動多個25mA的LED,允許多個器件(16個)掛接在總線上而不會產生地址沖突。  

    標簽: C-bus 9673 PCA Fm

    上傳時間: 2013-11-14

    上傳用戶:evil

  • PCA9535 PCA9535C—帶中斷的低功耗16位I2C

    PCA9535/ PCA9535C是24腳的CMOS器件,它們提供了I2C/SMBus應用中的16位通用并行輸入/輸出口(GPIO)的擴展,該器件使PHILIPS的I2C I/O擴展器件系列得到增強。改進的特性包括更高的驅動能力、5V I/O口、更低的電源電流、單獨的I/O口配置、更小的封裝形式。當應用中需要額外的I/O口來連接ACPI電源開關、傳感器、按鈕、LED、風扇等時,可使用I/O擴展器件實現簡單的解決方案。

    標簽: 9535 PCA 9535C I2C

    上傳時間: 2013-10-16

    上傳用戶:604759954

  • SDRAM的原理和時序

    SDRAM的原理和時序 SDRAM內存模組與基本結構 我們平時看到的SDRAM都是以模組形式出現,為什么要做成這種形式呢?這首先要接觸到兩個概念:物理Bank與芯片位寬。1、 物理Bank 傳統內存系統為了保證CPU的正常工作,必須一次傳輸完CPU在一個傳輸周期內所需要的數據。而CPU在一個傳輸周期能接受的數 據容量就是CPU數據總線的位寬,單位是bit(位)。當時控制內存與CPU之間數據交換的北橋芯片也因此將內存總線的數據位寬 等同于CPU數據總線的位寬,而這個位寬就稱之為物理Bank(Physical Bank,下文簡稱P-Bank)的位寬。所以,那時的內存必須要組織成P-Bank來與CPU打交道。資格稍老的玩家應該還記 得Pentium剛上市時,需要兩條72pin的SIMM才能啟動,因為一條72pin -SIMM只能提供32bit的位寬,不能滿足Pentium的64bit數據總線的需要。直到168pin-SDRAM DIMM上市后,才可以使用一條內存開機。不過要強調一點,P-Bank是SDRAM及以前傳統內存家族的特有概念,RDRAM中將以通道(Channel)取代,而對 于像Intel E7500那樣的并發式多通道DDR系統,傳統的P-Bank概念也不適用。2、 芯片位寬 上文已經講到SDRAM內存系統必須要組成一個P-Bank的位寬,才能使CPU正常工作,那么這個P-Bank位寬怎么得到呢 ?這就涉及到了內存芯片的結構。 每個內存芯片也有自己的位寬,即每個傳輸周期能提供的數據量。理論上,完全可以做出一個位寬為64bit的芯片來滿足P-Ban k的需要,但這對技術的要求很高,在成本和實用性方面也都處于劣勢。所以芯片的位寬一般都較小。臺式機市場所用的SDRAM芯片 位寬最高也就是16bit,常見的則是8bit。這樣,為了組成P-Bank所需的位寬,就需要多顆芯片并聯工作。對于16bi t芯片,需要4顆(4×16bit=64bit)。對于8bit芯片,則就需要8顆了。以上就是芯片位寬、芯片數量與P-Bank的關系。P-Bank其實就是一組內存芯片的集合,這個集合的容量不限,但這個集合的 總位寬必須與CPU數據位寬相符。隨著計算機應用的發展,

    標簽: SDRAM 時序

    上傳時間: 2013-11-04

    上傳用戶:zhuimenghuadie

  • PIC單片機實用教程基礎篇

    PIC單片機實用教程基礎篇+提高篇  PIC單片機(Peripheral Interface Controller)是一種用來開發的去控制外圍設備的集成電路(IC)。一種具有分散作用(多任務)功能的CPU。與人類相比,大腦就是CPU,PIC 共享的部分相當于人的神經系統?! IC 單片機是一個小的計算機  PIC單片機有計算功能和記憶內存像CPU并由軟件控制允行。然而,處理能力—存儲器容量卻很有限,這取決于PIC的類型。但是它們的最高操作頻率大約都在20MHz左右,存儲器容量用做寫程序的大約1K—4K字節。   時鐘頻率與掃描程序的時間和執行程序指令的時間有關系。但不能僅以時鐘頻率來判斷程序處理能力,它還隨處理裝置的體系結構改變(1*)。如果是同樣的體系結構,時鐘頻率較高的處理能力會較強。   這里用字來解釋程序容量。用一個指令(2*)表示一個字。通常用字節(3*)來表示存儲器(4*)容量。一個字節有8位,每位由1或0組成。PIC16F84A單片機 的指令由14位構成。當把1K個子轉換成位為:1 x 1,024 x 14 = 14,336位。再轉換為字節為:14,336/(8 x 1,024) = 1.75K。在計算存儲器的容量時,我們規定 1G 字節 = 1,024M 字節, 1M 字節 = 1,024K 字節, 1K 字節= 1,024 字節. 它們不是以1000為倍數,因為這是用二進制計算的緣故。   1*計算機的物理結構,包括組織結構、容量、該計算機的CPU、存儲器以及輸入輸出設備間的互連。經常特指CPU的組織結構,包括它的寄存器、標志、總線、算術邏輯部件、指令譯碼與執行機制以及定時和控制部件。  2*指出某種操作并標識其操作數(如果有操作數的話)的一種語言構造  3*作為一個單位來操作(運算)的一個二進制字符串,通常比計算機的一個字短?! ?*處理機內的所有可尋址存儲空間以及用于執行指令的其它內存儲器。  在計算存儲器的容量時,我們規定 1G 字節 = 1,024M 字節, 1M 字節 = 1,024K 字節, 1K 字節= 1,024 字節. 它們不是以1000為倍數,因為這是用二進制計算的緣故。   用PIC單片機使電路做的很小巧變得可能?! ∫驗镻IC單片機可以把計算部分、內存、輸入和輸出等都做在一個芯片內。所以她工作起來效率很高、功能也自由定義還可以靈活的適應不同的控制要求,而不必去更換不同的IC。這樣電路才有可能做的很小巧。

    標簽: PIC 單片機 實用教程

    上傳時間: 2013-10-15

    上傳用戶:sxdtlqqjl

  • Keil 軟件實例教程 2

    Keil 軟件實例教程 2 單片機開發中除必要的硬件外,同樣離不開軟件,我們寫的匯編語言源程序要變為CPU可以執行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。機器匯編是通過匯編軟件將源程序變為機器碼,用于MCS-51 單片機的匯編軟件有早期的A51,隨著單片機開發技術的不斷發展,從普遍使用匯編語言到逐漸使用高級語言開發,單片機的開發軟件也在不斷發展,Keil 軟件是目前最流行開發MCS-51 系列單片機的軟件,這從近年來各仿真機廠商紛紛宣布全面支持Keil 即可看出。Keil 提供了包括C編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境(uVision)將這些部份組合在一起。運行Keil 軟件需要Pentium 或以上的CPU,16MB或更多RAM、20M 以上空閑的硬盤空間、WIN98、NT、WIN2000、WINXP等操作系統。掌握這一軟件的使用對于使用51 系列單片機的愛好者來說是十分必要的,如果你使用C 語言編程,那么Keil 幾乎就是你的不二之選(目前在國內你只能買到該軟件、而你買的仿真機也很可能只支持該軟件),即使不使用C 語言而僅用匯編語言編程,其方便易用的集成環境、強大的軟件仿真調試工具也會令你事半功倍。我們將通過一些實例來學習Keil 軟件的使用,在這一部份我們將學習如何輸入源程序,建立工程、對工程進行詳細的設置,以及如何將源程序變為目標代碼。圖1 所示電路圖使用89C51 單片機作為主芯片,這種單片機性屬于MCS-51 系列,其內部有4K 的FLASH ROM,可以反復擦寫,非常適于做實驗。89C51 的P1 引腳上接8 個發光二極管,P3.2~P3.4 引腳上接4 個按鈕開關,我們的第一個任務是讓接在P1 引腳上的發光二極管依次循環點亮。 一、Keil 工程的建立首先啟動Keil 軟件的集成開發環境,這里假設讀者已正確安裝了該軟件,可以從桌面上直接雙擊uVision 的圖標以啟動該軟件。UVison啟動后,程序窗口的左邊有一個工程管理窗口,該窗口有3 個標簽,分別是Files、Regs、和Books,這三個標簽頁分別顯示當前項目的文件結構、CPU 的寄存器及部份特殊功能寄存器的值(調試時才出現)和所選CPU 的附加說明文件,如果是第一次啟動Keil,那么這三個標簽頁全是空的。

    標簽: Keil 軟件 教程

    上傳時間: 2013-10-26

    上傳用戶:ruan2570406

主站蜘蛛池模板: 长宁区| 会理县| 无锡市| 二连浩特市| SHOW| 工布江达县| 肇庆市| 和静县| 沈丘县| 遵义市| 濉溪县| 靖边县| 来宾市| 山丹县| 江西省| 新乐市| 淄博市| 静乐县| 三穗县| 潍坊市| 东山县| 普安县| 甘谷县| 阿合奇县| 兰州市| 张家港市| 曲靖市| 陈巴尔虎旗| 卓资县| 昭平县| 海城市| 珲春市| 佛坪县| 新宾| 司法| 成安县| 富平县| 平陆县| 苍梧县| 乐昌市| 盐山县|