最近在读美国导师发给我的DSP2808编写的汇编语言程序,遇到了一些问题 dsp要用到汇编语言吗
\u5728dsp\u6570\u636e\u624b\u518c\u4e2dasserted\u4ec0\u4e48\u610f\u601dasserted
[\u82f1][ə'sɜ:tɪd][\u7f8e][ə'sɜ:tɪd]
adj.\u5ba3\u79f0\u7684\uff08\u5c1a\u5f85\u8bc1\u5b9e\u7684\uff09\u7684;
v.\u58f0\u79f0( assert\u7684\u8fc7\u53bb\u5f0f\u548c\u8fc7\u53bb\u5206\u8bcd ); \u7ef4\u62a4; \u575a\u6301\u81ea\u5df1\u7684\u4e3b\u5f20; \u751f\u6548;
\u4f8b\u53e5:
1.
The country's press has only recently asserted its independence.
\u56fd\u5bb6\u7684\u65b0\u95fb\u754c\u6700\u8fd1\u624d\u58f0\u79f0\u5176\u72ec\u7acb\u6027\u3002
2.
The african union this week asserted maritime security as a priority for thecontinent.
\u8fd9\u5468\uff0c\u975e\u76df\u58f0\u79f0\u5c06\u628a\u6d77\u4e0a\u5b89\u5168\u4f5c\u4e3a\u975e\u6d32\u5927\u9646\u7684\u4f18\u5148\u4e8b\u52a1
DSP\u7528\u6c47\u7f16\u7684\u548c\u7528C\u7684\u5dee\u4e0d\u591a\u5427\uff0c\u4e0d\u8fc7\u641e\u5e94\u7528\u7684\u4e00\u822c\u7528C\uff0c\u641e\u5e95\u5c42\u7684\u4e00\u822c\u7528\u6c47\u7f16\u3002\u56e0\u4e3a\u6709\u65f6\u5019\u8981\u53bb\u4fe1\u53f7\u5904\u7406\u7684\u5b9e\u65f6\u6027\u5f88\u5f3a\uff0c\u5c31\u8981\u7528\u6c47\u7f16\uff0cDSP\u7684\u6c47\u7f16\u548c8086\u7684\u6c47\u7f16\u5dee\u7684\u597d\u8fdc\u554a\uff0c\u738b\u723d\u7684\u662f8086\u7684\u554a\uff0c\u548cDSP\u6ca1\u6709\u591a\u5927\u5173\u7cfb\u554a\u3002
\u5b66C\u5427\uff0c\u5165\u95e8\u7b80\u5355\u3002\u6c47\u7f16\u5165\u95e8\u96be\u3002
\u4f46\u662f\uff0c\u597d\u50cf\u6c47\u7f16\u5fc5\u987b\u5f97\u4f1a\uff0c\u4e0d\u7136\u6ca1\u6709\u529e\u6cd5\u6210\u4e3a\u9ad8\u624b\uff0c\u53ea\u6709\u4f1a\u6c47\u7f16\u624d\u4f1a\u8c03\u8bd5\u7a0b\u5e8f\u3002
都是数据移动指令,但不同指令移动的存储区不同,片上存储单元、外存flash
这个可以参考51单片机的类型指令从侧面了解(有前两个),最根本的解决办法还是找该DSP的芯片架构说明,和所支持的指令集合(这是最基本的开发参考资料,没有这个,可以叫你导师下课了)
问题二:跳转指令 BF LB
同上,参考芯片手册
问题三:移位指令 SPM SFR LSL
同上
问题四:乘指令 MPYA MPYXU IMPYL
同上
问题五:地址指令 @ * #
同上
以上是我不太清楚他们之间的区别,对操作数的作用不是很确定,只能根据程序
猜
还有几个语句
问题六:MOVLXAR6, *+XAR7[AR0] 语句*+XAR7[AR0]是什么意思?
问题七:MOV*XAR5++, #BLDCPWM_100Output 语句 *XAR5++ 是什么意思?
问题八:程序中经常有这类语句 SUBACC, @_velocityLPRef<<16
但是velocityLPRef被定义为externint 是16的变量,如果左移16位岂不是变为0
,那相减操作还有何意义?
问题九:程序中常用的寄存器 DP PC 代表什么含义
MOVW DP,#ETCLR1>>6
MOV @ETCLR1,#0x01;
MOVW DP,#PIEACK>>6;
MOV @PIEACK,#PIEACK_GROUP3
想这段程序署名为Interrupt management 这里的DP就不懂了
问题十:还有跳转判断条件不清楚 如以下两句
BFDirUP?, NTC
BFm_positiveRltDn?, GT
NTC和GT代表什么意思,另外这两句中"?"什么意思
本来时想一个一个地回答你的,但发现这都是开发手册可以了解的内容,你找该芯片型号的开发文档,一般是“芯片结构”,“芯片指令系统”
我也在看这个DSP的汇编,有些不懂,想像你请教几个问题,我的邮箱[email protected]
绛旓細DSP锛屾暟瀛椾俊鍙峰鐞嗭紝涓昏鐢ㄥ湪瑙嗛澶勭悊锛屾瘮杈冮珮鏁堛備篃鍙互閰嶅悎FPGA鍜孌SP锛屾棦婊¤冻鐏垫椿鐨勯厤缃紝杩樿兘瀹屾垚瑙嗛澶勭悊鏂归潰銆傛晥鐜囬珮銆傝嚦浜庨変粈涔堬紝閮借繕琛屻備綘鍙互闂笅浣犵殑瀵煎笀锛屽拰瀛﹂暱銆傛垜鐪嬶紝閮借繕涓嶉敊锛屼互鍚庣殑灏变笟閮藉緢濂界殑銆傚綋鐒讹紝ARM+Linux锛屽競鍦烘瘮杈冨ぇ锛岀敤鐨勪篃澶氾紝浣犲彲浠ュ弬鑰冧竴涓嬨
绛旓細榛勯拤鍔诧紝鐢凤紝纭曞+锛屽壇鏁欐巿韬唤锛屾媴浠昏タ瀹夊伐涓氬ぇ瀛︾殑纭曞+鐢瀵煎笀銆備粬鍑虹敓浜1965骞3鏈堬紝1981骞翠互浼樺紓鎴愮哗鑰冨叆鍗椾含鐞嗗伐澶у鐨勭簿瀵嗘満鐢典笓涓氾紝闅忓悗鍦1985骞7鏈堣幏寰椾簡宸ュ瀛﹀+瀛︿綅锛1988骞1鏈堝張鑾峰緱浜嗗伐瀛︾澹浣嶃備粬鏇句簬2010骞9鏈堣嚦12鏈鍦ㄧ編鍥鐘逛粬宸炵珛澶у鐨勭數瀛愬拰璁$畻鏈哄闄㈣繘琛屼簡璁块棶瀛︿範銆傞粍閽夊姴鏁欐巿鐨勭爺绌...
绛旓細绔熺劧璁╂垜纰拌浜嗭紝宀備笉宸у搲锛1銆乼i2x锛屽ソ鍍忎竴浜涘鐢熸墜閲屽氨鏈夛紱2銆乼i5x锛6x锛屼笁濂借鏈変竴瀹朵唬鐞嗭紝鍦ㄧ淮鐢ㄧ數瀛愬競鍦虹殑瑙掍笂锛屽崠dsp鐨勫紑鍙戞澘锛屼豢鐪熷櫒锛屽拰arm鐨勫紑鍙戞澘浠跨湡鍣紝浣犺繕鍙互鎵句笢澶х殑涓浜瀵煎笀锛屼粬浠拰浠g悊鍟嗙殑鑱旂郴瀵嗗垏浜涳紝鍙互鐩存帴鎵惧埌娌堥槼浠g悊鍟嗙殑鐢佃瘽锛宼i鐨勭涓夋柟寰堝锛屾墍浠ヤ拱鍥戒骇鐨勫紑鍙戞澘姣旇緝...
绛旓細鎴戠紪鍐欏簲鐢ㄧ▼搴忕殑鑳藉姏鏈夊緢澶х▼搴︾殑鎻愰珮銆傚湪杩欒繃绋嬩腑锛屾垜寮濮嬫帴瑙︾綉缁滃濯掍綋鍜DSP锛屽缃戠粶澶氬獟浣撳拰DSP寮鍙戞湁涓浜涗簡瑙c傝繖鏄垜澶у鍥涘勾鐨勪竴閮ㄥ垎缁忓巻銆傚洜涓烘垜骞磋交锛屼笉鍙伩鍏嶆湁涓浜涚己鐐癸紝浣嗘槸瀵逛簬鑷繁鐨勭己鐐规垜缁濅笉浼氬幓鍥為伩锛屾垜鍠滄閭d簺鑳藉鎸囧嚭鎴戠己鐐圭殑浜猴紝骞朵笖鎴戜細灏藉姏鍘绘敼鎺夎繖浜涚己鐐广傛垜鐑埍鎴戠殑鐢熸椿锛屾劅婵...
绛旓細2.鏃㈢劧宸茬粡瑕佸紑棰樹簡锛屾枃鐚患杩板簲璇ュ紕瀹屼簡鍟婏紝涔嬪墠鏌ュ緱閭d箞澶氱殑璧勬枡鐜板湪鑷繁鎬庝箞閮芥病鏈夋濊矾锛熷缓璁綘鍐嶆煡鏌ヤ笁骞村唴鐨勭浉鍏虫枃鐚紝璇︾粏鐪嬬湅鍥句功棣嗘枃鐚簱涓鏈杩涓夊勾鐩稿叧鐨勫崥澹垨纭曞+璁烘枃锛屾寜鐓т綘鐨勮姹傦紝鎵炬壘鍝簺涓嶉渶瑕佺‖浠跺氨鍙互鐢╩atlab鍜宑++鎴dsp鍋氬嚭鏉ワ紝濡傛灉鏈夊氨鐓ф惉杩欎釜鎬濊矾锛屾妸杞欢鐨勫簲鐢ㄩ鍩熴佺洰鐨勩佸姛鑳芥敼...
绛旓細浠庡簲鐢ㄨ搴︼紝MCU鍦ㄥ伐涓氳嚜鍔ㄥ寲鎺у埗搴旂敤鐨勬槸鏈澶氱殑銆傚叾娆℃槸ARM鍜DSP搴旂敤娆′箣锛屼富瑕佹槸娑堣垂鐢靛瓙锛岄氳锛岄渶瑕佸己瀹炴椂鐨勬帶鍒堕鍩燂紝鍐嶆鏄疐PGA鐨勫簲鐢紝鏈洪《鐩掞紝浜ゆ崲鏈虹瓑棰嗗煙銆傛墍浠ワ紝缁撳悎鑷繁鎵鍏峰鐨勮瘯楠屾潯浠跺涔犲拰瀹炶返锛屽悓鏃跺彂鐜板畠鐨勫眬闄愭э紝鐒跺悗涓婁竴涓彴闃讹紝鏈夐拡瀵规х殑瀛︿範涓嬩竴涓洰鏍囥傚叾瀹烇紝鎴戜篃鎯冲濂界敤濂紽PGA...
绛旓細浣滀负涓鍚嶇數瀛愪笓涓氱殑澶у搴斿眾姣曚笟鐢燂紝鎴戞墍鎷ユ湁鐨勬槸骞磋交鍜岀煡璇嗐傚勾杞昏櫧鐒剁己灏戠粡楠岋紝浣嗘槸骞磋交涔熸剰鍛崇潃鐑儏鍜屾椿鍔涳紝鎴戣嚜淇¤兘鍑嚜宸辩殑鑳藉姏鍜屽璇嗗湪姣曚笟浠ュ悗鐨勫伐浣滃拰鐢熸椿涓厠鏈嶅悇绉嶅洶闅撅紝涓嶆柇瀹炵幇鑷垜鐨勪汉鐢熶环鍊煎拰杩芥眰鐨勭洰鏍囥傚ぇ瀛︾粰瀵煎笀鐨鑷垜浠嬬粛淇$瘒3 鎮ㄥソ!鎴戞槸xx澶уxx瀛﹂櫌xx涓撲笟姣曚笟鐢燂紝鎯犱簬瀛︽牎娴撳帤鐨勫涔犮...
绛旓細鎴戠紪鍐欏簲鐢ㄧ▼搴忕殑鑳藉姏鏈夊緢澶х▼搴︾殑鎻愰珮銆傚湪杩欒繃绋嬩腑锛屾垜寮濮嬫帴瑙︾綉缁滃濯掍綋鍜DSP锛屽缃戠粶澶氬獟浣撳拰DSP寮鍙戞湁涓浜涗簡瑙c傝繖鏄垜澶у鍥涘勾鐨勪竴閮ㄥ垎缁忓巻銆傚洜涓烘垜骞磋交锛屼笉鍙伩鍏嶆湁涓浜涚己鐐癸紝浣嗘槸瀵逛簬鑷繁鐨勭己鐐规垜缁濅笉浼氬幓鍥為伩锛屾垜鍠滄閭d簺鑳藉鎸囧嚭鎴戠己鐐圭殑浜猴紝骞朵笖鎴戜細灏藉姏鍘绘敼鎺夎繖浜涚己鐐广傛垜鐑埍鎴戠殑鐢熸椿锛屾劅婵...
绛旓細鎴戞湰绉戞槸鐢靛瓙淇℃伅宸ョ▼鐨勶紝纭曞+淇″彿涓庝俊鎭鐞嗭紝鍏朵粬鏂瑰悜涓嶄簡瑙c 淇″彿涓庝俊鎭鐞嗗氨涓氭柟鍚戝熀鏈湁涓変釜锛 1 鐢靛瓙鍏徃锛DSP銆丄RM寮鍙戯級 2 楂樻牎 3 鐮旂┒鎵
绛旓細閫夋嫨鍗氬锛屾病閿欑殑锛佷簡瑙d竴涓嬪摢涓柟鍚戠殑瀵煎笀鑳藉姏锛屼笟鐣岀殑鍦颁綅銆傚彟澶栵紝瀵煎笀鍦ㄩ夋嫨瀛︾敓鏃讹紝涔熻鑰冭檻浣犵殑鍒濆璇曟垚缁╃殑銆傛湁娌℃湁淇″績鍛锛燂紵