為解決現Z-Stack定位程序代碼量大,結構復雜等問題,提出一種基于TinyOS的CC2430定位方案。在分析TinyOS組件架構基礎上,設計實現盲節點、錨節點與匯聚節點間的無線通信以及匯聚節點與PC機的串口通信。在此基礎上實現PC對各錨節點RSSI(Received Signal Strength Indicator)寄存器值的正確讀取,確定實驗室環境下對數-常態無線傳播模型的具體參數,并采用質心算法來提高定位精度。實驗顯示,在由四個錨節點組成的4.8×3.6 m2矩形定位區域中,通過RSSI質心定位算法求得的盲節點坐標為(2.483 1,1.018 5),實際坐標為(2.40,1.20),誤差為0.199 6 m,表明較好地實現對盲節點的定位。
上傳時間: 2013-10-21
上傳用戶:whymatalab2
14.1本章導讀所有LPC1300系列Cortex-M3微控制器的16位定時器塊都相同。14.2基本配制CT16B0/1采用以下寄存器進行配制:1)管腳:CT16B0/1管腳必須通過IOCONFIG寄存器塊進行配制(見“I/O配制寄存器IOCON_PIOn”小節)。2)功率與外設時鐘:在SYSAHBCLKCTRL寄存器中置位位7與位8(見表“系統AHB時鐘控制寄存器位描述”)。
上傳時間: 2013-11-16
上傳用戶:liuwei6419
簡單電子琴的51單片機程序 #include<reg51.h> //包含51單片機寄存器定義的頭文件 sbit P14=P1^4; //將P14位定義為P1.4引腳 sbit P15=P1^5; //將P15位定義為P1.5引腳 sbit P16=P1^6; //將P16位定義為P1.6引腳 sbit P17=P1^7; //將P17位定義為P1.7引腳 unsigned char keyval; //定義變量儲存按鍵值 sbit sound=P2^0; //將sound定義為P2.0 unsigned int C; //全局變量,儲存定時器的定時常數 unsigned int f; //全局變量,儲存音階的頻率 //以下是C調低音的音頻宏定義 #define l_dao 262 //將“l_dao”宏定義為低音“1”的頻率262Hz #define l_re 294 //將“l_re” 宏定義為低音“2”的頻率294Hz #define l_mi 330 //將“l_mi” 宏定義為低音“3”的頻率330Hz #define l_fa 349 //將“l_fa” 宏定義為低音“4”的頻率349Hz #define l_sao 392 //將“l_sao”宏定義為低音“5”的頻率392Hz #define l_la 440 //將“l_la” 宏定義為低音“6”的頻率440Hz #define l_xi 494 //將“l_xi” 宏定義為低音“7”的頻率494Hz //以下是C調中音的音頻宏定義 #define dao 523 //將“dao”宏定義為低音“1”的頻率Hz #define re 587 //將“re” 宏定義為低音“2”的頻率Hz #define mi 659 //將“mi” 宏定義為低音“3”的頻率Hz #define fa 698 //將“fa” 宏定義為低音“4”的頻率Hz #define sao 784 //將“sao”宏定義為低音“5”的頻率Hz #define la 880 //將“la” 宏定義為低音“6”的頻率Hz #define xi 988 //將“xi” 宏定義為低音“7”的頻率Hz
上傳時間: 2013-11-09
上傳用戶:tian126vip
基于VHDL的FPGA和Nios II 實例精煉【作者:劉福奇;出版社:北京航空航天大學出版社】(本書優酷視頻地址:http://www.youku.com/playlist_show/id_5882081.html) 內容簡介:本書分為4個部分:Quartus Ⅱ軟件的基本操作、VHDL語法介紹、FPGA設計實例和Nios Ⅱ設計實例;總結了編者幾年來的FPGA設計經驗,力求給初學者或是想接觸這方面知識的讀者提供一種快速入門的方法;適合電子相關專業的大學生、FPGA的初學者以及對FPGA有興趣的電子工程師。初學者可以按照步驟學習。本書中提及到時間計算問題,不光提出有時間戳的方法, 還介紹了一種通過讀取定時器的寄存器來計算時間的方法。其實,有人認為,本書最好的部分是:DMA的實現說明(本書從3個方面講述了DMA的使用)。現在學習Verilog HDL的人或許比較多,但是用VHDL的人可以學習下,這本書還是很不錯的。
上傳時間: 2014-07-10
上傳用戶:米米陽123
The Virtex™-4 user access register (USR_ACCESS_VIRTEX4) is a 32-bit register thatprovides direct access to bitstream data by the FPGA fabric. It is useful for loadingPowerPC™ 405 (PPC405) processor caches and/or other data into the FPGA after the FPGAhas been configured, thus achieving partial reconfiguration. The USR_ACCESS_VIRTEX4register is programmed through the bitstream with a command that writes a series of 32-bitwords.
標簽: USR_ACCESS PowerPC XAPP 719
上傳時間: 2013-12-23
上傳用戶:yuanwenjiao
FSM 分兩大類:米里型和摩爾型。 組成要素有輸入(包括復位),狀態(包括當前狀態的操作),狀態轉移條件,狀態的輸出條件。 設計FSM 的方法和技巧多種多樣,但是總結起來有兩大類:第一種,將狀態轉移和狀態的操作和判斷等寫到一個模塊(process、block)中。另一種是將狀態轉移單獨寫成一個模塊,將狀態的操作和判斷等寫到另一個模塊中(在Verilog 代碼中,相當于使用兩個“always” block)。其中較好的方式是后者。其原因 如下: 首先FSM 和其他設計一樣,最好使用同步時序方式設計,好處不再累述。而狀態機實現后,狀態轉移是用寄存器實現的,是同步時序部分。狀態的轉移條件的判斷是通過組合邏輯判斷實現的,之所以第二種比第一種編碼方式合理,就在于第二種編碼將同步時序和組合邏輯分別放到不同的程序塊(process,block) 中實現。這樣做的好處不僅僅是便于閱讀、理解、維護,更重要的是利于綜合器優化代碼,利于用戶添加合適的時序約束條件,利于布局布線器實現設計。顯式的 FSM 描述方法可以描述任意的FSM(參考Verilog 第四版)P181 有限狀態機的說明。兩個 always 模塊。其中一個是時序模塊,一個為組合邏輯。時序模塊設計與書上完全一致,表示狀態轉移,可分為同步與異步復位。
標簽: 狀態
上傳時間: 2015-01-02
上傳用戶:aa17807091
設計工程師通常在FPGA上實現FIFO(先進先出寄存器)的時候,都會使用由芯片提供商所提供的FIFO。但是,由于其通用性使得其針對性變差,某些情況下會變得不方便或者將增加硬件成本。此時,需要進行自行FIFO設計。本文提供了一種基于信元的FIFO設計方法以供設計者在適當的時候選用。這種方法也適合于不定長包的處理。
上傳時間: 2013-11-05
上傳用戶:ch3ch2oh
設計了一種基于FPGA純硬件方式實現方向濾波的指紋圖像增強算法。設計采用寄存器傳輸級(RTL)硬件描述語言(Verilog HDL),利用時分復用和流水線處理等技術,完成了方向濾波指紋圖像增強算法在FPGA上的實現。整個系統通過了Modelsim的仿真驗證并在Terasic公司的DE2平臺上完成了硬件測試。設計共消耗了3716個邏輯單元,最高處理速度可達92.93MHz。以50MHz頻率工作時,可在0.5s以內完成一幅256&amp;#215;256指紋圖像的增強處理。
上傳時間: 2013-11-06
上傳用戶:rishian
摘要:介紹用一片GAL16V8實現的模≤2n可編程計數器。它是基于“最大長度移位寄存器式計數器”的原理設計而成的.電路簡單可靠.同時介紹一種由它組成的實用電路——由GAL實現時、分、秒計時的數字鐘電路。 關鍵詞:GAL 最大長度移位寄存器式計數器
上傳時間: 2013-11-12
上傳用戶:comua
通用陣列邏輯GAL實現基本門電路的設計 一、實驗目的 1.了解GAL22V10的結構及其應用; 2.掌握GAL器件的設計原則和一般格式; 3.學會使用VHDL語言進行可編程邏輯器件的邏輯設計; 4.掌握通用陣列邏輯GAL的編程、下載、驗證功能的全部過程。 二、實驗原理 1. 通用陣列邏輯GAL22V10 通用陣列邏輯GAL是由可編程的與陣列、固定(不可編程)的或陣列和輸出邏輯宏單元(OLMC)三部分構成。GAL芯片必須借助GAL的開發軟件和硬件,對其編程寫入后,才能使GAL芯片具有預期的邏輯功能。GAL22V10有10個I/O口、12個輸入口、10個寄存器單元,最高頻率為超過100MHz。 ispGAL22V10器件就是把流行的GAL22V10與ISP技術結合起來,在功能和結構上與GAL22V10完全相同,并沿用了GAL22V10器件的標準28腳PLCC封裝。ispGAl22V10的傳輸時延低于7.5ns,系統速度高達100MHz以上,因而非常適用于高速圖形處理和高速總線管理。由于它每個輸出單元平均能夠容納12個乘積項,最多的單元可達16個乘積項,因而更為適用大型狀態機、狀態控制及數據處理、通訊工程、測量儀器等領域。ispGAL22V10的功能框圖及引腳圖分別見圖1-1和1-2所示。 另外,采用ispGAL22V10來實現諸如地址譯碼器之類的基本邏輯功能是非常容易的。為實現在系統編程,每片ispGAL22V10需要有四個在系統編程引腳,它們是串行數據輸入(SDI),方式選擇(MODE)、串行輸出(SDO)和串行時鐘(SCLK)。這四個ISP控制信號巧妙地利用28腳PLCC封裝GAL22V10的四個空腳,從而使得兩種器件的引腳相互兼容。在系統編程電源為+5V,無需外接編程高壓。每片ispGAL22V10可以保證一萬次在系統編程。 ispGAL22V10的內部結構圖如圖1-3所示。 2.編譯、下載源文件 用VHDL語言編寫的源程序,是不能直接對芯片編程下載的,必須經過計算機軟件對其進行編譯,綜合等最終形成PLD器件的熔斷絲文件(通常叫做JEDEC文件,簡稱為JED文件)。通過相應的軟件及編程電纜再將JED數據文件寫入到GAL芯片,這樣GAL芯片就具有用戶所需要的邏輯功能。 3.工具軟件ispLEVER簡介 ispLEVER 是Lattice 公司新推出的一套EDA軟件。設計輸入可采用原理圖、硬件描述語言、混合輸入三種方式。能對所設計的數字電子系統進行功能仿真和時序仿真。編譯器是此軟件的核心,能進行邏輯優化,將邏輯映射到器件中去,自動完成布局與布線并生成編程所需要的熔絲圖文件。軟件中的Constraints Editor工具允許經由一個圖形用戶接口選擇I/O設置和引腳分配。軟件包含Synolicity公司的“Synplify”綜合工具和Lattice的ispVM器件編程工具,ispLEVER軟件提供給開發者一個簡單而有力的工具。
上傳時間: 2013-11-17
上傳用戶:看到了沒有