真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

stm8c語言庫函數(shù) stm32f103c8t6庫函數(shù)例程

STM8的初始化里面 while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_HSE)這個什么意思

首先,你要明白STM8的驅(qū)動時鐘可以采用外部晶振,也可采用STM8內(nèi)部的RC振蕩器,二者只能選其一。?三個語句中的HSI表明是采用內(nèi)部RC振蕩器。

成都創(chuàng)新互聯(lián)公司,專注為中小企業(yè)提供官網(wǎng)建設(shè)、營銷型網(wǎng)站制作、響應(yīng)式網(wǎng)站設(shè)計、展示型網(wǎng)站設(shè)計制作、成都網(wǎng)站設(shè)計等服務(wù),幫助中小企業(yè)通過網(wǎng)站體現(xiàn)價值、有效益。幫助企業(yè)快速建站、解決網(wǎng)站建設(shè)與網(wǎng)站營銷推廣問題。

你先看STM8內(nèi)部的時鐘樹結(jié)構(gòu):

其中HSI RC 16MHz就是其內(nèi)部含有的RC振蕩器,是ST芯片在出廠前就經(jīng)過校正的但有一定誤差的振蕩器。時鐘經(jīng)過HSIDIV[1:0]這個分頻器,可以獲得16MHz、8MHz、4MHz、2MHz的輸出tHsiDIV,該輸出經(jīng)過Master Clock Switch(通過配置來選擇外部晶振還是內(nèi)部晶振)后,再分配到CPU時鐘和外圍設(shè)備時鐘。

因此,STM8可以運行的時鐘頻率最大可以達(dá)到16MHz,你也可以讓它低于這個頻率運行(有利于低功耗設(shè)計)。搞清楚了以上幾點,可以知道第一句是配置STM8,讓它知道用內(nèi)部RC振蕩器,不要用外部晶振,這樣省了一個晶振的錢[成本降低了嘛:)],第二句是讓內(nèi)部振蕩器的輸出進(jìn)行8分頻,你也可以讓它1分頻、2分頻、4分頻,但不能3分頻、5分頻,因為它內(nèi)部只設(shè)計了這幾種分頻,況且奇數(shù)分頻很難實現(xiàn),你學(xué)過數(shù)字電路就應(yīng)該知道。然后第三句話你要看一下庫函數(shù)的定義

CLK_Source_TypeDef ??CLK_GetSYSCLKSource(void)

{

return((CLK_Source_TypeDef)CLK-CMSR);

}

意思是返回寄存器CMSR的值,這個你就要參考一下《STM8S中文參考手冊》了,里面搜索CMSR這個詞,我的是在第54頁,

看到了嗎?它是表明時鐘準(zhǔn)備好了沒有的狀態(tài)標(biāo)志,就像你去叫別人辦事,別人要經(jīng)過考慮,這就需要等待,同理,你在STM8S內(nèi)部配置好了時鐘后,內(nèi)部需要產(chǎn)生一定的延遲,而且受各種狀況的影響,比如外部供電電壓變化、引腳干擾等,有可能導(dǎo)致配置時鐘失敗,這就要經(jīng)過查詢這個寄存器的值來看是否配置好時鐘沒有,如果這個寄存器不等于0,則配置成功,否則失敗。第三句的while里的意思就是不斷地取CMSR的值,看是否等于宏定義CLK_SOURCE_HSI(OXE1),如果相等了,則跳過循環(huán),繼續(xù)執(zhí)行以后的語句。

STM8單片機有MATH函數(shù)嗎,冥函數(shù)怎么做運算

math是C語言庫函數(shù),跟單片機類型關(guān)系不大,只要編譯器支持C語言,就可用這個庫

stm8用庫函數(shù)初始化GPIO引腳,與stm32調(diào)用庫的方式不一樣?

#define Relay1 GPIO_PIN_2

#define Relay2 GPIO_PIN_3

GPIO_Init(GPIOA,(GPIO_Pin_TypeDef)(Relay1|Relay2),GPIO_MODE_OUT_PP_LOW_SLOW);

用宏定義可方便以后修改

STM8S系列單片機如何使用printf函數(shù)

這跟單片機沒關(guān)系,這是C語言的庫函數(shù)

使用時只需將 putc函數(shù)(被printf函數(shù)調(diào)用)換成串囗發(fā)送函數(shù)即可,換了之后優(yōu)先調(diào)用用戶編寫的putc函數(shù)


新聞名稱:stm8c語言庫函數(shù) stm32f103c8t6庫函數(shù)例程
轉(zhuǎn)載來源:http://weahome.cn/article/ddigjso.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部