分享一個(gè)超棒的stm32的開(kāi)源usb-can項(xiàng)目
照理來(lái)說(shuō),USB-CAN這種東西應(yīng)該已經(jīng)被做的爛大街的工具,國(guó)內(nèi)居然沒(méi)有一個(gè)拿得出手的開(kāi)源方案。某立....
ToolKit是一套應(yīng)用于嵌入式系統(tǒng)的通用工具包
ToolKit是一套應(yīng)用于嵌入式系統(tǒng)的通用工具包,可靈活應(yīng)用到有無(wú)RTOS的程序中,采用C語(yǔ)言面向?qū)?...
基于串口環(huán)形隊(duì)列的IAP實(shí)現(xiàn)
我這里主要是記錄一下我所使用的方法,調(diào)試也花了兩天時(shí)間。
循環(huán)隊(duì)列C語(yǔ)言面向?qū)ο髮?shí)現(xiàn)
而我已經(jīng)按照更面向?qū)ο蟮姆椒ù蟾牧嗽瓉?lái)的那個(gè)環(huán)形緩沖區(qū)模塊,考慮到整個(gè)結(jié)構(gòu)已經(jīng)完全不同了,所以直接棄....
分享一下C語(yǔ)言日志分級(jí)
參考一些高級(jí)語(yǔ)言的分級(jí)日志設(shè)計(jì),我們根據(jù)對(duì)程序運(yùn)行信息的類(lèi)型把控,可以把日志分為5個(gè)級(jí)別DEBUG、....
嵌入式開(kāi)發(fā)模塊指南:通用接收狀態(tài)機(jī)模塊
在軟件開(kāi)發(fā)的過(guò)程中,只要涉及到通信,就會(huì)涉及到數(shù)據(jù)接收機(jī)的編寫(xiě),通信協(xié)議雖然多種多樣,但是數(shù)據(jù)包的形....
FreeRTOS任務(wù)間通信,怎么實(shí)現(xiàn)?
FreeRTOS 是一個(gè)可裁剪、可剝奪型的多任務(wù)內(nèi)核,十分好用,而且沒(méi)有任務(wù)數(shù)限制,在此之前分析過(guò)很....
段錯(cuò)誤以及調(diào)試方法
產(chǎn)生的原因:訪問(wèn)不存在的內(nèi)存地址、訪問(wèn)系統(tǒng)保護(hù)的內(nèi)存地址 、訪問(wèn)只讀的內(nèi)存地址、空指針廢棄(eg:m....
C語(yǔ)言的驅(qū)動(dòng)法編程詳細(xì)解析分享
使用表驅(qū)動(dòng)法時(shí)需要關(guān)注兩個(gè)問(wèn)題:一是如何查表,從表中讀取正確的數(shù)據(jù);二是表里存放什么,如數(shù)值或函數(shù)指....
基于IAR的Cortex-M/R內(nèi)核程序啟動(dòng)流程
在系統(tǒng)啟動(dòng)期間,進(jìn)入 main() 函數(shù)之前執(zhí)行初始化序列。 初始化序列處理目標(biāo)硬件和 C/C++ ....
狀態(tài)機(jī)編程的優(yōu)點(diǎn)是什么
話說(shuō)我只要見(jiàn)到滿(mǎn)篇都是delay_ms()的程序就會(huì)頭疼,動(dòng)輒十幾個(gè)ms幾十個(gè)ms的軟件延時(shí)是對(duì)CP....
ARM中關(guān)鍵字的具體使用
今天在使用 Keil (主要是 armcc 編譯器)編譯代碼(華大的 MCU 驅(qū)動(dòng)庫(kù)hc32f46x....
Cortex-M內(nèi)核中斷/異常系統(tǒng)、中斷優(yōu)先級(jí)/嵌套詳解
最近在使用 STM32F3 芯片的時(shí)候,遇到這樣一個(gè)問(wèn)題:如果外部中斷來(lái)的頻率足夠快,上一個(gè)中斷沒(méi)有....
什么是版本控制系統(tǒng)?
分支就是科幻電影里面的平行宇宙,當(dāng)你正在電腦前努力學(xué)習(xí)Git的時(shí)候,另一個(gè)你正在另一個(gè)平行宇宙里努力....
ARM通用寄存器及狀態(tài)寄存器詳解
筆者來(lái)聊聊ARM通用寄存器以及狀態(tài)寄存器的認(rèn)識(shí)與理解。
Keil項(xiàng)目/生成的各種文件類(lèi)型(.AXF、.D、.crf、.exf)說(shuō)明
.UVMPW:用于多個(gè)項(xiàng)目的 μVision4 項(xiàng)目文件(工作空間項(xiàng)目文件)。包含對(duì)其他項(xiàng)目文件的引....
ELF文件、鏡像(Image)文件、可執(zhí)行文件、對(duì)象文件詳解
ELF(Executable and Linking Format)是一個(gè)二進(jìn)制文件規(guī)范。用于定義不....
聊聊程序分散加載啟動(dòng)的奧秘
程序是靜態(tài)的概念,有數(shù)據(jù)有代碼,都是存在不同的區(qū)域,但是進(jìn)程是動(dòng)態(tài)的概念,主進(jìn)程在運(yùn)行的時(shí)候,會(huì)實(shí)際....
神器必會(huì)!特別好使的編輯器Source Insight
“Source Insight(以下簡(jiǎn)稱(chēng)SI)是世界上最好的編輯器”,說(shuō)這句話不知道會(huì)不會(huì)出門(mén)被打呢....
如何設(shè)定PendSV優(yōu)先級(jí)?
保存PSP到R0。為什么是PSP而不是MSP。因?yàn)樵贠S啟動(dòng)的時(shí)候,我們已經(jīng)把SP設(shè)置為PSP了。這....
使用DFU方案實(shí)現(xiàn)STM32單片機(jī)的高級(jí)開(kāi)發(fā)
DFU全稱(chēng)為Device Firmware update,是ST官方推出的一個(gè)通過(guò)USB接口進(jìn)行....
C語(yǔ)言面向?qū)ο缶幊痰淖罴褜?shí)踐
以STM32為例,打開(kāi)網(wǎng)絡(luò)上下載的例程或者是購(gòu)買(mǎi)開(kāi)發(fā)板自帶的例程,都會(huì)發(fā)現(xiàn)應(yīng)用層中會(huì)有stm32f1....
幾種用jLink命令行燒錄hex文件的方法
工廠使用j-flash工具進(jìn)行燒錄,發(fā)現(xiàn)燒錄后的數(shù)據(jù)和發(fā)布的hex文件數(shù)據(jù)對(duì)應(yīng)不上,經(jīng)過(guò)深入對(duì)比和分....
UDP/TCP包的大小限制是多少?
結(jié)論是顯而易見(jiàn)的,這個(gè)數(shù)據(jù)包會(huì)被再次分片,更重要的是,這種情況下,如果 IP 包被設(shè)置了“不允許分片....
使用分散文件指定棧和堆創(chuàng)建root執(zhí)行區(qū)
您可以FIXED在執(zhí)行區(qū)分散文件中使用該屬性來(lái)創(chuàng)建在固定地址加載和執(zhí)行的根區(qū)。FIXED用于在單個(gè)加....
gcc的編譯選項(xiàng)總結(jié)
本文用于記錄我在學(xué)習(xí)和工作中遇到的各種GCC選項(xiàng),雖然這些選項(xiàng)可以在GNU的手冊(cè)上查到,不過(guò)這里做個(gè)....
SVN與Git的最主要的區(qū)別
人如何協(xié)作呢?比如說(shuō)自己在電腦上改了文件A,其他人也在電腦上改了文件A,這時(shí),你們兩之間只需把各自的....
一文全面掌握stm32的GPIO知識(shí)
對(duì)于不使用的引腳,推薦設(shè)置為模擬模式,懸空即可。
QT如何配置交叉編譯工具?
交叉編譯工具安裝 (glibc版本需要和開(kāi)發(fā)板上的版本相兼容)
如何使用CubeMx生成一個(gè)DFU工程
DFU用來(lái)做IAP是很方便的,可以直接通過(guò)USB來(lái)對(duì)APP進(jìn)行升級(jí),因此,掌握DFU的制作還是挺有好....