- 博客(39)
- 资源 (41)
- 收藏
- 关注
转载 STM8 内部flash
举例typedef enum { FLASH_MEMTYPE_PROG = (u8)0x00, /*!< Program memory */ FLASH_MEMTYPE_DATA = (u8)0x01 /*!< Data EEPROM memory */} FLASH_MemType_TypeDef;int main(){ u32 addr = 0x4
2017-08-31 17:09:57 5141
转载 STM8 uart1
举例int main(){ UART1_DeInit(); //波特率9600,数据位8,停止位1,校验位无,非同步模式,发送接收使能 UART1_Init(9600, UART1_WORDLENGTH_8D, UART1_STOPBITS_1, UART1_PARITY_NO, UART1_SYNCMODE_CLOCK_DISABLE, UART1_MODE_TXRX_EN
2017-08-31 10:36:02 951
转载 STM8 LED
时钟分频寄存器(CLK_CKDIVR) 举例 int main(){ CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV1); //高速内部时钟1分频 GPIO_Init(GPIOA, GPIO_PIN_3, GPIO_MODE_OUT_PP_HIGH_FAST); //推挽输出 while(1) { GPIO_W
2017-08-30 22:02:06 562
转载 STM8 工程模版
在st官网下载STM8固件库拷贝固件库到工程目录下 再创建两个目录 user:存放用户文件。自己编写的源文件 project:存放工程文件拷贝stm8s_conf.h到user目录下 AIR 创建工程 创建空工程 将工程文件保存到project目录 将工程目录以分组的形式添加进来 添加完成 右击工程,配置工程 选择芯片型号 添加头文件路径 仿真选择ST-LINK
2017-08-30 18:48:24 510
转载 stm32 SD卡
容量等级 SD容量有8MB、16MB、32MB、64MB、128MB、256MB、512MB、1GB、2GB SDHC容量有2GB 、4GB、8GB、16GB、32GB SDXC容量有32GB、48GB、64GB、128GB、256GB、512GB、1TB、2TBSD卡寄存器 命令格式 所有命令均遵守此格式,总共48位。一个起始位,一个方向位,6个命令位,32位参数(有些命
2017-08-30 16:02:18 1706
转载 stm32 内存管理
分块式内存管理 举例#define MEM1 0 //内部SRAM#define MEM2 1 //外部SRAM#define MEM1_BLOCK_SIZE 32 //内存块大小 32字节#define MEM2_BLOCK_SIZE 32#define MEM1_MAX_SIZE 10 * 1024#define MEM2_MAX_SIZE 40
2017-08-27 21:45:46 553
转载 stm32 FSMC-外扩SRAM IS62WV51216
引脚定义 FSMC配置步骤 1.使能对应引脚GPIO时钟 2.配置GPIO引脚模式 3.使能FSMC时钟 4.FSMC初始化 5.存储器块使能 举例 #define Bank1_SRAM3_ADDR ((u32)(0x68000000)) //首地址0x60000000,每块0x40000000void SRAM_gpio_init(){ GPI
2017-08-26 17:52:33 9697 1
转载 stm32 ADXL345传感器
加速度灵敏度轴 沿敏感轴加速时相应输出电压增加 寄存器映射 寄存器定义 0x31—DATA_FORMAT SELF_TEST位:设置为1,自测力应用至传感器,造成输出数据转换。值为0时,禁用自测力 SPI位:值为1,设置器件为3线式SPI模式,值为0,则设置为4线式SPI模式 INT_INVERT位:值为0,设置中断至高电平有效,值为1,则设置至低电平有效 FULL_R
2017-08-25 20:44:39 7654 3
转载 stm32 触摸屏 XPT2046
引脚功能描述 控制字的控制位命令 控制字节各位描述 单端模式输入配置 差分模式输入配置 时序 前8个时钟用来通过DIN引脚输入控制字节,接着的12个时钟周期将完成真正的模数转换,剩下的3个多时钟周期将用来完成被转换器忽略的最后字节(DOUT置低)举例 #define TOUCH_READ_TIMES 40 //读取次数#define TOUCH_ERR_RANGE 20 //误
2017-08-24 21:05:28 3742
转载 stm32 内部flash
嵌入式闪存 闪存存储器有主存储块和信息块组成 大容量产品主存储块最大为64K×64位,每个存储块划分为256个2K字节的页编程和擦除闪存 闪存编程一次可以写入16位(半字) 闪存擦除操作可以按页面擦除或完全擦除(全擦除)。全擦除不影响信息块编程过程 页擦除过程 操作步骤 1.解锁 2.读操作 3.擦除操作 4.写操作 5.获取FLASH状态 6.锁定举
2017-08-23 12:27:18 1238
转载 stm32 SPI-FLASH W25Q64
The W25Q64BV array is organized into 32,768 programmable pages of 256-bytes each. Up to 256 bytes can be programmed at a time. Pages can be erased in groups of 16 (sector erase), groups of 128 (32KB bl
2017-08-22 15:32:56 4720
转载 stm32 FSMC-TFTLCD显示
TFTLCD TFT液晶屏常用的通信模式主要有6800模式和8080模式,对于TFT彩屏通常都使用8080并口(简称80并口)模式8080模式的读写时序其实跟LCD1602或者LCD12864的读写时序是差不多的。8080接口有5条基本的控制线和多条数据线,数据线的数量主要看液晶屏使用的是几位模式,有8根、9根、16根、18根四种类型FSMC FSMC模块能够与同步或异步存储器和16位PC存储器
2017-08-21 10:55:37 4013
转载 stm32 CAN通信 TJA1040
CAN协议特点1.多主控制 所有单元都可以发送消息,根据标识符(Identifier简称ID)决定优先级。仲裁获胜(被判定为优先级最高)的单元可继续发送消息,仲裁失利的单元则立刻停止发送而进行接收工作2.系统的柔软性 与总线相连的单元没有类似于“地址”的信息。因此在总线上增加单元时,连接在总线上的其它单元的软硬件及应用层都不需要改变3.通信速度较快,通信距离远 最高 1Mbps(距离小于40M
2017-08-19 14:42:27 13955 3
转载 stm32 RS485 SP3485
RS485 是半双工通信(2 线制) SP3485芯片的DE与RE短接在一起连接在STM32F1芯片的PG3上,通过PG3管脚就可以控制 SP3485的收发,当PG3=0时,为接收模式,当PG3=1时,为发送模式相关文章:http://blog.csdn.net/zhangxuechao_/article/details/77095985举例void USART2_IRQHandler(){
2017-08-18 11:13:54 9557 1
转载 stm32 红外
相关文章:http://blog.csdn.net/zhangxuechao_/article/details/75039906举例u8 ir_tick() //记录高电平时间{ u8 i = 0; while(ir_in == 1) { i++; if(i >= 250) { break;
2017-08-18 09:17:15 862
转载 stm32 ds18b20 温度传感器
相关文章:http://blog.csdn.net/zhangxuechao_/article/details/74991985举例void DS18B20_in(){ GPIO_InitTypeDef gpio = { GPIO_Pin_11, GPIO_Speed_50MHz, GPIO_Mode_IPD };
2017-08-17 16:40:26 2534 2
转载 stm32 i2c eeprom 24C02
电路图 相关文章:http://blog.csdn.net/zhangxuechao_/article/details/74936798举例#define i2c_scl PBout(10)#define i2c_sda PBout(11)#define i2c_ack PBin(11)void I2C_init(){ GPIO_InitTypeDef gpio10 = {
2017-08-16 18:28:11 723
转载 stm32 rtc 实时时钟
STM32 的实时时钟是一个独立的定时器通常会在后备区域供电端加一个纽扣电池,当主电源没有电的时,RTC不会停止工作若VDD电源有效,RTC可以触发秒中断、溢出中断和闹钟中断RTC配置步骤> 1.使能电源时钟> 2.使能后备域时钟> 3.开启RTC后备寄存器写访问> 4.复位备份区域> 5.开启外部低速振荡器> 6.选择RTC时钟> 7.使能RTC时钟> 8.设置RTC的分频
2017-08-15 23:22:35 1089
原创 stm32F1 DMA
DMA,全称是Direct Memory Access,中文意思为直接存储器访问DMA可用于实现外设与存储器之间或者存储器与存储器之间数据传输的高效性DMA请求映像 各通道的DMA1请求: 各通道的DMA2请求: DMA配置步骤 1.使能DMA控制器时钟 2.初始化DMA通道,DMA_InitTypeDef 3.使能外设DMA功能 4.开启DMA的通
2017-08-14 22:53:15 1117
转载 stm32 ADC模数转换 ADC多通道 ADC DMA
通过调节电位器,改变AD转换值和电压值STM32F1 ADC 配置步骤 1.使能GPIO时钟和ADC时钟 2.配置引脚模式为模拟输入 3.配置ADC的分频因子 4.初始化ADC参数,ADC_InitTypeDef 5.使能ADC 6.执行ADC校准 7.设置ADC软件启动 8.读取ADC转换值 9.设置ADC规则,采样时间等 10.
2017-08-14 13:43:24 4228
转载 stm32 待机模式
低功耗模式 降低系统时钟速度 不使用APBx和AHB外设时,将对应的外设时钟关闭 睡眠模式(Cortex™-M3内核停止,所有外设包括Cortex-M3核心的外设,如NVIC、系统时钟(SysTick)等仍在运行) 停止模式(所有的时钟都已停止) 待机模式(1.8V内核电源关闭)
2017-08-13 17:07:07 996
原创 stm32 输入捕获
根据定时器的计数频率,我们就可以算出t1-t2的时间,从而得到高电平脉宽输入捕获配置步骤 1.使能定时器时钟 2.使能GPIO时钟,设置引脚模式 3.初始化定时器参数,预分频器的值、自动重装载的值等设定 4.设置通用定时器的输入捕获参数,开启输入捕获功能 5.开启捕获和定时器溢出中断 6.初始化NVIC外设,设置定时器中断优先级 7.使能定时器 8.编写
2017-08-13 13:48:07 1275
转载 stm32 窗口看门狗 WWDG
窗口看门狗WWDG其实和独立看门狗类似,它是一个7位递减计数器不断的往下递减计数,当减到一个固定值0x40时还不喂狗的话,产生一个MCU复位,这个值叫窗口的下限,是固定的值,不能改变窗口看门狗(WWDG)的时钟来自PCLK1,即挂接在APB1总线上,APB1时钟最大为36M窗口值由配置寄存器WWDG_CFR的[6:0]位设置,所以最大值0x7F当递减计数器递减到0x40的时候,还不会马上产生复位,如
2017-08-11 23:38:50 584
转载 stm32 独立看门狗 IWDG
独立看门狗IWDG 独立看门狗简单理解就是一个12位递减计数器,当计数器从某一个值递减到0时,系统就会产生一次复位独立看门狗由专用低速时钟LSI驱动,其频率一般在30-60KHz之间,通常选择40KHz作为IWDG时钟IWDG配置步骤 1.开启寄存器访问 2.设置预分频因子 3.设置重装载值 4.看门狗计数器重装载值 5.开启IWDG举例void IWDG_init(
2017-08-11 18:09:55 415
转载 stm32 printf重定向
printf函数调用fputcint fputc(int ch, FILE *p){ USART_SendData(USART1, ch); //重定向到串口 while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET); return ch;}在KEIL中使用printf要勾选“微库”
2017-08-11 16:00:47 380
转载 stm32 usart 串口
比特率是每秒钟传输二进制代码的位数,单位是:位/秒(bps)。如每秒钟传送240个字符, 而每个字符格式包含10位(1个起始位、1个停止位、8个数据位),这时的比特率为:10位 × 240个/秒 = 2400bpsUSART 串口通信配置步骤 1.使能串口时钟 2.使能GPIO端口时钟 3.GPIO端口模式设置 4.初始化串口参数,波特率、 数据位、 停止
2017-08-11 12:51:02 1820
原创 stm32 PWM
脉冲宽度调制是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术高级定时器可以同时产生多达7路的PWM输出 而通用定时器也能同时产生多达4路的PWM输出脉冲宽度调制模式可以产生一个由TIMx_ARR寄存器确定频率、由TIMx_CCRx寄存器确定占空比的信号PWM边沿对齐模式 当TIMx_CNT小于TIMx_CCRx时PWM信号参考OCxREF为高,否则为低。如果TIMx_CCRx中的
2017-08-10 22:10:34 729
原创 stm32 定时器 通用定时器
STM32F10xxx 2个基本定时器(TIM6、TIM7) 4个通用定时器(TIM2、 TIM3、 TIM4和TIM5) 2个高级定时器(TIM1、TIM8)每个定时器都是完全独立的,没有互相共享任何资源。它们可以一起同步操作TIMx主要功能 16位向上、向下、向上/向下自动装载计数器 16位可编程(可以实时修改)预分频器,计数器时钟频率的分频系数为1~65536之间的
2017-08-10 14:34:04 914
转载 stm32 外部中断
STM32F10x芯片有84个中断通道,包括 16 个内核中断和 68 个可屏蔽中断NVIC NVIC英文全称是Nested Vectored Interrupt Controller,中文意思就是嵌套向量中断控制器,它属于M3内核的一个外设,控制着芯片的中断相关功能。由于ARM给NVIC预留了非常多的功能,但对于使用M3内核设计芯片的公司可能就不需要这么多功能,于是就需要在NVIC上裁剪。ST公
2017-08-09 22:42:37 721
转载 stm32 按键操作
抖动时间的长短由按键的机械特性决定,一般为5ms~10msvoid key(){ static u8 flag = 1; if(flag == 1 && KEY_UP == 1) { delay_ms(10); if(KEY_UP == 1) { flag = 0; led1 =
2017-08-09 12:06:24 1396
转载 stm32 SysTick系统定时器
它是一个24位向下递减的定时器,每计数一次所需时间为1/SYSTICK,SYSTICK是系统定时器时钟,它可以直接取自系统时钟,还可以通过系统时钟8分频后获取 当定时器计数到0时,将从LOAD 寄存器中自动重装定时器初值,重新向下递减计数 如果开启SysTick中断的话,当定时器计数到0,将产生一个中断信号void SysTick_Init(u8 SYSCLK){ SysTick_CL
2017-08-09 09:04:45 512
转载 stm32位带
#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)<<5)+(bitnum<<2)) #define MEM_ADDR(addr) *((volatile unsigned long *)(addr)) #define BIT_ADDR(addr, bitnum) MEM_ADDR(B
2017-08-08 17:40:14 1179
转载 *** FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED
出现如下错误:*** FATAL ERROR L250: CODE SIZE LIMIT IN RESTRICTED VERSION EXCEEDED原因是,KEIL未破解,重新破解即可
2017-08-08 11:22:55 1712
原创 nRF24L01无线介绍
CE:RX或TX模式选择 CSN:SPI片选信号 SCK:SPI时钟 MOSI:SPI数据输入 MISO:SPI数据输出 IRQ:可屏蔽中断脚51测试程序 实测可用!#define TX_ADR_WIDTH 5#define RX_ADR_WIDTH 5#define TX_PLOAD_WIDTH 32#define RX_PLOAD_WIDTH
2017-08-07 22:24:02 3363
原创 \lib\cmsis\stm32f10x.h(298): error: #67: expected a "}"
更新KEIL5以后,原KEIL4 STM32模版库编译失败出现如下错误:\lib\cmsis\stm32f10x.h(298): error: #67: expected a "}"...解决办法: 去掉手动添加的一个宏定义STM32F103_HD,KEIL5已经自动添加了
2017-08-07 10:20:50 24439 42
转载 STM32点亮LED
原理图 测试灯,接GPIO外设B,Pin 12 举例 前提,工程模版建立好#include "stm32f10x.h"void delay(u32 i){ while(i--);}void led_init(){ GPIO_SetBits(GPIOB, GPIO_Pin_12); //设置数据端口 delay(6000000); GPIO_ResetBit
2017-08-04 13:01:24 792
转载 STM32工程模版
STM32工程模版,看过来ST库源码去官方下载 创建工程目录 doc:存放说明文档 lib:存放库文件 listing:存放编译产生的中间文件 output:存放生成的文件 project:存放工程文件 user:存放用户文件。自己编写的源文件拷贝库文件 cmsis存放ARM公司提供的内核函数接口文件,fwlib存放st公司提供的函数接口文件 拷贝到
2017-08-04 11:16:36 494
转载 STM32启动BOOT0 BOOT1设置方法
原理图 启动方式 第一种启动方式是最常用的用户FLASH启动。默认启动方式 第二种启动方式是STM32内嵌的SRAM启动。该模式用于调试 第三种启动方式是系统存储器启动方式,不建议使用这种,速度比较慢。STM32中自带的BootLoader就是在这种启动方式中,如果出现程序硬件错误的话可以切换BOOT0/1到该模式下重新烧写Flash即可恢复正常
2017-08-03 20:08:50 5015
esp8266_non_os_sdk_api_reference_cn.pdf
2017-07-18
串口调试助手
2017-05-10
get-pip.py
2015-06-18
Qt_5_14_2_MSVC2017_64bit-Release
2021-04-19
ALINX黑金Zynq7000开发平台配套教程V1.02.pdf
2018-12-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人