1、IO输出led.c#include <stm32f10x_lib.h>#include "led.h"//初始输出口.并使能这两个口的时钟//LED IO初始化void LED_Init(void){RCC->APB2ENR|=1<<2;    //使能PORTA时钟RCC->APB2ENR|=1<<3;
转载 精选 2013-07-10 15:57:28
969阅读
1控制LED和继电器 除了 PA11和PA12其他都可以 void setup() { pinMode(PC13, OUTPUT); pinMode(PC14, OUTPUT); pinMode(PC15, OUTPUT); pinMode(PA0, OUTPUT); pinMode(PA1, OU
转载 2019-10-04 01:56:00
476阅读
2评论
最近才做的板子由于自己的粗心把串口线搞反了,还好只有两条,飞线解决,而且现在还只是样板,但是还是应该引以为戒,以后做硬件一定要谨慎。今天同事出差把CAN分析仪拿走了,本来在开发板上调试好的程序不知为何移植到板子上以后CAN突然不能发送数据了,恰好今天没法用硬件调试,只能用软件仿真了。除了CAN部分在主函数前还有和USART相关的操作,起初我苦思冥想也没想到这能有什么错,之前用开发板的时候串口和CA
文章目录系列文章目录摘要一、开发软件keil安装包下载二、开发软件cubeMX安装包下载三、开发软件使用说明下载Keil-MDK使用说明下载stm32cubemx使用说明下载四、开发板配套资料下载五、STM32基础资料及需要学习的几种外设的资料下载 摘要查阅和下载学习使用HAL库进行STM32软件开发的资料,包括:开发软件安装包及其使用说明。开发板配套资料。STM32基础资料及需要学习的几种外设
STM32CUBEIDE.2----生成简单的例程视频教学csdn付费课程生成例程查看HAL库手册生成案例工程设置代码最后视频教学听不到声音的请点击跳转进行观看。https://www.bilibili.com/video/BV1cB4y1m7bL/STM32CUBEIDE(2)----生成简单的例程csdn付费课程付费课程更加详细。生成例程使用STM32CUBEMX生成例程,这里使用NUCLEO
STM32(五) Modbus基于STM32实现 Modbus协议调试笔记 --利用485通信实现单个字符的接收与发送http://www.stmcu.org.cn/module/forum/thread-599873-1-1.html​​[分享]​​ 标准的modbus通信协议模板(适合新手)注:      本程序适合新手入门,第一个程序写了如何实现串口的收发多个字节程序            
转载 2019-08-11 20:59:00
335阅读
2评论
RCC的全称是reset and clock control, 以下将从reset和clock两个方面进行介绍Reset在stm32中·有三种类型的复位: system reset, power reset, backup domain resetsystem resetsystem reset将会复位除了RCC->CSR寄存器(reset flag)和备份域寄存器以外的所有寄存器几种sys
一、前言STM32的定时器有着非常丰富的功能, 输入捕获/输出比较,PWM,中断等等。也是日常使用最频繁的外设之一,所以一定要掌握好,本章节记录下个人的简单配置过程;二、定时器介绍STM32L051C8T6有5个定时器 通用定时器(TIM2、TIM21、TIM22、),基本定时器(TIM6),低功耗定时器(LPTIM1)。通用定时器功能 16位向上、向下、向上/下自动装载计数器
STM32 HAL库学习笔记4-SPI前言一、SPI协议简介SPI物理层SPI协议层1.基本通讯过程2. 通讯的起始和停止信号3. 数据有效性4. CPOL/CPHA 及通讯模式二、STM32的SPI特性及架构STM32 SPI架构解析1.逻辑引脚2.时钟控制逻辑3.数据控制逻辑4.整体控制逻辑STM32 SPI外设通讯过程三、STM32 HAL库中的SPI1.SPI初始化结构体2.接口函数 前言
/*sys.h 今天我们来讲讲这个头文件*/ #ifndef __SYS_H //头件的中的#ifndef,这是一个很关键的东西。比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突。还是把头文件的内容都放在#ifndef和#endif中吧。不管你的头文件会不会被多个文件引用,你都要加上这个
转载 2024-07-29 16:43:27
83阅读
STM32的USB例程修改步骤 以下是笔者将ST的Custom_HID例程修改为“自定义USB设备”例程时总结出来的,因为笔者也是刚刚学USB开发不久,某些方面理解错误在所难免,请各位大虾指正。  一、usb_desc.c文件根据你程序使用的通信方式修改。usb_desc.h文件中定义要根据usb_desc.c文件中的数组的大小;ConfigDescriptor[SIZ_C...
转载 2021-07-19 17:35:53
1063阅读
开发板:野火指南者(STM32F103VE)STM32库版本:STM32F10x_StdPeriph_Lib_V3.5.0IDE:KEIL5(代码编写很不方便,只在编译的时候用到)代码编写工具:Source Insight 4.0(跟读代码、编写代码的最佳工具)使用到的串口:USART1使用到的I2C:I2C1EEPROM型号:AT24C02 硬件原理图: 1. 新建user_
转载 2024-04-26 19:44:44
606阅读
背景年前一个项目中,由于串口的资源紧张,硬件使用的是主MCU-STM32F030C8T6,其两个硬件串口都被使用了,而另外一个器件间的通信也需要串口通信,故不得不采用模拟串口的方式,该器件的通信要求是:4800bps ,8,E,1。 对,是采用偶校验的方式。之前一直习惯无校验方式,一下子说要采用偶校验,所以不得不深度查阅和了解串口的相关信息。以下即是所了解的 校验位信息的解读说明: 设置为奇
和我之前想的一样,他就是个让定时器只能出来一次脉冲单脉冲模式就是配置定时器,在各种正常的定时器输出模式下,通过不让CNT重装(CNT是猜的),就是让定时器装满之后不更新寄存器,这样下一个脉冲就出不来注意配置输出时要注意各种重装,只是输出的重装就可以,// TIM3->CCMR1|=1<<2; //OC1FE:输出比较1 快速使能 // TIM3->CCMR1|=1<
一、stm32中断实验中断原理  中断请求:外部设备或者内部模块产生中断请求信号,向微控制器发出中断请求。中断控制器:STM32微控制器内部包含中断控制器,负责管理和响应各种中断请求。中断向量表:在中断控制器中有一个中断向量表,存储了每个中断源对应的中断服务程序的地址。中断处理:当中断请求到达时,中断控制器会根据中断源的优先级确定要执行的中断服务程序的地址,并跳转到该地址执行中断处理程序
例程2的基础上增加端口9,7配置 #include "stm32f10x.h" __IO uint32_t TimingDelay; u16 i=0; void LED_GPIO_Config(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,
转载 2021-02-13 22:44:00
304阅读
2评论
代码如下 void usart2_config() { GPIO_InitTypeDef gpioInitStruct; USART_InitTypeDef usartInitStruct; NVIC_InitTypeDef nvicInitStruct; RCC_APB1PeriphClockCm
转载 2021-02-15 22:32:00
910阅读
2评论
之前在系统应用中都是直接用的void SystemInit (void)函数进行系统时钟的初始化,从来没有考虑怎样进行时钟初始化的细节,但是突然硬件时钟无法起振了,所以才考虑利用系统内部,stm32内部提供了一个8M的内部时钟,不是很准确,但是可以用。如果还是按照调用系统时钟的方法,程序运行起来会很慢,因为SystemInit函数运行之后如果硬件晶振无法启动,就是自动切换到HSI时钟启动,所以只能
GPIOx_CRL(x=A~E) 地址偏移:端口配置的初始地址加上偏移地址就是该特殊寄存器的地址 GPIO通用输入输出8种工作模式 1.浮空输入模式: (1)当GPIOx_CRL或GPIOx_CRH寄存器的CNF[1:0]位设置为01,并且MODE[1:0]位设置为00时 (2)STM32复位之后默 ...
转载 2021-04-08 13:51:00
891阅读
2评论
STM32:嵌入式开发的强大选择在嵌入式系统开发领域,STMicroelectronics推出的STM32系列微控制器凭借其出色的性能和丰富的功能,已成为工程师们的首选之一。作为基于ARM Cortex-M内核的32位微控制器,STM32系列提供了从入门级到高性能的完整产品线,满足各种应用场景的需求。强大的硬件特性STM32系列最显著的特点是它的多样性。从低功耗的STM32L系列到高性能的STM3
  • 1
  • 2
  • 3
  • 4
  • 5