
STM32
文章平均质量分 72
emouse
这个作者很懒,什么都没留下…
展开
-
使用3.4固件库自己建立自己的STM32程序
<br /> <br />前面一直用开发板里给好的例程,从网上新下载了固件库,决定要自己建立一个,发现不建一遍的话还是存在好多问题的。下面只有文字描述,因为word中编辑的突破插过来不是很方便,就不加图片了。<br /> <br /> <br />新建一个工程文件夹,这里我建立GPIOTEST。将STM32F10x_StdPeriph_Lib_V3.4.0文件夹下面的Libraries拷贝到新建的文件夹下面。在GPIOTEST下新建USER文件夹,用来存放我们自己写的一些程序。新建List文件夹,用来存放编原创 2010-11-28 13:25:00 · 3631 阅读 · 4 评论 -
关于STM32的CAN的过滤器
<br /><br /><br />STM32普通型芯片的CAN有14组过滤器组(互联型有28组过滤器组),用以对接收到的帧进行过滤。每组过滤器包括了2个可配置的32位寄存器:CAN_FxR0和CAN_FxR1。对于过滤器组,可以将其配置成屏蔽位模式,这样CAN_FxR0中保存的就是标识符匹配值,CAN_FxR1中保存的是屏蔽码,即CAN_FxR1中如果某一位为1,则CAN_FxR0中相应的位必须与收到的帧的标志符中的相应位吻合才能通过过滤器;CAN_FxR1中为0的位表示CAN_FxR0中的相应位可不必与转载 2011-01-11 10:03:00 · 1654 阅读 · 0 评论 -
Eclipse+ GNU ARM Eclipse Plug-in+ Sourcery G++ Lite Edition for ARM+OPENCD+Jlink的开源开发环境。
<br /><br />Eclipse+ GNU ARM Eclipse Plug-in+Sourcery G++Lite Edition for ARM+OPENCD+Jlink的开源开发环境。具体介绍:<br />Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。由于eclipse只是一个IDE,因此需要借助其他插件以及软件来搭建完整的开发环境,也正是因为如此eclipse具有很大的灵活性。<br />因此首先原创 2010-11-20 12:55:00 · 4986 阅读 · 3 评论 -
STM32通过FSMC读写CPLD
<br />STM32通过FSMC读写CPLD的程序,CPLD挂在STM32的地址线和数据线上,将CPLD看做片外RAM的方式来进行读写,在我做的板子上CPLD挂在第四个区,因此基地址是0x6c000000,通过FSMC来进行读写,程序较为简单,具体的地方在函数中都有注释,仅供参考。<br /> <br />/**************************(C) COPYRIGHT emouse 2011***************************名称:CPLD.c功能:配置fsmc原创 2011-01-15 16:15:00 · 8636 阅读 · 14 评论 -
TLC2543和TLV5614的STM32程序
<br />使用STM32的两个硬件SPI完成数据的读写,具体的见程序注释。/**************************(C) COPYRIGHT SunHao 2011***************************名称:ADDA.c功能:ADDA的相关配置以及读取函数作者:孙浩时间:2011.4.25版本:1.0注意:对照TLC2543时序图,确保对应时序一致,读写速度不宜太快******************************************原创 2011-04-25 23:36:00 · 4289 阅读 · 0 评论 -
STM32 在16位数据宽度下的地址问题
<br />在项目中,原来使用的是八根数据线,读取数据没有问题,在后来改用十六根地址线并把数据宽度改为十六位之后读出来的数据就很奇怪了,经过仔细分析师由于STM32的内外地址映射造成的,具体参照STM32技术参考手册中文翻译第十版的327页,根据我的理解叙述如下:<br /><br />块1存储区被划分为4个NOR/PSRAM区,这四个区在内部地址上是连续排列的。但是实际上每个区共用的是同一组地址线与数据线,因此需要有内外的一个地址映射,因此在STM32中实际上有两个地址,一个是在内部访问的地址,另外一个是原创 2011-04-27 02:33:00 · 3584 阅读 · 0 评论 -
STM32与FPGA通信写数据出错问题解决方法
<br />项目中需要使用STM32和FPGA通信,使用的是地址线和数据线,在FPGA中根据STM32的读写模式A的时序完成写入和读取。之前的PCB设计中只使用了8跟数据线和8根地址线,调试过程中没有发现什么问题,在现在的PCB中使用了8根地址线和16根数据线,数据宽度也改成了16位,刚开始是读取数据不正确,后来发现了问题,STM32在16位数据宽度下有个内外地址映射的问题,只需要把FPGA中的设定的地址乘以2在STM32中访问就可以了,但是在写操作的时候会出现写当前地址的时候把后面的地址写成0的情况,比如原创 2011-04-28 20:19:00 · 4620 阅读 · 6 评论 -
转:在Keil MDK环境下使用STM32 V3.4库“小”教程
虽然一直在用3.4的固件库,但是感觉很多地方还是不是很清楚,这个地方再系统的看一下这个教程写的不错,收藏分享。原文地址:http://hi.baidu.com/zhlyz2003/blog/item/10fe0d4fc0448822aec3ab00.html简介写这篇“小”教程主要是和大家分享使用STM32的基本方法。在一年以前,我开始接触并开始使用STM32。STM32价格便宜,外设丰富,开发和仿真环境使用方便,一下子便爱上了它。我当时使用了IAR编译环境,固件库也是以前的V2版本。由于ST公司更新了ST转载 2011-05-04 09:56:00 · 4780 阅读 · 0 评论 -
使用Keil MDK运行第一个STM32程序
由于Cnblogs使用livewriter发表文章排版比较方便,因此最近的博客首先通过cnblogs发表。原创文章,转载请注明出处。欢迎大家针对本博客文章提出宝贵意见。关于使用固件库建立工程请参考使用Keil MDK以及标准外设库创建STM32工程关于固件库的学习请参考STM32固件库详解1.1.1 使用Keil MDK运行第一个STM3原创 2012-03-09 20:07:14 · 5385 阅读 · 0 评论 -
STM32 CAN总线设计要点
<br />转自OURAVR论坛,原帖地址http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4143081&bbs_page_no=1&bbs_id=3020<br /> <br />原来can总线有以下特点: <br /><br />主要特点 <br />转载 2011-01-08 16:06:00 · 2088 阅读 · 0 评论 -
STM32外设使用要点
<br /> <br /> <br />========================== Reset/Clock Control ======================= <br />1、时钟安全系统(CSS) <br /> 时钟安全系统被激活后,时钟监控器将实时监控外部高速振荡器;如果HSE时钟发生故障,外部振荡器自动被关闭,产生时钟安全中断,该中断被连接到Cortex-M3的NMI的中断;同时CSS将内部RC振荡器切换为STM32的系统时钟源(对于STM32F103,时钟失效事件还将被送到转载 2011-01-08 16:08:00 · 4274 阅读 · 3 评论 -
开始STM32的学习
<br />同样因为项目的关系,现在必须进行STM32的学习了,不过对我来说,学习STM32的热情总要比DSP要高的,DSP只能在放一放了。从网上买了红牛的STM32的开发板,初次使用感觉不错,加上keil nVision4.12的编辑环境比原来用ADS1.2爽了很多,后面会陆续记录一些。原创 2010-11-12 10:22:00 · 944 阅读 · 2 评论 -
STM32(Cortex-M3)中优先级的概念
<br /><br />STM32(Cortex-M3)中有两个优先级的概念——抢占式优先级和响应优先级,有人把响应优先级称作'亚优先级'或'副优先级',每个中断源都需要被指定这两种优先级。<br /><br />具有高抢占式优先级的中断可以在具有低抢占式优先级的中断处理过程中被响应,即中断嵌套,或者说高抢占式优先级的中断可以嵌套低抢占式优先级的中断。<br /><br />当两个中断源的抢占式优先级相同时,这两个中断将没有嵌套关系,当一个中断到来后,如果正在处理另一个中断,这个后到来的中断就要等到前一个中转载 2010-11-28 15:59:00 · 838 阅读 · 0 评论 -
STM32-USART DMA_Interrupt例程的学习
这是固件库里德一个例程,决定从这里入手依次学习一下外设,下面是这个例程的介绍:This example provides a basic communication between USART1 and USART2 using DMA capability, flags and interrupts.First, the DMA transfers data from TxBuffer2 buffer to USART2 Transmit data register,then this data is s原创 2010-12-01 21:10:00 · 4907 阅读 · 0 评论 -
STM32串口通信程序设计要点
<br />设计要点:<br />1、要是能串口时钟同时要是能复用总线时钟和对应的IO时钟,如:<br /> <br />//使能串口1,PA,AFIO总线<br /> RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | <br /> RCC_APB2Periph_AFIO |<br /> RCC_APB2Periph_USART1 , <br /> ENABLE);<br />2、stm32f1原创 2010-12-31 14:00:00 · 11317 阅读 · 8 评论 -
STM32的时钟系统分析
<br /><br />在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。<br /> ①、HSI是高速内部时钟,RC振荡器,频率为8MHz。<br /> ②、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz。<br /> ③、LSI是低速内部时钟,RC振荡器,频率为40kHz。<br /> ④、LSE是低速外部时钟,接频率为32.768kHz的石英晶体。<br /> ⑤、PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HS转载 2011-01-01 21:19:00 · 2238 阅读 · 0 评论 -
基于STM32的TLC2543驱动程序
<br />这个驱动程序是基于3.0固件库来写的,所以具体的配置都很明确,需要注意两点:<br />1、读写速度不能太高,否则会读取不到数据。<br />2、注意数据的读取方式,TLC2543有8位、12位、16位三种数据方式,这里快使用16位。<br />其他的配置完全按照datasheet中的时序图来,配置的时候仔细核对一下就可以了。<br />程序如下:<br />void TLC2543_Config(void){ SPI_InitTypeDef SPI_InitStructure;原创 2011-01-01 21:24:00 · 7896 阅读 · 9 评论 -
STM32中DMA的使用入门
<br />今天刚看了一个ADC采集的程序,和之前用其他单片机写的程序还是有比较大的差别,这个差别主要就在DMA。这里面总结一下,有一部分是转载别人的。<br /><br />什么是STM32的DMA?其全称是:Direct Memory Access;根据ST公司提供的相关信息,DMA是STM32中一个独立与Cortex-M3内核的模块,有点类似与ADC、PWM、TIMER等模块;主要功能是通信“桥梁”的作用,可以将所有外设映射的寄存器“连接”起来,这样就可以高速问各寄存器,其传输不受CPU的支配,传输还原创 2010-11-12 12:30:00 · 1947 阅读 · 0 评论 -
STM32程序设计心得以及易错点
<br />今天调试了一天STM32程序走了很多弯路,还好最后完全走通,调试过程中的一些经验总结如下:<br /> <br />1、不要完全相信编译器,很多时候可能你只是少了一个分号或者括号,编译器可能给你报一大堆不相关的错误,这时候如果想着一个个去改的话显然找不到正确答案。因此为了保险起见原先编译成功的程序在改动的时候,每改动一次就对相应的文件编译一次,这样可以避免一下子改动很多最后一编译出现很多错误不好定位。第一步编译只是编译当前文件,只有在build的时候才会对所有改动的文件重新编译,因此等到buil原创 2011-01-05 21:42:00 · 2831 阅读 · 2 评论 -
STM32访问外部存储器-NOR-Flash
<br /> <br />基本说明<br />STM32访问外部存储器是需要配置FSMC的相关函数,在STM32固件库函数说明的中文翻译版中并没有这部分的说明,因此需要参考库函数的相关说明和库中自带的例程。<br />以下内容来自AN2784应用笔记:<br />2 与非总线复用模式的异步16位NOR闪存接口<br />2.1<br />FSMC配置<br />控制一个NOR闪存存储器,需要FSMC提供下述功能:<br />●<br />选择合适的存储块映射NOR闪存存储器:共有4个独立的存储块可以用于与N原创 2011-01-05 09:46:00 · 8331 阅读 · 1 评论 -
STM32固件库详解
emouse原创文章,转载请注明出处http://www.cnblogs.com/emouse/ 应部分网友要求,最新加入固件库以及开发环境使用入门视频教程,同时提供例程模板,个人录制,欢迎指正。下载地址:http://115.com/file/e78l0xlo# emouse-STM32系列视频教程.rar 最近考试较多,教材编写暂停了一下,之前写了很多,只是原创 2011-11-29 23:33:51 · 6823 阅读 · 0 评论