-
说明一点,我用的是STM32F101R8T6,16路AD全用了,设为OD的引脚是不具备AD输入的
所以我才对OD输出的说明迷糊
对不起,我被你搞糊涂了,你到底要讨论OD输出还是讨论AD输入?这应该是2个问题。
我曾经在10楼提出了这个疑问,你却反驳说“难道我一个芯片只能用GPIO输入输出,其他的功能都不能用了”,这让我认为你是要用同一个引脚既做OD输出又做AD输入,希望你能够澄清一下,把问题的主题说明确一些。
-
引用 9 楼 peasant_lee 的回复:
换了编译环境,是不是启动代码,中断入口之类的设置要相应的改动一下呢?比如cortex-m3下的 *.S 文件。
假如还是不行,建议一步一步的跟踪调试,,,
不过,楼主,你真的肯定,除了编译环境不一样,其他代码都一样么?问题有点奇怪,所以,多嘴确认一下,呵呵
刚发现问题所在了,主要的就是寄存器CPSR值中的使能IRQ中断位的值为1,如果为0的话,那么中断就可以被执行了,现在主要的就是不知道在哪儿设置CPSR的值来使能IRQ中断,这点还没找到解决的办法,估计是要在Startup.s文件中来改,Peasant_Lee 给点建议啊
-
有时新品发布?
-
核心打印模块已经加进去了,是通过设置一个环境变量加进去的,是否还需要设置其他的?
引用 5 楼 sunrain_hjb 的回复:
WinCE下的IE浏览器是有很多BUG的,
如果真的有这样的需求,估计需要楼主自己去研究相关代码了。
另外,建议你先打上所有的补丁后再编译试试看。
-
顶起,做miniStream的,好奇中...
-
引用 218 楼 donaldtone 的回复:
刚开始学习,希望很快也能象楼主一样掌握技术。
谢谢分享!
-
希望论坛里解决问题的兄弟都可以像楼主一样共享
-
//update:0--Update bootloader
//update:1--Update WINCE
//update:2--Update LOGO
void WrFileToNF(int update)
{
int nf_part, i ,size, skip_blks;
int retval;
U32 ram_addr;
char cpath[80];
char* szFilePath;
nf_part = NandSelPart(update);
if(nf_part16);
InitEcc(); //reset mecc and secc
MEccUnlock();
//printf("WritePage+2\n");
for(i=0; i>8)&0xff;
tmp[2] = (mecc>>16)&0xff;
tmp[3] = (mecc>>24)&0xff;
tmp[5] = 0xff; //mark good block
//printf("WritePage+3\n");
SEccUnlock();
WrNFDat(tmp[0]);
WrNFDat(tmp[1]);
WrNFDat(tmp[2]);
WrNFDat(tmp[3]);
SEccLock();
WrNFDat(tmp[4]);
WrNFDat(tmp[5]);
WrNFCmd(PROGCMD1);
stat = WaitNFBusy();
NFChipDs();
if(stat)
//printf("Write nand flash 0x%x fail\n", addr);
AfxMessageBox(L"Write nand flash 0x%x fail");
else {
U8 RdDat[512];
ReadPage(addr, RdDat);
for(i=0; i>8);
if(NandAddr)
WrNFAddr(addr>>16);
InitEcc();
WaitNFBusy();
//printf("ReadPage++\n");
for(i=0; i>8);
if(NandAddr)
WrNFAddr(addr>>16);
WrNFDat(0); //mark with 0
WrNFDat(0);
WrNFDat(0); //mark with 0
WrNFDat(0);
WrNFCmd(PROGCMD1);
WaitNFBusy(); //needn't check return status
WrNFCmd(READCMD0); //point to area a
NFChipDs();
}
void CefDlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
}
void CefDlg::OnBnClickedAuto()
{
// TODO: 在此添加控件通知处理程序代码
WrFileToNF(0);
myCtrl.SetPos(0);
WrFileToNF(1);
myCtrl.SetPos(0);
WrFileToNF(2);
VirtualFree((PVOID) s2440NAND, 0, MEM_RELEASE);
VirtualFree((PVOID) s2440CLKPWR, 0, MEM_RELEASE);
AfxMessageBox(L"UpDate Ok");
myCtrl.SetPos(0);
}
void CefDlg::OnBnClickedOk()
{
// TODO: 在此添加控件通知处理程序代码
OnOK();
}
-
我所买的开发板手册讲的不完整,搞定糊涂,不知道其他菜鸟们有没有遇到同样的情况。希望gooogleman推荐一个好的手册,好让我们菜鸟学习学习。
-
至于上拉电阻当然是必须有的,因为I/O的信号顾名思义是由软体定义的信号准位,IC内部会有PULL HIGH /PULL LOW 设置,如果没有上拉或者下拉电阻分压就就会烧毁IC
-
不会,只能帮顶
-
帮顶下。
MARK.
-
好事啊,加油啊!
-
引用 14 楼 great_bug 的回复:
如果2440的DATASHEET能啃的下来,去看看也不错.....能把它攻下来你就有了硬件的基础了,不需要绕个弯路去看单片机什么的了
就是因为读芯片手册的时候,看不大懂,所以才举步维艰的。
-
如果你不能要求定制OS的人帮你这么做,就需要OS支持ROM文件系统,否则即使设置成功了,重新启动也没有了。不知道在注册表里边有没有设置这种快捷方式的,如果有的话系统支持HIVE-REG就可以了
-
用PB导出 如果你没有PB 可以让别人给你导个 只要符合你的要求
-
我觉得你以时间为X来建一个表,把时间,温度,PID的输出对应起来,多建几次你就会发现问题,实践出真理光靠理论是不行的。你已以理了几天,大概也清楚理论了
-
这个未必是字体的问题,前两天刚好定制了一个多国语言的触摸屏校准界面,也碰到类似情况。
为了排除其他方面的因素,建议你做一个小程序,在DC中显示相应的文字,看是否能正常。
另外,字体可以动态加载,调用AddFontResource()即可。
-
做好串口驱动,实现AT命令控制GPRS
-
引用 10 楼 wlc311 的回复:
参考此帖:http://www.cnblogs.com/we-hjb/archive/2008/10/29/1322509.html
你下一个WINCE6。0的BSP,把注册表和驱动清掉,只跑OAL,OAL调试好后,然再一个驱动一个驱动加上去,这样相比从5。0到6。0容易得多.不要想一下子整个BSP都能跑通,这是很不可能的,多的开发板硬件都是不同的哦.
恩恩,我发现这个博客不错,收藏了,这两天研究下,你提的意见很到位,值得借鉴,谢谢!