|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
freescale 單片機(jī)學(xué)習(xí)的一些經(jīng)驗(yàn)分享. |
| 作者:mcu123ad 欄目:單片機(jī) |
有錯(cuò)的地方,請大家指正: 原文來自:http://www.mcu123.net/bbs/dispbbs.asp?boardID=24&ID=922&page=3 1、 問: 四個(gè)文件模塊main.c,key.c,rtc.c ,pca2416.c編譯后出現(xiàn)警告 L1923: File C:\Documents and Settings\msxu\桌面\bpm1\bpm1\bpm1_Data\P&E_FCS\ObjectCode\Key.c.o has no DWARF debug info L1923: File C:\Documents and Settings\msxu\桌面\bpm1\bpm1\bpm1_Data\P&E_FCS\ObjectCode\PCA2416.C.o has no DWARF debug info L1923: File C:\Documents and Settings\msxu\桌面\bpm1\bpm1\bpm1_Data\P&E_FCS\ObjectCode\RTC.C.o has no DWARF debug info 雖然不影響最后的(生成S19)結(jié)果,但在進(jìn)入調(diào)試程序時(shí)就會報(bào)錯(cuò)的? 答: 只要在工程文件樹,相應(yīng)的文件名后面用鼠標(biāo)點(diǎn)擊debug欄(即有一個(gè)蟲子標(biāo)志的欄),文件名后面會出現(xiàn)一個(gè)點(diǎn),即表明可以生成調(diào)試信息,警告即消除。 2、 加密是$FFF6~$FFFD共8個(gè)byte的內(nèi)容,可以從S19中設(shè)置,也可在P&E中設(shè)置。 用ICS08中的Target MCU Security bytes (目標(biāo) MCU安全碼) 要通過安全碼檢測就必須給出正確的安全碼,安全碼由處理器 FLASH存儲器的$FFF6到$FFFD八字節(jié)組成。編程軟件連續(xù)地記錄安全碼的改變,并把它們存儲到 SECURITY.INI文件中,用于安全碼檢測。用戶使用“User”文本對話框手動(dòng)設(shè)置安全碼,或者點(diǎn)擊“Load from S19”從相同的 s19文件中調(diào)用安全碼。忽略安全碼檢測失敗并進(jìn)入監(jiān)控模式(IGNORE security failure and enter MONITOR mode ):該選擇框使軟件能忽略安全碼檢測錯(cuò)誤,并進(jìn)入監(jiān)控模式(要保證波特率和通訊口設(shè)置正確,電源正確)。但不能進(jìn)入 FLASH存儲器。只能對整片 MCU的 FLASH進(jìn)行擦除后方可進(jìn)行編程燒錄和校驗(yàn)。 如果正確地進(jìn)入監(jiān)控模式,軟件讀取$FFF6到$FFFF的內(nèi)容,判定處理器是否通過了安全碼檢測,檢測到的返回值是$AD,說明存儲器是無效的或被加密。如果從$FFF6到$FFFF的所有字節(jié)讀的值均是$AD,說明芯片被加密,標(biāo)志值是‘N’。如果 0到 5 的標(biāo)志值是‘Y’,標(biāo)志 6的值是‘N’,那么復(fù)位過程已經(jīng)正確進(jìn)行,僅安全碼檢測沒有通過。制定正確的安全碼,重試一次,或者忽略安全碼檢測。 3: 問:請問有沒有用過LJ12的芯片,怎么讓他進(jìn)入stop mode? 答: CONFIG寄存器要允許STOP指令,執(zhí)行STOP指令就可以了。 4、問:如果是等待模式怎么進(jìn)去呢? 答:直接用WAIT命令。 5、 中斷定義有兩種方法: 方法一: #pragma TRAP_PROC void IntFunc1(void) { /* your code */ } In your prm file: VECTOR ADDRESS 0xFFF4 IntFunc1 /* 0xFFF4 contains the address of IntFunc1 */ 方法二: interrupt 3 IntFunc1() { …/*code*/ } Means that the third entry in the vector table is initialized with the address of IntFunc1(). 6、RESET的處理: RESET腳最好不要懸空?梢酝饧右粋(gè)大于10K的上拉電阻,另外加一個(gè)0.1u左右的旁路電容到地。電阻電容的值可以根據(jù)系統(tǒng)的實(shí)際情況(復(fù)位時(shí)間要求等)作一些調(diào)整。 MC68HC08的復(fù)位功能 復(fù)位使單片機(jī)從某些不確定狀態(tài)或混亂狀態(tài)回到一個(gè)確定的初始狀態(tài),并從這個(gè)初始狀態(tài)開始工作。 ·MCU立即停止正在執(zhí)行的操作; ·MCU內(nèi)各種控制狀態(tài)寄存器置為確定的初始值; ·選CGMXCLK(晶體振蕩器輸出時(shí)鐘)÷4作為部總線時(shí)鐘; ·從$FFFE和$FFFF單元取出復(fù)位向量地址送程序計(jì)數(shù)器PC; ·MCU從用戶定義的復(fù)位入口執(zhí)行主程序。 一.復(fù)位信號源 1、外部復(fù)位信號 HC08的RST引腳為外部復(fù)位輸入端,當(dāng)RST輸入低電平持續(xù)時(shí)間大于TIRL(如fBUS=8MHZ時(shí)為125sΜ)時(shí)使MCU復(fù)位。RST同時(shí)又是內(nèi)部復(fù)位輸出端,當(dāng)產(chǎn)生內(nèi)部復(fù)位時(shí)RST輸出一個(gè)負(fù)脈沖。RST內(nèi)有拉高電阻,因此一般常態(tài)為高電平。 2、內(nèi)部復(fù)位信號 ①上電復(fù)位:當(dāng)主電源輸入端VDD發(fā)生正跳變時(shí),MCU內(nèi)部產(chǎn)生一個(gè)上電復(fù)位信號,使系統(tǒng)復(fù)位。 ②低電壓復(fù)位:當(dāng)主電源輸入端VDD發(fā)生正跳變時(shí),MCU內(nèi)部產(chǎn)生一個(gè)上電復(fù)位信號,使系統(tǒng)復(fù)位。 ③非法地址和非法碼復(fù)位:當(dāng)CPU訪問非法的地址單元(無物理單元的存儲空間保留區(qū))或取出非法操作碼時(shí)產(chǎn)生復(fù)位信號,使系統(tǒng)復(fù)位。 ④COP復(fù)位:當(dāng)“CPU正常工作監(jiān)視器”(通常也稱Watchdog)的“COP計(jì)數(shù)器”計(jì)數(shù)溢出時(shí)產(chǎn)生內(nèi)部復(fù)位信號,使系統(tǒng)復(fù)位。 7,端口操作: DDRX---是方向寄存器(輸入\輸出),配置為1時(shí)端口為輸出,配置為0時(shí)為輸入. PTX---為數(shù)據(jù)寄存器,,作為輸入時(shí),讀到的是外部端口的值;作為輸出口時(shí),寫入的數(shù)據(jù)為輸出到端口的數(shù)據(jù). 8、函數(shù)庫調(diào)用。 問:當(dāng)用到SIN或SQRT時(shí),出現(xiàn)錯(cuò)誤?當(dāng)加入math.h也是不行? 答:新建項(xiàng)目時(shí)默認(rèn)用的是:ansii.lib庫文件,這個(gè)庫當(dāng)調(diào)用sin ,sqrt時(shí)是不行的。。需要用庫ansi.lib。解決辦法:添加ansi.lib庫文件即可。 問:如果SecureBit始終對不了怎么辦? 答:今天剛剛拿到HC08的開發(fā)板,研究了一下,本來準(zhǔn)備把boy123的代碼改成一個(gè)支持HID的設(shè)備。結(jié)果沒試驗(yàn)幾下就遇到了SecureBits的問題,無論如何都對不了了。Google了一下,下了個(gè)NoIce http://www.noicedebugger.com/ 一切搞定。這個(gè)小東西功能很強(qiáng),把芯片來了個(gè)MASS FLASH,然后用那個(gè)FFFFFFFFF的安全碼就可以繼續(xù)使用了。 |
| 2樓: | >>參與討論 |
| 作者: mcu123ad 于 2006/12/22 15:07:00 發(fā)布:
re 常用軟件下載 CodeWarrior for HC08.html">HC08 5.1 HC08最新版的軟件下載 http://www.mcu123.com/news/Soft/embsof/FREESCALE/200612/333.html CodeWarrior for HC12 V4.5 16位單片機(jī)開發(fā)軟件MC9S12 http://www.mcu123.com/news/Soft/embsof/FREESCALE/200612/332.html 除了CODEWARRIOR以外,還有IAR的。。 IAR Embedded Workbench for HCS12 3.11A http://www.mcu123.com/news/Soft/embsof/FREESCALE/200612/207.html 先放這么多先了。。。。喜歡的話就下。。不喜歡就飄過吧。。。 如果在需要速度快些的話,請用FTP方式下載。。。 ftp://www.mcu123.com 用戶名和密碼是:mcu123 在 MCU123_0610已整理\開發(fā)工具\(yùn)FREESCALE 目錄下有FREESCALE的常用開發(fā)工具。 支持?jǐn)帱c(diǎn)繼傳。 * - 本貼最后修改時(shí)間:2006-12-25 10:25:57 修改者:mcu123ad |
|
| 3樓: | >>參與討論 |
| 作者: xiaohe1985 于 2006/12/23 11:22:00 發(fā)布:
回復(fù) 哈哈~~不錯(cuò)哦~~謝謝啊 |
|
| 4樓: | >>參與討論 |
| 作者: super323 于 2006/12/23 14:23:00 發(fā)布:
GOOD 很好,謝謝 |
|
| 5樓: | >>參與討論 |
| 作者: 魯海波 于 2006/12/26 16:48:00 發(fā)布:
相當(dāng)好 相當(dāng)好啊! |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |