xiaopeng

    1. 关于APB1总线上设备的时钟问题? 13/8741 stm32/stm8 2010-11-17
                                       1)通过简单的外设配置产生输出波形,可以很容易地知道当前的APB1总线上外设的频率。比如配置USART并发送一个数据(如0x55、0xAA),然后通过示波器测量即可;还可以配置定时器产生一个PWM输出,再通过示波器测量。 2)从硬件上讲,STM32不限制超频,但强烈不建议这么做,所以在什么情况下都不应该超。
    2. 不太了解。Reinitialize()可以被多次调用,但是DriverEntry()如果被多次调用可能不太正常。 是什么类型的驱动?第一次调用DriverEntry时返回成功了么?
    3. 《STM32技术参考手册中文翻译第10版》 93/25516 stm32/stm8 2010-05-14
                                       大家好,,小弟第一次在21上发言,,不知道,在MDK下用哪个调试比较好,ulink  ulinkme  jlink 谢谢大家
    4. 各位大侠推荐一本51单片机的教材 19/4896 嵌入式系统 2010-05-01
      引用楼主 bonjovi521 的回复: 我明年就学51单片机,回家想自学一下,能麻烦各位大侠推荐一本自学教材吗!!!谢谢谢谢了!!!
      这本的确不错
    5. 这块是对于新手来讲比较麻烦,我当时也是比较费劲,我可以大致给楼主个流程,有兴趣的话自己再细看看代码,以后一起交流一下: 自己总结: 调用过程:keymatrix.cpp中的KernelIoControl()->        common\src\common\ioctl\ioctl.c中的OEMIoControl函数,在该函数中 通过rc = g_oalIoCtlTable.pfnHandler( code, pInBuffer, inSize, pOutBuffer, outSize, pOutSize);(这里要注意一下以前的4.2的时候都是用的case的形式,但是到6.0(或者是从5.0开始)就用的这种数结构里面一个一个对应的形式了)这句调用了OALIoCtlHalRequestSysIntr()这个函数调用的过程还是比较曲折的,呵呵,具体如下:g_oalIoCtlTable[],(这个数组是code和相应的函数对应的)具体在ioctl.tab.h中,而且这个数组的定义就很搞笑,利用了const OAL_IOCTL_HANDLER g_oalIoCtlTable[] = { #include "ioctl_tab.h" };这种形式,还是第一次见到,呵呵。在这个数组中,kerneliocontrol中的标志为        IOCTL_HAL_REQUEST_SYSINTR,对应的函数就是OALIoCtlHalRequestSysIntr。在 for (i = 0; g_oalIoCtlTable.pfnHandler != NULL; i++) {         if (g_oalIoCtlTable.code == code) break;     }中实现了和来自kerneliocontrol 函数中的code的配对,再利用 rc = g_oalIoCtlTable.pfnHandler(         code, pInBuffer, inSize, pOutBuffer, outSize, pOutSize     );实现了调用这个OALIoCtlHalRequestSysIntr()函数。在这个函数中又通过sysIntr = OALIntrRequestSysIntr(inpElems - 2, &pInpData[2], pInpData[1]);调用了C:\WINCE600\PLATFORM\COMMON\SRC\COMMON\INTR\BASE\map.c中的OALIntrRequestSysIntr这个函数,在这个函数中实现了逻辑中断和物理中断的对应。(具体如何实现的,本人还没太搞清楚。涉及到的两个数组是:g_oalSysIntr2Irq[sysIntr] = irq和g_oalIrq2SysIntr[irq] = sysIntr,这个地方有时间还得具体看下) 这一大段主要是实现了,物理和逻辑中断在数组中对应起来了,在这个基础上,在OEMInterruptHandler中才能根据nkcallchain()实现物理中断和逻辑中断的对应。
    6. 不会发啊
    7. 如果要更改的话,串口程序函数名(COM_Open之类的),DEF文件,注册表都需要改,而且不知道改了后有没有其它的影响
    8. 我可不可以把缺的那句自己加进去
      引用 4 楼 veabol 的回复: 看一下PUBLIC下的common.bib等bib文件,是加了哪个环境变量才包含的httplite.dll,设置这个变量或者点击加组件就行了
    9. 还是wince usb function驱动的问题 6/4008 WindowsCE 2010-01-24
      引用 4 楼 oneonce 的回复: 结贴率0.0%还在点名让人解决问题。
      我都没注意他的结贴率,这个要点名批评一下了,呵呵
    10. 散分~wince开机启动速度提高了 165/46398 WindowsCE 2009-12-09
      接分,楼主好好想想怎么改进的,我们很期待原因啊
    11. 程序初始化进入HardFault_Handler 11/17996 stm32/stm8 2009-12-02
                                       问题找到了,是IAR工程建的有问题,刚刚用IAR5.30,并且将固件库升级到3.1.0,不太熟悉,呵呵,谢谢大家帮忙分析!
    12. 怎么粗略估计一下????????????????????????????????
    13. if语句 6/2668 嵌入式系统 2009-10-24
      没有满足((t10min==1)的条件
    14. 引用 8 楼 joyzml 的回复: 建议从9开始,我是从8位机,到ARM7,到ARM9走过来的。现在在学习S3C2440,跑WINCE5.0的操作系统。现在发现搞ARM7搞了那么久,真不应该。真的建议从ARM9开始。学习ARM9不跑操作系统,和学习ARM7差不多。裸机搞清了,再跑系统。但是ARM7你要想跑WINCE,LINUX就不行了。欢迎交流。
      我同意joyzml 说法,ARM9裸奔的时候就是完全和ARM7类似,上了wince或者linux就牛了。嘿嘿
    15. 请教各位,尚观科技在业内评价好么?? 4/3137 嵌入式系统 2009-10-14
      一般,比一般的培训时间长点吧,我以前还在里面做过老师
    16. 好像没有办法区分......为什么有这样的需求呢????
    17. 请教串口程序 5/2232 嵌入式系统 2009-08-22
      我以前写的 参考一下 #include #include #define INBUF_LEN 4//数据长度 //xdata unsigned char inbuf1[INBUF_LEN]; unsigned char inbuf1[INBUF_LEN]={0x23,0x45,0x26,0x57}; unsigned char checksum,count3; bit read_flag= 0 ; void init_serialcomm( void ) { SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr  字串8 TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload PCON |= 0x80 ; //SMOD=1; TH1 = 0xF4 ; //Baud:4800 fosc=11.0592MHz IE |= 0x90 ; //Enable Serial Interrupt TR1 = 1 ; // timer 1 run // TI=1; } //向串口发送一个字符 void send_char_com( unsigned char ch) { SBUF=ch; while (TI== 0 ); TI= 0 ; } //向串口发送一个字符串,strlen为该字符串长度 void send_string_com( unsigned char *str, unsigned int strlen) { unsigned int k= 0; do { send_char_com(*(str + k)); k++; } while (k < strlen); }   //字串2 //串口接收中断函数 void serial () interrupt 4 using 3 { if (RI) { unsigned char ch; RI = 0 ; ch=SBUF; if (ch> 127 ) { count3= 0 ; inbuf1[count3]=ch; checksum= ch- 128 ; } else { count3++; inbuf1[count3]=ch; checksum ^= ch; if ( (count3==(INBUF_LEN- 1 )) && (!checksum) ) { read_flag= 1 ; //如果串口接收的数据达到INBUF_LEN个,且校验没错,就置位取数标志   } } } } main() { init_serialcomm(); //初始化串口 while ( 1 ) { if (read_flag) //如果取数标志已置位,就将读到的数从串口发出 {  //字串4 read_flag= 0 ; //取数标志清0 send_string_com(inbuf1,INBUF_LEN); } } }  
    18. 要Multi-XIP的话,需要具备哪些条件? 22/6466 嵌入式系统 2009-07-14
      bin:粗糙的理解为格式,nk.bin,eboot.bin,见过吧 xip:直接执行,如果代码放在nor flash或rom里就可以xip multi-bin是指将nk的内容放在多个bin文件里 multi-xip我猜是多个可以直接执行的代码吧。 ------------------------------------ 仅凭印象,懒得去找资料了。
    19. 怎么没人回复呢?自己顶一下
    20. WINCE启动应用程序 9/4986 WindowsCE 2009-05-25
      引用楼主 ffeige1984 的帖子: 应用程序放在NAND FLASH,开机让WINCE启动应用程序怎么实现啊,以前是把应用程序编译到内核采用下边方法实现的 1、 将应用程序和应用程序快捷方式添加到映像里,再将快捷方式添加到StartUp目录下,这样当系统运行后应用程序就能自动运行; 2、 直接替换Wince的SHELL,即修改注册表: [HKEY_LOCAL_MACHINE\init] "Launch50"="explorer.exe" "Depend50"=hex:14,00, 1e,00 把这个explorer.exe改成你的应用程序(…
      方法不错,各有千秋。 根据不同需要,采用不同方式。

最近访客

< 1/1 >

统计信息

已有80人来访过

  • 芯积分:--
  • 好友:--
  • 主题:8
  • 回复:55

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言