估计这就是2个系统之间的交互了,即linux内核通过rtvmm.ko 模块来和RTT交互
估计这就是2个系统之间的交互了,即linux内核通过rtvmm.ko 模块来和RTT交互
很是期待,不过目前不是很明白linux怎么和RTT之间怎么传输数据之类,等下半年有时间再好好看看代码吧
注意要在rtconfig.h打开,删除//
我现在都没有引出SWO,用的swd调试,而且ST M0的芯片都没JTAG了,只有swd。
我之前都是留了一个串口专门给finsh的,可以方便非专业人员使用
给的信息太少了吧
因该是 关/清所有中断(只关总中断不够)这一条,我干过这种傻事
两种芯片的资源不同,注意修改相关文件
把过程和解决办法说一说啊,也许别人也会遇到
还有个问题忘了说,楼主的代码在线圈和离散输入的个数不是8的整数倍的时候会有问题.
我用条件编译了
#define M_COIL_NCOILS 20
#if COIL_NCOILS%8
UCHAR usCoilBuf[COIL_NCOILS/8+1] = {0};
#else
UCHAR usCoilBuf[COIL_NCOILS/8] = {0};
#endif
7、目前最新代码同时支持Modbus主机及Modbus从机两种模式,两者互不干涉
这个同时支持是指支持一个cpu同时用两个串口,一主一丛?
是在这个博客下载的程序吗? (我是作者)
如果是,你出错的原因是因为STM32的发送缓冲区空中断即USART_IT_TXE不需要手动清空,自然这个断言过不去,把清中断那句话去掉即可,对整个软件没有影响,我的最新软件已经去掉了。。
好东西,才把modbus搞完,准备上canopen了
这指点够准的,我把这句注释掉一试就灵 [s:154]
shell.c里面有这句注释FINSH_OPTION_ECHO=0x01 is echo mode, other values are none-echo mode.
但是下面的代码使得在shell.h中设置FINSH_OPTION_ECHO没效果
void finsh_thread_entry(void* parameter)
{
char ch;
/* normal is echo mode */
shell->echo_mode = 1;
问 2.0.0 alpha 版中的 VMM