推荐阅读最新更新时间:2024-03-16 15:39
基于WiFi和STM32船舶制造业智能配电桩系统设计
摘 要: 由于船舶制造业施工现场用电混乱,管理层无法精确计量施工现场用电数据,导致存在能耗漏洞,电量浪费严重。以STM32F407ZET6为控制核心、RM04无线WiFi为无线通信模块,采用CR95HF为芯片的RFID模块,设计制作了一种适用于船舶制造业的智能配电桩系统。介绍了系统的硬件电路以及软件工作流程。经测试,采集得到的用电量、用电卡号以及用电时间段表明系统满足实时性无线数据信息采集和传输。在船舶制造业智能配电桩系统节能方面有较好的应用前景。 0 引言 船舶制造业属于高电耗型产业,据统计我国船舶制造业电力费用支出占据总能耗费用70%~80%以上 ,而且,我国船舶建造的万元电耗平均水平与世界先进造船企业相比要高出5倍以上
[单片机]
Keil5软件配置与新建STM32工程教程
新建工程文件夹 建立名字为LED的文件夹存放工程文件,其中再建立两个文件夹,Listing文件夹用于存放编译器编译时候产生的C语言、汇编、链接文件,Output文件夹用于存放编译产生的调试信息、hex文件、预览信息、封装库等。 文件夹建好之后,在LED文件夹下存放startup_stm32f10x_hd.s、stm32f10x.h、main.c文件。前两个文件可以在STM32F1xx的固件库中找到,第三个文件是空文件。 在Keil5中新建工程的步骤 如下图所示,Project-New,新建工程,工程名为Led,点击保存。 点击保存之后,弹出如下窗口,选择芯片型号。根据你开发板使用的芯片具体的型号来选择。如果这里没有出现你想
[单片机]
stm32 HAL 库 串口开关 串口接收开关
适用于HAL库 1、串口接收打开或关闭 #define UART_ENABLE_RE(USARTx) USARTx.Instance- CR1|= (uint32_t)0x0004 #define UART_DISABLE_RE(USARTx) USARTx.Instance- CR1&= (~(uint32_t)0x0004) 如使能串口1的接收:UART_ENABLE_RE(huart1); 2、串口打开或者关闭 #define UARTx_ENABLE(USARTx) (USARTx.Instance)- CR1 |= USART_CR1_UE #define UARTx_DI
[单片机]
入坑STM32后,我们应该如何学习?
01 前言 在STM32之前,都是老大头51,带着它的“小弟们” MSP430、AVR、PIC在单片机界呼风唤雨。 那个时候,市场上遍布8位机,大学教材用51入门,个人、企业学单片机基本上也都在用51。 虽然AVR也有一些8位机市场,但与stc带领下的51单片机是完全不能相比的。 当然,这个时候也有16位机的msp430,其他厂家单片机还有pic,高端嵌入式处理器等市场有arm7、arm9等。 这个时期的单片机市场是百花齐放、百家争鸣,但总体来说,还是势均力敌、一片祥和的。 那么,这个局势是从什么时候开始打破的呢?这还得从物联网的崛起说起。 02 原因 当时,物联网(Internet of Things,IoT)逐步进入人们的
[单片机]
STM32的计数器的使用
因为用stm32f103c8作主控制器,来控制小车,小车的转速由两路光电编码盘输入(左右各一路).因此想到外部时钟触发模式(TIM——ETRClockMode2Config)。 可以试好好久,发现TIM1不能计数,到网上查了很久,也没有找到相关的文章,开始怀疑TIM1是不是需要特殊设置。经过很久的纠结,终于找到了问题——其实是我自己在GPIO设置的时候,后面的不小心覆盖了前面的了——没想到自己也会犯这么SB的事情。 现总结程序如下: 第一步,设置GPIO GPIO_InitTypeDefGPIO_InitStructure; /*PA0,PA12- 左右脉冲输入 */ GPIO_InitStructure.GPIO_Pin
[单片机]
关于STM32模拟IIC的理解
从书上看到STM32的硬件IIC远没有硬件SPI好用,书上给的例子也是模拟IIC的,因为之前只用过51的准双向口控制过简单的IIC器件,所以好好看了下。 IIC总线是由数据线SDA和时钟线SCL两条线构成的通信线路,既可以发送数据,也可以接收数据。在MCU和被控IC之间,IC和IC之间都可以进行双向传输。 这是一个IIC总线系统硬件结构图,SCL和SDA均需接上拉电阻。 在模拟IIC总线通信时,需写出几个关键部分的函数。 #define IIC_SCL PCout(12) //SCL #define IIC_SDA PCout(11) //SDA #define READ_SDA PCin(11) (1):总
[单片机]
关于调试stm32和stm8(51单片机)的i2c和spi协议的之间的区别
在调试STM32的i2c和io口模拟spi协议时发现时序是很关键的。stm32在72M运行下可以实现i2c或者spi协议,但并不代表把相同的代码移植到51单片机上就会成功的跑起来,因为51单片机的速读最块8M,所以在时序上会产生很多大的区别。 经过测试,在stm32上的spi协议时钟线可达到20Khz,移植到51后,频率会降到 10hz。可是尽管把延时调小或者去掉还是无济于事,此时就要加几句把钟线置高置低的语句了 以便增大的速度,后来成功后,测试时钟线的确达到了10Khz左右。 先贴上部分代码 unsigned char ReadRawRC(unsigned char Address) { unsigned char
[单片机]