原创 C++設計模式(三)模板方法

重構書籍 《重構-----改善既有代碼的設計》 《重構與設計 Recfactoring to Patterns》 重構關鍵技法 靜態 -> 動態 早綁定 -> 晚綁定 繼承 -> 組合 編譯時依賴 -> 運行時依賴 緊耦合 ->

原创 C++設計模式(七)橋模式

橋模式 “單一職責”模式: 在軟件組件的設計中,如果責任劃分的不清晰,使用繼承得到的結果往往是隨着需求的變化,子類極具膨脹,同時充斥着重複代碼,這時候的關鍵時劃清責任。 典型模式 Decorator Bridge 動機(

原创 C++設計模式(四)Strategy策略模式

“組件協作”模式: 現代軟件專業分工之後第一個結果是“框架與應用程序的劃分”,“組件協作”模式通過晚期綁定,來實現框架與應用程序之間的松耦合,是二者之間協作時常用的模式。 典型模式 Template Method Starte

原创 C++設計模式(五)觀察者模式

“組件協作”模式: 現代軟件專業分工之後第一個結果是“框架與應用程序的劃分”,“組件協作”模式通過晚期綁定,來實現框架與應用程序之間的松耦合,是二者之間協作時常用的模式。 典型模式 Template Method Starte

原创 C++設計模式(八)工廠方法

“對象創建” 模式 通過“對象創建” 模式繞開new,來避免對象創建(new)過程中所導致的緊耦合(依賴具體類),從而支持對象創建的穩定。它是接口抽象之後的第一步工作。 典型模式 Factory Method Abstract

原创 C++設計模式(六)裝飾模式

裝飾模式 “單一職責”模式: 在軟件組件地設計中,如果責任劃分地不清晰,使用繼承得到的結果往往是隨着需求地變化,子類極具膨脹,同時充斥着重複代碼,這時候地關鍵是劃清責任。 典型模式 Decorator Bridge 動機

原创 網易C++設計模式筆記(二)面向設計對象的原則

變化是複用的天敵! 面向對象設計最大的優勢在於:抵禦變化。 重新認識面向對象 理解隔離變化 從宏觀層面來看,面向對象的構建方式更能適應軟件的變化,能將變化所帶來的影響減爲最小。 各司其職 從微觀層面來看,面向對象的方式更強調

原创 網易C++設計模式筆記(一)

1.什麼是設計模式 “每一個模式描述了一個在我們周圍不斷重複發生着的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重複勞動“ ----Christopher Alex 2.GOF設計模式書籍: 歷史性著作《設

原创 小型功率放大器的設計與製作

一、功率放大電路的關鍵問題 ①將輸入信號的電壓放大之後再進行電流放大。 ②三種之前的方案 (a)電路,會有交越失真不採用 (b)電路,三極管取出大量電流時,Tr1和Tr2溫度升高,Vbe電流變小。而二極管電流基本不變,

原创 四軸電池ADC監控學習

一、硬件原理 電池供電通過兩個分壓電阻接地,STM32則在兩電阻中間通過ADC檢測電池電壓。(引腳BAT_DET) 二、ADC通道初始化 //初始化電池檢測ADC //開啓ADC1的通道8     //Battery

原创 增強輸出的電路

一、射級跟隨器 發射極跟隨着輸入信號(基極電位)進行工作。 1.1典型電路 信號從發射機取出,而且沒有集電極負載電阻Rc。 1.2 不受負載電阻的影響 改變RL的值和改變RE的值是一樣的。並且Ve的電位只受Vb的影響。 二

原创 MPU6050寄存器記錄

參考資料:http://blog.sina.com.cn/s/blog_8240cbef01018i10.html 不過有一些寄存器沒有寫到,所以我自

原创 DMA實驗總結

一、RCC設置 沒什麼好寫的之前USART的基本一樣 /**************************************************************************** * Functi

原创 GPIO軟件模擬IIC時序

一、MPU6050中的IIC時序 1.1 START和STOP SDA和SCL在高電平時,SDA拉低表示START。SCL拉低,表示可以傳輸數據。SDA和SCL在低電平時,SDA拉高表示STOP。 SCL拉高,表示傳輸數據結

原创 I2C_24c02實驗

一、RCC初始化 /* Setup the microcontroller system. Initialize the Embedded Flash Interface,      initialize the P