新建一個項目:
1-啟動IAR,選擇Project->Create New Projects…
2-選擇C
3-然后選擇路徑并指定文件名,然后按Save保存
4-然后選Project->Options…設置項目屬性
5-General options -> Target -> Device -> STM8S -> STM8S103F3P
6-Debugger -> Setup -> Driver -> ST-LINK
7-Debugger -> ST-LINK -> 選中Verify
編譯運行項目:
1-選擇Project -> Make,編譯項目
(如果需要重新編譯這個項目,可以選擇Project -> Rebuild All)
2-選擇Project -> Download and Debug, 把編譯好的文件下載到電路板
3-選擇Debug->Go運行程序
用IAR調試程序:
Toggle Breakpoint: 設置斷點,程序運行到斷點時會自動暫停
執行Download and Debug之后:
Go: 運行整個程序
Reset: 重置程序,回到第一行
Step over: 執行一條語句
View:
Disassembly: 顯示C語言對應的匯編
Locals: 顯示變量的值
Registers: 顯示寄存器的值
Memory: 顯示內存的內容
/***************************************************************************/
外部中斷處理函數:(不是所有I/O都支持EXTI,reference manual P66)
外部中斷設置:(頭文件 #include 1-Px_CR2寄存器:enable Portx external interrupt 2-EXTI_CR1寄存器:設置觸發條件(Page 70 of Reference manual) 3-打開全局中斷:__enable_interrupt() -每組I/O口的中斷號(IRQ number)都不同,Datasheet P43 -函數名可以任意。例如PORTA_EXTI_Handler() IAR語法: #pragma vector = 中斷號+2 __interrupt void PORTA_EXTI_Handler(void) { } /***************************************************************************/ USB轉串口于STM8連接:(把USB轉串口上的跳線帽撥到3.3V處) 主要寄存器共12個,常用的有5個: UART_SR:保存串口控制器的狀態 UART_DR:保存接收或者發送的數據 UART_CR2:設置串口模式 UART_BRR1:設置波特率(baudrate) UART_BRR2:設置波特率(baudrate) 其他:保持默認設置,即使用串口8-n-1模式 波特率具體取值可以計算,也可以參考Reference Manual的22.3.4節的Table 54 用特殊的語法定義,例如: #pragma vector = UART1_T_TXE_vector __interrupt void UART1_T_TXE_Handler(void) {} #pragma vector = UART1_R_RXNE_vector __interrupt void UART1_R_RXNE_Handler(void) {} 其中#pragma vector和__interrupt是固定的語法: UART1_T_TXE_vector指定這個中斷處理函數是用來處理串口發送完畢中斷 UART1_R_RXNE_vector指定這個中斷處理函數是用來處理串口接收中斷 UART1_T_TXE_vector和UART1_R_RXNE_vector在頭文件iostm8s103f3.h中定義 UART1_T_TXE_Handler()和UART1_R_RXNE_Handler()函數名可以是任意 *中斷處理函數的內容要盡可能的短小,以免影響主程序的運行 /**************************************************************/ 定時器的時鐘頻率可以設置: Timer1的時鐘頻率 = fCK_PSC / (PSCR[15:0]+1) Timer2/3的時鐘頻率 = fCK_PSC / 2^PSCR[3:0] Update Interrupt : 設置中斷發生的周期:ARR(Auto-reload register) 中斷發生頻率 = 定時器頻率 / (AAR+1) 產生中斷的時間 = 1 / 中斷發生頻率 以Timer2為例,假設主頻為16MHz TIM2_PSCR = 0x07; // psc=7 => prescaler=2^7 =128 => 定時器頻率=16MHz/128=125KHz *退出中斷前需要對相應的狀態位清零。
上一篇:STM8S103之tim1PWM輸出
下一篇:STM8S重映射
推薦閱讀
史海拾趣
在智能手機行業快速發展的背景下,某知名手機制造商面臨著如何將更多功能集成到更小空間的挑戰。通過引入DFX的設計理念,該公司成功實現了硬件的小型化,同時保持了高性能和可靠性。通過優化內部布局、采用先進封裝技術和選用高性能元器件,該手機制造商在保持產品競爭力的同時,滿足了消費者對輕薄、高性能手機的需求。
某消費電子公司在生產過程中經常遇到質量問題,導致產品退貨率居高不下。為了解決這個問題,該公司引入了DFX的設計理念,對產品設計、生產和測試等環節進行了全面優化。通過改進生產工藝、優化材料選擇和加強質量控制等手段,該公司成功提高了產品的質量和可靠性,降低了退貨率,贏得了消費者的信任。
星海鋼琴集團有限公司的起點可以追溯到1949年成立的北京鋼琴廠。在那個特殊的年代,陳艾生等紅軍戰士為實現張貞黻的遺愿,即“北平解放后,一定要辦起我們自己的樂器廠”,他們四處奔走,多方求助,最終成功創辦了星海鋼琴廠。從最初的手工制作到現代化生產線的建立,星海鋼琴不斷傳承和發展,成為中國乃至世界知名的鋼琴品牌。
Avery Dennison一直致力于技術創新和產品開發。例如,公司在水膠技術方面取得了顯著進展,成功開發出環保且高效的水性乳液聚合物粘膠劑,成為第一家大規模供應這類產品的標簽制造商。此外,公司還推出了具有智能功能的RFID標簽產品組合,為零售、食品、物流、醫療等行業提供了數字化解決方案。這些創新產品不僅提升了公司的競爭力,也為客戶創造了更大的價值。
隨著公司產品的不斷優化和升級,Aplus Integrated Circuits開始尋求與國際市場的接軌。公司積極參與國際電子行業的交流與合作,與多家國際知名企業建立了穩定的合作關系。通過引進國外先進的技術和管理經驗,公司的產品逐漸走向國際化,市場競爭力得到了進一步提升。
然而,隨著市場競爭的加劇和技術的快速變革,Fagor Electrónica也面臨著前所未有的挑戰。為了應對這些挑戰,公司不斷加大研發投入,積極引進先進技術和管理經驗。同時,Fagor Electrónica還加強了與供應商和客戶的合作,以共同應對市場變化。這些努力使得公司在激烈的市場競爭中保持了領先地位。
本帖最后由 paulhyde 于 2014-9-15 09:13 編輯 我也是聽說NEC大賽會用到這個而已~ 找來共享了,這東西貌似不好找。 [ 本帖最后由 虛V界 于 2009-8-31 14:51 編輯 ] … 查看全部問答∨ |
|
我的設備怎么與電腦鏈接三個小時左右就會自動斷呢,而且怎么都連不上了除非重新啟動,我用串口發送數據給設備,設備也不能正常接收了,但是我把u口拔插電腦時,通過電腦串口接收到的串口信息又是對的,實在是分析不出哪里的原因,愿大俠分析下,謝 ...… 查看全部問答∨ |
|
1、接液晶的FPC座(54PIN,0.5mm)不知道被誰幫了個忙,卡被弄壞了,這個液晶的接口是插座形式的,根本焊不上去,跑了一下電子市場,發現根本沒有這東西,這地方也太不發達了! 2、CIII starter板上的FPGA芯片特別燙,至少70度,倒還能夠下載程序 ...… 查看全部問答∨ |
|
單片機C語言程序設計實訓100例---基于AVR+PROTEUS仿真 基于AVR Studio+WinAVR(GCC)組合環境和Proteus硬件仿真平臺,精心安排了100個AVR單片機C程序設計案例。全書提供了所有寨例完整的C語言源程序,各案例設計了難易適中的實訓目標。&nb ...… 查看全部問答∨ |
|
我沒仔細看,有關心的網友順便說說介紹一下 Silicon Labs新型高可靠性http://www.nncyjs.com/mndz/2013/0626/article_18831.html利用Silicon Labs專利的CMEMS®技術,可確保在10年以上工作壽命中具有穩定的溫度和抗老化性能。基于可靠供 ...… 查看全部問答∨ |
設計資源 培訓 開發板 精華推薦
- 利用STM32MP1和STM32MP2在嵌入式 Linux 平臺上部署有效的安全保護機制
- 超小但強大:MCU 的小尺寸封裝和集成如何幫助優化空間受限的設計
- 德州儀器推出全球超小型 MCU,助力微型應用創新
- Microchip推出電動兩輪車(E2W)生態系統,加速電動出行創新
- 意法半導體推出STM32U3微控制器,面向遠程、智能和可持續應用,拓展超低功耗系列創新
- (一) ECloudIDE入門STM32-CubeMX工程創建與導入
- (二)ECloudIDE入門STM32-官方寄存器版例程使用
- Simulink STM32F407VGT6實現硬件在環
- openharmony:hilog_lite組件移植