找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 24097|回復(fù): 16
打印 上一主題 下一主題
收起左側(cè)

從STM8S轉(zhuǎn)到STM8L開發(fā)時要注意的幾個問題

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:98618 發(fā)表于 2015-12-8 03:51 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
整理:MilerShao

ST公司的STM8S與STM8L系列雖同屬STM8內(nèi)核的8位機陣容,但二者還是有較大差異。STM8S系列是標準通用型系列,而STM8L屬于超低功耗系列。STM8L有更為豐富的外設(shè)和低功耗管理模式,有更低的工作電壓、更寬的工作電壓范圍。STM8L系列在穿戴式產(chǎn)品和智能家居應(yīng)用領(lǐng)域有著廣泛的應(yīng)用空間。

這里不對二者的差異做拓展表述,主要想給那些用過STM8S系列MCU后打算使用STM8L系列的工程師一些提醒,即從STM8S開發(fā)轉(zhuǎn)向STM8L時常?赡苡龅降膸讉問題,算是拋磚引玉。

1、STM8S 與 STM8L 兩個系列的ST官方外設(shè)標準固件庫是不一樣的,各自有一套。另外,各自的寄存器編程手冊也不一樣,即參考手冊不一樣。

2、這個也是遇到最為頻繁的問題,就是默認的外設(shè)時鐘開關(guān)問題。

對于STM8S芯片而言,各個外設(shè)時鐘在芯片復(fù)位后,默認就是打開的。而STM8L系列,則恰恰相反,各個外設(shè)時鐘在芯片復(fù)位后,默認就是關(guān)閉的。經(jīng)常有人從8S芯片轉(zhuǎn)過來開發(fā)STM8L芯片時,在這里卡殼,遇到外設(shè)不工作啊,調(diào)試時相關(guān)外設(shè)寄存器根本沒法設(shè)置等。



3、EXTI外部中斷請求標志位問題。這個問題也是經(jīng)常有人遇到的。

STM8L系列芯片里有相關(guān)外部中斷請求標志位,而STM8S沒有相關(guān)標志。如果STM8L中斷程序里如果像STM8S那樣不做相關(guān)外部中斷請求標志的清除的話,后果很嚴重。會出現(xiàn)中斷循環(huán)往復(fù)進入,常給人死機現(xiàn)象。


4、ADC啟動的問題。

有一次某工程師用STM8L芯片開發(fā)程序,之前用STM8S芯片開發(fā)過產(chǎn)品。在編寫代碼時往往沿襲STM8S的寫法。在用到STM8L芯片AD時,發(fā)現(xiàn)怎么也不工作。

查看其代碼,他像很多使用STM8 MCU的工程師一樣也是直接操作寄存器。因為他說是從8S的代碼改過來的,我先對著STM8S的MCU參考手冊比對,貌似沒啥問題,再對著STM8L的ADC相關(guān)寄存器部分看了一會。 發(fā)現(xiàn)8S和8L芯片在AD上電后,開啟AD轉(zhuǎn)換的指令是不一樣的。他的代碼在該處有問題。

STM8L芯片在AD上電穩(wěn)定后,開啟AD轉(zhuǎn)換是通過設(shè)置ADC_CR1里的START位,而8S芯片則不是,還是通過二次置位ADON位來啟動AD轉(zhuǎn)換。




最后順便提下,對于STM8S或STM8L的ADC模塊,上電開啟后需要一段穩(wěn)定時間,STM8S芯片需要大概7US左右,而STM8芯片需要3US左右。編程時適當注意下。

總之,STM8S系列與STM8L系列差別還是很大的,在從STM8S開發(fā)轉(zhuǎn)向STM8L系列時,出現(xiàn)了問題不要執(zhí)著于STM8S平臺上用得好好的心理,最好結(jié)合STM8L參考技術(shù)手冊具體核對驗證為宜。整理:MilerShao

ST公司的STM8S與STM8L系列雖同屬STM8內(nèi)核的8位機陣容,但二者還是有較大差異。STM8S系列是標準通用型系列,而STM8L屬于超低功耗系列。STM8L有更為豐富的外設(shè)和低功耗管理模式,有更低的工作電壓、更寬的工作電壓范圍。STM8L系列在穿戴式產(chǎn)品和智能家居應(yīng)用領(lǐng)域有著廣泛的應(yīng)用空間。

這里不對二者的差異做拓展表述,主要想給那些用過STM8S系列MCU后打算使用STM8L系列的工程師一些提醒,即從STM8S開發(fā)轉(zhuǎn)向STM8L時常?赡苡龅降膸讉問題,算是拋磚引玉。

1、STM8S 與 STM8L 兩個系列的ST官方外設(shè)標準固件庫是不一樣的,各自有一套。另外,各自的寄存器編程手冊也不一樣,即參考手冊不一樣。

2、這個也是遇到最為頻繁的問題,就是默認的外設(shè)時鐘開關(guān)問題。

對于STM8S芯片而言,各個外設(shè)時鐘在芯片復(fù)位后,默認就是打開的。而STM8L系列,則恰恰相反,各個外設(shè)時鐘在芯片復(fù)位后,默認就是關(guān)閉的。經(jīng)常有人從8S芯片轉(zhuǎn)過來開發(fā)STM8L芯片時,在這里卡殼,遇到外設(shè)不工作啊,調(diào)試時相關(guān)外設(shè)寄存器根本沒法設(shè)置等。



3、EXTI外部中斷請求標志位問題。這個問題也是經(jīng)常有人遇到的。

STM8L系列芯片里有相關(guān)外部中斷請求標志位,而STM8S沒有相關(guān)標志。如果STM8L中斷程序里如果像STM8S那樣不做相關(guān)外部中斷請求標志的清除的話,后果很嚴重。會出現(xiàn)中斷循環(huán)往復(fù)進入,常給人死機現(xiàn)象。


4、ADC啟動的問題。

有一次某工程師用STM8L芯片開發(fā)程序,之前用STM8S芯片開發(fā)過產(chǎn)品。在編寫代碼時往往沿襲STM8S的寫法。在用到STM8L芯片AD時,發(fā)現(xiàn)怎么也不工作。

查看其代碼,他像很多使用STM8 MCU的工程師一樣也是直接操作寄存器。因為他說是從8S的代碼改過來的,我先對著STM8S的MCU參考手冊比對,貌似沒啥問題,再對著STM8L的ADC相關(guān)寄存器部分看了一會。 發(fā)現(xiàn)8S和8L芯片在AD上電后,開啟AD轉(zhuǎn)換的指令是不一樣的。他的代碼在該處有問題。

STM8L芯片在AD上電穩(wěn)定后,開啟AD轉(zhuǎn)換是通過設(shè)置ADC_CR1里的START位,而8S芯片則不是,還是通過二次置位ADON位來啟動AD轉(zhuǎn)換。




最后順便提下,對于STM8S或STM8L的ADC模塊,上電開啟后需要一段穩(wěn)定時間,STM8S芯片需要大概7US左右,而STM8芯片需要3US左右。編程時適當注意下。

總之,STM8S系列與STM8L系列差別還是很大的,在從STM8S開發(fā)轉(zhuǎn)向STM8L系列時,出現(xiàn)了問題不要執(zhí)著于STM8S平臺上用得好好的心理,最好結(jié)合STM8L參考技術(shù)手冊具體核對驗證為宜。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏8 分享淘帖 頂2 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:105267 發(fā)表于 2016-2-10 21:56 | 只看該作者
樓主這個文章寫得真是有幫助啊  看著stm8s的視頻學(xué)stm8l  第一課就卡殼
這個帖子怎么這么冷清呢
回復(fù)

使用道具 舉報

板凳
ID:105267 發(fā)表于 2016-2-10 21:57 | 只看該作者
看了這篇良心文章 特地注冊了賬號頂一把樓主
回復(fù)

使用道具 舉報

地板
ID:105397 發(fā)表于 2016-2-13 21:19 | 只看該作者
確實是好帖子,我也是做8L,用8S的改,已經(jīng)哭瞎了
回復(fù)

使用道具 舉報

5#
ID:126781 發(fā)表于 2016-6-18 08:07 | 只看該作者


mark……
回復(fù)

使用道具 舉報

6#
ID:187087 發(fā)表于 2017-4-10 08:49 來自手機 | 只看該作者
stm8l學(xué)習(xí)教程示例比較難找,學(xué)習(xí)困難較多,還是51入門較易
回復(fù)

使用道具 舉報

7#
ID:199645 發(fā)表于 2017-6-26 19:13 | 只看該作者
很給力
回復(fù)

使用道具 舉報

8#
ID:36060 發(fā)表于 2017-6-28 13:31 | 只看該作者
要留個腳印,萬一以后遇到stm8l的,可以參考樓主的經(jīng)驗。
回復(fù)

使用道具 舉報

9#
ID:114987 發(fā)表于 2017-11-6 11:18 | 只看該作者
有沒有完整的stm8l學(xué)習(xí)資料
回復(fù)

使用道具 舉報

10#
ID:110369 發(fā)表于 2017-12-15 16:51 | 只看該作者
很有價值的資料。
回復(fù)

使用道具 舉報

11#
ID:267738 發(fā)表于 2017-12-27 14:58 | 只看該作者
感謝大神的經(jīng)驗分享,我是STM8的初學(xué)者,能看到這么好的文章,非常感謝!
回復(fù)

使用道具 舉報

12#
ID:47634 發(fā)表于 2018-2-17 21:57 | 只看該作者
很好的經(jīng)驗,值得學(xué)習(xí)
回復(fù)

使用道具 舉報

13#
ID:109384 發(fā)表于 2018-10-8 10:27 | 只看該作者
你好,我想請教一個問題,我用STM8L151做一個項目,整個系統(tǒng)已經(jīng)工作,但是把單片機重新焊下來之后,再焊回板子上就不能工作了,(板子的外圍電路沒有動),請問樓主你有碰到過這種情形嗎?
回復(fù)

使用道具 舉報

14#
ID:366409 發(fā)表于 2019-1-7 15:57 | 只看該作者
謝謝,很有用
回復(fù)

使用道具 舉報

15#
ID:366409 發(fā)表于 2019-1-7 15:58 | 只看該作者
marking
回復(fù)

使用道具 舉報

16#
ID:445069 發(fā)表于 2019-3-12 14:11 | 只看該作者
STM8S 與 STM8L 的對比,樓主的這篇文章太用心了。
回復(fù)

使用道具 舉報

17#
ID:94359 發(fā)表于 2021-3-15 13:02 | 只看該作者
以后遇到stm8l的,可以參考樓主的經(jīng)驗。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表