-
点击停止运行时出现对话框: JLink - Cortex-M Error:
Could not stop Cortex-M device!
Please check the JTAG cable
-
呵呵,没见过,说明你见识得少,请找一本C语言的书,好好看看有关结构的部分吧,
-
我用绝对地址去取SPI1_DR的内容,在MEMORY也看到数据了,在SPI1_DR中也看到数据了,就是用指针去指这个绝对地址时总是第一个数据取不出来,其余的数据都可以取出来,而且也都正确,请问您一下这是什么原因呢?
-
嘿嘿 我遇到过这个问题的。需要修改 debug文件。
-
你的ID太牛了
-
手写软件?带触摸屏的手写输入法吧?
如果是的话,只要用触摸屏,弄好驱动就可以了吧?
-
是不是要加个EBOOT放到CF卡中去,由它来下载镜像,并加载执行?
-
直接在precreatewindow这个虚拟函数里面设置即可
-
我觉得还是用示波器看一下为妙.
-
引用 1 楼 sherlock_lai 的回复:
这个代码肯定有问题的,rst_n到底是个什么东西?
同问
-
补充:ro-base 与 entry 一般情况下是相等的,二般情况我还没遇到。
-
有点难度。。。CE6下有参考程序
-
事无巨细,佩服那股认真劲,认真起来还是有不少知识可以学习
-
用51+ADC都可以做普通三相电表,何况M3
-
串口接收程序
/*******************************************************************************************
函数名称: CALLBACK CSerialPortDlg::OnCommRecv
描 述: 串口接收数据成功回调函数
输入参数: 无
输出参数: 无
返 回: FALSE: 失败; TRUE: 成功
********************************************************************************************/
void CALLBACK CSerialPortDlg::OnCommRecv(CWnd* pWnd, char *buf, int buflen)
{ CString tmp;
CSerialPortDlg * pDlg = (CSerialPortDlg*)pWnd;
CEdit *pRecvStrEdit = (CEdit*)pDlg->GetDlgItem(IDC_REC_DISP);
/* 取得控件指针 */
for (int i = 0; i < buflen; i++, buf++)
{
tmp.Format(_T("%c"), *buf); /* 将字符转换为字符串 */
pDlg->m_strRecDisp += tmp;
}
pRecvStrEdit->SetWindowText(pDlg->m_strRecDisp); /* 显示在窗口上 */
}
/*******************************************************************************************
函数名称: CSerialPortDlg::CommRecvTread
描 述: 串口接收线程
输入参数: LPVOID lparam: 线程参数,创建线程时传入
输出参数: 无
返 回: 0: 线程退出, 返回值没特殊含义
********************************************************************************************/
DWORD CSerialPortDlg::CommRecvTread(LPVOID lparam)
{
DWORD dwLength;
char *recvBuf = new char[1024];
CSerialPortDlg *pDlg = (CSerialPortDlg*)lparam;
while(TRUE)
{ /* 等待线程退出事件 */
if (WaitForSingleObject(pDlg->m_ExitThreadEvent, 0) == WAIT_OBJECT_0)
break;
if (pDlg->m_hComm != INVALID_HANDLE_VALUE)
{ /* 从串口读取数据 */
BOOL fReadState = ReadFile(pDlg->m_hComm, recvBuf, 1024, &dwLength, NULL);
if(!fReadState)
{
//MessageBox(_T("无法从串口读取数据!"));
}
else
{
if(dwLength != 0)
OnCommRecv(pDlg, recvBuf, dwLength); /* 接收成功调用回调函数 */
}
}
}
delete[] recvBuf;
return 0;
}
-
引用 4 楼 kyzf 的回复:
如果仅仅是实现OS的更新,采用vs2005下载即可,当然前提是软件的DEBUG支持,以及串口和USB通信都没问题。
如91program所言,最好采用有SD卡和T卡,用来做升级比较适合。
我们的产品都是采用TF升级的。更新eBOOT和OS都很方便。
我做的是 最终交付给用户使用的升级程序,而不是开发过程中的使用的。 如果开发使用的话,我直接用EBOOT的菜单就成了。
-
个人理解MMU就是把物理地址转成虚拟地址,方便系统使用,
我们用的wince系统,看ce的相关书籍会找到答案的
很多讲内存管理相关的...
-
改了后,有效果了 ~原先是5张平铺的~现在可以了~呵呵~谢谢你们~学了很多~
-
没有写过2450的iic驱动,不太确定那个中断是不是需要isr的参与
但是如果你是想ist里面等到那个中断事件的话,就挨个来查
hw irq产生--》oeminterrupthandle中可以看到-->event找到
俺也是菜鸟,哈哈
-
引用 2 楼 duojinian 的回复:
方法:
1。打开include设置界面,将路径设置到包含iom64v.h的文件夹下
2。或者搜索iom64v.h文件,将它复制到原include的路径下
3.另外,我个人认为,ICC的特点是适合学习,不适合做产品。因为编译后的代码太大。最好使用IAR的编译器。
编译后的文件大小应该是和优化程度有关吧,有没有相关设置?ADS是有的