接触STM32有一段时间了,也算是简单入了门,但由于一些原因,今天才来写本应该是入门级的按键相关程序,分为扫描模式和中断模式MCU:STM32F334C81.扫描模式首先配置按键引脚为上拉输入模式,根据原理图按键接PA0,按
基于stm32 F401 discovery版实现button polling & interrupt点亮LED/*********************************************************************************@fileTemplate/main.c*@authorMCDApplicationTeam*@version
在学习stm32库函数过程中,笔者遇到大量的assert_param语句。经查明,assert_param的作用就是用来判断传递给函数的参数是否是有效值。以下是从固件库中复制粘贴的:void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Pe
1、串行通信 软件仿真STM32通过串口USART1发送26个英文字母(配置寄存器)/***************************************************************************************************硬件平台:STM32F103VC*学习重点:
想要读懂启动文件,需要一些基本的汇编基础。 1 在汇编语言中,注释是 ; 2汇编ARM指令DCDDCD ( DCDU )用于分配一片连续的字存储单元并用指定的数据初始化。 语法格式: 标号 DCD (或 DCDU ) 表达式 DCD (或 DC
NVIC驱动有很多的用途,如使能或者失能IRQ(中断请求),或者是使能或失能单独的IRQ通道,或者是改变其优先级。以下介绍相关函数的功能和基本用法。1.NVIC_DeInit函数的功能是将外设NVIC寄存器重设为默认值。2.NVIC)
在使用JLINK下载器期间,出现JLINK突然不能使用,指示灯不亮,曾以为板子烧坏,多次出现此故障后,故此上网寻查,一探究竟。刚上百度,发现众人也有此现象。原因:山寨版的jlink会出现固件丢失。解决方法:重新刷固件
背景知识:https://zh.wikipedia.org/wiki/I%C2%B2Cstm32中的IIC描述:I2C功能描述:I2C模块接收和发送数据,并将数据从串行转换成并行,或并行转换成串行。可以开启或禁止中断。接口通过数据引脚(SDA)和时钟引脚(SC
STC89C52rc是STC公司生产的一种低功耗、高性能的CMOS8位控制器,具有8k字节系统可编程FLASH存储器。stc89c51用的是经典的MCS-51内核,但是做了很多改进,使芯片具有传统51不具备的功能,但单芯上有灵活的8位CPU和系统
在做四旋翼时出现的一些问题,总结记录一下。PWM定时器初始化先上代码:(代码不包括端口的初始化)voidTim2_init(void){TIM_TimeBaseInitTypeDefTIM_TimeBaseStructure;TIM_OCInitTypeDefTIM_OCInitStructure;RCC_A
最近在玩车载液晶仪表,之前用Arduino+USART液晶,后来发现Arduino性能不够,就转向STM32。由于需要在液晶屏上显示手机信息,先是采用了普通点阵字库方案,个人感觉效果惨不忍睹,满屏的锯齿。翻遍网络,没发现比较合
STM32的硬件I2C不太好用,N多人深受其困扰,本人也不例外.所以干脆一不做二不休,用模拟的I2C算了,虽然速度不及硬件I2C,在一般的应用中还是不错的.帖上代码和协议分析图,造福广大受STM32的I2C困扰的朋友,哈哈!为了跟硬件
下面编写下USB键盘的程序,依然在CustomHID工程上修改。依旧最先修改的是usb_desc.c文件。我们从设备描述符开始讲述。设备描述符需要修改下bMaxPacketSize(最大包长度)域为0x08,因为被本次的工程最大通讯长度就是8字
一。 寄存器和固定库开发的区别和联系STM32的寄存器很多,不容易记忆,调用固定库函数,设置好入口参数,从而操作相应的寄存器。二。MDK下寄存器地址和名称映射关系GPIO各端口的地址GPIOA 的寄存器的地址=GPIOA 基地
1总体描述:DM9000A的PHY能够以10BASE-T的标准在UTP3\\4\\5或者以100BASE-T的标准在UTP5上接口通信。它的自动协商功能是够自动配置DM9000A最大地发挥出自身性能。它同时支持IEEE 802.3X全双工数据流通信。2、结构图:3
最近在项目中要用到飞思卡尔的MMA7660这一款传感器,我在STM32中使用的是模拟I2C来读写它的寄存器,闲话不多说,代码如下:1、IO引脚配置和模拟I2C的方法/********************(C)COPYRIGHT2015ASTO****************
在NVIC中有一个硬fault状态寄存器(HFSR),它指出产生硬fault的原因。如果不是由于取向量造成的,则硬fault服务例程必须检查其它的fault状态寄存器,以最终决定是谁上访的。1、寄存器描述首先查看硬故障寄存器,判别
STM32和STM8的串口貌似都可以一次发送9位数据,最近才注意到这个,在此记录。一般不带奇偶校验位的串口数据:起始位(1)+数据位(8)+停止位(1)带奇偶校验位的串口数据:起始位(1)+数据位(8)+校验位(1)+停止
//位带操作,实现51类似的GPIO控制功能//具体实现思想,参考第五章(87页~92页).//IO口操作宏定义#define BITBAND(addr, bitnum) ((addr & 0xF0000000)+0x2000000+((addr &0xFFFFF)
STM32三种启动模式对应的存储介质均是芯片内置的,它们是: 1)用户闪存 = 芯片内置的Flash。2)SRAM = 芯片内置的RAM区,就是内存啦。3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Boot