| | |

assign命令 -九游会网页

问题类别:arm 开发工具 > mdk-arm 浏览次数:2734
发布日期:2012/4/23 16:43:08 文章来源:米尔科技
回复日期:2012/5/7 16:36:43
mdk-arm中国版3.05以上
(1)用 dir vtreg 查一下 vtreg 寄存器,和 assign 相关的只有 u0in、u0out 和 u1in、u1out 二对,看来和 uart #x 没有直接的联系;(2)用 assign win < u0in > u0out 命令,并没有发现命令执行后对 usrt #x有明显的作用;(3)同一个程序,用 u0in、u0out 可以和 pc 机交换数据,但把 u0in、u0out换成 u1in、u1out 就不行,没有接收中断功能。发送没有试;

问题分析:

cpu引脚寄存器(vtreg)用于仿真cpu引脚的输入和输出。vtreg不是公共标识符,也不在cpu的存储空间中。这些寄存器可以在表达式中使用,但它们的值和用法依赖于具体的cpu。

assign命令用于显示和修改特定串行端口的输入和输出。
下表显示了支持的端口及默认的输入寄存器(inreg)和输出寄存器(outreg)。
端口  默认inreg   默认outreg    默认
comx  none        none          pc上的com口portx.
winy  syin        syout         串行窗口y.
表中的,x,y代表数字,
winy代表仿真器中的第y个串行窗口,comx代表pc的第x个串口。

assign win < syin > syout win 参数可以是win, win2, win3,分别代表三个串口窗.必须要把vtreg和串口窗成功绑定后才可以输入输出数据。
如,assign win < s2in > s2out  的作用是将串口2的输出到uart#1中。

问题解答:

1:syin和syout与uart#x的确没有直接关系,不过它们之间有上述的默认对应关系。

2:在默认情况下,win s1in s1out 是相对应的,这样执行assign win < s1in > s1out 当然没有什么变化。

3:您需要首先确定对应cpu的串口1是否有中断接收功能,因为很可能是对应的串口0有中断接收功能,而串口1可能没有中断接收功能。

相关链接:无

九游会网页的技术支持服务指南

常见问题解答

网站地图