-
没人碰到过吗?
-
笔记本肯定是不用带的
-
搞定。经过我一遍一遍的make,电池驱动终于加入了。工作基本正常。
不过,在添加这个驱动的过程中发现platform.reg文件和platform.bib文件中有BSP_NOBATTERY变量。
然后我设置为BSP_NOBATTERY = 1。生成内核里边根本没有电池驱动的。dll文件。
于是又手动在project.reg和project.bib文件中添加。
battdrvr.dll $(_FLATRELEASEDIR)\battdrvr.dll NK SHK
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\Battery]
"Prefix"="BAT"
"Dll"="battdrvr.dll"
"Flags"=dword:8 ; DEVFLAGS_NAKEDENTRIES
"Order"=dword:0
"IClass"="{DD176277-CD34-4980-91EE-67DBEF3D8913}"
make一下才可以。
-
no. 做出了能用、好用的东西才算。
-
但是你的传感器一般来说不能直接接入AD,应该有一个调压的电路,因为传感器的输出电压电流一般都比较低,而且声噪大,需要放大和滤波等调理电路,而且AD的输入电压可能也有一定的范围,所以需要对电压值进行匹配处理。。。
-
LZ解决了吗 可以提供点更详细的呀
-
#include "serialconfig.h"
#include
#include
idata RECVPROC g_pfnRecvFunc = NULL;
BOOL OpenSerial(BAUD Baud, RECVPROC pRecvFunc)
{
idata BYTE LoadValue = 0;
if(pRecvFunc == NULL)
return FALSE;
g_pfnRecvFunc = pRecvFunc;
switch(Baud) //确保输入的波特率是正确的
{
// case b_1200:
// case b_2400:
case b_4800:
case b_9600:
case b_14400:
case b_28800:
case b_19200:
case b_38400:
case b_57600:
break;
default:
return FALSE;
break;
}
/*****************************************************************************
LoadValue = 256 - OSC_FREQUENCY * 10^6 / (384 * Baud)
因每次运算的结果上限限制,故做了变换
******************************************************************************/
LoadValue = 256 - (BYTE)(1000 * 1.0f * (float)OSC_FREQUENCY / 384 * 1000 * 1.0f / Baud);
TMOD |= T1_M1_; //定时器T1工作方式2
TH1 = LoadValue;
TL1 = LoadValue; //不可TL1 = TH1赋值
PCON = 0x00; //波特率不倍增
SCON = 0x50; //串行通信方式1,允许接收
TR1 = 1; //启动定时器1
ES = 1; //开串行中断
EA = 1; //开总中断
return TRUE;
}
void CloseSerial()
{
TR1 = 0; //关定时器1
ES = 0; //关串行中断
}
void SendData(const BYTE* pData, BYTE nSize)
{
BYTE i = 0;
///////////////////////////////////////////////
//发送与接收中断不能同时工作,发送时必须关闭接收中断
ES = 0;
// if(pData == NULL || nSize == 0) 出于效率,不做检查
// return FALSE;
for(i = 0; i < nSize; i++)
{
SBUF = pData[i];
while(!TI);
TI = 0;
}
ES = 1;
}
void SerialISR() interrupt SIO_VECTOR
{
RI = 0;
(*g_pfnRecvFunc)(SBUF);
}复制代码
-
很多程序都和任务栏相关联,如果去掉任务栏可能应用程序也运行不了的。我去掉过,出现了自己的应运程序运行不了的情况。建议不要去掉。
-
我这里有个107的原理图,你拿去参考下吧。
上海沁科的
MDV_STM32F107原理图.pdf (198.08 KB)
下载次数:112
2010-4-13 12:20
-
引用 1 楼 91program 的回复:
如果是在读取图片的过程中拔SD卡,很难不死机的.因为读图片的过程,一般是由系统或API完成的,代码无法控制.可以试试异常处理!
应用可以响应SD卡拔插消息试试
我们能够接受到消息,我们中断线程的执行,但10次当中,总有几次不是崩溃就是死机
-
UCTL0=CHAR将UxCTL第五位置一,其它位置零,UCTL0 |=CHAR不改变其它位,只讲第五位值取出。
-
楼主参考一下这个,含代码:[url=http://download.eeworld.net/source/1262066][/url]
-
可以用vb进行操作,简单得很...
估计就是一个协议
-
lz先确认芯片的chipid能够正常读出来,驱动加载过程中初始化也成功了,然后确定中断配置是否正确,ping的时候用示波器量一下中断,看有没有中断上来
-
MARK
-
改了包内容,记得修改校验码
-
我也很想知道
-
修改量不是太大。
-
恭喜!接分!
-
好久不写驱动了,原来DDK写的驱动,可以在WDK下来编译吗?