WDT可以理解為一種監控型定時器,其獨立于系統單獨工作,如果該定時器溢出時,則系統復位;因此為了保證系統的正常運行,需要在該定時器每次溢出前,對其計數器執行清0操作。根據這一概念,在實際的應用中又衍生出:硬件看門狗與軟件看門狗。硬件看門狗可細分為外部WDT及內部WDT(嵌入MCU內部)。而軟件看門狗一般采用系統中的一個定時器作為WDT,將該定時器設置為最高優先級,并在系統初始化時對該定時器進行初始化,如果系統正常運行,則在相應位置對其計數器進行清0。如果系統在某處卡死/跑飛,該定時器將溢出,并將進入中斷,最后在定時器中斷中執行一些復位操作,使系統恢復正常的工作狀態。
上傳時間: 2014-12-28
上傳用戶:阿譚電器工作室
深入淺出AVR單片機思路清晰,以AVR單片機為載體,介紹了初學單片機所必須掌握的專業知識。書中語言嚴謹但不乏幽默風趣,配以大量的照片、圖示和實例程序,使讀者在愉悅中完成專業知識的學習,并培養了學習嵌入式系統的興趣。本書在講述AVR單片機的同時,更注重于對讀者學習和設計能力的啟發、培養,幫助他們養成“從實踐中來,到實踐中去”的科學方法論,為進一步的學習創造了基礎。 本書講述淺顯、內容豐富、編排合理、實例詳盡。首先介紹了如何閱讀器件資料的方法,然后熟悉ICCAVR集成開發環境并搭建實驗開發裝置,接著從實際應用出發,啟發式地介紹AVR單片機的常用資源和對應軟件方法,最后較為全面地補充了從事嵌入式系統開發要擴展的軟件知識。 第1篇 Are you ready? 第1章 學會閱讀Datasheet 1.1 如何閱讀PDF文件,如何獲得Datasheet文件 1.2 Datasheet告訴我們些什么 1.3 如何看懂AVR的Datasheet 1.4 如何得到幫助 1.5 匯編語言執行時間的計算方法 1.6 ATmega48/88/168常用熔絲的作用及其配置方法 1.7 對誤燒寫為外部時鐘模式的解鎖方法 實例1 閱讀74HC595 Datasheet 第2章 深入開發環境 2.1 認識ICC編譯環境 2.2 事半功倍的代碼生成器 2.3 ICC之不得不說的故事 2.4 AVR最小系統和下載線DIY 實例2 AVR最小系統DIY第2篇 Let\'s go! 第3章 從跑馬燈開始 3.1 輸入/輸出界面 3.1.1 單片機的輸入/輸出設備——引腳 3.1.2 “芯”里有數——數碼管顯示 3.1.3 單片機的輸入/輸出設備——從按鍵到鍵盤 3.2 用ATmega48/88/168單片機端口驅動數碼管 3.3 操縱ATmega48/88/168單片機端口 3.4 端口內建上拉電阻的使用 3.5 端口位操作 實例3 跑馬燈 實例4 數碼管的顯示(上) 實例5 數碼管的顯示(下) 實例6 矩陣鍵盤 第4章 對不起接個電話 4.1 十萬火急——中斷 4.2 中斷的特性 4.3 使用中斷時的注意事項 4.4 ATmega48/88/168單片機有哪些中斷源 4.5 如何編寫一個中斷的服務程序代碼 4.6 ATmega48/88/168單片機中斷的開關控制 4.7 ATmega48/88/168中斷標志位 4.8 ATmega48/88/168中斷優先級 4.9 ATmega48/88/168單片機中斷向量 4.10 中斷與查詢之爭 4.11 用查詢方式響應外設中斷 4.12 中斷誤觸發 4.13 前后臺與原子操作 實例7 中斷喚醒的鍵盤掃描 實例8 旋轉編碼器 第5章 一秒究竟有多長 5.1 單片機與時間 5.2 軟件延時 5.3 不需要加載的“自由計時器” 5.4 通過重加載控制定時中斷周期 5.5 使用代碼生成器生成定時器1初始化代碼 5.6 定時器的其他工作模式 5.7 PWM波及其應用簡介 5.8 人類能看懂的電子時鐘——實時時鐘簡介 實例9 閃爍的燈 實例10 漸明漸暗的燈 實例11 復雜閃爍控制 第6章 電量低 6.1 從猜數游戲到A/D轉換器 6.2 ATmega48/88/168的A/D轉換器 6.3 ATmega48/88/168單片機中與A/D相關的引腳 6.4 ATmega48/88/168單片機中與A/D相關的寄存器 6.5 使用A/D時需要注意些什么 6.6 怎樣知道A/D轉換完成 6.7 讀取A/D的轉換結果 6.8 使用代碼生成器生成ADC初始化代碼 6.9 書寫具有工程結構的初始化代碼 6.10 電量計原理概述 …… 第7章 正在過收費站 第8章 包裝的學問 第9章 傻孩子求職記 第10章 MISSION UPDATE第3篇 Code Name C 第11章 朝花夕拾 第12章 指針都是紙老虎 第13章 來自身邊的啟示 第14章 初識嵌入式系統
上傳時間: 2014-05-05
上傳用戶:佳期如夢
單片機系統常用軟件抗干擾措施:可靠性設計是一項系統工程,單片機系統的可靠性必須從軟件、硬件以及結構設計等方面全面考慮。硬件系統的可靠性設計是單片機系統可靠性的根本,而軟件系統的可靠性設計起到抑制外來干擾的作用。軟件系統的可靠性設計的主要方法有:開機自檢、軟件陷阱(進行程序“跑飛”檢測)、設置程序運行狀態標記、輸出端口刷新、輸入多次采樣、軟件“看門狗”等。通過軟件系統的可靠性設計,達到最大限度地降低干擾對系統工作的影響,確保單片機及時發現因干擾導致程序出現的錯誤,并使系統恢復到正常工作狀態或及時報警的目的。一、開機自檢開機后首先對單片機系統的硬件及軟件狀態進行檢測,一旦發現不正常,就進行相應的處理。開機自檢程序通常包括對RAM、ROM、I/O口狀態等的檢測。1 檢測RAM檢查RAM讀寫是否正常,實際操作是向RAM單元寫“00H”,讀出也應為“00H”,再向其寫“FFH”,讀出也應為“FFH”。如果RAM單元讀寫出錯,應給出RAM出錯提示(聲光或其它形式),等待處理。2 檢查ROM單元的內容對ROM單元的檢測主要是檢查ROM單元的內容的校驗和。所謂ROM的校驗和是將ROM的內容逐一相加后得到一個數值,該值便稱校驗和。ROM單元存儲的是程序、常數和表格。一旦程序編寫完成,ROM中的內容就確定了,其校驗和也就是唯一的。若ROM校驗和出錯,應給出ROM出錯提示(聲光或其它形式),等待處理。3 檢查I/O口狀態首先確定系統的I/O口在待機狀態應處的狀態,然后檢測單片機的I/O口在待機狀態下的狀態是否正常(如是否有短路或開路現象等)。若不正常,應給出出錯提示(聲光或其它形式),等待處理。4 其它接口電路檢測除了對上述單片機內部資源進行檢測外,對系統中的其它接口電路,比如擴展的E2PROM、A/D轉換電路等,又如數字測溫儀中的555單穩測溫電路,均應通過軟件進行檢測,確定是否有故障。只有各項檢查均正常,程序方能繼續執行,否則應提示出錯。
上傳時間: 2013-11-02
上傳用戶:名爵少年
全遙控6聲道AV機的匯編程序:;;;;;;;;;;;;;;;;;;;6CH AMPLIFIER;;;;;;;;;;;;;;;;;----腳位定義-----;;;;;;;;;;;;;;;;;;;6CH AMPLIFIER;;;;;;;;;;;;;;;;;----腳位定義----- PT6311_CLK EQU P3.4PT6311_STB EQU P3.5PT6311_DATA EQU P3.3 UP EQU P3.1DOEN EQU P3.0 PT2313_DATA EQU P0.7PT2313_CLK EQU P2.7 AC3 EQU P2.6 ;(控制4053的信號) M62429_DA EQU P2.3 ;(SURL/R)M62429_CK EQU P2.4 M62429_CK1 EQU P2.5 ;(C/BW) M62429_CK3 EQU P0.0 ;(ECHO,MVOL)M62429_DA3 EQU P1.7M_DELAY1 EQU P0.1M_DELAY2 EQU P0.2 AD_OUT BIT P0.5AD_IN BIT P0.6 ;----片內RAM定義--------GIF_SIGN EQU 40H ; 動畫進程標記(=1,走過場字幕 )GIF_TIME1 EQU 41H ; 動畫跑字的時間間隔速度GIF_LONG EQU 42H ; 動畫字幕的長度 DISP_BUFFER EQU 43H ; 顯示緩沖區地址指針DISP_INDEX EQU 44H ; PT6311片內地址指針
上傳時間: 2013-10-19
上傳用戶:fac1003
C51單片機是我們生活中最常用的系列,MCS-51系列單片機有4個并行口(P0,P1,P2,P3口),但對一個稍微復雜的應用系統來說,真正可供用戶使用的并行口,只有P1口可用,況且常常因擴展I2C和SPI的器件需占用某些P1口,迫使用戶不得不擴展并行口以滿足實際的需要。習慣上,常用的并行口接口芯片有8255、8155,這兩種芯片功能比較齊全,可以使用在相對比較復雜的系統中,但如是對一般的系統而言,這些功能往往閑置不用。那么就可以選用一些本來閑置不用的口線作為選通信號來進行并行口的擴展,這樣就能充分利用單片機有限的I/O資源,在本設計中是將P1口擴展成一個或幾個8位并行口,在每一個八位口上接入8個發光二極管做為輸出,二極管是做開關量來使用的,在這里設計了跑馬燈和流水燈程序,做到對開關量的開斷控制;配合開關量的控制筆者設計了一個共陽LED數碼管,用來顯示當前發光二極管發亮的序號,做到更加直觀的雙重控制效果,然后再將P0口通過D/A轉換器和一放大器輸出一個模擬信號,其結果可以通過示波器看出。這樣整個系統即有了數字信號輸出和模擬信號輸出,也有數碼管顯示功能,實用性能大提高了。2、 基于89C51的系統硬件設計2.1 并行口的擴展的電路設計 眾所周知,C51系列的單片機都有四個I/O口(P0、P1、P2、P3),那么AT89C51也不例外,但我們通常僅僅使用P1口作為并行口,而令其余口(P2、P3)處于閑置狀態,所以這次設計,我們就是使用閑置不用的P3口做為選能信號線來將P1口進行并行口擴展。 (1) 種方式的并行口擴展優點 連線簡單; 不占用存儲器空間; (2) 編程也方便靈活。但也有很大的缺點 并行口擴展能力有限,(如使用74LS573(74LS373)且不進行驅動處理,則最多可擴展4個同樣類型的并行輸出端口,當然還需要與之對應的四個選通信號。) 如擴展較多,選通信號占用并行口位數太多,例如欲擴展8個并行輸出端口,則需要8個選能信號,此時,僅選能信號就占用了一個8位并行口,這對在I/O端口線有限的單片機系統中,如此浪費資源的現象是不能容忍的。在本次的設計中,采用芯片74HC573(帶三態輸出的八進制透明D型鎖存器)對P1口進行了一個8位并行口的擴展,選通信號選用P3口的P3.3引腳。原理圖如圖1所示:
上傳時間: 2013-11-18
上傳用戶:dbs012280
東南大學綜合電子實踐Quartus ii課程設計報告 包含跑馬燈,數字鐘和交通燈設計
上傳時間: 2013-11-10
上傳用戶:小眼睛LSL
坡道的準確識別是保證智能車快速、穩定跑完全程的關鍵。對其坡道識別進行設計,通過對智能車在坡道上的各種狀態分析,出現故障的反復試驗,簡要闡明了各種電路的優缺點。
上傳時間: 2013-11-02
上傳用戶:pei5
光電檢測方法具有精度高、反應快、非接觸等優點,在輕工自動機上廣泛應用。介紹了光電傳感器在帶材跑偏檢測、包裝填充物高度檢測、色質檢測、彩塑制袋塑料薄膜位置控制以及對產品流水線上的產量統計、對裝配件是否到位及裝配質量進行檢測、對布料的有無和寬度進行檢測等方面的應用。關鍵詞:光電傳感器,輕工自動機,帶材跑偏檢測,包裝填充物高度檢測 光電傳感器是采用光電元件作為檢測元件,首先把被測量的變化轉變為信號的變化,然后借助光電元件進一步將光信號轉換成電信號。光電傳感器一般由光源、光學通路和光電元件+ 部分組成。光電檢測方法具有精度高、反應快、非接觸等優點,而且可測參數多,傳感器的結構簡單,形式靈活多樣,體積小。近年來,隨著光電技術的發展,光電傳感器已成為系列產品,其品種及產量日益增加,用戶可根據需要選用各種規格產品,在各種輕工自動機上獲得廣泛的應用。
上傳時間: 2014-12-29
上傳用戶:fanxiaoqie
實時操作系統,Kernel部分完成于2006年上半年,其IPC部分甚至是年中時才具備相 應的雛形。最開始時是因為要為朋友做一個小型的手持設備,而本人起初又是另一國內老牌 實時操作系統:DOOLOO RTOS開發人員,但這個團隊在2005年底已經解散。但朋友的系統要 上,用其他小型系統嗎,一不熟悉,二看不上。答應朋友的事,總得有解決方法吧,即使是原來 的DOOLOO RTOS,因為其仿VxWorks結構,導致它的核心太大,包括太多不必要的東西(一套 完整的libc庫),這些方案都否決了。怎么辦?當時朋友那邊也不算太急,先自己寫一套內核吧。 這個就是源頭!(后來雖然朋友的項目夭折了,但這套OS則保留下來了,并開源了,萬幸) 1 序 3 1.1 RT-Thread誕生 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2 艱難的發展期 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.3 一年增加0.0.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.4 Cortex-M3的變革 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.5 面向對象設計方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.6 文檔結構 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2 實時系統 7 2.1 嵌入式系統 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 2.2 實時系統 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3 軟實時與硬實時 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3 快速入門 11 3.1 準備環境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 3.2 初識RT-Thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 3.3 系統啟動代碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.4 用戶入口代碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 3.5 跑馬燈的例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.6 生產者消費者問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 4 RT-Thread簡介 25 4.1 實時內核 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.2 虛擬文件系統 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3 輕型IP協議棧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.4 shell系統 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.5 圖形用戶界面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 4.6 支持的平臺 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 5 內核對象模型 29 5.1 C語言的對象化模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 5.2 內核對象模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 6 線程調度與管理 39 6.1 實時系統的需求 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
上傳時間: 2013-10-14
上傳用戶:1234321@q
核心板配置 核心板配置癿FPGA芯片是Cyclone II系列癿EP2C8Q208C,具有8256個LEs,36個M4K RAM blocks (4Kbits plus 512 parity bits),同時具有165,888bit癿RAM,支持18個Embedded multipliers和2個PLL,資源配備十分豐富。實驗證明,返款芯片在嵌入NIOS II軟核將黑釐開収板癿所有外謳全部跑起來,僅占全部資源癿70-80% ; 核心板同時配備了64Mbit癿SDRAM,對亍運行NIOS軟核提供了有力癿保障,返款芯片為時鐘頻率有143MHz,實驗證明,NIOS II軟核主頻可以平穩運行120MHz,速度迓是相當忚癿; 16Mbit癿配置芯片也為返款核心板增色丌少,丌僅可以存儲配置信息,同時迓可以實現NIOS II軟件程序存儲,你編寫癿程序再大也沒有后頊乀憂了。 20M癿有源晶振也是必丌可少癿,他是整個系統癿時鐘源泉;4個LED對亍調試來說更是提供了徑多方便;復位按鍵,重新配置按鍵,配置指示燈一個也丌能少;同時支持AS模式和JTAG模式; 除此以外,核心板一個更大的特點是它可以獨立亍底板單獨運行,為此配備了5V癿電源接口,高質量癿紅色開關,為了安全迓加入了自恢復保險絲。當然擴展口是丌能少癿,除了SDRAM占用癿38個IO口外,其他100個IO全部擴展出來,為大家可以迕行自我擴展實驗做好了充分癿準備。 四、 下擴展板配置 為了讓FPGA収揮它癿強大功能,黑釐開収板為其謳計一款資源豐富癿下擴展板(乀所以叨下擴展板,是因為我們后續迓會有上擴展板)。下面我們就來簡單介終一下下擴展板癿資源配置。 支持網絡功能,配置ENC28J60網口芯片。ENC28J60是Microchip Technology(美國微芯科技公司)推出癿28引腳獨立以太網控刢器。目前市場上大部分以太網控刢器癿封裝均赸過80引腳,而符吅IEEE 802.3協議癿ENC28J60叧有28引腳,既能提供相應癿功能,又可以大大簡化相關謳計,減小空間; 支持USB功能,配置CH376芯片。CH376 支持USB 謳備方式和USB 主機方式,幵丏內置了USB 途訊協議癿基本固件,內置了處理Mass-Storage海量存儲謳備癿與用途訊協議癿固件,內置了SD 卡癿途訊接口固件,內置了FAT16和FAT32 以及FAT12 文件系統癿管理固件,支持常用癿USB 存儲謳備(包括U 盤/USB 硬盤/USB 閃存盤/USB 讀卡器)和SD 卡(包括標準容量SD 卡和高容量HC-SD 卡以及協議兼容癿MMC 卡和TF 卡); 支持板載128*64的點陣LCD。ST7565P控刢芯片,內置DC/DC電路,途過軟件調節對比度。該芯片支持,幵口和串口丟種方式;
上傳時間: 2013-11-23
上傳用戶:ouyangtongze