欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5688|回復: 8
收起左側

stm8的代碼怎么移植到stm32上?

[復制鏈接]
ID:291181 發表于 2018-9-4 14:06 來自觸屏版 | 顯示全部樓層 |閱讀模式
如題,
回復

使用道具 舉報

ID:393354 發表于 2018-9-4 16:34 | 顯示全部樓層
要修改相關寄存器哦
回復

使用道具 舉報

ID:291181 發表于 2018-9-4 17:21 來自觸屏版 | 顯示全部樓層
duker 發表于 2018-9-4 16:34
要修改相關寄存器哦

這種改法可以嗎?注釋掉的是原代碼
IMG_20180904_172050.jpg
回復

使用道具 舉報

ID:291181 發表于 2018-9-4 19:14 來自觸屏版 | 顯示全部樓層
吃個大西瓜 發表于 2018-9-4 17:21
這種改法可以嗎?注釋掉的是原代碼

這壓圖。。。就是用GPIO_SetBits(GPIOB,Pin_1)代替PB_ODR|=BIT1,可以嗎
回復

使用道具 舉報

ID:370370 發表于 2018-9-5 11:09 | 顯示全部樓層
碰巧兩個款都用過,可以答一答。
但是答之前還是忍不住吐槽一下,都有電腦了還要用手機拍照,請善用截圖,而且論壇發貼可以粘代碼段的,最好不要貼代碼的圖片,這樣大家看都方便。
看起來你的STM8程序也是用庫函數實現的,那移植到STM32上就不要用寄存器,最好也用庫函數,很容易找到對應的庫函數(官方叫標準外設庫)。
但要注意STM8分幾種型號,用的庫函數都不一樣
比如同樣是GPIO置位的操作
在STM8L10X系列的庫函數中是下面的形式:
  1. GPIO_SetBits( GPIOA, GPIO_Pin_2 );
復制代碼

在STM8S系列的庫函數中則是下面的形式:
  1. GPIO_WriteHigh(GPIOA, GPIO_PIN_2);
復制代碼

所以首先你需要明確STM8的型號,知道用的是哪個庫
接下來就是找對應的STM32的庫,也要找對應你用的型號的庫函數
比如還是上面的操作,STM32F10x的庫函數里也是:
  1. GPIO_SetBits( GPIOA, GPIO_Pin_2 );
復制代碼

但是STM32F10x在GPIO初始化時還需要配置時鐘等等,跟STM8又有許多區別,僅僅對應修改是不夠的

這些庫函數在st官網都可以下載,里面都有說明文檔。
當然,在文檔里你會發現STM32比STM8多了很多東西,這時候對應的去查某個外設的用法例子就可以明白了,或者再到論壇上來問。


回復

使用道具 舉報

ID:370370 發表于 2018-9-5 11:20 | 顯示全部樓層
剛剛好像看錯了,stm8上用的是寄存器方式…… 當我沒說
不過如果明白那個程序在做什么的話,是可以用STM32的庫函數去實現的,比如GPIO的操作像你那樣改是可以,但要注意我之前說的,STM32多了很多東西,比如GPIO的初始化要配置時鐘之類的,要注意添加上,否則不能工作,最好多了解一下STM32。
回復

使用道具 舉報

ID:385920 發表于 2018-9-5 11:34 | 顯示全部樓層
很簡單啊。你這個都不會,改成stm32的工程
回復

使用道具 舉報

ID:393960 發表于 2018-9-5 11:40 | 顯示全部樓層
問題太籠統了。。。
回復

使用道具 舉報

ID:393969 發表于 2018-9-5 11:57 | 顯示全部樓層
STM8程序也是用庫函數實現的,那移植到STM32上就不要用寄存器,最好也用庫函數.
回復

使用道具 舉報

10#
無效樓層,該帖已經被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表