liuliangdt
liuliangdt
級(jí)別: 家園常客
|
小哥是個(gè)單片機(jī)業(yè)余愛好者,接觸單片機(jī)有幾年了。但很汗顏,水平一直還在入門口徘徊。本來(lái)想弄一個(gè)類似于多站通信的網(wǎng)絡(luò)結(jié)構(gòu)程序玩。寫相互通信就的地方卡住了,再也寫不下去。現(xiàn)在跪求壇友幫忙,因?yàn)閷懖幌氯ヒ呀?jīng)幾個(gè)月沒(méi)碰單片機(jī)了。太恨了··· 介紹一下通訊方案。一串信息幀有5個(gè)字節(jié)組成,主站發(fā)出一串信息幀后由對(duì)于的從站響應(yīng)。因?yàn)閺恼疽焖夙憫?yīng)所以就設(shè)計(jì)在中斷程序里回應(yīng)(回復(fù))。問(wèn)題就出在這回應(yīng)的子程序。同一個(gè)子程序,在主程序里順序執(zhí)行的時(shí)候和其它站是正常通訊。但要快速回應(yīng)還得在中斷里執(zhí)行才行。從中斷程序里發(fā)出通信信息都亂了,接收方收不到正確的信息。我已經(jīng)試過(guò)了我想到可能性,但都不對(duì)。希望壇友們幫忙找出錯(cuò)誤。在查錯(cuò)時(shí)最好要有兩塊單片機(jī)硬件聯(lián)機(jī),然后在它們RS-485信號(hào)處連到電腦的串口助手里看那些錯(cuò)誤的字節(jié)。 如有沒(méi)講請(qǐng)清楚的地方待補(bǔ)充。 |
---|---|
|
shi2999
不管學(xué)什么,興趣是最好的老師,能賺錢是最強(qiáng)勁的動(dòng)力
級(jí)別: 網(wǎng)絡(luò)英雄
|
能做到,進(jìn)中斷時(shí),會(huì)把pc指針存進(jìn)堆棧,在中斷中修改相應(yīng)堆棧位置的數(shù)值為那個(gè)函數(shù)的地址就行 如: MOV SP, #(STACK-1) MOV (STACK), #HIGH(function1) MOV (STACK+1), #LOW(function1) MOV SP, #(STACK+1) RETI 樓主留言:你和#supermax #是同事嗎?他說(shuō)是你的手下。 |
---|---|
本帖最近評(píng)分記錄: |
shi2999
不管學(xué)什么,興趣是最好的老師,能賺錢是最強(qiáng)勁的動(dòng)力
級(jí)別: 網(wǎng)絡(luò)英雄
|
supermax 是不是我的同事不重要。 |
---|---|
|