———————标准输入输出——————— 🎄输入格式(图片+代码段) inta,b,c; //标准单个输入 cin>>a; //标准多个输入 cin>>b>>c; 🎄输出格式 //标准单个输出 cout<<a<<endl; //标准多个输出 cout<<a<<b<<c<<endl; //标准错误输出 cerr<<a<<endl; 🎄示例代码(不同的数据类型相加) c的标准输入输出都不需要考虑数据的类型,使用起来更加方便! i...

  fLutY3C6VwgE   2023年12月09日   14   0   0 输入输出ci示例代码

IWDG简介 STM32F10xxx内置两个看门狗,提供了更高的安全性、时间的精确性和使用的灵活性。两个看门狗设备(独立看门狗和窗口看门狗)可用来检测和解决由软件错误引起的故障。 说人话就是能解决程序跑飞的问题。 编写代码思路 -1使用这个功能必须解除写保护 -2IWDG使用的是低速内部时钟(LSI) -3分频系数和定时时间 代码编写(可直接拷贝使用) include"stm32f10x.h" include"usart.h" include"delay.h" voidIWDG_CFG(void) { //判断是不是独立看门狗复位 if(RCC_GetFlagStatus(R...

  fLutY3C6VwgE   2023年11月28日   19   0   0 #include看门狗写保护

串口简介和习惯 -1-通用同步异步收发器(USART)能够灵活地与外部设备进行全双工数据交换,满足外部设备对工业标准NRZ异步串行数据格式的要求。 -2-硬件流控制一般是关闭的 -3-波特率指单位时间传输bit个数 -4-数据位一般是8位 -5-一般无校验位 编写代码思路 -1-参考帮助手册(F1/F4都有) -2-参考库文件注释(只有F4有注释) 标志位的选择 通过查找中文数据手册自己定义 F4代码编写,可直接拷贝使用 include"stm32f4xx.h" voidUsart1_Init(void); intmain() { Usart1_Init(); while(...

  fLutY3C6VwgE   2023年11月26日   16   0   0 #if初始化串口

输出比较简介和特性 -1-只有通用/高级定时器才能输出PWM -2-占空比就是高电平所占的比例 -3-输出比较就是输出不同占空比的信号 工作方式说明 -1-1PWM工作模式 -1-2有效/无效电平 有效电平可以设置为高或低电平,是自己配置的 周期选择与计算 周期=重装载预分频值/时钟频率 arr和psc是自己定义的时钟频率可以查看时钟树,即下图中的84MHZ F1和F4采用的时钟频率 F1通过72MHZ分频 F4通过84MHZ分频 HZ代表单位时间震荡次数,如1MHZ,就是一秒震荡1000000次 代码分享(一路PWM输出,F1可直接使用) voidTIM3_PWM_Init(u1...

  fLutY3C6VwgE   2023年11月25日   15   0   0 初始化Time复用

SysTick简介与特性 -1SysTick属于系统时钟。 -2SysTick定时器被捆绑在NVIC中。 -3SysTick可以产生中断,且中断不可屏蔽。 SysTick的时钟源查看 通过时钟树可以看出滴答的时钟最大为72MHZ/8=9MHZ 代码编写(已经验证,可直接拷贝使用) SysTick源文件 include"Systick.h" staticu8fac_us=0; staticu16fac_ms=0; voidSys_Tick_Init(void) { SysTick_CLKSourceConfig(SysTick_CLKSource_H...

  fLutY3C6VwgE   2023年11月24日   16   0   0 系统时钟#include寄存器

基本定时器简介与特性 -1-时钟可分频 -2-计数模式只可以选择累加 -3-只可以用来定时(含中断) 查看时钟源 如图定时器7的时钟最大为72MHZ 定时时间的计算 通用定时器的时间计算公式为Tout=((arr+1)(psc+1))/Tclk; arr为重载值 psc为时钟分频系数 Tclk为时钟频率 代码编写(已经验证,可直接拷贝使用 这是一个在定时器7的中断函数中翻转两个LED的demo timer.c文件 include"timer.h" //通用定时器的时间计算公式为Tout=((arr+1)(psc+1))/Tclk; voidTimer_7_Init(uint16_ta...

  fLutY3C6VwgE   2023年11月24日   14   0   0 #include初始化IT

常规电路(带上拉电阻) 阻值可选3.3/4.7/5.1/10单位K 偷懒电路 利用GPIO内部的上拉模式 代码(直接拷贝使用) 这是一个按键控制灯亮灭的demo为了新手方便我直接都写在了main.c文件 include"stm32f10x.h" voidLED_Init(void) { GPIO_InitTypeDefGPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOE,ENABLE); GPIO_InitStructure.GPIO_Pin=GPIO_Pin_...

  fLutY3C6VwgE   2023年11月22日   14   0   0 #include上拉上拉电阻

常规电路(带上拉电阻) 阻值可选3.3/4.7/5.1/10单位K 偷懒电路 利用GPIO内部的上拉模式 代码(直接拷贝使用) 这是一个外部中断控制变量a增加减少的demo为了新手方便我直接都写在了main.c文件 include"stm32f10x.h" u8keyflag=0; u8a=0; voidKEY_Init(void) { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOE,ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABL...

  fLutY3C6VwgE   2023年11月22日   17   0   0 控制变量Line上拉电阻

外观 代码(免费分享) 接线 5V供电 CS接PA3 剩下如图按照硬件SPI1接线 注意事项 使用杜邦线接线非常不稳定!!! 使用杜邦线接线非常不稳定!!! 使用杜邦线接线非常不稳定!!!

  fLutY3C6VwgE   2023年11月19日   16   0   0 stm32SD卡

找到Keil5安装路径的这个文件夹 你的keil安装文件夹➡ARM文件夹➡ARMCLANG文件夹➡bin文件夹 然后拷贝比如我的是E:\keilgongyong\ARM\ARMCLANG\bin 打开Keil5 点开魔术棒选择User勾选Run1 然后填入E:\GONGYONG\ARM\ARMCLANG\bin\fromelf.exe--bin-o“$L@L.bin”“L” 注意这边填你刚才拷贝的路径 然后保存编译即可得到bin文件

  fLutY3C6VwgE   2023年11月19日   13   0   0 User

先看效果 因为之前在项目中OLED一般只显示字符,今天闲来无事了解了一下取模功能,话不多说,直接开始教学。 首先寻找一张你想显示的图片 使用画图打开(重新调整大小,128乘以64) 接着保存,注意是以单色图保存,下面是保存为单色的样子 接着取模(使用的软件为Pctolcd2002),模式选择图片模式,按照下图修改参数 接着生成数据 复制数据,填入代码数组 代码调用数组(五个参数,前四个为坐标,最后一个数组地址) 然后下载代码即可

  fLutY3C6VwgE   2023年11月19日   14   0   0 取模数组数据复制

互补死区刹车原理这里不详述 互补理解为相反的信号 死区简单理解为信号跳变的缓冲时间 刹车简单理解为暂停信号输出,既然是暂停意味着放开后会再次启动 代码分享 include"AdvancedTim.h" include"sys.h" include"stm32f10x_tim.h" //高级定时器IO口配置 voidadvancedTim_gpio_init(void) { GPIO_InitTypeDefGPIO_InitStructure; //PIN8配置为PWM输出 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPI...

  fLutY3C6VwgE   2023年11月19日   14   0   0 #include初始化High

一、串口1源代码 voiduart_init(u32bound){ //GPIO端口设置 GPIO_InitTypeDefGPIO_InitStructure; USART_InitTypeDefUSART_InitStructure; NVIC_InitTypeDefNVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA,ENABLE); //使能USART1,GPIOA时钟 //USART1_TXGPIOA.9 GPIO_InitStructure.GPIO_Pin...

  fLutY3C6VwgE   2023年11月19日   13   0   0 初始化#define串口

首先说明一下芯片内部并没有时钟,而是内部振荡。 使用内部振荡的好处是外部无需设计晶振电路,再说的简单点,不用外部晶振依然可以让单片机正常运转。 书归正传直接开始配置 打开任意keli工程 打开system_stm32f10x.c 找到systeminit函数全部注释掉 然后在下面粘贴以下代码 直接替换就可以用了 defineUSE_HSI1 //是否使用内部晶振0不使用1使用 voidSystemInit(void) { ifUSE_HSI { //设置使用内部晶振 /开启HSI即内部晶振时钟/ RCC->CR|=(uint32_t)0x00000001; /选择HSI...

  fLutY3C6VwgE   2023年11月19日   21   0   0 CL#endif晶振stm32

1.用户名报错中文路径(图片引自网络) 修改路径为user\default\AppData\Local\Temp 2.不能正确安装芯片包 在软件内安装 3.打开软件闪退 使用管理员权限打开 4.堆栈内存不足 手动修改堆栈大小 5.注释中文乱码 文本编码改为国标2312 6.代码自动补全 勾选红框 7.加快编译速度 取消勾选红框关闭跳转到定义

  fLutY3C6VwgE   2023年11月19日   15   0   0 编译速度闪退堆栈

一、看门狗时间计算公式 时间计算(大概):Tout=((42^prer)rlr)/40(ms).prer:分频数:07rlr:重装载寄存器值举例(42^4625)/40=1000ms=1s 二、如何实际使用? 放狗和喂狗总是一起使用的,程序在溢出时间内喂狗才算合理在主函数放狗,自定义位置喂狗,看门狗的意义是防止程序卡死 喂狗函数为 IWDG_ReloadCounter(); 三、看门狗初始化部分代码(参考原子代码) voidIWDG_Init(u8prer,u16rlr) { IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//使能对寄存...

  fLutY3C6VwgE   2023年11月19日   18   0   0 看门狗时间计算寄存器

电路图 常规画法(带限流电阻计算公式) 设LED电流为20mA(统一单位为0.02A)电压为3.3V 限流电阻=(电源电压-负载正向工作电压)/工作电流 限流电阻=(5V-3.3V)/0.02mA=1.7/V0.02A=85R 省事画法(直接用IO输出) 代码(直接拷贝使用) 找对引脚!!!这是一个LED闪烁的demo为了新手方便我直接都写在了main.c文件 include"stm32f10x.h" voidLED_Init(void) { GPIO_InitTypeDefGPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Pe...

  fLutY3C6VwgE   2023年11月19日   20   0   0 引脚限流电路图
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~