adc演算法
① 積分式平均值adc方案對於瞬時值ADC有什麼優點
ADC不能小於abc這道題的優點abc是小寫ADC是大寫。完美
② 關於單片機ADC的計算
8051除DPTR是可讀寫的16位寄存器外,其餘都是8位的,ADC也不例外
如果其轉換結果超8位,是保存在2個寄存器中的
C語言編程
很簡單,如果12位數據右對齊
轉換結果為
高8位乘256
加低8位
如果左對齊,則結果為高8位乘16
加低8位除16
匯編語言要復雜一些
要會多位元組數據(起碼會雙位元組)的加減乘除運算,教科書上有例子的
③ ADC採集了電壓,電流信號,計算出了電壓,電流有效值,有功功率,無功功率,那麼有功電能怎麼計算呢
假設兩次采樣期間有功功率是不變的,這樣電能就是:
W(n+1)=W(n)+P(n)*dt 就是功率乘以時間間隔,不斷累加得到電能。
④ ADC的采樣頻率怎麼算截止頻率
截止頻率為小於600HZ。
如果你的采樣頻率是1200HZ,那麼截止頻率必須小於600HZ,推薦值:采樣頻率>=信號頻率*10,RC濾波截止頻率取采樣頻率的1/2。
采樣頻率取決於送到ADC0809的時鍾頻率,常用5K~500KHz。但讀數頻率遠沒有那麼快,故無須計算。
ADC簡介
ADC(Attack Damage Carry/Core)是普通攻擊持續輸出核心的簡稱,是一場游戲中傷害輸出核心之一(最主要是能以普通攻擊來造成持續傷害輸出,以免輸出出現空窗期),主要應用於MOBA類游戲中。
在《刀塔》中通常指以普通(物理)攻擊為主要輸出方式的核心英雄;與《刀塔》不同,《英雄聯盟》中的AD(C)英雄經常被「下路」(Bottom)所使用,所以出現了很長一段時間甚至連官方將AD(C)作為固定位置的作法。
直到S8左右出現了相對大量的非AD英雄走下路的現象後,在賽事場合開始逐漸將錯誤的「ADC」叫法更正為「下路」。
⑤ 有一處關於ADC的計算老是搞不懂,求解~
首先式子中
ADC_IN_Sample:ADC採集轉換後的電壓值
pui32ADC_IN_Value:ADC採集的二進制算,如基準電壓是3.3V,12位ADC採集的3.3V時值4096
基準電壓:ADC採集的最大電壓,對應ADC最大的二進制數值
ADCMAX:表示ADC的精確位數,如8位的ADC就是2的8次方,10位:1024,12:4096
根據代碼:ADC_IN_Sample =(pui32ADC_IN_Value*3300*6)/ ADCMAX;
電壓與ADC的二進製成正比,標準的ADC轉換公式在手冊裡面能找到,也就是上式子中:
ADC_IN_Sample =(pui32ADC_IN_Value*3300)/ ADCMAX;
之所以要乘上6是因為採集的電壓經過分壓後輸入OPA330,R16與R17的分壓輸入單片機的電壓是原來的1/6,故要求原來的電壓就要乘上6
⑥ 怎麼根據ADC值算實際值
首先確定ADC用幾位表示,最大數值是多少。
然後確定最大值時對應的參考電壓值。
要計算電壓,就把你的ADC數值除以剛才確定的最大數值再乘以參考電壓值。計算出來的電壓值只是ADC管腳處的電壓值。你可以用電壓表量一下,計算值和實際值是否一樣。
至於放大器等等,都是晶元外部的事情。外部電路怎麼接,和晶元ADC的采樣值無關。
如果你想知道晶元外部某處的電壓,你需要從得出的ADC管腳處的電壓,再根據電路圖進行計算。
⑦ ADC轉換公式
由於是8位ADC,當單端輸出時,數字輸出D的范圍是0-255,這時的公式應為:D=V/VREF*256,或 D*VREF/256=V。當採用差分輸出時,數字輸出D的范圍是-128 - +127,這時的公式應為:D=V/VREF*128,或 D*2*VREF/256=V。
轉換公式1905年,偉大的物理學家愛因斯坦提1905年,偉大的物理學家愛因斯坦提出一個令人難以置信的理論:物質的質量和能量可以互相轉化,即質量可以轉化成能量,能量可以轉化成質量。
1905年,偉大的物理學家愛因斯坦提1905年,偉大的物理學家愛因斯坦提出一個令人難以置信的理論:物質的質量和能量可以互相轉化,即質量可以轉化成能量,能量可以轉化成質量。
出一個令人難以置信的理論:物質的質量和能量可以互相轉化,即質量可以轉化成能量,能量可以轉化成質量。他指出,任何具有質量的物體,都貯存著看不見的內能,而且這個由質量貯存起來的能量大到令人難以想像的程度。
如果用數學形式表達質量與能量的關系的話,某個物體貯存的能量等於該物體的質量乘以光速的平方。寫成公式就是:E=mc2。打個比方說,常規狀態下燃燒一噸煤所釋放的全部熱能,只相當於全部由質量轉化而來的0.028毫克物質釋放的能量。
假設有辦法把一個質量僅為1克的小砝碼全部轉化成能量的話,則它的總能量就會相當於2500萬度的電能。愛因斯坦曾作過形象生動的比喻:「只要沒有向外放出的能量,能量就觀察不到。這好比一個非常有錢的人,如果他從來不花費也不供給別人一分錢,那麼就沒有誰能說出他有多少財產。」
⑧ ADC的電壓怎麼計算的
1.首先確定ADC用幾位表示,最大數值是多少。比如一個8位的ADC,最大值是0xFF,就是255。2.然後確定最大值時對應的參考電壓值。一般而言最大值對應3.3V。這個你需要看這個晶元ADC模塊的說明。寄存器中有對於輸入信號參考電壓的設置。
⑨ adc解析度怎麼計算
adc解析度計算:ST=0;ST=1;ST=0;while(!EOC);OE=1; //說明轉化完成getdate=P0;getdate=(int)(getdate*1.96);//即得到的值*100*5/51.0。
ADC_IN_Sample:ADC採集轉換後的電壓值,pui32ADC_IN_Value:ADC採集的二進制算,如基準電壓是3.3V,12位ADC採集的3.3V時值4096,基準電壓。
定時傳送方式:
對於一種A/D轉換器來說,轉換時間作為一項技術指標是已知的和固定的。例如ADC0809轉換時間為128μs,相當於6MHz的MCS-51單片機共64個機器周期。可據此設計一個延時子程序,A/D轉換啟動後即調用此子程序,延遲時間一到,轉換肯定已經完成了,接著就可進行數據傳送。
ADC採集的最大電壓,對應ADC最大的二進制數值,ADCMAX:表示ADC的精確位數,如8位的ADC就是2的8次方,10位:1024,12:4096根據代碼:ADC_IN_Sample =(pui32ADC_IN_Value*3300*6)/ ADCMAX。
⑩ DAC和ADC的實現各有哪些方法
將輸入電阻和反饋電阻的比值設為1:10
基本上DAC有電流和方法,即用2R,2R的T網路作輸入,R作輸出接在運放上,
ADC的方法就多了,並行法,天平法,Sigma-Delta
嵌入式實時系統開發的正確選擇
隨著嵌入式實時系統復雜度的提高,設計工程師在定義和分析系統初始要求時必須認真考慮軟硬體的協同關系。通常設計工程師還必須權衡系統的靈活性、速度、成本、計劃和可用工具之間的關系。本文打算描述嵌入式系統和實時系統的關鍵特性,並探討在選擇或開發硬體和軟體組件的基礎上開發高效嵌入式系統的解決方案,同時詳細說明嵌入式系統和實時系統開發所特有的關鍵工藝技術。
嵌入式系統通常是一個包含微處理器的特殊計算機系統,是一個較大系統或設備的組成部分,它在很大程度上決定了設備的功能特性。許多具備數字介面的設備如微波設備、錄像機(VCR)和汽車等都會用到嵌入式系統。有些嵌入式系統需要使用操作系統,有些則用單個程序實現整個邏輯,但所有嵌入式系統提供的功能都要比通用計算系統更專業些。嵌入式系統功能包括:
1. 監視環境-從輸入感測器讀取數據,然後處理數據並顯示結果。
2. 控制環境-產生並向激勵器發送命令。
3. 轉換信息-轉換並處理收集到的數據。
雖然通過感測器和激勵器完成與外部世界的交互是嵌入式系統的重要特點,但這些嵌入式系統還提供適合它們所在設備的特殊功能。嵌入式系統一般用來執行控製程序、有限狀態機和信號處理演算法。這些系統還必須檢測內部計算環境和周圍電磁系統中發生的故障並對此做出響應。
嵌入式系統特性
嵌入式系統的設計挑戰是使嵌入式系統的獨特性能與設備的特殊約束條件相一致。以下是一些嵌入式系統的重要特性:
1. 特殊應用系統-嵌入式系統不同於通用處理器,它針對特殊應用進行了優化。
2. 反應性系統-反應性計算的意思是系統(主要是軟體部分)根據感測器信息對環境作出響應,並利用激勵器控制環境,同時系統速度能與環境速度同步。
3. 分布式-嵌入式系統的一般特徵是多個通信進程在多個通過通信鏈路鏈接的CPU或ASIC上運行。
4. 異類性-不同的嵌入式系統一般具有不同的結構,以便在處理嚴格設計約束的嵌入式系統時能夠提供更好的設計便利性。
5. 苛刻環境-許多嵌入式系統並不工作在受控的環境中,因此它們必須能夠經受過熱、振動、沖擊、電源波動和其它惡劣的物理環境條件的考驗。
6. 系統安全性和可靠性-由於嵌入式系統復雜度和運算量的不斷增長,需要更多地考慮系統安全因素。
7. 小型化、重量輕-為了達到便攜目的,許多嵌入式系統的重量必須設計得很輕。
8. 成本敏感性-不同的嵌入式系統對成本的敏感性有很大的不同。
實時系統的特性
實時系統要求在外部環境指定的時間間隔內對來自環境的激勵信號作出響應(包括物理時間的過渡)。從輸入時間到輸出時間的延遲必須足夠小,以滿足可以接受的時間值。通常實時系統需要對環境作出連續及時的響應。
計算的正確性不僅依賴於結果,而且取決於輸出發生的時間。一個實時系統必須滿足有限響應時間約束條件,否則會產生嚴重的後果。如果後果是性能的劣化而不是故障,那麼這種系統可以看作是一個軟實時系統。如果後果是系統發生故障,那麼這種系統就是一種硬實時系統。
實時系統有反應式和嵌入式兩種類型。反應式實時系統會與環境發生連續的互作用,而嵌入式實時系統主要用於控制大型系統中安裝的特殊硬體。
嵌入式系統開發生命周期
許多系統設計工程師都會經歷硬體/軟體協同設計的過程(圖1),此過程中硬體與軟體將同時進行開發。理解硬體與軟體功能相互之間的關系及界限有助於確保設計要求得到完整正確的理解和實現。
早在設計要求的定義與分析階段,系統開發人員就必須與設計工程師協同分配硬體或/和軟體方面的要求。這種分配的依據是早期系統模擬、原型設計和行為建模結果、工程師自己的經驗以及上文提及的各種因素權衡結果(圖2)。一旦分配結束,就可以立即著手具體的設計和實現。實時系統開發中軟硬體的並行設計會使用到各種分析技術,包括:
1. 硬體與軟體模擬;
2. 硬體/軟體協同模擬;
3. 可調度的建模技術,如速率恆定分析;
4. 原型設計和漸進式開發。
可以在各種抽象層次使用的模擬技術主要用於開展早期的性能評估。低層模擬可以用來為匯流排寬度和數據流程建模,這對性能評估是非常有用的。高層模擬可以滿足功能的交互,並促成硬體/軟體權衡研究及有效性設計。利用模擬可以將一個復雜的系統向下抽象成基礎組件和行為。模擬還助於解決功能性問題(數據與演算法)、行為(進程排序)或性能問題(資源利用、吞吐量和時序)。
理解設計要求
在作執行任何類型的處理器評估時,首先要詳細理解用戶的功能和非功能性要求。功能性要求通常比較容易獲得,而非功能性要求較難定量測量。但對於實時系統來說,定義響應時間這樣的要求是非常重要的。實時要求可以有以下幾種:
1. 激勵-激勵(S-S):到系統去的兩個激勵之間的實時關系;
2. 激勵-響應(S-R):一個激勵與來自系統的一個後序響應之間的實時關系;
3. 響應-激勵(R-S):一個響應與到系統去的一個後序激勵之間的實時關系;
4. 響應-響應(R-R):來自系統的兩個響應之間的實時關系。
S-R和R-R關系定義了對指定系統的時序要求。這種情況下所實現的功能必須足夠快(或足夠慢)才能滿足時序要求。S-S和R-S約束暗示系統必須能夠從環境(可能是一個用戶或另外一個系統)中檢測出特定時序約束的破壞。這些約束與功能的快慢沒有關系,相反它們能夠檢測出某些遭到破壞的時序約束並採取必要的措施。
因此要從最初系統要求設計時就很好地理解這一點,因為S-R和R-R約束可以引導設計工程師進行代碼優化,而S-S和R-S約束需要用額外的軟體來檢測和響應時序沖突。
處理器選擇
嵌入式實時系統比較適合用於系統優化。由於這些系統主要用來解決范圍相對較窄的問題,因此硬體和軟體能夠得到最佳優化,並很好地應用於單一設備。這樣做的目的是要在軟硬體最佳折衷狀態下開展系統設計。影響這一階段設計的主要因素是處理器的選擇、軟硬體的分割和總體系統集成。
在為嵌入式實時系統選擇處理器時需要考慮以下幾個方面:
1. 性能:處理器必須有足夠的性能執行任務和支持產品生命周期。
2. 實現:根據具體應用情況,處理器可能需要被高度集成。在DSP應用中可以有好幾種選擇,專用集成電路(ASIC)就是其中的一種。這些器件可以被用作DSP協處理器,但對於許多通用信號處理來說顯得不夠靈活。另外可以選擇精簡指令集計算機(RISC)處理器。這些處理器的時鍾速度特別快,但可擴展性不是很強,而且會發生其它實時(可預測性)問題。現場可編程陣列(FPGA)是一種快速器件,能夠快速高效地完成某些DSP功能,但與DSP相比開發難度比較大,因為在DSP中一個簡單的程序就能完成相同的功能。如果是主信號處理應用,則最好採用性能強大功耗也較大的通用處理器。如果需要快速升級信號處理應用,採用DSP等可編程器件比定製的硬體方案要更好些。
3. 工具支持:支持軟體創建、調試、系統集成、代碼調整和優化工具對整體項目成功與否非常關鍵。
4. 操作系統支持:嵌入式系統應用需要使用有幫助的抽象來減少其復雜性。針對處理器系列產品作過優化的商用操作系統(OS)能夠縮短設備開發周期和上市時間。
5. 過去的經驗:擁有處理器或處理器系列產品的開發經驗可以減少可觀的學習新處理器、工具和技術的時間。
6. 模擬支持:循環精確模擬對某些類型的應用來說非常重要,特別是數字信號處理應用中許多功能正確性驗證都是採用模擬技術完成的。嵌入式系統的軟硬體協同設計模型也促使處理器模擬器成為開發流程中一個非常有用的工具。
7. 應用支持:應用支持有多種方式,從通過熱線或網站取得的應用專家支持,到預打包的軟體和應用框架,甚至完好的測試平台。一些DSP處理器能夠提供外圍器件的驅動器、板級支持包和其它「啟動幫助組件」。有了這些軟體組件後,應用開發師就無需再編寫器件驅動器等「無附加值」的軟體,相反,他們可以把精力放在具有附加值的功能開發上,使他們的產品能獨樹一幟。
8. 成本:嵌入式應用對成本特別敏感,而產品成本的稍許差別都可能導致市場的失敗。
9. 功耗:市場上有許多依靠電池工作的便攜嵌入式實時系統,此時電池壽命將成為系統的重要參數。這種情況下應該考慮使用針對攜帶型應用優化的低功耗器件。
10. 傳統代碼:如果選中的處理器需要設計人員編寫與現存代碼的介面,將會導致整個設計流程的嚴重滯後。因此需要選擇一款代碼兼容的器件來避免或減少這一步驟造成的影響。
11. 演算法復雜性:某些處理器能夠非常高效地處理某類演算法,因此最好選擇能夠與應用最佳匹配的處理器。例如,具有許多控制代碼的有限狀態機應用應該映射為類似ARM處理器的RISC器件。編碼、解碼和回波抵消等信號處理應用應該映射為數字信號處理器,或具有信號處理加速器的某種器件。
12. 上市時間:項目的完成時間會加快處理器的選擇過程,這一過程與先前講述的幾個關鍵事項密切相關,如OS的可用性、其它軟體組件以及便攜性問題。
設計還是購買?
是自己設計還是購買成品呢?如果有可能不重新設計,價格也比較合理的話,購買要比自己開發更有利。由於嵌入式系統預算的縮減、實時操作系統(RTOS)和TCP/IP堆棧等商用技術的改進、嵌入式系統要求的擴展,採用商業性現成(COTS)技術正變得越來越普遍。採用COTS技術能夠縮短開發周期中編碼、調試、單元測試和代碼檢查階段的時間。
然而,作出購買而非設計的決定會改變一個組織的基礎開發流程。一個組織希望實現的新業務有:供應商調研和評估、產品評估以及實時的供應商交流與關系建立。產品開發的其它活動不會取消,但會作出一些改變。這些變化包括更關注如何將系統硬體與軟體更好地組合在一起,而不再把重點放在模塊自己內部的運作上。另外必須更側重於兼容性、可配置性和可集成性等結構上的問題。
必須很好的理解和高效地管理由於決定採用「購買」而非「設計創建」方式所導致的結果。首先,自然是對供應商提出產品要求、產品可靠性、計劃和產品文檔等依賴請求。這種情況下產品要求中的靈活性會打些折扣。購買商用產品意味著接受現有的產品要求,但這種要求也許不能完美地匹配自身產品的要求,這就需要設計人員把這種缺點與COTS技術提供的成本與上市時間優勢作一個理智的權衡。
因此重要的是最終用戶與技術人員必須參與COTS供應商的選擇,考慮的重點要放在業務需求上而非技術本身。性價比分析所要考慮的因素應包括易學性、易用性、供應商名聲和長期穩定性、許可方式和培訓。所有與性能有關的聲明必須盡可能採用內部或外部基準或演示來到得有效性認證。為了避免可能出現的偏差,評估標准應該在收到供應商建議前就制定好。選擇供應商的主要工作包括研究和理解技術標准和相當的文件、採用類似建議請求(RFP)的標准模式徵求供應商的建議、對供應商建議進行評估和排序、選擇供應商並簽署合同。
除了評估技術外,還應對供應商本身進行評審。要充分了解供應商開業時間的長短、供應商的背景和名聲、供應商的其它用戶對它的評價和意見、供應商人力資源的投入和對你的計劃或項目的支持情況,以及供應商對你業務和要求的理解程度,甚至對未來項目的承諾。以前軟體團隊認為軟體開發方案遵循類似於創建架構的特定模式。提供符合一般模式的抽象方法能夠使軟體團隊定製符合他們特殊要求的方案,同時遵循被前人證明是高效和正確的模式。
嵌入式系統供應商已經認識到需要通過提供軟體組件和類似於設計模式的框架來加快軟體開發進程。在DSP領域,供應商向DSP設計工程師提供包括參考框架(RF)在內的上百個以DSP為核心的軟體組件用於產品和系統開發。設計完好的參考框架能夠在設備開發的早期階段讓設計人員快速入門。RF內含方便易用並且適合多種應用的源代碼。由此可以取消許多早期的低層設計決策,使開發人員能有更多的時間用在真正顯示產品特色的代碼開發上。設計人員可以選擇能夠最大程度滿足他們系統需要的專業RF,然後集成適配的演算法(可以是其它供應商出售的DSP COTS演算法,或供應商自己的演算法)生成適合各種終端設備的特殊應用,如寬頻、語音、視頻圖像、生物測量和無線設施。這些RF提供百分之百的C語言源碼,並且沒有版稅要求。RF源代碼可以從<a href="http://www.ti.com/downloadrfnow" target="_blank">www.ti.com/downloadrfnow</a>網站下載。
軟體性能工程
許多嵌入式實時系統必須滿足一系列性能目標。一般來講,性能是一個軟體系統或組件對時間要求滿足程度的一種指示。這里的時間指標可以用響應時間和吞吐量來衡量,該時間值是指響應某種要求所需的時間,而吞吐量用以指示系統在特定時間間隔內能夠處理的請求數量。可擴展性是嵌入式實時系統的另外一個重要指標,可以用它來衡量系統要求提高時系統能夠繼續滿足響應時間或吞吐量要求的能力。
如果在整個開發生命周期內得不到正確的性能管理,那麼即使選擇了正確的處理器和軟體也是徒勞的。性能故障的後果是非常嚴重的,它可能損傷與客戶的關系,造成收入下降,甚至導致整個項目失敗。因此在整個生命周期內需要隨時關注性能問題。性能管理可以被動或主動完成。被動方式需要採用一個較大的處理器解決性能問題,它只在系統完成構架、設計和實現後處理性能問題,在解決問題前一直處於等待狀態,直到實際需要測量的事件發生。主動方式是指整個生命周期內一直在跟蹤和交流性能問題,同時開發用以識別性能劣化的進程,並在性能處理中培養團隊成員。
本文小結
顯然開發嵌入式實時系統是一個相當復雜的過程,本文旨在啟發設計人員在分析初始要求時如何權衡硬體與軟體之間的關系,要時刻在系統靈活性、速度、成本、計劃和可用工具之間作出權衡,並充分考慮各個供應商提供長期可靠支持的可能性。