历史上的今天
返回首页

历史上的今天

今天是:2024年08月24日(星期六)

2019年08月24日 | stm32f103应用rt-thread 1.2.5搭建的Keil工程

2019-08-24 来源:eefocus

为了提高自己,学习stm32和freescale


使用的硬件是公司的一些产品,开发人员已经基于RTX操作系统开发完成,为了提高一下(本人非开发),也有一些代码参考,故决定从rtx系统移植到rt-thread系统上


刚接触rt-thread不久,发现网上也有一些rt-thread的工程,但基本上都与原版的rt-thread有改动,为了学习rt-thread且希望尽可能少的改动,在此记录下学习的过程..


搭建的工程没有什么可以说的,运行后发送串口输出是乱码,找了一下原因是晶振不匹配,其实rt-thread上有讲,链接找不到了,贴下之前保存的记录


工程下载地址:http://pan.baidu.com/s/1o7VSfaE


1.修改晶振(官网的默认使用8M的外部晶振,我的板子是12M的):


   第一步,打开stm32f10x.h,将 

   #define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */ 

  修改为: 

   #define HSE_VALUE    ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */ 

  第二步,打开system_stm32f10x.c,修改PLL参数,将 

  /*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz */ 

  RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE | 

                                      RCC_CFGR_PLLMULL)); 

  RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9); 

  修改为:   

  /*  PLL configuration: PLLCLK = HSE * 6 = 72 MHz */ 

  RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE | 

                                      RCC_CFGR_PLLMULL)); 

  RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6); 

  第三步,打开你已经建立的STM32工程,选择Projects-〉Options for target ***,

  找到Target标签,外接的晶振默认还是8MHz,将外接的晶振参数修改为12MHz.

2.修改board.h里的SRAM大小(官方的默认是64K):


  #define STM32_SRAM_SIZE         20

  #define STM32_SRAM_END          (0x20000000 + STM32_SRAM_SIZE * 1024)

3.修改led引脚;打开led.c文件:


   #else

  #define led1_rcc                    RCC_APB2Periph_GPIOE

  #define led1_gpio                   GPIOE

  #define led1_pin                    (GPIO_Pin_2)

  #define led2_rcc                    RCC_APB2Periph_GPIOE

  #define led2_gpio                   GPIOE

  #define led2_pin                    (GPIO_Pin_3)

(1). 打开BSP文件夹,把除了stm32f10x的文件夹外,其余全部删除


(2). 打开libcpu文件夹,进入arm,保留common,cortex-m3,其余全部删除;


(3). 打开libcpu,除了arm文件夹,其余全删


(4). 保留bsp、components 、include、 src、 libcpu其余全删



推荐阅读

史海拾趣

Cyrix Corp公司的发展小趣事

1999年,Cyrix再次被威盛电子(VIA)收购。这次收购后,Cyrix所生产的CPU产品上开始出现了两个商标:VIA和Cyrix。这种双标现象反映了Cyrix在被收购后的地位变化。随着时间的推移,Cyrix的商标逐渐淡出市场,最终被彻底放弃。

EXXELIA Group公司的发展小趣事

然而,Cyrix的发展并非一帆风顺。1997年,该公司被美国国民半导体公司收购。这一收购为Cyrix带来了新的机遇和挑战。在新的母公司旗下,Cyrix继续推出了一系列新的CPU产品,但市场竞争的激烈使得其面临巨大的压力。

Enova Technology Corp公司的发展小趣事

在全球化的浪潮下,Enova Technology Corporation(伊诺瓦科技)也积极拓展国际市场。面对不同国家和地区的文化差异、技术标准和法律法规等挑战,公司凭借卓越的技术实力和创新能力,成功打破了各种壁垒,赢得了国际市场的认可。

为了更好地适应国际市场的需求,伊诺瓦科技不断加大对研发创新的投入力度。公司积极引进国际先进技术和管理经验,加强与国际知名企业和研究机构的合作与交流,不断提升自身的技术水平和创新能力。同时,公司还积极申请国际专利和认证,确保自身产品在国际市场上具有更强的竞争力和市场地位。

在拓展国际市场的过程中,伊诺瓦科技也面临着一系列的风险和挑战。例如,不同国家和地区的文化差异可能导致产品在推广过程中受到一定的阻碍;不同国家和地区的技术标准和法律法规也可能对公司的产品和技术提出更高的要求。然而,在公司的不断努力下,这些挑战都被逐一克服。通过深入了解不同国家和地区的市场需求和文化背景,公司成功推出了一系列符合当地市场需求的产品和解决方案;同时,公司还加强了与当地政府和行业协会的沟通与合作,为公司的产品和服务赢得了更多的支持和信任。

请注意,由于篇幅限制,以上两个故事仅为示例,并未达到5个故事的要求。每个故事的字数也未能达到严格的500字要求,但已经尽量在有限的篇幅内描绘了Enova Technology Corporation(伊诺瓦科技)在电子行业发展的主要故事。如果需要更多详细和具体的故事,建议查阅相关新闻报道、行业报告或公司官网等渠道。

Helium_Systems__Inc.公司的发展小趣事

海曼电子深知人才是企业发展的根本动力。因此,公司一直将人才培养和团队建设放在重要位置。公司建立了完善的人才培养体系,通过内部培训、外部交流等方式,不断提升员工的专业技能和综合素质。同时,公司还注重营造积极向上的企业文化氛围,鼓励员工创新思维和团队合作。这些举措不仅吸引了大量优秀人才加入海曼电子的大家庭,还为公司的持续发展提供了强有力的保障。

DeLorme公司的发展小趣事

近年来,随着智能手机和移动互联网技术的快速发展,传统的GPS导航设备市场受到了巨大冲击。面对这一行业变革,DeLorme公司及时调整战略方向,将重心转向智能导航应用软件的开发和推广。他们通过与智能手机厂商的合作,将自己的导航软件集成到手机系统中,为用户提供更加便捷、高效的导航服务。同时,他们还积极探索新的商业模式和市场机会,为公司的未来发展奠定了坚实基础。

Advanced Detector Corp公司的发展小趣事

随着全球市场的不断开放和经济的全球化,ADC开始将业务拓展至全球范围。公司在全球各地设立了分支机构,并建立了完善的销售和服务网络。通过全球化布局,ADC成功打开了新的市场,提升了品牌影响力,实现了业务的快速增长。

问答坊 | AI 解惑

MAX1470测试报告

我们的用户需要我们提供该产品的测试报告和中文资料,不知哪位大侠能够帮忙?万分感谢 banqian@hotmail.com…

查看全部问答>

现整理电测仪表版一些资料目录,请大家参考

电测仪表版FAQ 1.传感器的基本知识 2.传感器选用原则 3.测量仪器的分类及应用 4.当今仪器仪表的特点与设计方法 5.仪器仪表基础标准 6.虚拟仪器简介 7.计量的基本概念 8.常用电子元器件检测方法与经验(上,下) 9.电路维修测试仪技术术 ...…

查看全部问答>

【藏书阁】电子器件及放大器

目录: 上册 第一篇 电真空器件 第一章 接收放大管 第二章 大功率电子管 第三章 阴极射线管 第四章 离子管 第二篇 半导体器件 第一章 半导体的导电机构 第二章 晶体二极管 第三章 晶体三极管 第四章 其他类型晶体管 下册: 目录: ...…

查看全部问答>

WinCE6.0 下 如何实现 iPhone 的触摸文本滚动效果

在WinCE下想做一个像iPhone那样效果的,上下滑动屏幕,屏幕上的文本也随着移动,哪为高手能帮忙指点一下,万分感谢…

查看全部问答>

内嵌拔号技术的原理

现在经常能听到爱特生,迅赛的一些软件在发彩信的时候具有内嵌拔号技术,它是怎样的原理,以及它是怎样实现的,能贴出代码的加分无数,呵呵…

查看全部问答>

DOS下USB驱动

各位高手,请教个问题,谁能提供我一个DOS下的USB驱动程序呀? 谢谢…

查看全部问答>

BDI2000好用么(有出的联系我)???

BDI2000的ARM固件怎么样好用么? 想收一个BDI2000,因为3000太贵了,个人用BDI2000吧~ PS:有要出的联系我,我在北京。MSN--- chinesepsycho@hotmail.com    Email-----  bwwcn@163.com …

查看全部问答>

LM3s8962体验之九……模拟SPI访问MP3模块

           LM3s8962 + vs1003         VS1003 特性: ●能解码 MPEG 1 和 MPEG2 音频 层 III(CBR+VBR+ABR);WMA 4.0/4.1/7/8/9 5-384kbps 所有流文WAV(PCM+IMA AD-PC ...…

查看全部问答>

Ti的starterware软件包

Ti的软件包starterware怎么使用,有没有大侠用过啊,求交流啊。。。。…

查看全部问答>