原创 STM32F1和STM32F4系列DMA的不同之處——對STM32的DMA的工作機制和場景的一些理解[原創www.cnblogs.com/helesheng]

喜歡用STM32的DMA功能。一方面STM32的DMA和MPU的DMA一樣,可以提高數據傳輸效率。另一方面,作爲一種MCU上的DMA,它可以提高針對外設(peripheral)的數據傳輸的實時性,改變了傳統MCU只能用定時中斷實現實時控制的

原创 2023全國大學生電子設計競賽H題全解 [原創www.cnblogs.com/helesheng]

2023年又是全國大學生電子設計競賽年,一如既往的指導學生死磕H題。8月2日看到公佈的賽題,我自己還沾沾自喜,覺得今年學生用嵌入式系統和數字信號處理知識就可以完成這題,賽前都輔導過,應該成績不差。哪想到結果大跌眼鏡,不但成績還不如往年,學生

原创 在Zynq平臺上使用uCOS [原創www.cnblogs.com/helesheng]

uCOS是我個人熟悉和喜歡的操作系統,從最早的C51到後來的LPC2000和STM32,uCOS-II或uCOS-III都是我進行產品開發的首選的實時操作系統。但卻從未嘗試過在全可編程片上系統(APSoC)上使用過uCOS,這幾天心血來潮想

原创 基於高層次綜合器(Vivado HLS)的硬件優化[原創www.cnblogs.com/helesheng]

最近在寫一本Xilinx的FPGA方面的書,現將HLS部分內容在這裏分享給大家,希望大家喜歡,也歡迎批評指正。以下原創內容歡迎網友轉載,但請註明出處: https://www.cnblogs.com/helesheng 通過前面的學習,相信

原创 高層次綜合器(Vivado HLS)的設計流程[原創www.cnblogs.com/helesheng]

最近在寫一本Xilinx的FPGA方面的書,現將HLS部分內容在這裏分享給大家,希望大家喜歡,也歡迎批評指正。以下原創內容歡迎網友轉載,但請註明出處: https://www.cnblogs.com/helesheng 下面用一個簡單實例來

原创 高層次綜合器Vivado HLS的概念與特點[原創www.cnblogs.com/helesheng]

最近在寫一本Xilinx的FPGA方面的書,現將HLS部分內容在這裏分享給大家,希望大家喜歡,也歡迎批評指正。[原創www.cnblogs.com/helesheng] 在可編程邏輯器件被用於電子系統設計的前期,由於所含的邏輯資源較少,絕大

原创 STM32的SPI口的DMA讀寫[原創www.cnblogs.com/helesheng]

SPI是我最常用的接口之一,連接管腳僅爲4根;在常見的芯片間通信方式中,速度遠優於UART、I2C等其他接口。STM32的SPI口的同步時鐘最快可到PCLK的二分之一,單個字節或字的通信時間都在us以下,因此大多數情況下我們會使用查詢法控制

原创 國產CPLD(AGM1280)試用記錄——做個SPI接口的任意波形DDS [原創www.cnblogs.com/helesheng]

我之前用過的CPLD有Altera公司的MAX和MAX-II系列,主要有兩個優點:1、程序存儲在片上Flash,上電即行,保密性高。2、CPLD器件規模小,成本和功耗低,時序不收斂情況也不容易出現。缺點也很明顯:1、沒有片上RAM,無法對數

原创 RS485自動收發切換電路 [原創www.cnblogs.com/helesheng]

RS485是最常見的一種遠距離可靠傳輸和組網的UART串口信號接口協議。與同樣傳輸UART串口信號的RS422協議相比,RS485使用半雙工通信,即只有一個信道,在同一時刻要麼從A到B,要麼從B到A傳輸信號;而不能同時雙向傳輸信號。因此理論

原创 STM32定時器觸發ADC多通道連續採樣,DMA緩存結果

STM32的ADC使用非常靈活,採樣觸發方面:既支持軟件觸發,定時器或其他硬件電路自動觸發,也支持轉換完成後自動觸發下一通道/輪轉換。轉換結果存儲方面:既支持軟件讀取和轉存,也支持DMA自動存儲轉換結果。STM32書籍介紹的最多的是“軟件觸

原创 電流互感器、電壓互感器原理及其調理電路設計(2021全國大學生電賽H題基礎知識)

培訓學生做大學生電子設計競賽,其中2021年H題需要用到電流互感器和電壓互感器,發現學生無法將電路分析和普通物理課程中學到的互感線圈中的知識應用到實際工程中解決問題。現將原理和工程使用的條例電路總結如下,供以後培訓學生參加電子設計競賽方便查

原创 LabVIEW生成.NET的DLL——C#下調用NI數據採集設備功能的一種方法 [原創www.cnblogs.com/helesheng]

LabVIEW是NI公司的數據採集設備的標準平臺,在其上調用NI-DAQmx驅動和接口函數能夠高效的開發數據採集和控制程序。但作爲一種圖形化的開發語言,使用LabVIEW開發涉及算法和流程控制的大型應用程序還是顯得力不從心。因此在C#和VB

原创 給初學者的STM32(Cortex-M3)中斷原理及編程方法[原創www.cnblogs.com/helesheng]

本人和教研室幾位老師編著的《基於STM32的嵌入式系統原理及應用》(ISBN:9787030697974)剛剛在科學出版社出版。這本書花費了半年以上的時間,凝聚了筆者作爲高校教師和嵌入式工程師的一些經驗,希望對大學生、嵌入式初學者和有一定經

原创 ARM DSP庫CMSIS-DSP的使用——以STM32F4浮點FFT爲例 [原創]

之前用過STM32F10x比較多,做數字信號處理用過意法半導體官方的STM32F10x_DSP_Lib_V2.0.0,總覺得這個庫不太好用: 1、數字濾波器FIR和IIR的函數只能對存在緩衝中的數組濾波,且沒有能夠保存濾波器中間狀態的數據結

原创 ADS1256使用心得及其驅動編寫 [原創]

最近培訓學生做大學生電子設計競賽,有學生用到TI的24位Sigma-delta模數轉換器ADS1256。雖然這款芯片在能找到的介紹性文章很多,但大多屬於簡單翻譯手冊,很多實際問題沒有提及。現在電子設計競賽結束了,將學生在用STM32調試中遇