自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 TI CCS & controlSUITE问题解决日志

问题1.打开controlSUITE无法正常显示,只有一个File选项显示解决方法:经过排查,发现是当controlSUITE正常时,不是点击X按钮退出的,而是File->Exit退出的,再次打开软件便会出现上述问题,把 C:\ti\controlSUITE\eclipse\workspace 里的.metadata删除就可以了,很方便解决问题,希望更多人看到吧问题2.打开CCS工程中的一

2016-08-30 20:23:28 8653 1

原创 数组与指针,&a和a

今天无意中看到一道题目,考察的是数组与指针,如下int a[5] = {1,2,3,4,5};int *ptr1 = (int *)(a + 1);int *ptr2 = (int *)(&a + 1);printf("%d %d\n" , *ptr1, *(ptr2-1));初一看,我想的答案是2,1,因为a是数组名称,也就是数组的首地址a+1指向的就是数组的第二个元素了,也就是2,所

2016-08-29 22:15:50 880

原创 C语言指针应用--互换两个数&冒泡排序

交换两个数,这在C语言中是个很简单的问题,比如我们在谭浩强的那本C语言教材里,可以看到void swap(int a, int b){ int temp; temp = a; a = b; b = temp;}原理就是借助一个中间值存储第一个值,然后进行数值互换

2016-08-29 16:32:33 2338

原创 MCU是怎样输出PWM波形的

在电力电子控制中,PWM几乎是无处不在的,不论是AC/DC,DC/AC,还是DC/DC,都涉及到PWM,PWM具体是什么可以自行百度,网上资料非常多,这里就不再赘述。在电力电子变换里面,PWM波形生成有两种方式,模拟和数字,专用的模拟IC不在此文探讨范围之内,本文主要介绍怎样用MCU来生成PWM。在所有的MCU里,都会有Timer定时器,PWM就是通过这个外设生成的,基本的原理可以通过下图来解

2016-08-29 16:18:17 7292

转载 STM32的Eclipse开发环境配置(采用GCC编译器)

STM32比较常用的开发环境是Keil MDK跟IAR,但是这两个都是商业软件,且自带的编辑器功能实在是弱Eclipse作为开源界最常用的IDE,不仅功能强大,扩展性强大,而且可以免费使用。事实上市面上有很多商业或开源的STM32开发平台都是基于Eclipse,比如收费的TrueSTUDIO和免费的CooCox,连IAR都推出了Eclipse插件。不过既然用到了Eclipse,最佳拍档当然是同

2016-08-19 10:36:36 10964

转载 关于ARM的统一编制与内存映射机制

ARM是统一编址的,也就是外设和内存进行统一的编址,共同形成了4G物理地址空间(32位为例子)。大家知道操作外设时,实际上操作的是读写设备相关的寄存器,这些与外设相关的寄存器与不同操作模式下R0——R15那些寄存器是不同的,这些寄存器并不是所谓的物理上的寄存器,实际上是所谓的IO端口,通常会有控制、状态、数据的分类。他们被连续地编址,对于其编址的方式有两种一种是IO映射、一种是内存映射。I

2016-08-18 15:10:24 4062

原创 STM32时钟设置

MCU需要在时钟的驱动下才能正常工作,STM32F407 的工作主频最高能达到168MHz,而其外接晶振只有4-26MHz,需要通过内部的数字PLL电路进行配置,才能将内核时钟频率提升至168MHz,那具体需要怎样进行配置呢?其实,stm32的时钟配置相关的函数都在system_stm32f4xx.c这个文件中,这个c文件可以通过ST官方提供的一个xls文件自动生成,这里只是对这个c文件做个详细介

2016-08-18 12:19:44 1214

原创 STM32 CAN应用-过滤器设置

在使用STM32的CAN控制器进行数据收发,当用到位屏蔽模式的时候,就要设置过滤器了,这个关系到是否能够接收到想要的数据。下面针对几种不同情况对CAN过滤器(Filter)进行设置。CAN_FilterInitStructure.CAN_FilterMode = CAN_FilterMode_IdMask; //标示符屏蔽模式CAN_FilterInitStructure.CAN_Filte

2016-08-18 12:09:44 2516

原创 STM32F407 单通道ADC采样,DMA传输

最近在研究STM32F4的ADC采样功能,中间遇到了一些问题,写下来以备后用。F4和F1有很多库函数是不一样的,在参照F1的教程的时候,不能直接抄他的实验代码,否则会出错。因为要用DMA将ADC转换得到的值快速传递到SRAM中,所以就需要对ADC相关的DMA进行设置,这一步很重要。在写ADC1的DMA初始化函数前,一定要查Reference Manual的DMA request mappi

2016-08-18 12:02:05 6370

原创 STM32外设寄存器地址定义

一直都是用STM32做项目中的主控芯片,在编程的时候,之前一直忽视了一个问题,那就是寄存器的位置是如何定义的,为什么用一个USART1->CR操作就能够给这个CR寄存器赋值?其实这是一个比较底层的问题,不懂这方面的知识也并不影响使用STM32,因为底层的定义工作,厂家一般都会做好,但是多了解一点原理性的东西,对自己还是很有帮助的。这里我就以STM32F407的USART寄存器为例,介绍一下

2016-08-18 10:54:02 9956

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除