当前位置: 移动技术网 >

stm32

  (共找到 100 条与 stm32 相关的信息)

#if和#ifdef的区别

2019-04-30 07:21 | 评论:0 次 | 浏览: 0

学习STM32偶然发现:在Keil中直接预先定义宏USE_STDPERIPH_DRIVER,但是却没有指定宏的值。而在头文件中判断用的是如下代码: 由此引发对#if和#ifdef的思考:这两者有什么区别? 1、#ifdef指令说明:如果预处理器已经定义了后面的标识符,那么执行所有指令并编译C代码,直 ...

0基础自学C语言视角:标准IO_fopen( )、fclose()

2019-08-28 17:45 | 评论:0 次 | 浏览: 0

思前想后一个月,我终于敲下了我的第一篇开山之作。 博客千千万,我的博客首先记录的是学习时候的理解,用于给自己翻阅查找,现在主要研究的是C语言和STM32。如果能帮到你,那是最好的,假如我写的东西有错误欢迎指正,所以请反复对比,仅作参考。其次,这里不仅记录学习,也会写下我在朋友圈不能公开的想法和秘密! ...

STM32之GPIO底层原理与编程实践

2020-01-16 15:04 | 评论:0 次 | 浏览: 0

一、什么是GPIO GPIO全称为General Purpose Input Output,中文理解为通用输入输出端口。它指的是编程可控制的引脚,即可以控制引脚是作为输入来用,还是输出功能,又或者是交给片上外设使用(复用)。 二、GPIO结构框图 理解GPIO硬件电路的实现,有助于编程的理解。下图是 ...

LTE Cat 1 STM32 4G AIR724

2020-07-09 17:33 | 评论:0 次 | 浏览: 0

2019年10月,工业和信息化部新闻发言人,信息通信发展司司长闻库表示,我国移动通信的网络在2G、3G退网条件已经逐步成熟。在全球,由于4G、5G网络的普及,已经有100多家运营企业实施了2G、3G的退网。在我国,随着5G建设高速推进,2G、3G退出舞台也将是大势所趋。那么问题来了,在这个被2G、GSM、CDMA所占据大量基数的广域连接的物联网市场,将会如何演变?不可否认,一部分基于静态的、主动上报的应用场景,如智能表计,会继续沿用低功耗NB-IoT。但同时,还有更多的一部分具有实时性,移动性,需要一定带

DS1307实时时钟RTC读取(STM32)记录

2020-07-13 16:54 | 评论:0 次 | 浏览: 0

最开始将函数从51单片机移植过来,如何整都读取出来的数据是65,不是实时时钟数据,查了下手册,发现必须4.5V-5.5V供电才可以,没有办法,跳线解决,但SCL与SDA采用3.3V+10K电阻上拉倒没有问题;读取函数设置如下(PB12 PB13)://初始化IICvoid IIC_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_...

慕尼黑(上海)电子展-先进技术拾英

2020-07-14 14:40 | 评论:0 次 | 浏览: 0

德国裴特笙(Peters)集团三防漆,灌封胶(此家特种油墨尤其好)英国 易力高公司封装树脂(环氧)聚对二甲苯涂层(化学气相沉积工艺)高强度温控开关华为嵌入式盒状电源,AC—DC转化器华为 无线电源模块,服务器电源5G基站测试技术相位噪声分析技术(针对信号源和组件)车载电子测试技术(接线盒、发电机、继电器、无刷直流电机)电动汽车-电气架构宽带无线通讯测试技术IP应用测试技术ST(意法半导体)-STM32MCU技术ST-TouchGFX 人机界面开发工具STM32 (IEEE802.

STM32 FSMC 16位寻址 地址移位的解读

2020-07-15 11:22 | 评论:0 次 | 浏览: 0

一、当 Bank1 接的是 16 位宽度存储器的时候:HADDR[25:1] FSMC_A[24:0]。当 Bank1 接的是 8 位宽度存储器的时候:HADDR[25:0] FSMC_A[25:0]。二、//LCD 操作结构体typedef struct{ vu16 LCD_REG;vu16 LCD_RAM;} LCD_TypeDef;//使用 NOR/SRAM 的 Bank1.sector4,地址位 HADDR[27,26]=11 A10 作为数据命令区分线//注意 16 位.

RT-Thread Studio 使用笔记(二):如何使用SPI设备

2020-07-19 11:17 | 评论:0 次 | 浏览: 0

写在最前使用RT-Thread Studio开发环境开发STM32单片机程序,与MDK使用env有一定的差别,对于刚开始使用的程序员来说,主要是找不到配置选项在哪里,上一篇介绍了TIM设备的使用方法,这篇介绍SPI的使用方法,流程与TIM类似。大致总结为以下几个步骤:在RT-thread settings中使能对应的驱动框架在stm32f4xx_hal_conf.h中使能对应的模块(HAL_XX_MODULE_ENABLED)在board.h中启用外设类型对应的宏定义板级支持,通道号以及I

RT-Thread Studio 使用笔记(一):如何使用TIM定时器

2020-07-19 11:18 | 评论:0 次 | 浏览: 0

使用RT-Studio开发环境开发STM32单片机程序,与之前使用env有一定的区别,包括文件目录结构,配置方法等,下面介绍一下如何使用硬件定时器。 1. 在rt-thread settings中使能硬件定时器框架并保存,如下图所示:2. 在board.h中使用宏定义#define BSP_USING_TIM以及定义使用的定时器通道,比如#define BSP_USING_TIM23. 根据要使用的定时器,修改tim_config.h,增加或修改TIM2_CONFIG...

MCU系列之-浅谈sbus通信协议(源码,原理图均有)

2020-07-29 17:03 | 评论:0 次 | 浏览: 0

大家好,今天我发表一篇关于sbus通信协议的解析,刚开始作者为啥要做这个东西呢,因为作者在2019年4月21日参加了广东举办的中国工程机器人大赛,做的是小型无人机,作者用的是FS-i6遥控,刚开始的通信协议是飞控作者写好了,后来在我回到学校开始做飞思卡尔比赛的时候,突然想遥控飞卡车,哈哈哈,这玩起来肯定爽歪歪啊,初始时候我本来想用蓝牙手机遥控,这个太简单了,写几行代码,发送几个命令就ok了,但是后来想了想,手机遥控肯定手感不好啊,我不是有航模遥控器吗,就用它了,于是一不做二不休撸起袖头开始干,用FS的话有

mdk仿真进入EXPORT SysTick_Handler [WEAK] B .后,无法跳出解决方法

2020-07-29 17:19 | 评论:0 次 | 浏览: 0

在用mdk仿真调试全速运行后,不能进到断电处,于是停止发现程序卡死在启动文件startup_stm32xxxxx.s的SysTick_Handler中。startup_stm32l063xx.s撤销:Ctrl/Command + Z重做:Ctrl/Command + Y加粗:Ctrl/Command + B斜体:Ctrl/Command + I标题:Ctrl/Command + Shift + H无序列表:Ctrl/Command + Shift + U有序列表:Ctrl/Command

STM32驱动BMP280模块

2020-07-29 17:20 | 评论:0 次 | 浏览: 0

BMP280大气压传感器看似很冷门,或许大家都觉得,大气压不是一个地区就那么一个值.测量它有什么用?但是这个模块很神奇,它测量精度很高,大气压和所处海拔关系密切,但是精度高的特点使得它可以测你的所在高度,你拿着传感器起身,他的ADC值会发生变化.大佬们就用它给飞控定高(也就是很秀的操作,四轴悬浮在那里,一动不动,很神奇吧!),还有可以做天气监控(Weather monitoring,数据手册写的),所以它是很有必要玩玩的。先说一下别人分享的代码,虽然编程水平很高,但是很难看懂那些结构体,我总结了一些,把我

最全OLED驱动集合,IIC、三线SPI、四线SPI、8080驱动OLED

2020-07-29 17:38 | 评论:0 次 | 浏览: 0

## 阅读须知阅读本文需要有一定的STM32基础。## 前言我经常用的是IIC驱动,因为只有2个IO口,使用也方便。前段时间拿到SPI接口的OLED,于是就去捣鼓了三线SPI驱动。本驱动适用SSD1306,其他芯片的鄙人没有测试,仅供参考。SSD1306手册:https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf代码中的宏定义对应接线: OledCS :CS--->PB12 OledRS :DC-...

嵌入式学习经历帖

2020-07-29 17:38 | 评论:0 次 | 浏览: 0

随着科技的进步,全凭机械结构完成各种运动的时代已经渐行渐远,不过我仍然对于之前创造的各种运动机构着迷。现在技术的实现,很多都是软件+硬件的组合,此种实现必然离不开嵌入式编程。从研一下学期到目前工作了两年,陆陆续续接触了四年的嵌入式编程,学生时代主要使用DSP,工作了主要使用stm32和板卡Linux。要说学习经历,大约就是一开始买一个开发板,然后进行不断学习吧。基础需要C语言,模拟电路,数字电路,会用示波器,万用表,明白各种接口是用来干嘛的。学生时代主要是用dsp做一个惯性导航的程序,基本结构就

Proteus8.9 VSM Studio GCC编译器仿真STM32F401VE_RtThread系列a02_超声波测距

2020-08-11 17:04 | 评论:0 次 | 浏览: 0

一,打开文件(可以随文下载放置在文档中打开)。(如下图1所示)图1二,调整原理图大小,适合可视,另存工程文件。(如下图2,3,4所示)图2图3图4三,点击Source Code标签。(如下图5所示)图5四,编辑main.c Proteus8.9 VSM Studio GCC编译器仿真STM32F401VE_RtThread系列a02_超声波测距 (如下图6所示)五,Main.c 代码:Main.c file generated by New Project wizardAu

利用Python实现串口通信--以Arduino UNO为例

2020-08-11 17:05 | 评论:0 次 | 浏览: 0

本博客为作者自我学习所整理,若对读者有帮助,不胜荣幸利用Python实现串口通信——以Arduino UNO为例实现原理基础内容Python部分Arduino部分Arduino==>PythonPython==>Arduino应用案例实现原理利用Python实现串口通信本质上是利用python输出一个信号(字符串、数字),通过串口(COM)传送给硬件设备,例如:Arduino、STM32等。硬件设备接收到该信号,通过已经烧录好的程序自行处理。因此,在实现过程中,主要关注点便是:①Ar

嵌入式-ARM-点亮LED(GPIO控制点亮LED)

2020-08-11 17:18 | 评论:0 次 | 浏览: 0

嵌入式-ARM-学习总结(2):点亮LED,我是嵌入式点灯工程师!一、通过GPIO控制点亮LED1.**LED点亮的原理:**2.GPIO是什么一、通过GPIO控制点亮LED首先说一下LED这个外设,相信都是从点灯开始的,从51,到stm32,到fpga,到现在这篇写的ARM。LED作为一个简单的,直观的外设,可以让新手快速切入到对于开发板内部的理解。1.LED点亮的原理:D26是指示电源状态,只要上电就会常亮。D22:GPJ0_3D23:GPJ0_4D24:GPJ0_5D25:PWMTO

对STMG474RE Flash 空间大小不同BootLoader方法

2020-08-11 17:18 | 评论:0 次 | 浏览: 0

1.1 FLASH空间足够大,能放下多APP+BootLoader主要针对STMG474RE FLASH空间有512KB状态图状态机系统下发固件RAM验证片内FLASH升级片内FLASH验证1××××2✔×××3✔✔××4✔✔✔×5✔✔✔✔应对方案:#mermaid-svg-zLUlI0eRpii1tM7t .label { font-family: 'trebuchet ms', v

RT-Thread-STM32F103C8T6移植

2020-08-11 17:21 | 评论:0 次 | 浏览: 0

RT-Thread-STM32F103C8T6移植准备材料合集1.RT-Thread原码下载并解压(官网下载)2.STM32F103裸机工程(我用的是正点原子的STM32F103的HAL库)3.温馨提示(看不清图片可以从Ctrl+鼠标滑轮放大)4.如果想要word版的笔记可以私聊我,因为这个编辑器还不太会用。。所以没有传图在里面,(没图你说个p呀)一、准备裸机工程1.我使用的是正点原子的HAL库的一个工程,提前编译好,调试裸机工程没有任何问题二、添加RT-Thread源码(src,inclu

STM32CubeIDE 使用OpenOCD debug调试

2020-08-11 17:28 | 评论:0 次 | 浏览: 0

STM32CubeIDE 使用OpenOCD debug问题解决问题针对手头的正点原子潘多拉(Pandora IoT)开发板在使用STM32CubeIDE时,提示ST-Link固件升级,不能下载,更不能debug。解决1.方法一:固件升级这里可以参考:暴力升级你的 ST-Link 及 STM32CubeIDE2.方法二使用OpenOCD首先安装OpenOCD(网上一大堆,不赘诉)cfg文件:Pandora的芯片时STM32L475VET6所以这里选择比较接近的stm

MPU6050 DMP移植到Air724/Air800 Lua语言

2020-08-12 09:50 | 评论:0 次 | 浏览: 0

MPU6050 DPM移植到Air724/Air800 Lua语言MPU6050MPU6050是一个三轴加速度+三轴陀螺仪的六轴传感器,自带DMP数字运动处理器,可以减少MCU复杂的融合演算数据、感测器同步化、姿态感应等负荷。MPU6050网上的学习资料很多,以正点原子STM32开发板为基础,开始MPU6050的入坑实验。移植到Air724/Air800 Lua语言MPU6050 DMP计算pitch和roll,说难也难,说简单也简单。第一步,MPU6050 IIC读写第二步,MPU60

Proteus8.9 VSM Studio GCC编译器仿真STM32F401VE_RtThread系列a03_动态线程超声波测距

2020-08-12 09:50 | 评论:0 次 | 浏览: 0

一,打开文件(可以随文下载放置在文档中打开)。(如下图1所示)图1二,调整原理图大小,适合可视,另存工程文件。(如下图2,3,4所示)图2图3图4三,点击Source Code标签。(如下图5所示)图5四,编辑main.c Proteus8.9 VSM Studio GCC编译器仿真STM32F401VE_RtThread系列a03_动态线程超声波测距 (如下图6所示)五,Main.c 代码:/* Main.c file generated by New Project wiz

STM32F030C8T6 内部RTC模块到2060年重置问题记录

2020-08-12 10:18 | 评论:0 次 | 浏览: 0

芯片平台:STM32F030C8T6测试RTC步骤:(1)先读出RTC的值(2)打印(3)延时2s后,年加1(4)循环操作无意中发现问题:第一次:年份在增加到 2060 年会重置时间为 2000 年。第二次:年份在增加到 2099 才会重置时间为 2000 年。第三次:年份在增加到 2060 年会重置时间为 2000 年。即每两次会有一次年份只到 2060 年就会重置时间,这应该是个bug,但是对实际使用基本没影响~~~~测试数据如下:[...

STM32F103移植UCGUI(µCGUI)(附示例工程)

2020-08-12 10:24 | 评论:0 次 | 浏览: 0

使用环境(蓝色粗体字为特别注意内容)1、软件环境:Keil MDK 5.152、硬件环境:STM32F103C8T6最小系统,ST7735 1.44寸TFT LCD3、参考文献:http://blog.chinaunix.net/uid-361890-id-2981509.htmlUCGUI官网上一篇文章里面写了TFT彩色LCD液晶屏的驱动方法,在本文中顺便记录一下移植UC-GUI...

在Linux下掌握arm和操作系统(2)--开发环境最小系统

2020-08-12 10:24 | 评论:0 次 | 浏览: 0

开发环境最小系统是指,搭建开发环境所需的最小部件.1,开发板,2.linux系统,3,USB转串口.1.先说开发板我使用的是STM32F103C8T6核心板,长这个模样:就中间这货,淘宝上也就在十几块钱,从上图看这功能还是很强大的嘛.而且STM32F103C8T6说是有64K flash,可实际上有128K.意外的惊喜.2.linux系统,我是Ubantu 16.04,在电...

(1)Asymptote——站在巨人的肩膀上编写一个属于自己的linux操作系统!

2020-08-12 10:44 | 评论:0 次 | 浏览: 0

一. 前言 最近无意间看到了一本书,《linux内核完全剖析》,竟然是零几年写的,真是深深佩服作者!这本书是基于早期的0.11版内核代码编写的,这也让我有了些许信心去阅读,如果去看2.6的代码,简直不敢想象。。。 之前看过李述桐老师的《从零到一教你写嵌入式操作系统》的tinyOS,那个平台是stm32,当时在原子的开发板上面跟着视频编写并运行过,之后工作了每天都在接触linu...

[今日事今日毕]学习嵌入式C中遇到的问题2020/08/11

2020-08-12 10:44 | 评论:0 次 | 浏览: 0

今日事今日毕你好,今天也坚持下来了,未来的路还有很长,我们一起努力。C语言关于如何按照书名/作者查询书籍信息struct Node* SearchByName(struct Node* HeadNode,char* BookName){struct Node* PMove = HeadNode -> next;struct Node* PHead = CreateHead();while(NULL != PMove){if(!strcmp(BookName,PMove-

STM32 通过按键控制小灯 蜂鸣器

2020-08-12 10:48 | 评论:0 次 | 浏览: 0

硬件设计:key0连接PE4上 低电平有效 设置成上拉电阻 0时代表被按下key1在PE3上 低电平有效 设置成上来电阻 0时代表被按下KEY_UP在PA0上 高电平有效 设置成下拉电阻 1时代表被按下三个按键都没有上拉何下拉电阻所有需要在内部设置上下拉电阻软件设计:GPIO初始化 相应的按键设置对应的模式mode:0不支持连续按;i,支持连续按按键返回值:0: 没有任何按键按下1: KEY0按下2: KEY1按下3: KEY UP按下优...

AT24C02 E2PROM芯片详解

2020-08-12 11:04 | 评论:0 次 | 浏览: 0

24C02是一个2K Bit的串行EEPROM存储器(掉电不丢失),内部含有256个字节。在24C02里面有一个8字节的页写缓冲器。A0,A1,A2:硬件地址引脚WP:写保护引脚,接高电平只读,接地允许读和写SCL和SDA:IIC总线可以看出对于不同大小的24Cxx,具有不同的从器件地址。由于24C02为2k容量,也就是说只需要参考图中第一行的内容:芯片的寻址:AT24C设备地址...

STM32CubeMX-GPIO的八种工作模式

2020-08-14 11:32 | 评论:0 次 | 浏览: 0

STM32IO口的八种工作模式:1)、GPIO_Mode_IN_FLOATING:浮空输入2)、GPIO_Mode_AIN:模拟输入3)、GPIO_Mode_IPD:下拉输入4)、GPIO_Mode_IPU:上拉输入5)、GPIO_Mode_Out_OD:开漏输出6)、GPIO_Mode_Out_PP:推挽输出7)、GPIO_Mode_AF_OD:复用开漏输出8)、GPIO_Mode_AF_OD:复用推挽输出在芯片手册上有每个IO口支持的功能,我们想要知道一个IO都有啥功能时,就芯片手册

移动技术网