fsbbsf

    1. DIY个stlink(STM8部分) 66/26233 stm32/stm8 2010-09-04
                                       可以接受bug report了,有什么问题就发帖子吧。
    2. STM32的FLASH可以模拟为EEPROM么? 17/9558 stm32/stm8 2010-06-22
                                       那可不可以永远只操作同一页flash呢?
    3. FPGA芯片烧坏!急! 23/12602 嵌入式系统 2010-05-31
      学习 关注
    4. 避免stm32rtc晶振不能起振的设计参考 20/20400 stm32/stm8 2010-05-30
                                       ST网站下载地址:http://www.stmicroelectronics.co ... 67_CHN_2009_Jan.pdf 英文版下载地址:http://www.st.com/stonline/products/literature/an/15287.pdf
    5. 关于流驱动的自动加载问题?!!!! 6/3773 嵌入式系统 2010-05-10
      有两种可能:一是流驱动开发不对;二是bib文件设置不对
    6.                                  void         ADC_Configuration(void)                 {         ADC_InitTypeDef ADC_InitStructure;         ADC_InitStructure.ADC_Mode = ADC_Mode_RegSimult; //ADC1和ADC2工作在独立模式           ADC_InitStructure.ADC_ScanConvMode = ENABLE;        //指定转换工作在扫描(多信道)模式           ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;//指定转换工作在连续模式           ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;                         //由软件控制开始转换,而不是外部触发器。           ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;//ADC数据右对齐           ADC_InitStructure.ADC_NbrOfChannel = 1;        //指定将要进行转换的ADC 信道号1           ADC_Init(ADC1, &ADC_InitStructure);           ADC_RegularChannelConfig(ADC1, ADC_Channel_0, 1, ADC_SampleTime_13Cycles5);        //ADC1 regular channels configuration           ADC_DMACmd(ADC1, ENABLE);                 //使能ADC1 DMA请求                                                                                 ADC_InitStructure.ADC_Mode = ADC_Mode_RegSimult;     //配置           ADC_InitStructure.ADC_ScanConvMode = ENABLE;           ADC_InitStructure.ADC_ContinuousConvMode = ENABLE;           ADC_InitStructure.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None;           ADC_InitStructure.ADC_DataAlign = ADC_DataAlign_Right;           ADC_InitStructure.ADC_NbrOfChannel = 1;           ADC_Init(ADC2, &ADC_InitStructure);            ADC_RegularChannelConfig(ADC2, ADC_Channel_1, 1, ADC_SampleTime_13Cycles5);  /* ADC2 regular channels configuration */           ADC_ExternalTrigConvCmd(ADC2, ENABLE);                                  /* Enable ADC2 external trigger conversion */           ADC_DMACmd(ADC2, ENABLE);                 ADC_Cmd(ADC1, ENABLE);           //使能ADC1外围模块           ADC_TempSensorVrefintCmd(ENABLE);                                                //Enable Vrefint channel17         ADC_ResetCalibration(ADC1);        //重置ADC1校准寄存器           while(ADC_GetResetCalibrationStatus(ADC1));        //等待ADC1校准寄存器准备就绪         ADC_StartCalibration(ADC1);          //开始ADC1校准过程           while(ADC_GetCalibrationStatus(ADC1));          //等待ADC1校准过程结束         ADC_Cmd(ADC2, ENABLE);  /* Enable ADC2 */         ADC_ResetCalibration(ADC2);         /* Enable ADC2 reset calibaration register */           while(ADC_GetResetCalibrationStatus(ADC2));        /* Check the end of ADC2 reset calibration register */         ADC_StartCalibration(ADC2);          /* Start ADC2 calibaration */           while(ADC_GetCalibrationStatus(ADC2));   /* Check the end of ADC2 calibration */         ADC_SoftwareStartConvCmd(ADC1, ENABLE); /* Start ADC1 Software Conversion */         while(!DMA_GetFlagStatus(DMA1_FLAG_TC1));         /* Test on DMA1 channel1 transfer complete flag */           DMA_ClearFlag(DMA1_FLAG_TC1);        /* Clear DMA1 channel1 transfer complete flag */ }
    7. wince 5.0 下取 SD 卡的路径 7/3554 嵌入式系统 2010-03-23
      我们是在SD卡的驱动中就把路径设置好的,没试过如何通过函数来获取。
    8. 加密IC 1/2493 嵌入式系统 2010-03-22
      噢 .
    9.                                  HADDR[25:1]产生A[24:0],HADDR0未用,不存在置0不置0. 若换一种连法: 若A4连RS,则A4=1时地址为0x6C00 0020; 若A16连RS,则A16=1时地址为0x6C02 0000; 我想就是这样理解的。
    10. 2个串口 16/5307 嵌入式系统 2010-02-01
      当然可以的, 如果你是使用工具软件测试的话,可以分别打开各自串口进行测试, 如果自己编程方式来做,只是分别定义两个串口句柄,分别对应相应串口即可。
    11. 最简单的: 1。删除注册表中对应的值,即audio的注册表值 2。sw reset
    12. EVC中如何设计一个透明的图标 11/3776 嵌入式系统 2010-01-19
      mark
    13. PCB 12/5481 嵌入式系统 2010-01-04
      你要画板子的资料啊 还是自己要做板子 自己做板子的话 这个难度有点大啊 呵呵 画个板子吧还可以
    14. 嵌入式软件开发要学哪些知识? 4/3867 嵌入式系统 2009-12-30
      你有时间就都学习学习,不会有坏处。
    15. 引用 26 楼 so927 的回复: 引用 23 楼 guopeixin 的回复: static DWORD OEMEnumExtensionDRAM(PMEMORY_SECTION pMemSections,DWORD cMemSections) { ? ? DWORD cSections = 0; ? ? if (cSections < cMemSections) ? ? { ? ? ? ? pMemSections[cSections].dwFlags = 0; ? ? ? ? pMemSections[cSections].dwStart = 0x88201000; ? ? ? ? pMemSections[cSections].dwLen = 0x03DFF000; ? ? ? ? cSections++; ? ? } ? ? return cSections; } 我按照您说的写了这个函数,但是开机的时候发现根本没有调用啊 是wince6.0下的吗???
      需要把这个函数地址赋值给global中的函数指针才行
    16. 我现在也遇到pxa270 烧写wince 5的问题了,关于驱动的
    17. 付费解决Wince5.0下Marvell 8686驱动问题 26/13442 嵌入式系统 2009-10-21
      一位模式也没过?
    18. 请教烧写系统到开发板的问题 10/5787 嵌入式系统 2009-10-21
      引用 4 楼 guopeixin 的回复: 看你下你的bib里面和loader.h中的内存分配,然后对应的oemverifymem中就ok了
      C:\WINCE500\PLATFORM\SMDK2410\SRC\BOOTLOADER\EBOOT目录下的loader.h的内容如下: // // Copyright (c) Microsoft Corporation.  All rights reserved. // // // Use of this source code is subject to the terms of the Microsoft end-user // license agreement (EULA) under which you licensed this SOFTWARE PRODUCT. // If you did not accept the terms of the EULA, you are not authorized to use // this source code. For a copy of the EULA, please see the LICENSE.RTF on your // install media. // #ifndef _LOADER_H_ #define _LOADER_H_ #include // Bootloader version. // #define EBOOT_VERSION_MAJOR     2 #define EBOOT_VERSION_MINOR     5 //------------------------------------------------------------------------------ // //  Section Name:   Memory Configuration //  Description.:   The constants defining memory layout below must match //                  those defined in the .bib files. // //------------------------------------------------------------------------------ #define CACHED_TO_UNCACHED_OFFSET   0x20000000 #define OS_RAM_IMAGE_BASE           0x80040000 #define OS_RAM_IMAGE_SIZE           0x01E00000 #define EBOOT_RAM_IMAGE_BASE        0x8c038000 #define AMD_FLASH_START             (UINT32)OALPAtoVA(BSP_BASE_REG_PA_AM29LV800, FALSE) #define AMD_FLASH_LENGTH            0x00100000                                      // Size of AMD flash part. #define EBOOT_STORE_OFFSET          0                                               // Physical flash address byte offset #define EBOOT_STORE_ADDRESS         (AMD_FLASH_START + EBOOT_STORE_OFFSET)          // Physical flash address where eboot #define EBOOT_STORE_MAX_LENGTH      0x00040000                                      // Maximum size of eboot in flash. #define EBOOT_CONFIG_OFFSET         0x000F0000                                      // Physical flash address byte offset #define EBOOT_CONFIG_ADDRESS        (AMD_FLASH_START + EBOOT_SETTINGS_OFFSET)       // Physical flash address where eboot //------------------------------------------------------------------------------ // //  Define Name:    RAM_START/END //  Description:    Defines the start/end address of cached RAM. // //------------------------------------------------------------------------------ #define RAM_START                   (0x80000000) #define RAM_SIZE                    (32 * 1024 * 1024)              // 32MB #define RAM_END                     (RAM_START + RAM_SIZE - 1) //------------------------------------------------------------------------------ // //  Define Name:    FLASH_START/END //  Description:    Defines the start/end address of cached FLASH. // //------------------------------------------------------------------------------ #define FLASH_START                 (0x92000000) #define FLASH_SIZE                  (AMD_FLASH_LENGTH) #define FLASH_END                   (RAM_START + RAM_SIZE - 1)                                                                                     // settings are stored. //------------------------------------------------------------------------------ // //  Define Name:    FLASH_EBOOT_START/END //  Description:    Defines start/end address of EBOOT image. Required for //                                        setting the g_ImageType. // //------------------------------------------------------------------------------ #define FLASH_EBOOT_START           (UINT32)OALPAtoVA(BSP_BASE_REG_PA_AM29LV800, TRUE) #define FLASH_EBOOT_END             (FLASH_EBOOT_START + EBOOT_STORE_MAX_LENGTH - 1) #define FILE_CACHE_START            (0x8c200000 | CACHED_TO_UNCACHED_OFFSET)        // Start of file cache (temporary store                                                                                     // for flash images). // Driver globals pointer (parameter sharing memory used by bootloader and OS). // #define pBSPArgs                    ((BSP_ARGS *) IMAGE_SHARE_ARGS_UA_START) // Platform "BOOTME" root name. // #define PLATFORM_STRING         "SMDK2410" // Bootloader configuration parameters (stored in the bootloader parameter partition in NAND flash). // typedef struct _NAND_BOOTLOADER_PARAMS_ {     ULONG  Signature;           // Config signature (used to validate).     USHORT VerMajor;            // Config major version.     USHORT VerMinor;            // Config minor version.     ULONG  StoreOffset;         // Region storage location (BINFS partition offset).     ULONG  RunAddress;          // Region RAM address (loader copies region to this address).     ULONG  Length;              // Region length (in bytes).     ULONG  LaunchAddress;       // Region launch address. } NAND_BOOTLOADER_PARAMS, *PNAND_BOOTLOADER_PARAMS; // Download image type (used to decide amongst storage options). // typedef enum _IMAGE_TYPE_ {     IMAGE_LOADER,     IMAGE_OS_BIN,     IMAGE_OS_NB0 } IMAGE_TYPE, *PIMAGE_TYPE; // Loader function prototypes. // BOOL InitEthDevice(PBOOT_CFG pBootCfg); int OEMReadDebugByte(void); BOOL OEMVerifyMemory(DWORD dwStartAddr, DWORD dwLength); BOOL AM29LV800_WriteFlash(UINT32 dwOffset, PBYTE pData, UINT32 dwLength); BOOL AM29LV800_ReadFlash(UINT32 dwOffset, PBYTE pData, UINT32 dwLength); BOOL AM29LV800_EraseFlash(UINT32 dwOffset, UINT32 dwLength); BOOL AM29LV800_Init(UINT32 dwAddr); void Launch(DWORD dwLaunchAddr); PVOID PCMCIA_Init(void); BOOL WriteDiskImageToSmartMedia(DWORD dwImageStart, DWORD dwImageLength, BOOT_CFG *pBootCfg); BOOL FormatSmartMedia(void); void OEMWriteDebugLED(WORD wIndex, DWORD dwPattern); #endif  // _LOADER_H_. C:\WINCE500\PLATFORM\SMDK2410\SRC\BOOTLOADER\EBOOT目录下的的main.c中看到了OEMVerifyMemory函数内容: BOOL OEMVerifyMemory( DWORD dwStartAddr, DWORD dwLength ) {     BOOL    rc;                 // return code     DWORD   Addr1;              // starting address     DWORD   Addr2;              // ending   address     // Convert address to a cached address.     //     dwStartAddr &= ~CACHED_TO_UNCACHED_OFFSET;     // Setup address range for comparison     //     Addr1 = dwStartAddr;     Addr2 = Addr1 + (dwLength - 1);     EdbgOutputDebugString( "****** OEMVerifyMemory Checking Range [ 0x%x ==> 0x%x ]\r\n", Addr1, Addr2 );     // Validate the bootloader range to set the g_ImageType. The bootloader address     // range is a subset of the whole flash range. This is required as the original     // function set the image type based on this. Therefore this check is done before     // the whole FLASH range is checked.     if( (Addr1 >= FLASH_EBOOT_START) && (Addr2 = FLASH_START) && (Addr1 = RAM_START) && (Addr2
    19. STM8是冯诺依结构还是哈佛结构? 94/36029 stm32/stm8 2009-10-20
                                       CORTEX-M0 何时出来呢? CORTEX-M0完全可以取代8位机的市场。
    20. 自己做板子需要哪写材料? 23/8608 嵌入式系统 2009-09-28
      引用 7 楼 schlafenhamster 的回复: 我年轻的时候都是自己做收音机板子,需要覆铜版(单,双面),沥青(铺马路的)用煤油泡开,鸭嘴笔,在纸上布置好元件,画出走线。然后用复印纸复写到覆铜版,用沥青把走线画出,凉干后,用硫酸亚铁腐蚀,清洗,打孔,。。。
      LS,能不能把你的职业发展透漏一下,也给我们这些想往这方面发展的人们心里有个底。

最近访客

< 1/1 >

统计信息

已有116人来访过

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

留言

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


现在还没有留言