娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年05月31日(星期六)

2018年05月31日 | iar for stm8初學總結

發布者:溫暖夢想 來源: eefocus關鍵字:iar  stm8 手機看文章 掃描二維碼
隨時隨地手機看文章

由于最近要用到stm8,所以這幾天就開始學習stm8,但發現網上資料太少,所以在這里我就把一些對stm8的疑惑解答后的知識整理了一下,也算是做了一個小總結


對于開發環境,有ST TOOLSET 、 COSMIC 和IAR 這三個常用的,因為我用過IAR開發stm32,所以IAR是我的首選,雖然網上很多人說IAR for STM8代碼的優化不如COSMIC。

看了一下開發環境的配置,不是很復雜,我把這三個工具的配置方法發上來供初學者下載查看:

http://download.csdn.net/detail/hzt12345hf/7666017

說一下IAR使用的注意事項,基本的配置環境就不說了,

iar和cosmic所使用的頭文件名字有所不同,iar用的都是像如“iostm8s103k3.h“的形式。

關于中斷向量怎么用,聲明一個中斷程序格式如下:


  1. #pragma vector=0x02  

  2. __interrupt void interrupt_handler(void)  

  3. {  

  4.     //你的代碼  

  5. }  



#pragma vector =0x02 :
等號前面的是 IAR 中斷向量指令,等號后面的數字代表中斷向量編號,中斷向量編號可以自己算也可以從你的頭文件里面找,基本上都放在頭文件倒數的位置,大約4000行的位置,自己算的話就是 (中斷向量地址 - 0x0008000)/4 就是中斷向量號了。





由于我從51單片機轉過來的,所以對stm32/8的庫函數不是很喜歡,因為懂的人一看就知道是什么,不懂得看著真心麻煩,雖然很通用但降低了可讀性(個人感覺),所以stm8果斷放棄庫函數,和51一樣寫寄存器。

當然,在51里,對一個io口置1則為高電平,置0則為低電平,所以我也很好奇stm8是否有這個功能,由于資料太少,找了很久也沒找到,還是阿莫電子的朋友一語中的,就是使用形如PC_ODR_ODR0的宏定義,在頭文件里是這么定義的:




這就好像stm32里利用結構體,通過將地址轉換為結構體的方式使得寄存器可以通過訪問結構體的變量來進行寄存器的訪問,提供給大家幾個網址,也是討論stm8利用位控制,其中還有別的方式,另外哪種方式比較適合自定義,利用的是共用體訪問:

http://www.amobbs.com/forum.php?mod=viewthread&tid=5588812&pid=7705619&page=1&extra=page%3D1#pid7705619

http://bbs.21ic.com/icview-556542-1-1.html


再說一下定時器,由于本人也是剛解除stm8,所以很有些東西不夠透徹,只是因為stm8的定時器功能太過強大。

最簡單定時器初始化套路基本如下:


  1. void Init_TIM1(void)  

  2. {  

  3.       

  4.       

  5.     TIM1_CR1 = 0x00;        //向上的計數方向,中斷計數不停  

  6.     TIM1_IER = 0x01;        //允許更新中斷  

  7.     TIM1_PSCRH = 0x3e;          //進行16000分頻  

  8.     TIM1_PSCRL = 0x80;  

  9.     TIM1_ARRH = 0x03;       //1000個周期產生更新中斷 16 / 16000 * 1000 = 1  

  10.     TIM1_ARRL = 0xe8;  

  11.   

  12.   

  13.     TIM1_CR1 |=0x01;        //使能中斷  

  14.       

  15. }  


先是使能TIMx_IER的第一位,使定時器可以產生中斷,同時設置計數方向,然后設置定時器的分頻器,頻率為 主時鐘的頻率/分頻數 ,16位高級定時器 用TIMx_PSCRH和TIMx_PSCRL 共同決定分頻數,16為通用定時器利用TIMx_PSCR的前4位作為2的冪,讓 主時鐘頻率/2^TIMx_PSCR 計算出頻率,8位基本定時器 同16位通用定時器大體類似,只不過用的是TIMx_PSCR的前3位,然后設置溢出值,16通用和16高級定時器都有TIMx_ARRH和TIMx_ARRL兩個寄存器來記錄溢出值,而且賦值是必須先給TIMx_ARRH賦值然后再給TIMx_ARRL賦值,否則不能自動重載計數值。然后使能中斷。


最重要的一點也是最容易忘了的一點是還要打開總中斷,語句是匯編語言:


  1. asm("rim");/* enable interrupts */  


關閉總中斷的是


  1. asm("sim");/* disable interrupts */  


我還發現一個問題,像如STM8s003k3 這種型號的單片機,在它的頭文件里是沒有TIM4_SR1這個寄存器的,而是TIM4_SR,所以如果要清除TIM4的中斷標志,要使用TIM4_SR = 0x00來實現

暫時就說到這,過后還有補充。提供一些資料給大家下載:

STM8 TIM 定時器使用要點:http://download.csdn.net/detail/hzt12345hf/7666019

STM8 中文DATASHEET:http://download.csdn.net/detail/hzt12345hf/7666021

STM8的C語言編程: http://download.csdn.net/detail/hzt12345hf/7666025

stm8示例程序: http://download.csdn.net/detail/hzt12345hf/7666027


關鍵字:iar  stm8 引用地址: iar for stm8初學總結

上一篇:msp430的printf函數的簡單移植
下一篇:IAR調試stm8的優化設置

推薦閱讀

方案一:第一步:打開Options for Target ‘target 1’對話框,選擇User標簽頁;第二步:找到fromelf.exe的路徑(keil5在ARMCC里)第三步:重點(基路徑是工程路徑,bin文件是根據axf生成的)接下來要做的要視情況而定:選完fromelf.exe后在輸入框中加個空格然后加一串字 : --bin -o ./Obj/xx.bin ./Obj/xx.axf解釋:這串字符得依情況而定,不能...
記者從英菲尼迪內部人士處獲悉,英菲尼迪將于2020年將位于香港的總部遷回日本橫濱。 “做出這一決定的初衷是為了提升英菲尼迪與母公司日產汽車之間聯動運營效率,為前者向電動化轉型做準備。”上述英菲尼迪內部人士告訴記者,總部搬遷并不意味著英菲尼迪對于中國市場的重視程度發生變化,僅僅是英菲尼迪的戰略整合之舉,在全球車市下行的大背景之下,英菲...
協作機器人夾爪制造商OnRobot推出2.5D視覺系統Eyes,適用于各家先進機器手臂,提供外加的深度感知和零件辨識功能。 據報導,機器手臂經常遇到的難題,就是無法拾放大小、形狀或擺放方向不一的物品,通常需要外加夾具、送料盤等其它硬件協助作業,但也因此增加作業成本和復雜度,局限了設備的應用范圍。 OnRobot新推出的2.5D視覺系統Eyes,只要照一張...
添添旋轉智能屏 T10,打響了進擊手機腹地的“第一槍”。 喬布斯是在 2007 年推出了 iPhone,距今已經接近 15 年了,它已經占據我們生活的中心 15 年的時間了。我覺得完全應該有一個新物種來挑戰手機的地位。 百度集團副總裁、百度生活事業群組(SLG)總經理、小度科技 CEO 景鯤在采訪中表示。 在這樣的思考下,小度推出了全新品牌「添添」,并發...

史海拾趣

問答坊 | AI 解惑

有關VGA圖像顯示

我前不久做了個信號顯示的,然后打算做下圖像的,附件中是程序代碼,里面要求定制一個數據寬度為3位(分別表示紅,綠,藍三色),地址為12位的ROM。我在建.MIF文件時出了問題,請問圖形或者中文字符的模取得之后以什么方式來新建這個.MIF文件??? ...…

查看全部問答∨

華清遠見聯手ARM公司大型技術巡回講座,邀您參加!

(4月11日北京站,4月10日上海站,4月17日深圳站,4月24日武漢站,5月8日成都站,點擊這里加入) 作為全球性RISC標準的締造者,ARM在嵌入式處理器領域中的霸主地位早已為大家所公認,目前行業中90%以上的嵌入式產品中都采用的是ARM系列的處理器。 ...…

查看全部問答∨

DDS頻率發生器 通過單片機如何控制

我想用AD9851DDS芯片產生10M到20M聯系可調的方波 目前不知道單片機怎樣和AD9851 連接 怎么控制過程?謝謝大家啊 急用 謝謝 如果能有程序的話最好 我可以先學學 再改進…

查看全部問答∨

如何關閉一個已被刪除的文件的句柄?

一個文件被人手工刪除了 在程序中又需要重新創建該文件以寫入數據 但此時無法成功創建該文件 貌似是文件不在了但句柄還存在著 這種情況怎么搞定呢?…

查看全部問答∨

WINCE 數據庫

   誰能教我在EVC下編程使用數據庫?      我以前是在PC機上用數據庫,現在在WINCE上不知道怎么弄…

查看全部問答∨

STM32evaluationboard

http://www.freertos.org/portstm32iar.html不知道國內版本是不是和這個功能類似?…

查看全部問答∨

買了個STLINK-II,發現可以調試arm7

                                 不同于送的小開發板帶的st-link。這個110塊的東西可以調試arm7…

查看全部問答∨

如何讓msp430上電自動運行程序

請問各位: 如何讓msp430上電自動運行程序,連著仿真器的時候程序運行正常。謝謝!…

查看全部問答∨

六招教你輕松辨別LED燈

    因為踏入LED燈、LED燈帶生產的門檻比較低,所以目前來說,涉足這個項目的人不在少數。但怎么去辨別好壞,就得多留心了。     據有經驗的人士稱,首先要看產品的包裝。正規的LED燈帶會采用防靜電卷料盤包裝,一 ...…

查看全部問答∨

launchpad的觸摸板怎么用?

具體點,表示用戶手冊看不大懂?;A不好吧。那個API函數具體怎么調用?講得太抽象了?!?

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 丰台区| 青海省| 璧山县| 浪卡子县| 环江| 开阳县| 内黄县| 涟水县| 澄城县| 姜堰市| 和顺县| 八宿县| 遂川县| 西贡区| 巴林左旗| 万盛区| 彭水| 延庆县| 陈巴尔虎旗| 正宁县| 沧州市| 霍山县| 泸州市| 黔南| 北辰区| 阜宁县| 石楼县| 明溪县| 华宁县| 聂荣县| 海南省| 乃东县| 鹤峰县| 姚安县| 德令哈市| 偏关县| 中阳县| 丰原市| 台湾省| 万宁市| 南康市|