亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 906|回復: 2
打印 上一主題 下一主題
收起左側

新人求助TMS320F28035啟動問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:851029 發表于 2025-8-13 20:01 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題,現在下載程序可以正常運行,但是重新上電程序就不運行,下載器是XDS110,指令文件是DSP28035Peripheral.cmd,DSP28035.cmd也試過了不行,程序不是下載在ram里
測量電路晶振是在工作的,已經正常起振了。
debug也是正常運行的,無法排查是哪里出的問題,或者說卡在程序哪里了

我應該怎么排查,這個問題怎么解決
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:851029 發表于 2025-8-14 08:50 | 只看該作者
犯蠢了,boot引腳有問題,sdo不小心下拉了
回復

使用道具 舉報

板凳
ID:1137639 發表于 2025-8-14 09:22 | 只看該作者
根據你描述的情況(程序下載后可正常運行,但重新上電后不運行,Debug正常,晶振工作),這通常與程序啟動流程、存儲器配置或復位邏輯相關。以下是系統的排查步驟和解決方案:  ### 一、排查程序啟動與復位相關問題 1. **檢查復位向量配置**    - 確保`DSP28035Peripheral.cmd`文件中正確配置了復位向量指向`_c_int00`(C程序入口)    - 檢查是否在代碼中禁用了 watchdog定時器,未禁用會導致程序復位循環  2. **驗證程序加載地址**    - 確認程序被下載到Flash而非RAM(通過CMD文件的SECTIONS配置)    - 檢查Flash燒寫后是否正確執行了解鎖和校驗操作  3. **添加啟動狀態指示**    在`main()`函數最開始處添加LED閃爍或GPIO電平翻轉代碼,判斷程序是否根本沒進入主函數:    ```c    // 示例:初始化后立即翻轉LED引腳    void main(void) {        InitSysCtrl();  // 系統控制初始化        EALLOW;        GpioCtrlRegs.GPAMUX1.bit.GPIO0 = 0;  // 配置為GPIO        GpioCtrlRegs.GPADIR.bit.GPIO0 = 1;   // 輸出方向        GpioDataRegs.GPASET.bit.GPIO0 = 1;   // 置高電平        EDIS;                // 此處添加短暫延時函數        delay_us(100000);                GpioDataRegs.GPACLEAR.bit.GPIO0 = 1; // 拉低電平                // 后續初始化代碼...    }    ```  ### 二、Flash配置與燒寫問題排查 1. **檢查Flash編程配置**    - 確保包含Flash初始化函數(如`InitFlash()`)    - 確認Flash等待狀態設置正確(與系統時鐘匹配)  2. **驗證CMD文件配置**    檢查CMD文件中是否正確分配了程序到Flash:    ```c    // 正確的Flash分配示例    .text       : > FLASHH,     PAGE = 0    .cinit      : > FLASHH,     PAGE = 0    .switch     : > FLASHH,     PAGE = 0    .const      : > FLASHH,     PAGE = 0    .econst     : > FLASHH,     PAGE = 0    .pinit      : > FLASHH,     PAGE = 0    ```  3. **執行Flash完整性校驗**    - 使用CCS的"Verify"功能確認程序已正確燒寫到Flash    - 檢查是否有Flash保護機制導致程序無法運行  ### 三、硬件相關排查 1. **復位電路檢查**    - 測量復位引腳(XRS)上電后的電平變化,確認復位信號是否穩定    - 檢查復位電路的電容、電阻是否符合 datasheet 要求  2. **電源穩定性測試**    - 測量核心電壓(1.8V)和I/O電壓(3.3V)是否穩定    - 檢查上電時序是否滿足芯片要求  3. **外部中斷檢查**    - 確認沒有未處理的外部中斷導致程序進入異常狀態    - 檢查GPIO引腳初始狀態是否導致意外中斷  ### 四、Debug調試技巧 1. **使用硬件斷點**    - 在`_c_int00`入口處設置斷點,確認復位后是否執行到此處    - 逐步單步執行,觀察程序在何處停止響應  2. **查看寄存器狀態**    - 檢查狀態寄存器(ST1、ST0)確認是否有錯誤標志    - 查看PC(程序計數器)值,確認程序執行位置  3. **內存數據檢查**    - 比較Flash中的程序數據與RAM中的數據是否一致    - 檢查關鍵變量的初始化狀態  ### 五、常見解決方案 1. **添加必要的初始化代碼**    確保在`main()`函數開始處包含完整的初始化:    ```c    void main(void) {        // 必須的初始化步驟        InitSysCtrl();    // 系統控制初始化        DINT;             // 禁止中斷        InitPieCtrl();    // PIE中斷控制器初始化        IER = 0x0000;     // 清除中斷使能        IFR = 0x0000;     // 清除中斷標志        InitPieVectTable(); // 初始化PIE向量表        InitFlash();      // Flash初始化(關鍵步驟)                // 禁用看門狗        EALLOW;        SysCtrlRegs.WDCR = 0x0068;        EDIS;                // 你的應用代碼        // ...    }    ```  2. **使用正確的CMD文件**    - 確保使用與你的芯片型號完全匹配的CMD文件    - 檢查是否有自定義段未正確分配到Flash  3. **更新CCS和XDS110固件**    - 確保CCS版本支持你的DSP型號    - 更新XDS110仿真器固件到最新版本  如果經過以上步驟仍未解決問題,建議嘗試簡化程序(僅保留最小化的啟動代碼),逐步添加功能以定位問題所在。這種方法通常能快速隔離是基礎配置問題還是應用代碼中的特定邏輯導致的啟動失敗。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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