chinaxu1986

    1. ST网站真是垃圾,中看不中用 19/7036 stm32/stm8 2011-02-19
                                       http://www.stmcu.org 大概看了一下,很不错,版主不厚道哦,早该公布一下啊!lol!ST的那个的进去真是迷糊!:
    2. STM32F107的USBHOST问题---INtoken发不出去 57/16297 stm32/stm8 2010-12-09
                                       得了吧,ST会做多少技术支持。要是觉得复杂的话,就把USB OTG相关的代码开源,其他的都废话
    3. 帮我看看STM32F103做RTC时的问题 5/6429 stm32/stm8 2010-12-02
                                        没有用库,写寄存器的话就可以帮你,你跟踪入去,看一下各个RTC寄存器的状态.
    4. STM8S105C6的AD通道是否可以任意配置? 10/6218 stm32/stm8 2010-10-18
                                       采用单次扫描模式。 ADON = 1后   while(ADC_CSR == 0x80);  //等待转换结束
    5. GPIO口反应慢问题 7/4548 stm32/stm8 2010-09-04
                                       感谢版主,搞定.
    6. 关于STM32中断多进的问题总结 7/10062 stm32/stm8 2010-07-21
                                       查了一下公司的系统服务器,这个问题早在2008年已经以FAQ的形式解释过,并给出了分析和解决方法,我以前也没有注意到这个问题,这次有网友提出才去关注。 在ARM的系统架构下,这是一个普遍的问题,而不是STM32所特有的问题。 这个FAQ的内容如下: Q: When I cleared the interrupt as the last instruction in the ISR, the ISR code is called immediately upon exit half the time. Is there a possibility of race condition ? Answer: The core (Cortex-M3) generates bufferable write transfer. This mean that the CPU consider that the data is written from an AHB point of view while the APB write transfer is managed by the AHB2APB bridge and could be written later. In this case the CPU left the interrupt routine while the interrupt is not yet cleared the CPU will re-enter   again on the interrupt handler. To avoid this race condition : 1) ISR routine has to clear the interrupt  peripheral flag when just entering in the routine to avoid interrupt missing. 2)ISR routine has to Implement a write to the APB  peripheral register ( to clear the peripheral flag) then followed by a read  access to the same register/flag. This operation will force the write buffer to complete the effective write and will stall the CPU until the effective write of the bit in the register. Therefore  it is independent from the AHB/APB ratio prescaler. Here an example : STR R1, [R0, #0] ; Store R1 register  peripheral   register  ( or using bit-banding peripheral address) LDR R2, [R0, #0] ; Load the peipheral register; This will  hold the CPU until the effective write of R1. Use Cortex-M3 Bit-banding feature for interrupt clearing since it is an atomic operation and NVIC pending interrupts will be ignored during this operation, however Read-Modify-Write is not. ST网站的FAQ页面入口是:http://www.st.com/stonline/faq/user_faqbrowser.php 这几天这个页面出了点问题,正在检查维护,很快会恢复。
    7. 找到原因了,是因为我在platform.dat里建了这几个目录和文件: Directory("\Windows"):-Directory("pic") Directory("\Windows\pic"):-Directory("warn") Directory("\Windows\pic"):-File("BACK.bmp","\Windows\BACK.bmp") Directory("\Windows\pic"):-File("BACK320x480.bmp","\Windows\BACK320x480.bmp") Directory("\Windows\pic"):-File("BACK480x320.bmp","\Windows\BACK480x320.bmp") ("menu_on_sel480x320.bmp","\Windows\menu_on_sel480x320.bmp") Directory("\Windows\pic\warn"):-File("BNG.BMP","\Windows\BNG.bmp") Directory("\Windows\pic\warn"):-File("BNG320x480.BMP","\Windows\BNG320x480.bmp") Directory("\Windows\pic\warn"):-File("BNG480x320.BMP","\Windows\BNG480x320.bmp") 去掉它们就很快了; 但是,我的应用程序是要用到pic、pic/warn这两个目录的,这两个目录下有一些文件。 怎样才能既使用这些目录、文件,又不影响启动速度呢?
    8. 为什么都说学电子的比较适合搞嵌入式? 77/14936 嵌入式系统 2010-05-25
      嵌入式要软硬结合嘛,老软着老硬着都不是事啊,对吧,楼主?
    9. 一个AVR的片内AD从ICC移植都WINAVR 6/3475 嵌入式系统 2010-05-21
      现象就是LED都不亮,那段LED的显示代码用了N次,不可能出问题的。
    10. 移植后rtorrent的终端输出问题 2/3962 嵌入式系统 2010-05-10
      /usr/share/terminfo/x/xterm 保留这个文件
    11. wince下使用c#和c++都有什么优缺点? 18/10350 嵌入式系统 2010-05-10
      据我所知,c#运行速度比C++慢,但是开发速度比C++快,现的硬件在电脑上可能C#更有优势
    12. wince griddata 怎么绑定 combobox控件? 1/3057 嵌入式系统 2010-04-16
      GridData是C#,还是VB里面的控件? 建议楼主挪到相应的编程论坛去。
    13. 我最近看NXP的ARM极度不爽阿 17/7221 stm32/stm8 2010-03-29
                                       
      NXP也有库的,CMSIS Lib。和ST的差不多 1# 丁弋宇
      没错,CMSIS是Cortex-M统一标准。
    14. 关于PID,哪位高手来指点一下 7/3779 嵌入式系统 2010-03-26
      楼主可以看看我上传的资料: 精典的PID原理与算法源码实例--数据采集礼包V2.0 http://download.eeworld.net/source/1899208 精典的PID原理与算法源码实例--数据采集礼包V2.0 包括详细的PID原理与算法分析,很具体的设计PDF文档。还有配套的完整的源码。
    15. 移植6.0的BSP,终于看到桌面了, 狂喜散分 29/7780 嵌入式系统 2010-03-05
      赞一个,支持自力更生!!!
    16. OMAP3530平台的Mcbsp1配置问题 12/5559 嵌入式系统 2010-02-04
      引用 7 楼 xumercury 的回复: 引用 6 楼 hao507 的回复: 引用 1 楼 veabol 的回复: 相关引脚启动用这个功能了吗?还是处于GPIO的功能? 不是GPIO,就是用的CPU的引脚 检查下寄存器配置,看看那个pin是不是以前就复用到别的功能了,3530弄过一下子。GPIO拉低拉高是没问题的。以前一个兄弟也做过。SPI和I2C都是可以的。而且I2C我们就是用的模拟,SPI也是一样。 还有个疑问。McBSP1能不能详细说明下是个什么东东,是BSP包还是。。。。没看懂。汗。。。 如果是BSP,检查下你用的那个GPIO是否有被其他的部分重用。 个人建议 仅供参考。
      McBSP就是多路串行接口,OMAP3530有5路,我是用的第一路,呵呵
    17. 关于bsp工程vxworks组建的添加问题 5/4374 实时操作系统RTOS 2010-01-29
      查源码,应该可以找到g
    18. 还是关于STM32IAP的问题,再来请教版主 12/10472 stm32/stm8 2010-01-14
                                       既然能够调试,就应该看看JumpAddress这个变量的内容对不对。如果内容正确,就要看看IAP烧入的程序代码是否正确。
    19. 5V电压可以直接输入给s3c2410GPIO口吗? 8/3595 嵌入式系统 2010-01-13
      引用 3 楼 arnold9009 的回复: 2. 对方给的5V电平的高电平和低电平能不能被IO正确识别
      不能正确识别的可能性非常大。
    20. 求2401测试程序 6/2967 嵌入式系统 2010-01-06
      我这有,楼主看看吧: #include #define uchar unsigned char #define uint  unsigned int #define Left  0x80 #define Right 0x40 unsigned char const Tab[]={0x14,0x9F,0x38,0x1A,0x93,0x52,0x50,0x1F,                           0x10,0x12,0x11,0xD0,0x74,0x98,0x70,0x71};                                                    void display();//负责把显示缓冲区的数据显示到数码管 void process(uchar left,uchar right);//刷新显示缓冲区 void delay(uint ticks);//延时 uchar ShuMa[2];//显示缓冲区 void  WriteEPROM(uint Address,uchar Data); uchar ReadEPROM(uchar Address); uchar temp=1000; void main() { uint Address=0; init_devices(); //向0-511地址的EEPROM依次写入0--0xFF。共写满512字节EEPROM for(Address=0;Address!=512;Address++)WriteEPROM(Address,Address&0x0ff); while(1) {//把512字节的EEPROM数据依次读出来显示   for(Address=0;Address!=512;Address++)   {//读数据到显示缓冲区    process(ReadEPROM(Address)>>4,ReadEPROM(Address)&0x0f);    while(temp--) display();//显示    temp=1000;   } } } //////////////////////////////// void display() { PORTA=Left|Right;//关显示 PORTC=ShuMa[0];  //输出数据 PORTA=~Left;          //开左数码管 delay(10);          //延时 PORTA=Left|Right;//关显示 PORTC=ShuMa[1];  //输出数据 PORTA=~Right;          //开右数码管 delay(10);          //延时 } /////////////////////////////////// void process(uchar left,uchar right) { ShuMa[0]=Tab[left];//查表 ShuMa[1]=Tab[right];//查表 } ///////////////////////////////////// void delay(uint ticks) { uchar i; while(ticks--)for(i=100;i!=0;i--);//约0.1mS } void  WriteEPROM(uint Address,uchar Data) { while(EECR&0x02);//等待EEWE为0 EEARH=Address>>8;//写入高地址 EEARL=Address&0x0ff;//写入低地址 EEDR=Data;                        //写数据到EEPROM寄存器                          EECR|=0x04;                //置位EEMWE                                                                  EECR|=0x02;                //置位EEWE while(EECR&0x02); //等待EEWE为0 } uchar ReadEPROM(uchar Address) { while(EECR&0x01);//等待EERE为0 EEARH=Address>>8;//写入高地址 EEARL=Address&0x0ff;//写入低地址 EECR|=0x01;                //置位EERE,读数据 while(EECR&0x01); //等待EERE为0 return EEDR;      //返回数据 }复制代码

最近访客

< 1/1 >

统计信息

已有97人来访过

  • 芯积分:--
  • 好友:--
  • 主题:12
  • 回复:62

留言

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


现在还没有留言