void RCC_DeInit(void)
{
RCC->CR |= (uint32_t)0x00000001; //开启内部8MHz时钟
#ifndef STM32F10X_CL //STM32F10X_CL指的是STM32互联系列微处理器
RCC->CFGR &= (uint32_t)0xF8FF0000; //其它类型处理器的CFGR寄存器中27-31位是保留位,24-26为MC...
分类:
其他好文 时间:
2015-03-21 12:44:50
阅读次数:
147
今天调试STM32F103的ADC,使用ADC1单次转换模式进行两通道AD采样,发现两路通道存在烦扰问题。相关AD操作代码如下:void adc_start_convert(uint8_t ch){ ADC1->SMPR2 = (ADC1->SMPR2 & 0XFFFFFFF8) | 7;...
分类:
其他好文 时间:
2015-03-21 12:29:09
阅读次数:
169
在STM32的固件库和提供的例程中,到处都可以见到assert_param()的使用。如果打开任何一个例程中的stm32f10x_conf.h文件,就可以看到实际上assert_param是一个宏定义;在固件库中,它的作用就是检测传递给函数的参数是否是有效的参数。所谓有效的参数是指满足规定范围的参数...
分类:
其他好文 时间:
2015-03-20 09:15:35
阅读次数:
100
转自http://bbs.21ic.com/icview-878522-1-1.html前段时间学习了CanOpen协议,到网上下载的CanFestival3-10源码,移植到VC、QT、STM32等平台,由于网上的资源较少,走了不少弯路,移植好使用过程中才逐渐暴露出各种问题,比如OD字符串传输、心...
分类:
其他好文 时间:
2015-03-18 23:01:55
阅读次数:
351
GP2Y1010AU0F传感器接线方式如下: 使用PA0接收模拟信号,PB1发送脉冲信号。 代码如下: GP2Y.c #include?"GP2Y.h"
#include?"system.h"
u16?AD_PM;
void?GP2Yinit(void)
{?
//定义变量
????ADC_InitT...
分类:
其他好文 时间:
2015-03-18 07:52:20
阅读次数:
919
回调函数在看LWIP时,见到用回调函数,再看某老外公司OPC源码时,见到用回调函数。看我国内某些代码(我公司软件等)时没用到。于是,我对回调函数产生了非常大的好奇。曾经,我写VC程序时用到过回调函数,可是没实用C语言来使用。近期,看到国外大量的经典代码中广泛使用了回调函数(LWIP、某两个公司的OP...
分类:
其他好文 时间:
2015-03-16 19:04:01
阅读次数:
188
正在搞六轴传感器,今天移植了MPU6050的MothionDriver的DMP固件到STM32上了,能够稳定地输出欧拉角(也就是俯仰角、航向角、横滚角)和XYZ三轴加速度值,在电脑的上位机模拟了装置的姿态(DMP固件的功能之一:在MPU6050芯片内部进行姿态结算融合,大大减轻MCU的负担)。DMP...
分类:
其他好文 时间:
2015-03-15 21:11:25
阅读次数:
129
有用过C语言编程的童鞋对动态管理内存肯定有点了解。。好处就不多说了 今天实现STM32的动态内存管理
内存管理,是指软件运行时对计算机内存资源的分配和使用的技术。其最主要的目的是如何高效,快速的分配,并且在适当的时候释放和回收内存资源。 内存管理的实现方法有很多种,他们其实最终都是要实现两个函数:
malloc 和 free(好熟悉); malloc 函数用于内存申请, free 函数...
分类:
其他好文 时间:
2015-03-15 15:17:40
阅读次数:
239