全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1456
推到 Plurk!
推到 Facebook!

8051位置

答題得分者是:handystudio
xqet00321
一般會員


發表:4
回覆:10
積分:2
註冊:2012-11-08

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-11-29 03:10:35 IP:125.230.xxx.xxx 訂閱
 想請問各位大大們,如果要燒錄位置剛好再00fe這個位置那如果剛好資料量有三個
位置應該會變成0101
我在位置上的處理是用
if(add_low i==0x00 || add_low i>0xff)
{
add_hi ;
}
這樣的結果是錯的,請問我該怎麼修改?
------
你好
編輯記錄
xqet00321 重新編輯於 2012-11-28 12:12:19, 註解 無‧
if8051
中階會員


發表:2
回覆:53
積分:61
註冊:2012-08-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2012-11-29 18:07:52 IP:114.40.xxx.xxx 訂閱
請把問題描述更清楚明白俱體,真不知該如何回答。
------
ATMEL AVR 單晶片設計開發 教學

工業電子 電機自動控制 設計 維修
handystudio
高階會員


發表:1
回覆:81
積分:106
註冊:2005-03-26

發送簡訊給我
#3 引用回覆 回覆 發表時間:2012-12-02 00:37:54 IP:114.38.xxx.xxx 訂閱
先告知 add_hi,  add_low, i 的資料型態是什麼?
是 char , unsigned char, int, unsigned int ??????
才知道運算式合理性
===================引 用 xqet00321 文 章===================
想請問各位大大們,如果要燒錄位置剛好再00fe這個位置那如果剛好資料量有三個
位置應該會變成0101
我在位置上的處理是用
if(add_low i==0x00 || add_low i>0xff)
{
add_hi ;
}
這樣的結果是錯的,請問我該怎麼修改?
------
歡迎光臨 輕巧工作室
網站 http://www.handystudio.tw
控制電路板客製設計、製作交貨
8051專題製作/專題客製
xqet00321
一般會員


發表:4
回覆:10
積分:2
註冊:2012-11-08

發送簡訊給我
#4 引用回覆 回覆 發表時間:2012-12-03 03:53:16 IP:125.230.xxx.xxx 訂閱
 兩個位置的宣告都是unsigned  int
目前近位可以可是近位過後的前四筆資料有錯
例如:
假設我燒錄一個260byte的hex近去

0000資料原本為02030405

可是當我燒錄到0100的時候讀出來比對資料卻發現0000的資料不正確跟原本的02030405比對有誤

請問是我資料有覆蓋嗎?還是?

------
你好
handystudio
高階會員


發表:1
回覆:81
積分:106
註冊:2005-03-26

發送簡訊給我
#5 引用回覆 回覆 發表時間:2012-12-09 00:28:12 IP:1.171.xxx.xxx 訂閱
就你po的部份程式,資訊太少,
add_low=0x00; 這是多餘的,因 add_low 根本沒改變
如果是用 add_low 送出low位置,都是送出0

===================引 用 xqet00321 文 章===================
兩個位置的宣告都是unsigned int
目前近位可以可是近位過後的前四筆資料有錯
例如:
假設我燒錄一個260byte的hex近去

0000資料原本為02030405

可是當我燒錄到0100的時候讀出來比對資料卻發現0000的資料不正確跟原本的02030405比對有誤

請問是我資料有覆蓋嗎?還是?

------
歡迎光臨 輕巧工作室
網站 http://www.handystudio.tw
控制電路板客製設計、製作交貨
8051專題製作/專題客製
系統時間:2024-12-04 1:40:10
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!