STM32

关注409人关注
我要报错
STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex?-M0,M0+,M3, M4和M7内核(ST's product portfolio contains a comprehensive range of microcontrollers, from robust, low-cost 8-bit MCUs up to 32-bit ARM-based Cortex?-M0 and M0+, Cortex?-M3, Cortex?-M4 Flash microcontrollers with a great choice of peripherals. ST has also extended this range to include an ultra-low-power MCU platform)。按内核架构分为不同产品:主流产品(STM3
  • STM32——JLINK下载器刷固件

    在使用JLINK下载器期间,出现JLINK突然不能使用,指示灯不亮,曾以为板子烧坏,多次出现此故障后,故此上网寻查,一探究竟。刚上百度,发现众人也有此现象。原因:山寨版的jlink会出现固件丢失。解决方法:重新刷固件

  • 寒假学习之stm32(16)----IIC通信协议

    背景知识:https://zh.wikipedia.org/wiki/I%C2%B2Cstm32中的IIC描述:I2C功能描述:I2C模块接收和发送数据,并将数据从串行转换成并行,或并行转换成串行。可以开启或禁止中断。接口通过数据引脚(SDA)和时钟引脚(SC

  • STM32学习014_STC89C51RC

    STC89C52rc是STC公司生产的一种低功耗、高性能的CMOS8位控制器,具有8k字节系统可编程FLASH存储器。stc89c51用的是经典的MCS-51内核,但是做了很多改进,使芯片具有传统51不具备的功能,但单芯上有灵活的8位CPU和系统

  • stm32之PWM输出

    在做四旋翼时出现的一些问题,总结记录一下。PWM定时器初始化先上代码:(代码不包括端口的初始化)voidTim2_init(void){TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;TIM_OCInitTypeDefTIM_OCInitStructure;RCC_A

  • STM32 抗锯齿中文显示另类方案分享

    最近在玩车载液晶仪表,之前用Arduino+USART液晶,后来发现Arduino性能不够,就转向STM32。由于需要在液晶屏上显示手机信息,先是采用了普通点阵字库方案,个人感觉效果惨不忍睹,满屏的锯齿。翻遍网络,没发现比较合

  • STM32 模拟I2C 程序

    STM32的硬件I2C不太好用,N多人深受其困扰,本人也不例外.所以干脆一不做二不休,用模拟的I2C算了,虽然速度不及硬件I2C,在一般的应用中还是不错的.帖上代码和协议分析图,造福广大受STM32的I2C困扰的朋友,哈哈!为了跟硬件

  • STM32 keyboard USB键盘功能的实现

    下面编写下USB键盘的程序,依然在CustomHID工程上修改。依旧最先修改的是usb_desc.c文件。我们从设备描述符开始讲述。设备描述符需要修改下bMaxPacketSize(最大包长度)域为0x08,因为被本次的工程最大通讯长度就是8字

  • 6. STM32基础知识入门

    一。 寄存器和固定库开发的区别和联系STM32的寄存器很多,不容易记忆,调用固定库函数,设置好入口参数,从而操作相应的寄存器。二。MDK下寄存器地址和名称映射关系GPIO各端口的地址GPIOA 的寄存器的地址=GPIOA 基地

  • STM32网络通信之DM9000A电路设计

    1总体描述:DM9000A的PHY能够以10BASE-T的标准在UTP3\\4\\5或者以100BASE-T的标准在UTP5上接口通信。它的自动协商功能是够自动配置DM9000A最大地发挥出自身性能。它同时支持IEEE 802.3X全双工数据流通信。2、结构图:3

  • STM32中使用MMA7660重力加速度传感器

    最近在项目中要用到飞思卡尔的MMA7660这一款传感器,我在STM32中使用的是模拟I2C来读写它的寄存器,闲话不多说,代码如下:1、IO引脚配置和模拟I2C的方法/********************(C)COPYRIGHT2015ASTO****************

  • 调试STM32遇到Hardfault知识总结

    在NVIC中有一个硬fault状态寄存器(HFSR),它指出产生硬fault的原因。如果不是由于取向量造成的,则硬fault服务例程必须检查其它的fault状态寄存器,以最终决定是谁上访的。1、寄存器描述首先查看硬故障寄存器,判别

  • STM32串口9位数据,无奇偶校验

    STM32和STM8的串口貌似都可以一次发送9位数据,最近才注意到这个,在此记录。一般不带奇偶校验位的串口数据:起始位(1)+数据位(8)+停止位(1)带奇偶校验位的串口数据:起始位(1)+数据位(8)+校验位(1)+停止

  • STM32中的位带(bit-band)操作

    //位带操作,实现51类似的GPIO控制功能//具体实现思想,参考第五章(87页~92页).//IO口操作宏定义#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)

    单片机
    2018-08-02
    位带 STM32
  • stm32 boot启动经验

    STM32三种启动模式对应的存储介质均是芯片内置的,它们是: 1)用户闪存 = 芯片内置的Flash。2)SRAM = 芯片内置的RAM区,就是内存啦。3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Boot

  • STM32到GD32移植攻略

    使用STM32的芯片的朋友,可以很方便的将移植到GD32上面,下面就具体移植过程分享一下:整个移植过程可以分为硬件和软件两个方面。硬件方面:首先要确定先前所使用ST芯片的flash大小和管脚数量,然后替换成GD相同大小

  • stm32下载的问题

    原因是JTAG已经被占用,当然不能再用JTAG操作啦!此时要保证CPU不进入正常运行状态,才能使用JTAG。解决方案:options for target ---->Debug---->右上方---->use 后面的setting按钮------>左上方Ort下面的JTAG变为S

    单片机
    2018-08-01
    下载 STM32
  • STM32串口在首次发送字符的时候,首字符丢失解决办法

    网上关于发送字符的代码大多如下:USART_SendData(USART1, (uint8_t)ch);while( USART_GetFlagStatus(USART1, USART_FLAG_TC) != SET);其实咋一看是说的通的,但是在仔细看手册的时候发现 TC 和 TXE 标志位在复位的时

  • STM32程序跳转需要注意的问题

    Note: keil生成的.axf或者.elf都是可以执行的镜像文件。IAP User Program 需要注意的问题要设置好好中断向量的问题,假设User Program 开始地址是(0x08008000),那么中断向量就必须设在在0x08008000处,中断向量要

  • STM32位带操作举例

    STM32位带操作举例intmain(void){GPIO_InitTypeDefGPIO_InitStruction;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);GPIO_InitStruction.GPIO_Pin=GPIO_Pin_8;GPIO_InitStruction.GPIO_Mode=GPIO_Mode_Out_

  • STM32通用定时器配置

    一、STM32通用定时器原理STM32系列的CPU,有多达8个定时器,其中TIM1和TIM8是能够产生三对PWM互补输出的高级定时器,常用于三相电机的驱动,它们的时钟由APB2的输出产生。其它6个为普通定时器,时钟由APB1的输出产生