最近在用ek-stm32f调程序,本本没有串口,而前两天usb转串口的小板又坏了。为了看到调试信息,我想用半主机方式(semihosting)方式,把输入输出重定向到主机来,用调试串口输出。
但是现在手头没有任何可参考的东西,keil自带的帮助文件写的很不清楚,也没有例子,放狗搜,似乎大家用的也不多,多是介绍,真正用的不多。21ic有篇帖子说用semihosting烧写flash的,但是附件没法下载了。
貌似cortex-m3和arm其他体系结构swi指令还不一样。 现在疑点是,我怎么编写函数,叫主机能读取下面传来的数,怎么标记他是个半主机的函数?那些__sys_read()、__sys_open()等函数用在哪?
麻烦哪位大大,能给个点拨?
**************************** 另外刚才忘问了,st-link2支持semihosting么?我在下载时keil会提示 ST-LINK-II:This function is limited.但没有说哪个功能受限了,会不会是半主机方式?麻烦哪位知道,告诉一下,谢谢! |