-
任務關鍵型網絡和其他重要的企業基礎設施需要不斷從網絡時間服務器接收到準確的時間信息,才能保持可靠運行。但這些服務器易遭受到全球定位系統(GPS)干擾和欺騙這類的網絡安全威脅。Microchip
Technology Inc.(美國微芯科技公司)今日推出一項解決方案,通過將其BlueSky技術信號異常檢測軟件集成到SyncServer
S600系列網絡時間服務器和儀器中,成功解決這一難題。
Microchip是首家將GPS干擾和欺騙檢測和保護以及本地射頻(RF)數據記錄和分析完全集成在一個時間服務器內的公司。通過 SyncServer
S600系列Stratum
1儀器與基于BlueSky技術的智能干擾和欺騙檢測器協同工作,可以連續監視本地GPS衛星星座是否正常,同時檢查GPS和本地RF信號的完整性,以確保有效性。
如果檢測到異常,該解決方案將發送警報,如有必要,可以將SyncServer儀器切換至備用時間源或內部振蕩器,
從而保護持續的時序輸出,同時確保在重要網絡和業務運營中的時序衰減保持最小且可預測。新推出的解決方案可廣泛應用于銀行和股票交易、電力設施、航空航天和國防等重要行業。
SyncServer
BlueSky技術能針對GPS干擾和欺騙提供連續檢測和保護,包括一套完整的日志記錄、制圖和測量工具,用于描述隨時間變化的本地GPS衛星信號以及本地RF事件。這有助于實現關聯、故障排除,同時識別和糾正局部異常,其中一些局部異常可能與消費類電子產品或附近的RF信號廣播有關。該解決方案可通過SyncServer
v4.1軟件版本提供(可選),該版本提供了Microchip經過驗證的BlueSky
GNSS防火墻解決方案中的精選功能,一般用于第三方GPS接收器和關鍵基礎設施。
Microchip
Microchip
時間服務器
GPS
-
當今的關鍵基礎設施供應商,如5G無線網絡、智能電網、數據中心、電纜和運輸服務等,對冗余、彈性和安全的精確授時和同步解決方案有著基本需求。Microchip
(美國微芯科技公司)今日宣布推出2.2版TimeProviderò
4100主時鐘,除支持多頻段全球導航衛星系統(GNSS)接收器和增強安全性以確保始終在線的精確授時和同步外,還引入了創新的冗余架構以提供全新的彈性水平。
冗余是基礎設施供應商確保服務不中斷的關鍵。盡管采用了成本高昂的模塊化架構,但基礎設施部署之前還得依靠硬件冗余來避免服務中斷。Microchip的2.2版TimeProvider
4100主時鐘通過軟件實現冗余,在不犧牲端口的情況下,實現靈活部署,從而降低硬件成本。
此外,2.2 版TimeProvider 4100主時鐘通過支持新的 GNSS
多頻段、多星座接收器,提高了彈性水平,以防止因空間天氣、太陽事件和其他可能影響關鍵基礎設施服務的干擾而導致時間延遲。多頻段GNSS對于最高級別的精度尤其重要,包括主參考時間時鐘B級(PRTC-B)(40納秒)和增強型主參考時間時鐘(ePRTC)(30納秒)。
Microchip全新2.2版TimeProvider
4100主時鐘提供了針對整個技術組合的安全解決方案,增加了對RADIUS和TACACS+的支持以及新的抗干擾和反欺騙功能。
Microchip頻率和時間業務部副總裁兼總經理Randy
Brudzinski表示:“彈性、冗余和安全的精確授時和同步解決方案是降低關鍵基礎設施安全風險的必要條件。最新版本的主時鐘產品帶來創新的軟件冗余,實現了始終在線技術,并支持多頻段GNSS,以消除電離層時間誤差延遲。它還提供了新的密鑰安全、抗干擾和反欺騙功能,確保關鍵基礎設施服務只能由經過授權和認證的人員訪問。”
此外,2.2版TimeProvider 4100主時鐘提供了一個超級爐控晶體振蕩器(OCXO)選配,以增強GNSS中斷時的保持能力。
2.2版TimeProvider 4100主時鐘產品是帶有硬件擴展模塊的系列產品,用于傳統扇出或支持10 GB以太網的以太網扇出。TimeProvider
4100主時鐘可以配置在特定的工作模式下,作為網關時鐘、高性能邊界時鐘或ePRTC。
2.2版TimeProvider
4100主時鐘內嵌OCXO、超級OCXO、銣原子鐘、現場可編程門陣列(FPGA)、以太網交換機、合成器和清洗振蕩器在內的其他Microchip技術。
TimeProvider
4100是Microchip虛擬主參考時鐘(vPRTC)產品組合之一,旨在提供端到端精確時間和同步解決方案。該產品組合包括用于頻率和時間源的銫原子鐘、用于安全的BlueSky?
GNSS防火墻、TimeProvider 4100高性能邊界時鐘和TimeProvider
4100網關時鐘,以及管理所有Microchip定時產品的端到端精確時間架構的TimePictra軟件套件
服務與支持
Microchip 的2.2 版 TimeProvider 4100主時鐘提供多種軟硬件支持選項,包括安裝、同步審計、網絡工程和全天候全球支持。
供貨與定價
2.2 版TimeProvider 4100主時鐘現已用于新系統和已部署的系統。有關訂購詳情,請聯系 Microchip 銷售人員或渠道合作伙伴。
Microchip
主時鐘
GNSS
Microchip
-
摘要:工程師在日常測試中,是否有遇到產品不穩定經常被干擾、偶發性問題又抓不到這樣的技術問題?例如時序的波動、幅值的跳變等。如何在連續不間斷的測試中抓捕并記錄這些跳變信號,提升產品品質?本文給出答案。
波形數據可以反饋產品的基礎邏輯,只要產品出現了問題,工程師總能從波形上發現問題并給出解決方案。以下將介紹幾種能抓捕異常信號的辦法,為工程師解決問題提供有力的數據支撐。
一、平穩波形出現異常
被測物正常狀態下輸出平穩的波形,當外界給他一些激勵如加入干擾、做EMC測試等等,被測物可能出現波形上的變化,如何判定波形變化是否超出標準要求了呢?我們將使用示波記錄儀的“GO-NOGO”功能解決此問題。
“GO-NOGO”可以選擇以波形為參考依據,波形完全在灰色的區域中運行則不觸發條件,如超出灰色框區域,則示波記錄儀可以觸發記錄波形、截屏、報警等進一步的動作。
只要工程師設置好對應的“灰色安全區域”,即可放心的持續進行測試,所有的異常信號均可以被記錄。
二、某一個參數出現異常
當信號無法使用波形作為判斷依據,則可以進一步使用“測量參數”來進行判定。如被測物沒有被干擾時,峰峰值為20~25V,只要超過這個范圍則可以視為異常,那么就可以使用ZDL6000示波記錄儀進行參數上的設置,記錄儀會測量每一個波形的峰峰值,只要出現異常,即可以觸發下一步的動作,依然包含記錄波形、截屏、報警等操作。
三、多種異常條件混合時
當波形的異常條件很多,且同時需要對多路信號進行測試判定時,可以使用示波記錄儀的“事件模式”。在此“事件模式”下,工程師可以手動設置各類事件的條件,如邊沿異常、幅值異常、超時異常等,此時示波記錄儀就可以在連續不斷的測試中記錄滿足條件的異常事件,并將此異常事件的波形進行保存記錄。
四、自定義異常捕獲
示波記錄儀可以自定義加載的算法文件來進行波形的波形的判定,這是異常信號捕獲的終極奧義。可以當做是一種獨特判定方式,記錄儀可以實時的針對此判定方法和源數據進行比對,并且將結果顯示出來。請參考往期文章《如何用大數據分析來解決偶發性異常問題》。
總體而言,示波記錄儀具有多種捕獲異常信號的能力,只要給它一個條件,它就可以連續不斷的對波形進行測試判定,為工程師解決產品異常問題提供有效的數據支撐。歡迎各行業工程師咨詢試用。
致遠電子
異常信號
波形數據
EMC
-
簡介
電池供電類設備存在已久。然而自手機問世以來,由可充電電池供電的設備數量在過去二十年呈現出指數級增長。截至2018年,成千上萬種型號的手機、平板電腦、筆記本電腦和許多其他小型電器都在使用鋰電池。
對于所有便攜式設備而言,功耗都是一個至關重要的因素。硬件開發人員越來越注重在增加功能、減小尺寸、降低成本的同時,實現低功耗方案。軟件開發人員也以舊算法為切入點,針對操作系統領域(即通過能量監測調度)和新興領域(例如機器學習),研發新的功率監測方法,力求降低功耗。功率是指瞬時消耗的能量。如公式1所示,在電學中,功率等于瞬時電壓與電流之積。功率單位為瓦特(W),表示“焦耳每秒”。
公式1 - 功率公式
能量等于功率與時間的乘積。電路消耗能量,電池則存儲能量。功率管理通常是指管理瞬時電流和電壓,以滿足功率傳輸能力和負載條件。能量監測通常會提供有關能耗的信息,從而幫助開發人員進行電池管理和總體功率基準測試。通過專門設計的軟件(可根據特定負荷采取相應操作)監視能量時,即開始了主動能量管理。
主動能量管理可以基于預定義的設置自動進行,也可以在軟件啟動時手動進行,其作用是為用戶提供特定的建議。例如,大多數筆記本電腦在使用電池而不是交流電源運行時,處理器性能會自動降低,并且改用低功耗、低性能的集成圖形處理器,而不使用專用處理器。可以關閉筆記本電腦的一些外設,以延長電池供電時間,而用戶也可能收到降低屏幕亮度或調暗鍵盤背光的通知。大多數智能手機都提供各種節能選項,當電池電量降至特定水平時,主動能量管理便會提出使用節能選項的建議,包括關閉一些現有的互聯網連接、降低屏幕亮度等。
但類似情況并不限于電池供電設備。服務器會仔細監測功耗和負荷水平,以確定是否可以完全停止或暫停某些服務。在虛擬服務器中,可根據電流總用量和基于統計信息預測的用量增加和縮減應用。對于這類服務器,可以使用虛擬機管理程序完全關閉某些虛擬機。進行調試時,也可以使用主動能量管理。能量監測可提供非常有效的信息,用以確定整個系統或部分系統是否在界定范圍內運行。
用于測量直流功率和能量的電路
如前文所述,電功率是電壓與電流的乘積。要精確測量功率,需要對電壓和電流進行精準測量。在一定時段內測量功率并將結果累加,即得到能量。功耗在大多數情況下都不是恒定值,因此,必須使用一個選定測量帶寬,在此范圍內對電壓和電流進行測量。直流電壓測量電路的一個典型示例是圖1左側所示的簡單分壓器和右側圖1所示的緩沖分壓器。這兩個電路都可以通過適當的校準提供高精度測量結果,盡管帶緩沖的分壓器比不帶緩沖的分壓器價格昂貴,但前者通常功耗更低,尤其適合測量極低的直流信號。
圖1 - 分壓器電路
雖然借助霍爾效應也可以測量電流(包括直流電流),但本文側重于使用分流電阻測量直流電流,因為后者更常用而且費用更低。分流電阻是一個低阻值電阻,與電路串聯。電流流經分流電阻時,分流電阻兩端會產生一個小的壓差。該壓差與電流成正比,如公式2所示,并且通常使用運算放大器進行放大。
公式2 - 分流電阻兩端的壓差
由于分流電阻與電路的其余部分串聯,因此可以連接在任意一側:上橋臂(分流電阻的一個端子直接連接總線電壓),或者下橋臂(分流電阻的一個端子接地),如圖2所示。在這兩種情況下,分流電阻都會出現一個小的壓差,電路的總電壓會降低。但是,分流電阻的連接位置會有一些影響:
-
如果分流電阻放在下橋臂(圖2右側),其兩端的電壓將直接接地。由于分流電阻通常很小,其兩端的壓差也很小,因此電流測量電路使用便宜的低壓運算放大器即可非常方便地放大壓差。這對于縮減成本很有幫助。但下橋臂分流有一個明顯的不足,即整個電路不再直接接地,而是連接高于接地端電壓的位置。分流電阻兩端的壓差通常以毫伏計。
-
如果將分流電阻連接在上橋臂(圖2左側),則電路直接接地,可消除地彈反射效應。如果要對電路進行精確測量或必須提供精確的輸出,則應選用此連接方法。此方法的唯一缺點是需要使用電壓更高的差分運算放大器電路,并且視運算放大器的帶寬而定,費用也可能會增加。
圖2 - 電流測量電路
盡管電壓、電流甚至功率本身都可以通過模擬電路輕松測量,而且成本很低,但能量測量卻需要使用更復雜的電路來實現。然而,傳統的能量測量方法是使用模擬電路測量電壓和電流,然后使用模數轉換器(ADC)將模擬信號轉換為數字信號,將數據輸出到單片機。單片機的作用是對信號隨時間累加的功率進行采樣,從而實現能量測量。測量能量的典型電路如圖3所示。在測量電路中增加單片機既有優點也有缺點。一方面,在算法計算、監視不同行為和進行更詳細的報告方面具有很大的靈活性,例如每小時、每天等。此外,單片機的作用不僅限于能量測量,還可以觸發事件、運行自定義狀態機或滿足工程師的任何需求。而如果系統原本就需要使用單片機,則成本和物料清單(BOM)的增加并不是問題。另一方面,使用單片機監測能量的缺點則是測量系統的總功耗、令人討厭的代碼開發工作和開銷成本都會增加,而且視精度要求而定,有時可能還需要外部ADC。
圖3 - 典型的能量測量電路
多年來,隨著業界對直流能量監測功能的需求不斷增長,多種面向此類應用的集成電路相繼問世。例如Microchip的PAC1934集成電路。此類集成電路只需使用分流電阻作為外部元件,即可輕松地同時對多達4個通道進行采樣。基本電路圖如圖4所示。電路中集成了運算放大器、ADC、算術運算邏輯、存儲器和用于連接系統的標準接口(通常為I2C或SPI)。與傳統方法相比,使用集成電路的優勢在成本方面尤為明顯,這是因為在一個集成電路中集成了能量測量所需的一切,使BOM和PCB尺寸顯著降低。
圖4 - Microchip PAC1934框圖(可同時測量4個通道)
主動能量監測的優勢
憑借適合大多數用例的靈活配置,專用集成電路能夠以極低的功耗在長時段內累加功率。通常,功率采樣率最低為每秒8次采樣,最高可達1
KSPS。例如,PAC1934以8 SPS運行時,可以累加超過36小時的功率,并且電流小于16
mA,同時4個通道全部有效且以16位的分辨率運行,無需軟件干預。此方法允許采樣率動態變化,從而可以擴大應用范圍。例如在標準筆記本電腦中使用集成電路監測電源軌。當筆記本電腦處于運行和活動狀態時,能夠以1024
SPS的采樣率進行監測,而當筆記本電腦處于掛起狀態時,監測速度可能降到8
SPS,因為在掛起狀態下,功耗不會有太大的波動。此外,降低采樣率可以減少能量監測的功耗,而不會影響性能。
主動能量監測最常見的一個用例是電池電量計量。專用集成電路可監測電池的電壓和電流,隨時獲知當前電池電量。更先進的電池電量計還可以檢測到電池遇到了特定問題,例如電量計可以跟蹤電池的電壓與電量的關系,如果二者之間不再有對應關系,則意味著電池的總容量因老化或其他因素而縮減。主動能量監測也是標準電池管理系統(BMS)的核心。BMS是多節電池組所使用的電路,負責對電池組進行安全充電和放電,并主動測量其電壓和電流,確保每節電池的參數都相同。BMS的功能還包括檢測故障電池,或在電壓過高或過低時斷開電池組。
主動能量監測的另一個常見應用是與智能手機和平板電腦上的操作系統以及筆記本電腦、計算機和服務器上的Linux®或Microsoft
Windows®搭配使用。對于智能手機和平板電腦,操作系統通過各種方法監測不同服務和應用程序所消耗的電量。在早期階段,系統不直接測量能量,而是使用表格數據獲取各個工作點的功耗,基于CPU、GPU和屏幕使用情況估算能量。估算出的能耗數據以統計數據的形式報告,便于用戶決定如何進一步操作設備。自Windows
8起,Microsoft在筆記本電腦和個人計算機中引入了能量估計引擎(Energy Estimation
Engine,E3)。E3早期階段的工作原理與智能手機中的估算算法類似,能夠根據各種資源的使用情況(處理器、圖形、磁盤、存儲器、網絡和顯示器等)來估算每項任務的功耗,從而實現功耗跟蹤。E3還引入了能量計量接口(EMI),系統制造商可以通過該接口為系統添加實際可用的能量測量傳感器,并進行相應聲明。如果加入了此類傳感器,E3會利用這些傳感器準確地測量功率和能量,而不是只進行估算。某些筆記本電腦制造商已在其產品中實現了這些功能。此外,過去還存在一些其他的方法(例如Sony在Vaio筆記本中實現的能量監測),但沒有支持這些方法的操作系統,只有專有應用程序才能訪問相關數據。Linux尚未提供與Microsoft
E3相當的工具,但據報道稱,他們已著手進行相關工作。工業I/O子系統支持在操作系統中加入各種傳感器,為用戶空間的應用程序提供非常簡單且功能強大的接口(基于文件的接口)。然而,在本文撰寫之時,工業I/O子系統仍是內核的擴展,而不是默認Linux架構的組成部分。Linux還支持能量監測調度和智能功率分配,這是一種用于嵌入式Linux領域的算法,可幫助系統決定如何調度不同的任務,同時對熱問題予以考量(能耗導致CPU/GPU發熱)。
能量測量集成電路的另一個值得關注的應用,是對USB功率和能量(出于各種原因)以及在服務器應用程序中的使用情況進行監測,如本文第一部分所述。由于服務器采用不間斷運行的設計,因此監測能耗有很多好處,例如可通過主動服務控制提高總體電源效率,能滿足越來越高的能效標準,允許系統管理員在服務器的某些部分出現功耗異常(表示未來可能發生故障)時執行預測性維護。
總結
就能量監測的需求以及系統需要執行的其他功能而論,某些方法可能比其他方法更適用。如果嵌入式系統是根據自身用途專門構建,并且需要了解自身功耗或估算能耗,則傳統方法更適用。我們還建議在單片機中加入內部ADC,以便最大限度縮減能量監測功能的成本。采用這種方法,只需要使用進行電壓和電流檢測的外部模擬電路。如果需要非常高的測量精度而不計BOM成本和功耗,則傳統方法比集成電路更適用。
但在很多情況下,更適合采用集成電路方法。例如,如果想要在操作系統中集成能量測量,就適合采用集成電路方法,因為集成解決方案就是為解決這一問題而構建,通過適當的驅動程序,系統能自動識別出能量測量并知道如何操作。能量測量集成電路通常可以測量多個通道(從而監測多條總線),因此,在需要監測大量總線時,集成解決方案具備明顯優勢。此外,同一條通信總線上可以使用多個集成電路(例如I2C或SPI)。另一個更適合采用集成解決方案的情形是,在系統處于功耗極低的睡眠模式或完全關閉的情況下,在較長的一段時間內測量能量。集成的能量監測芯片僅消耗極少的功率,并能在特定時段內自行累加能量,無需任何系統干預,而這正是實現集成解決方案的基礎。
對于有較高尺寸要求的高度集成化和密集型PCB(例如手機、平板電腦或筆記本電腦的主板),與等效的分立元件相比,集成電路占用的空間顯然更小。例如,在WLCSP(晶圓級芯片封裝)尺寸的芯片(大小為2.225
x 2.17 mm)中,包含一個能同時監測四個通道的能量測量集成電路。
Microchip
電池
直流系統
能量監測
-
在現實中,我相信有很多剛剛接觸單片機的同學,簡直是無從下手,打開一個程序,更會被復雜的結構和密密麻麻的代碼嚇到,產生退縮的想法,這篇文章帶你了解一下單片機程序。
我對單片機的總結:“單片機其實就是一個芯片,內部有若干寄存器,外部有若干引腳,我們可以通過程序控制內部的寄存器使得引腳與外部世界保持聯系!”就這幾句話,道出了單片機的真諦!有沒有感覺到單片機是多么的簡單!
1.單片機程序執行流程
這是我們首先必須要知道的。單片機程序一般就有兩種,一種是匯編程序,一種是c語言程序。這里我們講c語言程序。
單片機程序都有一個包含主函數的文件,包含主函數的文件都有一個統一的結構,如下所示:
#include "xxx.h"
int main() // 這是主函數的函數名
{
......; // 若干條語句
......;
while(1) // while括號中是1,說明程序進入后將在while里面無線循環,不會出來了,不懂的去看c語言基礎之while篇
{
......; // 若干條語句
......;
}
}
重點:單片機一上電,從主函數main的第一條語句開始執行,是一條語句接著一條語句從上而下執行,直到進入while后,再從while的第一條語句執行到最后一條語句,由于是死循環,會再從while的第一條語句執行到最后一條語句,如此反復執行,永不停止!直到斷電!
這些語句當中,有些是函數的調用,遇到函數的調用,進入到函數,再從函數的第一條語句執行到最后一條語句,然后跳出函數,再從剛才主函數中那條函數的下一條語句開始執行。如果實在搞不明白函數是怎么一回事,你可以用函數里面的所有語句代替函數在主函數中的位置。例如:
#include "LPC11XX.H"
#define LED1_ON LPC_GPIO1->DATA &= ~(1<<0)
#define LED1_OFF LPC_GPIO1->DATA |= (1<<0)
#define LED2_ON LPC_GPIO1->DATA &= ~(1<<1)
#define LED2_OFF LPC_GPIO1->DATA |= (1<<1)
/***********************************/
/* 延時函數 */
/***********************************/
void delay()
{
uint16_t i,j;
for(i=0;i<5000;i++)
for(j=0;j<200;j++);
}
/***********************************/
/* LED初始化函數 */
/***********************************/
void led_init()
{
LPC_SYSCON->SYSAHBCLKCTRL |= (1<<16);
LPC_IOCON->R_PIO1_0 &= ~0x07;
LPC_IOCON->R_PIO1_0 |= 0x01;
LPC_IOCON->R_PIO1_1 &= ~0x07;
LPC_IOCON->R_PIO1_1 |= 0x01;
LPC_SYSCON->SYSAHBCLKCTRL &= ~(1<<16);
LPC_GPIO1->DIR |= (1<<0);
LPC_GPIO1->DATA |= (1<<0);
LPC_GPIO1->DIR |= (1<<1);
LPC_GPIO1->DATA |= (1<<1);
}
/***********************************/
/* 主函數 */
/***********************************/
int main()
{
led_init();
while(1)
{
delay();
LED1_ON;
LED2_OFF;
delay();
LED1_OFF;
LED2_ON;
}
}
上面這個例子中,單片機一上電,會執行主函數的第一條語句,也就是led_init(),這個是一個函數的調用語句,程序會從led_init函數中的第一條語句開始執行,直到執行完最后一條語句后,回到主函數,進入while,從while的第一條語句delay()開始執行,delay()又是一個函數,程序會從delay()的第一條語句開始執行,delay()函數中有兩個for循環,執行完for循環后,就跳出delay()函數,執行LED1_ON,由于LED1_ON是個用#define定義的宏定義,由c語言基礎知識之#define宏定義篇,我們知道,LED1_ON就是LPC_GPIO1->DATA
&= ~(1<<0),如此繼續執行下去……。
如果不用define宏定義,也不用函數,上面的例子就可以寫為如下形式:
#include "LPC11XX.H"
/***********************************/
/* 主函數 */
/***********************************/
int main()
{
//LED初始化
LPC_SYSCON->SYSAHBCLKCTRL |= (1<<16);
LPC_IOCON->R_PIO1_0 &= ~0x07;
LPC_IOCON->R_PIO1_0 |= 0x01;
LPC_IOCON->R_PIO1_1 &= ~0x07;
LPC_IOCON->R_PIO1_1 |= 0x01;
LPC_SYSCON->SYSAHBCLKCTRL &= ~(1<<16);
LPC_GPIO1->DIR |= (1<<0);
LPC_GPIO1->DATA |= (1<<0);
LPC_GPIO1->DIR |= (1<<1);
LPC_GPIO1->DATA |= (1<<1);
while(1)
{
for(i=0;i<5000;i++)
for(j=0;j<200;j++);
LPC_GPIO1->DATA &= ~(1<<0);
LPC_GPIO1->DATA |= (1<<1);
for(i=0;i<5000;i++)
for(j=0;j<200;j++);
LPC_GPIO1->DATA |= (1<<0);
LPC_GPIO1->DATA &= ~(1<<1);
}
}
有沒有發現,第二種表示方法,雖然不涉及函數和宏定義了,對于c語言掌握不是很好的人來說,看的比較爽。如果你掌握了c語言的這些宏定義和函數的小技巧,第一種表示方法是不是更有利于閱讀程序的功能呢?
2.讀懂程序需要c語言基礎知識,當然,也可以邊看程序,邊學習c語言基礎知識。
3.讀懂程序需要會看單片機的寄存器定義,在程序中,大都是在給單片機的寄存器進行配置或是獲取單片機寄存器的數據。看哪種單片機程序,就要學會看哪種單片機的寄存器定義。知道了寄存器的定義,就知道如何配置寄存器或是獲取的寄存器數據代表的意義了。
例如我們要看LPC1114的程序,那么LPC1114的用戶手冊是必須要打開的。例如LPC_SYSCON->SYSAHBCLKCTRL |=
(1<<16);這條語句,就是在給SYSCON模塊中的SYSAHBCLKCTRL寄存器進行配置,所以我們要找到這個寄存器的定義。首先,打開用戶手冊,找到SYSCON這一章,然后找到寄存器描述這一節,就可以找到這個寄存器的定義了。至于(|=(1<<16))這些,都是寫基本的邏輯運算,也是些c語言的基礎知識而已。例如(|=(1<<16))
這個就是把1左移16個位,然后把左移后的數據與SYSAHBCLKCTRL寄存器進行或運算,運算后的結果再放入SYSAHBCLKCTRL寄存器當中。1左移16個位,就是bit16為1,其它位為0。與寄存器SYSAHBCLKCTRL進行或運算,我們不管這個寄存器原來的值是多少,我們現在只知道,1或任何數,都等于1;0或任何數,都等于任何數。所以,1左移16位后,再與寄存器進行或運算,實際上是把寄存器的bit16置1,剩下的位原來是多少,還是多少。
總結一句話,學習單片機主要是把程序里面的“或”“和”“進制轉換”搞清楚,就很容易搞懂單片機程序了。
單片機
單片機
程序
-
我相信很多同學在剛開始學習單片機的時候,在做NRF24L01通信時會遇到很多棘手的問題,有時候一個星期也搞不明白,還有可能越搞越不懂,越搞越不會,最后無奈只好想放棄。今天在這里給大家講一下新手是如何快速搞通的。
其實NRF24L01是一個非常容易操控的東西(讀者:“站著說話不腰疼,會了當然不難”。瑞生:“真的很簡單,請看下文”)。
大部分人使用的NRF24L01模塊都如上圖所示,上面模塊的原理圖如下:
看不清楚?去datasheet上去看。這里嘮叨幾句,很多人懶的要命,連datasheet也沒有看過,就到處求爺爺求奶奶的幫他搞NRF24L01。還有一部分人,“我的datasheet上怎么沒有?”
“親,能給個datasheet嗎?”。datasheet是一個免費的東西,你要看哪個芯片的datasheet,去哪個芯片的官網去下載就可以了。瑞生說:你連芯片的datasheet也拿不到,我勸你還是改行吧!
為了節省大家的時間,這里放出NRF24L01的datasheet(^_^),點擊下載:nRF24L01
回到正題,大家看NRF24L01模塊的原理圖,實際上就是一個芯片,連了一些必要的電容電阻電感和一個天線,然后留出了和單片機通信的SPI口和IRQ中斷引腳。
NRF24L01,任何單片機可以驅動,帶硬件SPI口的單片機,可以配置好SPI外設以后驅動,沒有硬件SPI口的單片機,可以用IO口模擬SPI時序通信。
重點:NRF24L01是一個數字芯片,內部有若干寄存器,什么數據寄存器、配置寄存器、狀態寄存器等。單片機通過SPI口,首先配置好NRF24L01的配置寄存器,諸如頻道,通道,地址,接收還是發送模式等等。然后分兩種情況,一、如果配置為了發送模式,就可以發送數據了,發送完數據以后,IRQ引腳會拉低,所以觀察IRQ引腳就可以知道有沒有發送成功;二、如果配置為了接收模式,就需要不斷的觀察IRQ引腳,IRQ引腳正常是高電平,如果接收到數據,就會變成低電平,所以觀察這個引腳就知道有沒有接收到數據。
新手在做NRF24L01的通信程序時,最好拿兩個相同的單片機,做相同的程序(除了一個配置未發送,一個配置為接收)。
重中之重:首先要確保單片機和NRF24L01能夠正常的SPI通信,這個就好比你和一個阿拉伯人說話,你告它先去家樂福買瓶牛奶,再去沃爾瑪買個雞腿,然后….,但是如果阿拉伯人根本聽不懂你說話,那么…就沒有然后了。你用單片機給NRF24L01寫配置寄存器,輸入地址,輸入頻道…稍等,你配置了半天,NRF24L01的寄存器真的如你所想配置好了嗎?不確定?這就需要驗證。驗證方法?太容易了,找一個可讀可寫的寄存器,你先寫進去,然后再讀出來,如果數據一樣,那么你的SPI通信就正常,你大可放心的配置了,如果讀出來的數據和寫進去的數據不一樣,恭喜你,你再和不懂漢語的阿拉伯人說了半天廢話,你還是先搞通SPI再說吧。這里我給你一個寄存器,就是地址寄存器,可讀可寫,所以你可以用地址寄存器驗證一個SPI通信是否正常,下面是我寫的驗證函數:
/********************************************/
/* 函數功能:檢測24L01是否存在 */
/* 返回值; 0 存在 */
/* 1 不存在 */
/********************************************/
uchar NRF24L01_Check(void)
{
uchar check_in_buf[5]={0x11,0x22,0x33,0x44,0x55};
uchar check_out_buf[5]={0x00};
NRF_CE=0;
NRF24L01_Write_Buf(WRITE_REG+TX_ADDR, check_in_buf, 5);
NRF24L01_Read_Buf(READ_REG+TX_ADDR, check_out_buf, 5);
if((check_out_buf[0] == 0x11)&&\
(check_out_buf[1] == 0x22)&&\
(check_out_buf[2] == 0x33)&&\
(check_out_buf[3] == 0x44)&&\
(check_out_buf[4] == 0x55))return 0;
else return 1;
}
如果你不確保你的SPI通信正常,請先確定以后再進行下面的內容,否則就可能要對牛彈琴了。
收發數據的程序,要先判斷“數據是否發送出去了”和“是否接收到了”,而不要直接判斷發送和接收的數據是否一致。
例如:接收模塊,if(IRQ==0)點亮LED1,當程序執行后,當你看到LED1亮了,哇,接收到了。
當你確定接收到數據以后,你再判斷接收到的數據和你發送的數據是否一致。
不難看出,以后我們在做程序的時候一定要循序漸進,不要一步求成。我們要相信一步一步的做,最后一定會完成的。
單片機
單片機
NRF24L01通信
-
如果我們在做單片機無線通信的時候,沒有很好地理解“數字”的概念,我們就會遇到很多的問題,例如:可以傳送文字嗎?,可以傳送聲音和圖片嗎?......這些問題雖然聽上去讓人覺得很奇葩,但是正是這樣的問題更反映出在學單片機之前,我們并沒有做好功課。
數字與模擬
自從有了計算機,我們的生活就和數字息息相關了。
“數字”和“模擬”和的感性認識,最直接的就是電腦顯示器的接口:VGA接口和DVI接口。VGA接口就是模擬接口,DVI接口就是數字接口。
(左邊是DVI數字接口,右邊是VGA模擬接口)
我們先來理解一下“數字”與“模擬”的區別。
在一個5V的系統中,“模擬”電壓可以是0~5V中的任何一個值,例如2.36V,而“數字”電壓,只有0V和5V兩種,一般情況下,我們把0V稱作低電平(0),把5V稱作高電平(1)。
在數字世界中,只有0和1
我們每天使用的電腦就是一個數字器件,各種聲音、圖片、視頻、文字等數據在電腦上存儲,最根本都是01組成的。
這里就不得不提到一個我們學習單片機必須要掌握的兩個概念:位和字節。
我們剛才說的01就是位,也就是說,一個位不是0就是1,這就是剛才說的那些聲音、圖片等最終的存儲方法。
8個位就是一個字節。字節就是為了計算方便和顯示方便而故意搞出來的一個東西。由此還涉及到了BCD碼、二進制、十六進制、十進制等概念和算法。
回到最初的那些奇葩問題
還是舉栗子吧,像單片機這種實踐課程,有了栗子才好理解。
英文傳輸:比如傳輸“hello”,hello每個字母對應的十六進制字節為:0x68 0x65 0x6c 0x6c
0x6F,那么,我們只需要把這幾個字節傳輸過去,在那邊再進行ascii與字母的轉換,即可顯示hello。
中文傳輸:比如傳輸“老頑童”,1個漢字對應的2個十六進制碼,我們一般用gbk碼。“老頑童”對應的gbk碼字節為:0xc0 0xcf 0xcd 0xe7
0xcd 0xaf。我們只需要把這幾個字節傳輸出去,在那邊再進行gbk與十六進制的轉換即可。
聲音、圖片、視頻,文件都比較大,它們是由很多個字節組成的,并且按照一定的格式存儲。例如前面的英文用的而是ascii碼,中文用的是gbk碼,這些都被稱作“協議”。“協議”就是用來編碼和解碼的。聲音也有很多“協議”,比如mp3格式,wma格式等等。比如圖片有jpg,png,bmp等格式,比如視頻有avi,mp4等格式。這些格式都有官方統一的協議規定,最終都是字節的排列方式不同。
所以,不管傳輸什么,都是在傳輸字節。我們一般以十六進制形式寫出來一個字節,其實一個字節就是由8個位組成的。
關鍵的問題,就是在傳輸之前,你得知道你要傳輸的東西的協議,然后借助各種軟件把這些要傳輸的東西轉換成字節,然后就可以發送了。
介紹到這里,大家應該有了基本了解,希望大家在學習單片機的時候把基礎知識把握好。
單片機
單片機
數字世界
-
如今,許多消費類、企業和工業設備將USB
Type-C端口作為唯一的輸入電源選項。雖然USB-C®技術可以提供高功率和高數據速率,但其安裝范圍必需在離AC插座最遠3米的距離內。隨著以太網供電(PoE)日益普遍,通過標準以太網電纜供電成為一種更普遍、更方便、同時也是最實用的解決方案,可以在最遠100米的距離內提供電源和數據。雖然市場上大多數適配器只提供電源,但提供的功率有限,最高只有25W。Microchip
Technology
Inc.(美國微芯科技公司)今日發布一款具有最高功率的PoE轉USB-C電源和數據適配器,能通過PoE基礎設施支持的以太網電纜提供高達60W的USB輸出功率。
新推出的適配器(部件編號PD-USB-DP60)可接受高達90W的PoE,并通過USB-C轉換為60W輸出,能為大多數相機、筆記本電腦、平板電腦和其他使用USB-C輸入電源的設備供電。該適配器通過減少對AC基礎設施的依賴來簡化安裝。由于無需依賴AC插座,不再受3米的距離限制,新款適配器可將電力輸送到100米以外。新款適配器還增強了USB-C電源設備的遠程電源管理能力。由PoE源提供的遠程電源復位功能,可以通過Web界面或簡單網絡管理協議(SNMP)進行電源上電復位,無需在設備所在地手動拔掉插頭并重新啟動。
Microchip 推出的 PoE 轉 USB-C 適配器可連接到部署了各種標準的PoE 源,支持較新的 IEEE® 802.3af/at/bt
標準以及傳統的 PoE 標準。由于已經安裝的PoE有各種不同的實施方案,因此擁有一個多功能的適配器至關重要。
Microchip PoE業務部總監Iris
Shuker表示:“這款新器件是輕松部署USB-C設備并為其提供長距離電源和數據連接的理想選擇。適配器采用Microchip的USB電源傳輸IC和PoE芯片組,可與我們最新的PoE供電器和中繼器完美搭配。”
新款適配器具有將90W輸入轉換為60W輸出的能力,使需要更高功率充電的設備能夠使用以前無法使用的PoE,同時可與Microchip的高性價比單端口和多端口(最多24個)PoE供電器/中繼器以及符合IEEE
802.3af/at/bt行業標準的交換機配對使用,每個端口可提供高達90W的功率。如果需要更低的功率為USB-C設備供電,可以使用IEEE802.3af(15.4W)或IEEE802.3at(30W)PoE源。
Microchip還提供支持PoE轉USB-C適配器的關鍵集成電路解決方案,包括PD70xxx系列PoE IC和LAN7800
USB轉以太網橋接器。該功能由Microchip的供電軟件框架(PSF)實現。PSF是一個開源的供電(PD)協議棧,運行在UPD301C
PD控制器上,為Microchip的PD控制器、單片機和USB集線器提供完整的PD 3.0功能和定制功能。
供貨與定價
PoE 至 USB-C 適配器現已上市,單位售價 100 美元。如需了解更多信息,請聯系 Microchip 銷售代表、全球授權分銷商或訪問
Microchip 網站。如需購買本文提及的產品,請訪問我們的直銷網站或聯系 Microchip 授權分銷商。
Microchip
以太網
適配器
Microchip
-
隨著物聯網的發展,企業面臨著巨大的機遇,為了更好的發展,企業不斷地探索,將尋求低功耗廣域網的解決方案,以實現在格格前景光明的領域中占據一席之地。
機器對機器通信(M2M)和物聯網(IOT)的概念已經永久地改變了當今每一項業務的價值鏈。隨著2G網絡即將關閉,各組織一直在尋找可以服務于廣泛的工業連接網絡,而這必然為低功耗廣域網(LPWAN)提供了廣泛的應用機會。SigFox、LoRa等低功耗廣域網比以太網、蜂窩網絡、衛星網絡、藍牙和無線網絡等現有連接方式更受歡迎,因為它們能夠解決傳統網絡技術的關鍵限制,如距離、成本和電池壽命。
根據《全球市場觀察》預計,到2025年,全球LPWAN市場將超過650億美元,其主要原因是物聯網的日益擴張。隨著低成本傳感器的部署和實施,企業、消費者、城市和整個國家都有機會通過提供數據來改變經濟、市場和成果,從而徹底改變價值創造。
讓我們來看看LPWAN技術的一些流行用例。
智慧城市
智慧城市可能是近代最雄心勃勃的概念,在這個概念中,整個城市都被物聯網傳感器連接在一起。智慧城市融合了先進的綠色技術,創造一個可持續的環境,既能提供高生活水平,又能引領碳中和之路,并提供經濟高效的解決方案。這是一個健康、節能的城市,并盡可能多地使用可再生能源,包括生物質和廢物。
智慧城市中物聯網和M2M的部署涵蓋了多種公共服務和基礎設施,包括公共交通、智能交通管理(如停車位管理)、交通流量監控、擁堵收費和道路收費、交通信號燈和執法攝像頭、環境和公共安全以及公共場所廣告。
為了能夠連接所有物聯網設備,各種無線局域網和廣域網(如低功耗藍牙、ZigBee、Wi-Fi和蜂窩技術)的重要性不言而喻。不過,現在,像Sigfox、LoRa、LTE-M和NB-IoT這樣的低功率廣域網已經成為物聯網的催化劑,并且越來越多地部署在停車場、公用設施、污染監測以及需要無線通信的各種應用中。據《世界新聞報》報道,在智慧城市的數十億連網設備中,有60%適用于低功耗廣域網技術。
汽車制造業
隨著全球汽車需求的不斷增長,汽車制造商面臨著提高運營效率、保證產品質量和準時交貨以保持競爭優勢的巨大壓力,而物聯網和其他數字技術極大地彌補了這一壓力。相當多的全球汽車行業參與者已經加入了數字化轉型潮流,并利用諸如聯網和自動駕駛汽車、車輛遠程信息處理、車隊管理或駕駛員輔助等趨勢。
盡管LPWAN對汽車制造商來說仍是一個相對較新的領域,但它是物聯網的關鍵推動者之一,也是一個潛在的轉型引擎。LPWAN專為由眾多電池供電傳感器的高性價比遙測數據通信而設計,旨在為汽車行業的高級云分析帶來全新的運營透明度和效率。
智能計量
智能電表是智慧城市的基本特征,通常部署在智能建筑、建筑能源管理、家庭自動化和連網電力解決方案中,這些因素對公用事業行業的數字化轉型至關重要。鑒于智能電表的使用特征,它們通常使用LPWAN連接。事實上,據福布斯估計,公用事業是第二大物聯網市場,因此很明顯,智能電表有望成為擴展LPWAN連接的主要驅動因素之一。
石油天然氣和采礦業
采礦、石油天然氣行業需要遠程管理連網設備。支持物聯網的LPWAN可穿戴設備和技術可以通過監控整個價值鏈的績效來改變采礦作業并幫助改善安全狀況。LoRa技術已經開始部署,用于連接位于危險偏遠地區的礦山,這些地區以前被認為是具有挑戰性或成本過高,無法有效開采。LoRa網關憑借其獨特的穿透能力,部署在建筑物或塔上的速度相對較快且成本較低,可以連接到15公里以外的傳感器或部署在地下的儀表。
LPWAN的技術優勢和能力正迅速得到全球認可。開發人員和系統集成商需要識別和響應客戶對運營、流程和投資回報率(ROI)改進的需求,他們已經意識到物聯網解決方案對其持續成功的重要性。
在核心制造商和終端行業的共同支持下,LPWAN技術的采用可能會在未來幾年繼續增長。
物聯網的熱潮對眾多企業帶來了機會,對于我們來說是一把雙刃劍,既是機會又是挑戰需要我們認真的對待。
單片機
物聯網
機遇
-
隨著現代社會的發展,人們對網絡的要求越來越高,5G時代一點一點的滲透進我們的生活,給我們帶來了不一樣的體驗,雖然5G在生活中還沒有普遍存在,但在有些方面我們已經體會到它帶個我們的便捷,我們期待著5G社會的到來。
資策會MIC預估,明年全球信息通訊產業可留意5G、智能音箱、情感辨識、區塊鏈等7大趨勢;其中,5G全面服務可望2020年之后明朗。
資策會產業情報研究所(MIC)今天上午舉辦2019信息通訊國際局勢與7大前景記者會。展望明年全球信息通訊產業,MIC預估有5G、物聯網、人工智能與區塊鏈等7大趨勢。
其中在5G部分,MIC資深產業分析師鐘曉君表示,5G商轉倒數,頻譜釋照與基礎網絡部署進入沖刺,預期明年5G商轉可觀察5G釋照進度、基礎網絡整備狀況與移動服務時機3大重點。
MIC預估明年超過30個國家規劃完成5G頻譜釋照,各國對5G時代基地臺建設審查傾向寬松、部分國家鼓勵共建共構,電信業者在明年投入5G基地臺時,也需投入更多的光纖建設。明年全面性的5G移動服務時機還未到,預期2020年之后可望明朗。
在家用上網部分,MIC資深產業分析師徐子明預估,明年5G家庭上網有機會與Wi-Fi
6(802.11ax)標準結合,深耕家用固定無線接取(FWA)市場。
他指出,5G FWA部分國家電信營運商跟進中,關鍵是否有足夠動力積極推動布建,布建成本相對固網寬帶現階段仍偏高。
觀察邊緣運算,MIC資深產業分析師施柏榮預期,明年邊緣運算可實現平行分散的無服務器環境(Serverless),未來有望響應既多元且復雜的實時情境,明年5G商轉可成為發展邊緣運算的助力。未來將有更多依照客戶端邏輯客制化的混合運算架構(FlexibleArchitecture)。
在特殊應用芯片(ASIC)芯片部分,MIC資深產業分析師葉貞秀預估,明年ASIC芯片需求看漲,臺灣IC設計業者可望受惠。包括人工智能發展開啟云端與終端客制化芯片的市場需求,包括聯發科、凌陽等臺廠成立ASIC部門進行擴張。
觀察智能音箱市場,MIC產業分析師曾巧靈表示,明年智能音箱市場可望持續成長,以美中兩大市場為核心,4大廠包括亞馬遜(Amazon)、谷歌(Google)、阿里巴巴、百度四強鼎立。其中Amazon與Google幾乎囊括8成以上美國市場。
Amazon與Google未來瞄準美國以外市場,阿里巴巴利用電商優勢,整合零售、支付等服務,主打語音購物;百度持續強化語音助理功能,結合智能手機品牌廠商,奠定語音助理用戶基礎。
觀察情感辨識應用,MIC資深產業分析師楊政霖表示,明年情感辨識發展將進入情緒辨識2.0,呈現應用多元與情緒優化情境。明年后應用領域可延伸到影視、零售、醫療、教育、電話客服等領域。2020年后可期待例如家用型機器人、智能音箱等、甚至聊天機器人具備情感辨識功能。
展望區塊鏈,MIC產業分析師高志昕預期,明年區塊鏈發展將持續邁向區塊鏈3.0,從聚焦金融應用擴散到醫療、物流、能源、物聯網、農業、食品等產業。明年持續偏向小規模采用與試驗性階段,預估2025年后區塊鏈技術應用可望大規模擴散。
2021年已經開始,我們相信5G時代也已經開始,我們期待它帶給我們的變化,也期待著它帶給我們不一樣的體驗。
單片機
互聯網
5G
-
隨著現在社會的發展,物聯網的發展也越來越好,不斷地完善,以更好地服務于人類生活,但凡事在發展中都會遇到想象不到的一系列的挑戰,那么我們現在來分一下物聯網在發展中遇到的挑戰有哪些。
連接性是物聯網設備的關鍵。畢竟,連接性使簡單的東西變成物聯網的一部分。連接性使物聯網設備收集的數據能夠得到分析、組織和實際使用。
在實驗室中開發新的物聯網設備時,實現無縫、低延遲的連接非常簡單,但這些是實驗室條件。在現實世界中,連接性對于新設備的性能至關重要,因此您需要正確處理它。
那么,提供可靠物聯網連接的主要挑戰是什么?這里有三個主要方面需要考慮。
挑戰1、功耗
大多數物聯網設備相對較小且簡單,依靠電池供電。此外,它們可能部署在無法定期維護或升級的地方。因此,能源效率至關重要。
最大化物聯網設備和生態系統的能源效率取決于選擇正確的無線接入技術和射頻(RF)設計。這樣既可以確保首先將功耗降至最低,又可以確保沒有不必要的射頻功率輸出。
挑戰2、帶寬
眾所周知,物聯網是建立在數據基礎之上。任何物聯網設備都需要能夠收集和傳輸數據,并有可能從其他設備或中央控制單元收集數據。但帶寬會因您所使用的連接協議類型,以及最終物聯網部署的規模而異。(來自物聯之家網)您的設備將會是成千上萬個向您服務器發送請求和響應信號的設備之一嗎?您的設備是要散布在廣闊的地理區域,還是僅限于一棟建筑?
然后是您物聯網設備將要傳輸的數據類型。簡單的數據,例如,在固定時間測量溫度或重量——意味著要傳輸的數據既小又簡單。對特定參數(如位置)的持續跟蹤需要更多帶寬。而豐富的數據,如音頻和視頻流,則需要大量帶寬。
挑戰3、安全
在任何收集、存儲、分析或傳輸數據的環境中,安全性都是一個關鍵的考慮因素。然而,它在物聯網方面具有一些特殊的細微差別。
首先,物聯網設備從本質上講是提供對網絡訪問權限的端點,因此,它們可能會成為惡意攻擊者的目標。此外,許多物聯網設備太小、太簡單,自身無法集成復雜的安全保護機制。這些設備需要經過適當的驗證和授權才能連接到相關網絡,并且它們發送和接收的數據必須始終加密。
物聯網生態系統的連接性是靈活的,并且形式多種多樣。在開發和部署物聯網網絡時,組織可以選擇使用適當的協議和技術。然而,在做出這些決定時,重要的是要考慮如何確保高效的功耗、足夠的帶寬和強大的安全性。
以上是物聯網連接的三大挑戰,不過我們相信物聯網會找到解決這些挑戰的方法。
單片機
物聯網
單片機
-
隨著5G社會的到來,我們越來越渴望它能夠在我們生活中普遍存在,科學家們也在努力的運用5G為我們創造更好的福祉,來滿足我們各項要求,方便我們生活,給我們的社會帶來更加便宜的方式。
基于,5G通訊距離較短,因此基地臺的密度必須比4G 高,自然也造成建設成本拉高。日本政府將允許NTT
Docomo等三大電信業者,在交通信號(traffic
signals)上架設5G基地臺,希望透過國家高密度的交通信號燈來減少推出超高速網絡所需的成本。該計劃包含在政府的IT戰略藍圖草案中,預計將于2019年6月中旬獲得內閣批準。
政府認為交通信號燈計劃是一種可以加速5G到來的解決方案,特別是考慮到日本的交通燈號密度高于其他國家。目前,大約200,000個交通信號是由地方政府管理。地方當局將能夠利用這些網絡進行車輛的自動駕駛以及自然災害發生時的緊急通訊。交通信號進行5G設備測試,將于2020財政年度在多個城市開始執行,該項目將持續到2021年3月,目標是在2023財政年度結束時,完成全國引進的作業。相關政府機構,包括通訊部、國家警察廳、交通部和地方政府,將設立一個溝通協調會,以協助5G測試進行。
全國5G覆蓋,預計需要數十萬個基地站。營運商將繼續使用現有的4G基地臺,但由于5G信號距離較短(例如:28
GHz頻段的頻率只有幾百米),因此該國的四家營運商需要尋找更多的位置。營運商經常為建屋頂上基地站及輸電塔而傷透腦筋,因大部分可用空間已經被使用,所以將需要花時間和精力。
日本5G運營給四家電信公司,包括NTT Docomo、KDDI、SoftBank
Corp.和Rakuten樂天,計劃在2024財政年度的五年內投資5G約1.6兆日元(148億美元)。
5G基地臺與紅綠燈搭載一起,在很大程度上能夠節省開支。Docomo于2010至2018財政年度期間,在4G基地站投資約2.4兆日元,并在此期間結束時,擁有208,500個站臺,相當于每個站臺超過1000萬日元。5G電臺的平均成本應該更低,因為只需升級軟件就可以使現有設施與新服務兼容,而且搭載紅綠燈可以削減建設新電臺所需的費用。
中央政府計劃與營運商討論這個想法,希望讓他們分擔與地方政府使用交通信號的成本。但有關如何劃分開支的詳情尚未確定。由于,傳感器將被安裝在燈上以建造「可信任mesh網狀網絡」,也就是即使當緊急情況切斷互聯網的連接,也可以繼續傳輸訊息的本地網絡。而營運商、警察和地方政府都有自己的私人mesh網狀網絡。
在當地政府能夠使用配備基地站的燈來為居民提供服務。例如,在緊急情況下,可以透過信號掃描居民的My
Number識別卡號將訊息傳達給他們的家人,以確認居民的安全。
日本運用5G不僅節約了資源還方便了人們,更重要的是保證了人們的利益,我相信不遠的將來我們運用5G會尋找到更有益處的方案。
單片機
互聯網
5G
-
現在無論你是上班族還是學生黨,無論你涉及什么樣的工作領域,WiFi在我們生活中占據著重大的地位,我們無時無刻沒有在依靠著它,毫不夸張的說,WiFi在我們現在帶生活中是推動我們發展的重要動力,不過隨著互聯網的發展,物聯網將逐步破壞WiFi對我們生活的影響力度。
一些新創及網絡服務公司,開始發展偏離IEEE 802.11基礎網絡標準的應用層服務。此層提供許多新型服務,例如網狀網絡(Mesh
Network,一組路由器協同運作,提升無線網絡的涵蓋率)及服務開通策略(Provisioning
Tactics,無線裝置鏈接網絡的方式)。這些都是為了響應物聯網的需求。
這不免令人想起用在小型、低功率的數字無線電網狀網絡標準Zigbee的歷史。它也有一些應用層服務,專門為特定種類的裝置而設計。不過卻造成顧客的困擾,因其無法判斷哪些設備可搭配使用。Wi-Fi恐怕正朝這方向前進。
如果考慮網狀Wi-FI系統,像Eero、Google、Securifi都提供宣稱可涵蓋整個家庭的產品,不過其網狀路由器必須全來自于同一公司才能得到保證。有些公司還理解到可在網狀路由器里植入安全相關產品,使得網絡存取優先權得以實現。但是到底這樣的應用層與Wi-Fi標準核心之界線何在?
這里有個案例,就是Comcast公司。在2017年,它的Wi-Fi產品修改成架構在分級保護控制等服務之上。服務軟件來自于新創公司Cirrent,使服務開通或新增網絡組件變得比較容易。Cirrent軟件不只用在Comcast的路由器,也用在Bose、Electrolux的一些消費電子裝置上。
裝有Cirrent軟件的產品一拿到使用Comcast路由器的家庭,就能自動連上Wi-Fi網絡。但這是特定廠商的片段解決方案,如果家中路由器沒有Cirrent軟件,即使有Electrolux洗衣機可能也會遇到連網問題。Cirrent的應用軟件確實能解決常見的Wi-Fi問題,但是用戶也被特定芯片商、路由器制造商、服務提供商綁住了。
“如果把這類應用看成是架在Wi-Fi標準之上的商業手段,那還有道理,”新創公司Plume的執行官Fahri
Diner指出。Plume的軟件是借助調整家中路由器的容量來改善覆蓋率。除了Comcast之外,Plume也跟三星簽約,將其產品轉變成內含Plume軟件的網狀路由器。
Diner跟許多主要的Wi-Fi芯片商合作以確保兼容性,也開放了一些必要的程序代碼。不過如果不是每家廠商都使用Plume軟件的話,其動態網絡優化的功能便無法在不兼容的路由器上執行。
解決廠商各自為政的唯一解答在認證Wi-Fi設備的Wi-Fi聯盟身上。Cypress半導體的物聯網營銷副總Brian
Bedrosian認為:簡化的服務開通及鄰近網絡感知能力(即使沒有Wi-Fi存取點,裝置間仍能互相通信),應該成為Wi-Fi認證規格的一部分。
“相較之下,Wi-Fi有可能像Zigbee的規格那樣,變成一場災難,”Bedrosian指出。希望Wi-Fi聯盟能阻止走向這樣的結局。
我們還是希望WiFi聯盟將不斷的發展和壯大,只有不斷地順應現代社會的發展要求,還會不會走向災難。
單片機
Wi-Fi
物聯網
-
I2C和SPI是兩種不同的通信協議。
當我們聽到這個協議時,它似乎是不可實現的。事實上,協議只是人們定義的一個標準。我們只需要按照這個標準去做。例如,如果公司說我們早上9點上班,我們9點上班,或者我們扣工資,這就是協議。
最常用的I2C通信芯片是EEPROM芯片,如ATMEL AT24CXX系列,除此之外還有該芯片的其他一些功能。使用SPI通信的芯片有外部閃存芯片,以及一些用于其他功能的芯片。
I2C通信需要兩個引腳:SDA SCL。SCL是時鐘引腳,SDA是數據引腳。
(這是一個EEPROM芯片。)
(這是時鐘芯片。)
SPI通信需要3引腳或4引腳:CS SCK MOSI MISO。SPI通訊芯片銷名字不一定是名字,可能有其他的名字,但意思是一樣的,比如莫西人銷手段“主機機器的輸出輸入”,SPI接口芯片可能SDI寫的,就像SPI設備作為從機,所以它的SDI,這意味著“從機數據輸入插口。
SPI通信過程如下:將CS引腳下拉,然后由SCK輸出時鐘,然后在MOSI引腳上輸出數據,在MISO上獲得數據。
這是一個SPI FLASH芯片,DO是MISO, DI是MOSI, CLK是SCK,功能相同,只是名字不同。
這是一個帶有SPI接口的ADC芯片,Dout是MISO, DCLOCK是SCK,這個芯片有3個SPI引腳。
大多數MCU有I2C端口和SPI端口,可能有幾個I2C端口和SPI端口。但是,沒有I2C端口和SPI端口的單片機,也可以通過普通引腳來模擬它們的定時通信。
另外,如果你是一個初學者,一定要學會使用通用的pin模擬,以更深入地理解他們通信的本質。
整個通信過程實際上就是對引腳電平進行控制和檢測的過程。也就是說,第一天學習控制單片機的引腳電平和檢測單片機的引腳電平。因此,I2C通信和SPI通信并不困難。
讓我告訴你一個簡單的溝通過程。例如,我們將下面的通信名稱稱為KJLWT。這個名字看起來很有趣,但實際上是中文“technology old naughty boy”的首字母縮寫。主要是讓大家明白,這個名字是用來嚇唬人的。
我們用兩條線通信,一條時鐘線和一條數據線。時鐘線實際上是用來產生脈沖波形的,更直接的是引腳高低信號,如下圖所示:
(這是時鐘信號)
例如,我們規定當時鐘引腳高時,讀取數據引腳的電平,并且需要8個連續的時鐘來讀取一個字節。在數據方面,如何給出數據呢?就像那樣簡單,數據饋送端,當一個低電平被檢測到,表示數據在數據引腳上被發送的位。例如,數字0x88以二進制形式寫入為10001000。讓我們來看看傳輸這些數據的過程:從機器檢測時鐘針,檢測到一個下降沿(即從高到低水平),數據發送的bit7體現數據大頭針,比如bit7是1,1000年,1000年,數據銷高水平,高水平的的主機時鐘針,針測試數據,記錄,從機器再次發現時鐘的下降沿銷后,和數據bit6反映了數據的別針,由于1000 1000 bit6是0,所以機器的數據確定,然后時鐘引腳為高電平,主機檢測數據引腳的高電平和低電平,然后記錄位6…這樣做八次,一個字節就可以從從機傳送到主機。是容易的嗎?
時鐘的速度,也就是數據傳輸的速度,例如,如果脈沖周期是1秒,也就是1Hz,那么它需要8秒來傳輸一個字節;如果脈沖周期為1毫秒,即1 kHz,則輸出一個字節只需要8毫秒。所以你知道交流的速度意味著什么,對吧?
I2C通信,SPI通信,在我剛才展示的例子之上再多一點協議。對于特定的協議,您可以查看任何I2C和SPI通信接口芯片,并查看序列圖。我們要做的就是利用單片機的引腳來進行計時。
單片機
單片機
SPI
I2C
-
單片機
單片機
STM32
引腳