-
讲清楚点
什么叫“把需要外部使能直接修改为直接运行USB部分”
你改了什么?
-
楼上怎么解决的?谢谢!
-
香水比较厉害!
-
故障诊断。
-
case IOCTL_HAL_INIT_RTC:
// The kernel has detected a cold-boot. We probably need to reset our Real Time Clock
if( nInBufSize >= sizeof(SYSTEMTIME) )
return 1; //OEMSetRealTime( (LPSYSTEMTIME)lpInBuf );fix by zb7401
else
return FALSE;
break;
这段代码注释掉就好了。初始化系统时钟到默认值。
-
谢谢您的建议,有通用的工具么?我没有找到.
-
挺难的,学习中!
-
如果把wdm.h添加到工程目录里边改成#include "wdm.h"试试
之前应该是你的include路径设置不对。
-
如果想简单一点,就用SPI。可以让从的SPI_MISO接在一起、即线与,并且SPI_MISO都配置成OD输出,并加上拉电阻。这样也不会存在硬件的冲突。
用SPI,速率可以更高,且简单不容易出错。
另外,STM32的I2C用起来问题较多,SPI就相对好用。
用CAN不太好,为了防止冲突需要用收发器,成本高。
-
引用楼主 accessysq 的回复:
将usb设备口作为串口使用
2.如果安装了同步软件,同步软件能否同步上?如果能,那么在usb作为串口被使用的时候能否同步上?
这个跟板子中的USB类型设置也有些关系,如果USB类型为HOST类型的,这种情况下不可能同步上。
-
是不是正负极接反了?
-
这些个吊教科书,没有一个真讲明白的。这帮子大学的教授,以为吐了很多的泡泡,就把东西讲明白了,真是误人子弟。
-
唉,我都不好意思再问了。这么久还没弄出来。
新手。。。请多包涵一下谢谢了
-
明白了,必须先修改stm32f10x_conf.h 中的配置
-
新中发二层,2440的开发板,可以做linux和wince开发。。
-
其实只要ACUserIdle"=dword:0 ; in seconds 就可以了。
-
引用 2 楼 galle 的回复:
void BeepTimer0(void) interrupt 1 //音符发生中断
{
BeepIO = !BeepIO;
TH0? ? = Sound_Temp_TH0;
TL0? ? = Sound_Temp_TL0;
}
这里的BeepIO = !BeepIO;应该改为BeepIO = ~BeepIO;吧!你的运算符用错的!
改了还是这样的~~~不行呀~
-
其实所谓的RISC目的就是让指令精简---- 最终实现单周期运行。
MCU的核结构也是多总线结构,例如多条 数据总线、多条指令总线,目的就是为了减少数据传输瓶颈,总线冲突和占用。最终实现单时钟周期运行。甚至多线程运行。
那个CORTEX-M3就号称1.25MIPS。而ARM7是0.9MIPS.ARM9好像是1MIPS吧?
现在的COMS工艺都已经是8层高K金属,多总线设计已经不是什么很难的事情了。这更有利RISC的设计。
其实CISC同样可以使用多总线设计,同样可以单周期运行,同样可以使用流水线设计等等。
就好比RISC 已经与谓的DSP没什么区别的了,而所谓的DSP也就是个RISC.
如果不计较成本DIV除法指令照样可以单周期实现,不过电路就庞大了,这个肯定不划算了。
这样看,STM8 连 C8051的技术都不如了! 跟AVR明显是有距离的。彼此的指令手册都列出来了时钟数,
电工一看就知道。
做个比喻,STM8是ARM7的水平。 AVR是CORTEX-M3的水平。
差了一代技术啊!
-
楼上两位看来都做过CE6下的RIL的,那么是不是添加了组件,编译出来的NK.BIN就具有了RIL 的功能?比方说modem的AT命令跟CE6的一模一样,是不是RIL就可以工作了?就可以打电话了?
-
我做了如下修改:
1、在powerbutton驱动中将GPIO3初始化为中断(因为那里面原来就有初始化EINT3的代码)
2、在C:\WINCE500\PLATFORM\SMDK2416\Src\Kernel\Oal\intr.c中BSPIntrInit函数
加入:OALIntrStaticTranslate(SYSINTR_UART4, IRQ_EINT3);
3、C:\WINCE500\PLATFORM\SMDK2416\Src\Inc\bsp_cfg.h中
加入#define SYSINTR_UART4 (SYSINTR_FIRMWARE+2)
4、在注册表中"IRQ"=dword:12 ;(SYSINTR_FIRMWARE+2)
请问:
1、我在POWERBUTTON中初始化中断3可以吗?
*2、我先定义了SYSINTR_UART4 = 12 ,又在注册表中IRQ = 12
又通过OALIntrStaticTranslate 把 12 跟IRQ_EINT3 关联到一起
这样就能通过查注册表读取系统中断号,关联物理中断号,
最后进入ISR处理中断??
3、com16550驱动中是读取注册表中的“IRQ”,
我不知道这个驱动中是直接用的物理中断号还是直接用系统中断号处理IST
如果“ISR”是物理中断号,
是不是应该通过KernelIoControl申请到一个随机的系统中断号?
但是在这个驱动中没有这样,这个驱动中通过如下方式用了注册表中读到的“IRQ”:
pHWHead->pIsrInfoVirt->SysIntr=pHWHead->dwSysIntr; //= “IRQ”
pHWHead->pHWObj->dwIntID = pHWHead->dwSysIntr; // = “IRQ”
其中驱动中的InterruptDone()中的参数也是直接
用的pHWHead->dwSysIntr和pHWHead->pHWObj->dwIntID
另外一个函数InterruptInitialize()下用到的中断号也是
pHWHead->pHWObj->dwIntID 即都是注册表中“IRQ”的值
请问这样处理中断号,应该在注册表中传一个物理中断号还是系统中断号呢???
注册表信息如下:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\SERIAL4]
"IRQ"=dword:12 ;(SYSINTR_FIRMWARE+2)
"IoBase"=dword:20000000
"IoLen"=dword:8
"DeviceArrayIndex"=dword:4
"Prefix"="COM"
"Dll"="com16550.Dll"
"Order"=dword:1
"FriendlyName"="COM4:"
"Index"=dword:4