
一、簡單demo通過232串口,與上位機(jī)進(jìn)行通信。首先保證單片機(jī)232串口與電腦的串口接口相連,當(dāng)然電腦是USB接口,其實(shí)USB接口的實(shí)質(zhì)也是串口。我們實(shí)現(xiàn)上位機(jī)發(fā)送一個16進(jìn)制的數(shù)據(jù),單片機(jī)接受到數(shù)據(jù)后顯示,并且2倍發(fā)
1. STM32的時鐘系統(tǒng)在STM32中,一共有5個時鐘源,分別是HSI、HSE、LSI、LSE、PLL(1)HSI是高速內(nèi)部時鐘,RC振蕩器,頻率為8MHz;(2)HSE是高速外部時鐘,可接石英/陶瓷諧振器,或者接外部時鐘源,頻率范圍是4MHz –
IAP的源碼等資料我上傳了,壓縮包內(nèi)有12個文件,,http://download.csdn.net/detail/f907279313/7524849(要積分的辛苦收集的你們就給點(diǎn)積分吧)還有另一篇博客總結(jié)的IAP:http://blog.csdn.net/super_demo/article/
分類:1 ROM (EPROM、EEPROM、NOR_Flash、NAND_Flash) 只讀存儲器,斷電后數(shù)據(jù)保存,以前ROM是只能讀取,不能擦寫的,隨著技術(shù)的發(fā)展,flash逐漸取代了rom,但功能上還沿用了rom的作用,所以把它歸為rom類。 2 RAM (
FatFS文件系統(tǒng)包含了文件ff.h :文件系統(tǒng)實(shí)現(xiàn)頭文件,定義有文件系統(tǒng)所需的數(shù)據(jù)結(jié)構(gòu)diskio.h :底層驅(qū)動頭文件,就一些狀態(tài)宏的定義和底層驅(qū)動函數(shù)的申明integer.h:僅實(shí)現(xiàn)數(shù)據(jù)類型重定義,增加系統(tǒng)的可移植性ffconf.
此項(xiàng)功能是用來控制一個輸出波形,或者指示一段給定的的時間已經(jīng)到時。當(dāng)計數(shù)器與捕獲/比較寄存器的內(nèi)容相同時,輸出比較功能做如下操作:● 將輸出比較模式(TIMx_CCMRx寄存器中的OCxM位)和輸出極性(TIMx_CCER寄存器
一些產(chǎn)品,當(dāng)系統(tǒng)復(fù)位后(非上電復(fù)位),可能要求保持住復(fù)位前RAM中的數(shù)據(jù),用來快速恢復(fù)現(xiàn)場,或者不至于因瞬間復(fù)位而重啟現(xiàn)場設(shè)備。而keil mdk在默認(rèn)情況下,任何形式的復(fù)位都會將RAM區(qū)的非初始化變量數(shù)據(jù)清零。
今天調(diào)試了stm32f407的ADC,一切順利,然而用串口發(fā)送ADC 結(jié)果時都是16進(jìn)制數(shù),看著很不爽。于是打算用用牛B 的“printf”函數(shù),按照以前的做法,在main 文件中添加了“stdio.h”,寫好了“printf”函數(shù),沏杯茶,打
一、FreeRTOS中斷設(shè)置介紹FreeRTOSConfig.h中定義了兩個宏,分別是:configKERNEL_INTERRUPT_PRIORITYconfigMAX_SYSCALL_INTERRUPT_PRIORITYconfigKERNEL_INTERRUPT_PRIORITY用來設(shè)置RTOS內(nèi)核自己的中斷優(yōu)先級。因?yàn)?/p>
繼做了CAN實(shí)驗(yàn)后,繼續(xù)進(jìn)行第16個實(shí)驗(yàn)-SST25VF016BSPI實(shí)驗(yàn),此實(shí)驗(yàn)利用SPI1來調(diào)試2M的FLASH-SST25VF016B,通過向SST寫入特定的一個字符串后,然后再讀出來,最后一一判斷,如果沒有差錯的話,就證明是正確的了,否則就
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;表面意思是輸出控制極性為高,但是意思是定時器輸入0,不反相,輸出0;輸出控制極性為低,定時器輸入0,反相輸出1;CC1E控制開關(guān)。#define TIM_OCPolarit
使用MDK 4.74向STM32下載時出現(xiàn)各種錯誤,而且時隱時現(xiàn),Internal command error.Error:Flash download failed. Target DLL has been cancelled.最初的解決方法就是讓STM32不采用外部供電而是讓下載器直接供電,同時
時鐘作為芯片的心臟,芯片依靠時鐘維持運(yùn)動的狀態(tài)。stm32的延時函數(shù),依賴滴答定時器,獨(dú)立的提供延時。滴答定時器:時鐘是由HCLK經(jīng)過8分頻來作為小心臟的。假設(shè)HCLK時鐘為72MHz,8分頻后,滴答定時器頻率為9MHz,即
1.關(guān)于ADC輸入通道與GPIO口的輸入關(guān)系需要查看STM32芯片手冊(p31)而非數(shù)據(jù)手冊。2.外部觸發(fā)源指的是觸發(fā)ADC采樣的觸發(fā)信號,這與1的GPIO口輸入是兩個不同概念。而JEXTBEL[2:0]或者EXTBEL[2:0]決定具體是哪個觸發(fā)源
最近看了下STM32 CAN 通訊 其中標(biāo)示符過濾器設(shè)置大有講究。特別是你要使用ST庫函數(shù)時,當(dāng)過濾器工作在屏蔽模式下,并且你把屏蔽位設(shè)了1也就是標(biāo)示符對應(yīng)位必須全部匹配才能通過,這是由其要小心。舉個例子吧,過濾器
因?yàn)橐茫瑢W(xué)習(xí)了一下SPI操作SD卡,同時移植了一個免費(fèi)開源的FAT文件系統(tǒng):FatFS。感覺挺好,在單片機(jī)上實(shí)現(xiàn)了讀寫文件的操作,接下來就可以解釋我的G代碼咯! 我的SD卡底層操作參考了網(wǎng)上幾種常見的代碼,但又對
一、用STM32控制TFTLCD顯示的編程方法,在編程驅(qū)動TFTLCD液晶顯示器之前,我們先熟悉以下概念:1、色彩深度,這是一個與TFTLCD顯存對應(yīng)的概念;所謂色彩深度就是每個像素點(diǎn)需要多少位的RGB 數(shù)據(jù)表示該點(diǎn)的顏色信息。
先說明一下,開發(fā)平臺win7,工具RVMDK(keil),硬件stm32f103ve,打印到超級終端前兩天開始關(guān)注一下一直被擱在一邊的printf。。。其實(shí)應(yīng)該有一個月前就有看了一下,調(diào)用C語言官方庫,實(shí)現(xiàn)可變參數(shù)printf向串口打印字符
采用adc1的通道10,將采集到的電壓值用485發(fā)送給PC顯示,先上原理圖,源代碼見附件,這里想說的是幾個要注意的問題:1,ad輸入的電壓經(jīng)過了R42和R44進(jìn)行分壓,所以pc顯示的電壓值將會減半,2、采用這個函數(shù)進(jìn)行發(fā)送數(shù)
1.stm32有AHB,APB2,APB1總線。 其中APB2外設(shè)地址空間是從0x40010000至0x40013FFF地址。第一個地址稱為基地址。2.參考手冊中端口配置寄存器有地址偏移0x04,所以GPIOC_CRH地址為GPIOC_BASE+0x04 GPIO_TypeDef結(jié)構(gòu)體