介紹一種基于C8051單片機的動態心電監護系統。該系統由兩部分組成:以C8051F320單片機為核心的數據采集裝置和以PC機為平臺的分析處理系統。硬件電路功耗低,由單片機自帶的USB接口將數據傳送給PC機。軟件平臺采用LabVIEW可視化虛擬儀器系統開發平臺,將傳統儀器的功能模塊集成到計算機中,用戶可通過修改虛擬儀器的程序改變其功能。采用USB接口實時傳輸心電數據,并將數據采集模塊設計為計算機外設,使該系統高速快捷、小巧便攜。 Abstract: In this design,a low-cost ECG electrocardiogram monitoring system is introduced,which consists of two parts:data acquisition device based on C8051F320and PC terminal as the analysis and processing system.The system is low-power consumption,the data is transmitted to the PC terminal by USB interface of the C8051F320.By using the visible virtual instrument system developing platform LabVIEW,the traditional instruments function modules are integrated into the computer,so the user can modify virtual instrument software to change its function to meet their needs.Using USB in-terface to realize real-time ECG data transmission,in addition,ECG data acquisition module is designed as the computer peripheral,which makes the syetem high-speed and portable.
上傳時間: 2013-11-13
上傳用戶:zhangzhenyu
Bootloader是微處理器上電時運行的第一段代碼,它可以通過通信接口實現對微處理器內部應用程序的更新升級,為網絡化嵌入式產品的應用程序升級帶來極大的便利。由于目前沒有統一嵌入式系統的Bootloader。基于NEC 78K0系列單片機自編程原理,設計出一個適用于78K0/Fx2系列單片機的Bootloader,并能夠通過單片機串口在線升級應用程序。 Abstract: Bootloader is the first piece of code executed after microprocessor startup. It makes the embedded product’s firmware update conveniently through communication interface. However, no unified bootloader is available for all kinds of microprocessor products. Based on the principle of self-programming NEC 78K0s’ series, a useful Bootloader which is suitable for 78K0/Fx2s’ series MCU is designed,the design can update the application through serial ports.
標簽: Bootloader MCU 自編程
上傳時間: 2013-10-26
上傳用戶:fang2010
1.1系統性能指標1.仿真、實驗相結合。2.實驗模塊化結構,互不影響,通過連線又可將各模塊有機結合。3.實驗內容設置豐富、合理,滿足教學大綱要求。4.每項實驗連線方便,既能滿足學生動手能力愿望,又能充分發揮學生的創新能力,提高教學實驗的質量和效率。5.自帶集成調試環境,Win9X/NT軟件平臺,含:源程序庫、芯片資料庫、原理圖庫、元器件位置圖庫、實驗說明、動態調試工具庫。6.提供源程序編輯、匯編、鏈接。7.電路具有過壓保護,確保系統安全、可靠工作。8.整機采用熱風整平工藝基板、波峰焊接,實驗連接接口采用圓孔插座,整機可靠性好。9.自帶EPROM寫入器,可對27128、2764EPROM進行寫入。10.自帶鍵盤顯示器,進口鍵座,專用彩色鍵帽,決無按鍵不可靠現象。11.系統用串行口、用戶用串行口相互獨立,在通過RS232與上位機聯機狀態下,同樣可以調試用戶串行口程序。12.系統帶有示波器功能,通過RS232口,可將測得的信號顯示在上位機的屏幕上。該系統通過RS232口可連各種上位機,在Win9X/NT軟件平臺進行仿真開發和實驗。同時系統自帶鍵盤顯示器,無須任何外設也能獨立工作,支持因陋就簡建立單片機實驗室。系統提供實驗程序庫,均放在系統光盤上,可直接使用。同時全部實驗程序機器碼已固化在EPROM中,作為用戶程序。在進入實驗前,需將該EPROM中的程序(在固化區)傳送到仿真RAM區,以便以單步、斷點、連續等方式運行程序。
上傳時間: 2013-10-13
上傳用戶:huaidan
手把手教你學單片機的C語言程序設計(一)
上傳時間: 2013-11-19
上傳用戶:summery
手把手教你學單片機的C語言程序設計--編譯預處理
上傳時間: 2013-10-13
上傳用戶:m62383408
將汽車控制器線束接入該測試儀器,做好汽車控制信號與儀器端口的一一對應。然后通過上位機的參數設置(試驗次數和間隔周期等參數),到這里我們就可以點擊開始測試按鈕,進行測試試驗。 系統功能描述它具有32路TTL數字信號測量,8路模擬信號測量,40個5V雙刀雙擲繼電器的自診斷控制,通過USB總線與計算機進行數據傳輸和受控制指令的傳輸,將和測試數據上傳,由上位計算機對數據進行分析、統計和存儲,內部實時時鐘指示,還可通過RS485進行遠程數據上傳。工作原理是,系統上電后,固件開始運行,通過初始化和自檢程序后進入菜單選擇界面,按照使用目的進入對應菜單進行操作。
上傳時間: 2013-11-07
上傳用戶:RQB123
手把手教你學單片機的C語言程序設計--中斷服務函數
上傳時間: 2013-10-17
上傳用戶:gundan
摘要:根據糊化的工藝要求,提出了基于單片機的糊化測控系統總體設計方案,詳細論述了系統的硬件設計和軟件設計。通過對截止閥和調節閥的控制來調節蒸汽流量,實現糊化溫度的PID控制。單片機將隨糊化時間而變化的溫度數據由串行口傳送給上位計算機(PC),基于VB的監控界面對實時數據進行分析、繪圖、保存、打印等處理。實驗結果表明:整個系統設計簡潔、性價比高,可以滿足測量精度和控制要求。關鍵詞:糊化;ADuC831;軟、硬件設計
上傳時間: 2013-11-17
上傳用戶:潛水的三貢
at91rm9200啟動過程教程 系統上電,檢測BMS,選擇系統的啟動方式,如果BMS為高電平,則系統從片內ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執行這個BOOTLOAER(準確的說應該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設置PLLB產生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應模式下的堆棧設置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設置; 5、C 變量的初始化; 6、跳到主函數。 完成以上步驟后,我們可以認為BOOT過程結束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設備的開始地址處連續的存放的32個字節,也就是8條指令必須是跳轉指令或者裝載PC的指令,其實這樣規定就是把這8條指令當作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當BOOT程序完成了把合法的映像搬到SRAM的任務以后,接下來就進行存儲器的REMAP,經過REMAP之后,SRAM從映設前的0X200000地址處被映設到了0X0地址并且程序從0X0處開始執行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準備從外部載入映像。對DEBUG口的初始化包括設置參數115200 8 N 1以及運行XMODEM協議。對USB DEVICE進行初始化以及運行DFU協議。現在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設然后執行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內容和ROM的BOOT差不多,不同的硬件設計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據自己的應用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務也不錯,不但提供了片內啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結構與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網站下載。 我們知道,當9200系統上電后,如果bms為高電平,則系統從片內rom啟動,這時rom中固化的boot程序初始化了debug口并向其發送'c',這時我們打開超級終端會看到ccccc...。這說明系統已經啟動,同時xmodem協議已經啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協議,為下載和啟動uboot做準備。當下載了loader.bin后,超級終端會繼續打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調到此處開始執行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內存、flash、網絡、系統啟動等一些命令。 如果系統上電時bms為低電平,則系統從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經啟動了uboot,可以這樣操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系統復位,就可以看到系統先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環境,關于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區別嗎?首先有區別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區別,你可以把boot理解為在loader的基礎上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據自己的系統的情況修改和配置以及裁減,打造屬于自己系統的bootloder。
上傳時間: 2013-10-27
上傳用戶:wsf950131
教你寫Makefile 什么是makefile?或許很多Winodws的程序員都不知道這個東西,因為那些Windows的IDE都為你做了這個工作,但我覺得要作一個好的和professional的程序員,makefile還是要懂。這就好像現在有這么多的HTML的編輯器,但如果你想成為一個專業人士,你還是要了解HTML的標識的含義。特別在Unix下的軟件編譯,你就不能不自己寫makefile了,會不會寫makefile,從一個側面說明了一個人是否具備完成大型工程的能力。
標簽: Makefile
上傳時間: 2013-10-12
上傳用戶:zhoujunzhen