
STM32
文章平均质量分 51
关于STM32相关的笔记
习惯就好zz
一个无趣的人
展开
-
海明校验码
http://blog.youkuaiyun.com/tms_li/article/details/6258788 管理员在2009年8月13日编辑了该文章文章。 --> --> window._bd_share_c原创 2017-01-11 21:38:34 · 302 阅读 · 0 评论 -
src/lib/framework/src/driverFramework.cpp学习
int Framework::initialize() { DF_LOG_DEBUG("Framework::initialize"); g_framework = new SyncObj;原创 2017-08-15 09:12:02 · 375 阅读 · 0 评论 -
电源控制和备份区域
一、电源供给 电源供给方案 VDD = 2.0~3.6V:外部电源为I/O和内部电压调节器提供电源。 VDDA = 2.0~3.6V:外部模拟电源为ADC、复位模块、RC电路和PLL提供电源。 >>只有当VDDA >= 2.4V时,ADC才能工作; >>只有当VDDA >= 2.7V时,USB才能工作。VBAT =原创 2017-08-15 09:09:58 · 920 阅读 · 0 评论 -
晶体管电路设计学习笔记(一)
一、概述在概述里这样写,看完我就买了书。然后就是晶体管的放大方式,其实是把电源的电路放大。并不是从输出端放大的:晶体管是用基级电流来控制集电极-发射机电流的器件。而FET则是在输入端(栅极)的电压来控制输出端(漏级)的电流。 二、放大电路的工作原理 2.1 放大电路使用multisim仿真:遇到的问题:书上的是2SC2原创 2017-08-15 09:10:33 · 3865 阅读 · 0 评论 -
nucleus plus学习总结
前言: 最近一直都在看nucleus plus,之前看过一些linux内核的一些东西,但都是停留在文字上,代码看的很少,这个nucleus plus内核的代码量不大,看过source code确实对很多OS的知识有了更深入的认识,收获还是挺多的,把学到的东西记录下来。 内容: 一、nucleus plus特点: 1.内核原创 2017-08-15 09:09:32 · 1559 阅读 · 1 评论 -
nucleus学习
task的TCB结构: typedef struct TC_TCB_STRUCT { /* Standard thread information first. This information is used by the target dependent portion原创 2017-08-15 09:09:29 · 352 阅读 · 0 评论 -
px4::init_once();和px4::init(argc, argv, "px4");函数学习
px4::init_once(); void init_once() { _shell_task_id = pthread_self(); //获取自生PID //原创 2017-08-15 09:12:12 · 265 阅读 · 0 评论 -
px4的CMakelists.txt阅读
############################################################################ # # Copyright (c) 2017 PX4 Development Team. All rights reserved. # # Re原创 2017-08-15 09:12:56 · 784 阅读 · 0 评论 -
增强输出的电路
一、射级跟随器发射极跟随着输入信号(基极电位)进行工作。 1.1典型电路信号从发射机取出,而且没有集电极负载电阻Rc。 1.2 不受负载电阻的影响改变RL的值和改变RE的值是一样的。并且Ve的电位只受Vb的影响。 二、电路设计 ①确定电源 ②选择晶体管 ③晶体管集电极损耗的计原创 2017-08-15 09:10:36 · 420 阅读 · 0 评论 -
NRF24L01学习
一、工作模式PWR_UP和PRIM_RX在寄存器0x00中的第0位和第1位。待机模式I:只是使用晶振工作,CE=0时是拉低?待机模式II:部分时钟缓冲器处在工作模式。TX FIFO为空并且CE为高电平进入待机模式II。然后在发送和接收时,NRF24L01有两种不同的模式,一种时ShockBurst,另一种时增强型ShockBurst,增强型多了应答。两种模式的区别在原创 2017-08-15 09:11:22 · 605 阅读 · 0 评论 -
nucleus 学习 中断
;************************************************************************ ;* ;* FUNCTION ;* ;* INT_IRQ ;* ;* DESCRIPTION原创 2017-08-15 09:09:36 · 285 阅读 · 0 评论 -
小型功率放大器的设计与制作
一、功率放大电路的关键问题 ①将输入信号的电压放大之后再进行电流放大。 ②三种之前的方案(a)电路,会有交越失真不采用(b)电路,三极管取出大量电流时,Tr1和Tr2温度升高,Vbe电流变小。而二极管电流基本不变,那么VF>Vbe。继续引起三极管电流增加,从而发生热击穿。(c)电路,可以防止热击穿。但不能解决温度引起的静态工作点变化的问题。原创 2017-08-15 09:10:39 · 3354 阅读 · 1 评论 -
PCB一些设置记录
开始时设置原点,编辑>>原点>>设置 画PCB时,导入后,根据各个模块放好位置 设计>>类>>添加电源类 设计>>规则>>Clearance( ALL 6mil,InPolyghon 10mil,IsVia 6mil) 设计>>规则>>Routing>>Width>>6mil(同时设置电源走线宽度15mil,最小6原创 2017-08-15 09:10:04 · 345 阅读 · 0 评论 -
MOSFET学习
MOS/CMOS集成电路简介及N沟道MOS管和P沟道MOS管 在实际项目中,我们基本都用增强型mos管,分为N沟道和P沟道两种。 我们常用的是NMOS,因为其导通电阻小,且容易制造。在MOS管原理图上可以看到,漏极和源极之间有一个寄生二极管。这个叫体二极管,在驱动感性负载(如马达),这个二极管很重要。顺原创 2017-08-15 09:10:28 · 827 阅读 · 0 评论 -
nucleus plus代码学习
int.S: ;************************************************************************ ;* ;* FUNCTION ;* ;* INT_Initialize ;*原创 2017-08-15 09:09:26 · 552 阅读 · 0 评论 -
led灯实验总结
在reg51.h中存在sfr和sbit关键字。 如 sfr P0=0x80,意思是把单片机内部地址0x80处的寄存器重新起名字叫P0。 这样就不用每次都繁琐的取地址,而却也不方便记忆。把它另外命名一个可以理解的名字,更好用也更合理。 SFR也是一种扩充数据类型,点用一个内存单元,值域为0~255。利用它可以访问51单片机内部的所有特殊功能寄存器。如原创 2017-01-11 21:42:05 · 3864 阅读 · 0 评论 -
DMA实验总结
一、RCC设置没什么好写的之前USART的基本一样 /**************************************************************************** * Function Name : RCC_Configuration * Description :原创 2017-08-15 09:10:17 · 2045 阅读 · 0 评论 -
STM32的结构和启动模式
一、STM32F10x功能模块 32位的Cortex-M3微处理器; 可嵌套的向量中断控制器(NVIC)和60个可屏蔽中断且有16个可编程优先级; 内嵌内存: FLASH:最大512K字节 STAM:最大64K字节 扩展内存接口(FSMC):原创 2017-08-15 09:09:54 · 347 阅读 · 0 评论 -
pic16f877a的AD实验学习
一、主函数 //采集AD值 #include pic.h> #include "ad.h" #include "usart.h" __CONFIG(0xFF32);原创 2017-08-15 09:12:28 · 1144 阅读 · 0 评论 -
mpu6050学习
一、MPU6050初始化 /**************************实现函数******************************************** *函数原型: void MPU6050_initialize(void) *功 能: 初始化 MPU原创 2017-08-15 09:11:14 · 718 阅读 · 0 评论 -
SysTick功能总结
一、初始化SysTick按1ms来设置systick,也可以除以1000000。按1us来设置 SysTick_Config(SystemCoreClock / 1000); //SysTick开启系统tick定时器并初始化其中断,1ms 二、systick的函数 // cycles per mic原创 2017-08-15 09:11:03 · 1419 阅读 · 0 评论 -
复位和时钟控制(RCC)
一、系统复位 复位除了部分RCC寄存器和备份区域以外的其他所有的寄存器; 来源: NRST引脚上的低电平(外部复位) WWDG计数结束 IWDG计数结束 软件复位(通过NVIC) 低电压管理的复位 电源复位原创 2017-08-15 09:10:01 · 2408 阅读 · 0 评论 -
I2C_24c02实验
一、RCC初始化 /* Setup the microcontroller system. Initialize the Embedded Flash Interface, initialize the PLL and update the SystemFrequency variable. */原创 2017-08-15 09:10:20 · 308 阅读 · 0 评论 -
四轴遥控器ADC部分
一、ADC参考手册学习A/D转换可以按单次、连续设置采样;可以一一扫描或间断的对多个ADC通道进行采集。ADC的结果有左对齐和右对齐。ADC的输入时钟不得超过14Mhz,它是由PCLK2经分频产生。 二、ADC通道选择16个多路通道,可以分成:规则组和注入组。规则组:可以设定任意的顺序进行的通道排列。(最多16个)注入组:可以像中断一样优先进行转换。(最原创 2017-08-15 09:11:18 · 614 阅读 · 0 评论 -
PIC16F877A的TIME0学习
计算溢出时间根据晶振频率4Mhz,TMR0=6,PSA2~PSA0 = 1:4.因为好像外部晶振在给PIC的时候多分了一次1:4。所以PSA2~PSA0取1:4刚好数完250次的时间=(1/4Mhz/4)*4*250 = 1ms,每1ms触发一次T0IF中断。 // FOSC=16MHz Fcy=4Mhz Tcy=1/Fcy #in原创 2017-08-15 09:12:44 · 768 阅读 · 0 评论 -
四轴电池ADC监控学习
一、硬件原理电池供电通过两个分压电阻接地,STM32则在两电阻中间通过ADC检测电池电压。(引脚BAT_DET) 二、ADC通道初始化 //初始化电池检测ADC //开启ADC1的通道8 //BatteryCheck---->PB0 void Ba原创 2017-08-15 09:11:00 · 829 阅读 · 0 评论 -
RCC初始化学习
一、设置RCC时钟 //#define SYSCLK_HSE #define SYSCLK_FREQ_20MHz //#define SYSCLK_FREQ_36MHz //#define SYSCLK_FREQ_48MHz //#define SYSCLK_FREQ原创 2017-08-15 09:10:07 · 671 阅读 · 0 评论 -
光衰代码整理学习
硬件使用c8051f411。一、首先是关闭看门狗,看门狗在PCA0MD的第6位。关闭代码: /*关闭看门狗*/ void disable_watchdog(void) { PCA0MD |= 0xff; PCA0MD &= 06;原创 2017-08-15 09:09:47 · 614 阅读 · 0 评论 -
TIM4定时器功能设置
一、初始化过程/***********************************************************************利用TIM4定时器作为计时,每个0.1秒处理一次数据计算周期的公式为: psc/72*period/1000000 (单位为秒)***********************************************原创 2017-08-15 09:11:28 · 6843 阅读 · 0 评论 -
pic16f877a的PWM实验学习
遇到的问题,编译时找不到TRISC。一开始以为头文件中没有定义,发现定义了。所以是自己创建工程的时候,设备类型选错了。 #include pic.h> __CONFIG(0xFF32); #define uchar unsigned char原创 2017-08-15 09:12:36 · 1460 阅读 · 0 评论 -
sysTick系统定时器
一、头文件函数库3.5中一些之前sysTick的函数接口都不能用了。而且把一些函数放到了core_cm3,misc文件中了 #include "stm32f10x.h" #include "core_cm3.h" #include "misc.h" 二、设置延迟函数原创 2017-08-15 09:10:25 · 276 阅读 · 0 评论 -
GPIO软件模拟IIC时序
一、MPU6050中的IIC时序 1.1 START和STOPSDA和SCL在高电平时,SDA拉低表示START。SCL拉低,表示可以传输数据。SDA和SCL在低电平时,SDA拉高表示STOP。 SCL拉高,表示传输数据结束。 /******************************************原创 2017-08-15 09:10:49 · 943 阅读 · 0 评论 -
STM32串口USART通信总结
一、GPIO设置 /**************************************************************************** * Function Name : GPIO_Configuration * Description : * I原创 2017-08-15 09:10:14 · 2758 阅读 · 0 评论 -
PWM输出,呼吸灯
一、初始化GPIO使用PB1,查芯片手册对应TIM3_CH4 GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); RCC_APB1PeriphClockCmd原创 2017-08-15 09:11:11 · 980 阅读 · 0 评论 -
按键中断总结
一、RCC初始化 /**************************************************************************** * Function Name : RCC_Configuration * Description : Sets System clock原创 2017-08-15 09:10:10 · 798 阅读 · 2 评论 -
MDK(keil)4.7中文注释乱码解决
由于编码使用不统一导致别的开发环境下的文件在MDK(keil)下打开中文显示乱码,解决这一问题需要进行码制转换, 可以先将欲打开的文件转换成UTF-8格式(如在notepad中进行转换),也可以在打开文件前将MDK的编码设置为chinese2312(Edit>Configuration>Editor>Encoding), 这样就能够正确显示中文了,然后再把编码格式改为E原创 2017-08-15 09:10:43 · 3383 阅读 · 2 评论 -
STM32点LED灯
一、建立项目模板这里的user中重复引用了system_stm32f10x.cOutput中选择Create HEXFile,并且可以选择输出路径。Listing中可以选择输出路径。然后在C/C++中加入两个宏: STM32F10X_MD,USE_STDPERIPH_DRIVER 并且还要勾选One ELF Section pe原创 2017-08-15 09:13:05 · 549 阅读 · 0 评论 -
MPU6050寄存器记录
参考资料:http://blog.sina.com.cn/s/blog_8240cbef01018i10.html不过有一些寄存器没有写到,所以我自己加一点:1)Register 25 - INT Pin / Bypass Enable ConfigurationINT_PIN_CFG描述: 这个寄存器配置在INT引脚的中断信号行为,它也用于使能FSYNC引脚,原创 2017-08-15 09:10:46 · 2071 阅读 · 0 评论 -
STM32F429使用标准库创建项目
构建标准库的模板项目准备lib库stm32f4_dsp_stdperiph_lib.zip文件目录结构tree.+--- CORE| +--- core_cm4.h| +--- core_cm4_simd.h| +--- core_cmFunc.h| +--- core_cmInstr.h| +--- startup_stm32f429_439xx.s+--- FWLIB| +--- inc| | +--- misc.h| | +---原创 2020-07-26 19:52:13 · 1865 阅读 · 6 评论