代码编织梦想

基于单片机的智能多肉养殖系统设计-爱代码爱编程

摘要:多肉植物作为一种新兴的植物盆栽,凭借着其天然萌,治愈系的属性而深受人们的喜爱。但是由于种种原因,很多人并没有充足的时间照顾多肉,导致很多露养的多肉或晒死,或涝死。针对这一问题,设计了一种基于51 单片机的智能养多肉系统,并给出了具体的设计方案及电路图。该控制系统能够根据环境的状况自动选择是否为多肉遮光或遮雨。 关键词:单片机;智能设备;多肉养殖 多

红外遥控器的使用和详细解释-爱代码爱编程

 infrared.c #include "infrared.h" /* 红外 --- PA8 */ void Infrared_Init(void) { GPIO_InitTypeDef GPIO_InitStruct; EXTI_InitTypeDef EXTI_InitStruct; NVIC_InitTypeDef

stm32学习笔记(5_2)-爱代码爱编程

无人问津也好,技不如人也罢,都应静下心来,去做该做的事。 最近在学STM32,所以也开贴记录一下主要内容,省的过目即忘。视频教程为江科大(改名江协科技),网站jiangxiekeji.com 本期介绍外部中断和中断系统,中断就是主程序执行时,发生了中断触发条件,当这些紧急事件处理完后,CPU继续执行程序。 外部中断的使用场景:外部驱动很快的突变信

arm实现点灯_csdn arm点绿灯-爱代码爱编程

.h #ifndef __LED_H__ #define __LED_H__ //声明一个结构体 typedef struct{ unsigned int MODERl; unsigned int OTYPER; unsigned int OSPEEDR; unsigned int PUPDR; unsigned int IDR; unsig

armday7作业-爱代码爱编程

实现三个按键的中断,现象和代码 do_ipr.c #include "stm32mp1xx_gic.h" #include "stm32mp1xx_exti.h" extern void printf(const char *fmt, ...); unsigned int i = 0; void do_irq(void) { //获取要处理的

arm 外部中断-爱代码爱编程

main.c: #include"key_inc.h" //封装延时函数 void delay(int ms) { int i,j; for(i=0;i<ms;i++) { for(j=0;j<2000;j++) {} } } int main() { //按键中断

arm_汇编点灯-爱代码爱编程

.text .global _start _start: /*~~~~~~~~~~~~~~~~~~~~~LED1点灯----->PE10~~~~~~~~~~~~~~~~~~~~~~*/ /*~~~~~~~~~~~~~~~~~~~~~~~RCC章节初始化~~~~~~~~~~~~~~~~~~~~~~~~*/ RCC1_INIT: /*~~~

stm32之hal开发——hal库框架介绍-爱代码爱编程

HAL库外设设计思想 HAL库借鉴面向对象的设计思想,将外设驱动封装为对象。 HAL库使用主线 HAL使用的主要用在俩个地方,无外乎外设初始化以及外设的使用。想用好这两个功能,我们首先得对外设的封装有一定的了解。 句柄结构体 xx_HandleTypeDef(xx外设句柄结构体,xx表示任意外设名,如GPIO、UAR

stm32之gpio寄存器-爱代码爱编程

文章目录 1 背景2 GPIO寄存器的类型2.1 端口配置寄存器2.2 设置/清除寄存器和位清除寄存器 3 总结 1 背景 C51单片机在进行数据的输入输出时,是直接操作与外

stm32使用滴答定时器实现delayms-爱代码爱编程

在STM32上使用SysTick实现jiffies(时间戳)并且实现delay_ms 代码实现: volatile uint32_t jiffies = 0; // 用于记录系统运行的jiffies数 void SysTi

stm32重写printf函数串口调试-爱代码爱编程

前言 在STM32微控制器开发中,调试是一个非常重要的环节。而通过串口输出调试信息是一种常见且方便的方式。本文将介绍如何在STM32中重写printf函数,以便通过串口进行调试。 代码块 //Serial port r

stm32+esp8266水墨屏天气时钟:简易多级菜单(数组查表法)-爱代码爱编程

项目背景 本次的水墨屏幕项目需要做一个多级菜单的显示,所以写出来一起学习,本篇文章不单单适合于水墨屏,像0.96OLED屏幕也适用,区别就是修改显示函数。 设计思路 多级菜单的实现,一般有两种实现的方法 1.通过双向

stm32使用定时器实现pwm与呼吸灯-爱代码爱编程

PWM介绍 STM32F103C8T6 PWM 资源: 高级定时器( TIM1 ): 7 路 通用定时器( TIM2~TIM4 ):各 4 路 例如定时器2  PWM 输出模式: PWM 模式

stm32之hal开发——系统定时器(systick)-爱代码爱编程

系统定时器(SysTick)介绍      SysTick—系统定时器是属于 CM3 内核中的一个外设,内嵌在 NVIC 中。系统定时器是一个 24bit的向下递减的计数器,计数器每计数一次的时间为 1/SYSCLK,一般我们设置系统时钟 SYSCLK等于 72M。当重装载数值寄存器的值递减到 0 的时候,系统定时器就产生一次中断,以此循环往复。  

stm32 | systick定时器(第四天源码解析)-爱代码爱编程

STM32 | Systick定时器(第四天) STM32 | STM32F407ZE中断、按键、灯(续第三天) 1、参考delay_us代码,完成delay_ms的程序 定时器频率换算单位:1GHZ=1000MHZ=1000 000KHZ = 1000 000 000HZ 定时器定时时间:计数个数/f

stm32通过串口发送指令控制led灯亮灭oled并显示命令-爱代码爱编程

先来看看程序运行的结果吧: 接下来就不说废话了,自己看源代码吧!每一行我都做了注释: 首先是主函数main.c文件: #include "stm32f10x.h" // Device header #include "OLED.h" #include "Serial.h" #include "Delay.h"

stm32学习笔记(2)-爱代码爱编程

无人问津也好,技不如人也罢,都应静下心来,去做该做的事。 最近在学STM32,所以也开贴记录一下主要内容,省的过目即忘。视频教程为江科大(改名江协科技),网站jiangxiekeji.com 软件安装 keil5 MDK  如果已经安装keil5 C51,可以放在同一个安装目录下,这样MDK和C51就可以共存。  安装时间

51单片机—直流电机-爱代码爱编程

1.元件介绍 2.驱动电路 3.电机调速 一般会保证一个周期的时间是一样的 应用: 1.LED呼吸灯 #include <REGX52.H> sbit LED=P2^0; void Delay(unsigned int t) { while(t--); } void main() { unsigned char

(51单片机)第五章-爱代码爱编程

5.4 D/A转换原理及其参数指标 1. D/A转换器的基本原理         数字量是用二进制代码按数位组合起来表示的,对于有权码,每位代码都有一定的权。为了将数字量转换成模拟量,必须将每1位的代码按其权的大小转换成相应的模拟量,然后将这些模拟量相加,即可得到与数字量成正比的总模拟量,从而实现数/模转换,这就是构成D/A 转换器的基本思路。下图是D

【特纳斯电子】基于单片机的电池电量检测系统设计-爱代码爱编程

资料查找方式: 特纳斯电子(电子校园网):搜索下面编号即可 编号: T0622204C-SW 设计简介: 本设计是基于单片机的电池电量检测,主要实现以下功能: 1.可以通过显示屏显示检测出的电池电压和电量以及充电时间。 2.按键可以切换显示数值的界面。 3.通过模数转换芯片获取电压数值,通过检测电阻检测电池电量。 4.通过充放