-
单片机热水壶
实现单片机控制热水壶进行加热并实现恒温调节,例如想要保持在某一温度值的时候,可以通过单片机中断输出PWM来进行调节,同时与键盘模块、数码管模块、温度传感器模块等结合,实现功能,这是部分实现代码。谢谢!
- 2022-01-31 23:59:37下载
- 积分:1
-
AT89S52单片机 DS18B20 1602组成的带温度补偿超声波测距仪资料
AT89S52单片机 DS18B20 1602组成的带温度补偿超声波测距仪的完整资料,可直接使用。
- 2022-01-27 16:49:40下载
- 积分:1
-
51单片机蓝牙小车
AT89C52单片机小车控制程序,使用串口自通信,程序里有详细注释
- 2022-10-05 21:25:04下载
- 积分:1
-
基于51单片机温度报警
基于51单片机的ds18b20温度传感器的具体应用,其中包括完整的18b20驱动。可直接使用。
- 2022-04-27 06:08:46下载
- 积分:1
-
LCD1602显示
应用背景基于51单片机的LCD1602的C语言程序,包括写命令、写数据、读命令、读数据等程序,可直接引用,本人已在Protues上仿真验证。关键技术已在仿真软件上完成仿真如需要仿真电路可以联系本人,是在51单片机的基础上仿真完成的,有A/D
- 2022-03-26 06:18:09下载
- 积分:1
-
单片机常用宏
单片机常用宏
以前学51单片机的时候每次要配置寄存器的时候,虽然都知道看着器件手册去写,但是我还是觉得很痛苦,后来就有了这些宏,阅读起来会直观一点,不过敲的代码也得多一点,我后来写的代码都是用这些宏来封装寄存器操作的。
#ifndef MACRO_FUNCTION
#define MACRO_FUNCTION
//这个头文件里定义了一些宏定义,方便使用
/*********************************************************************************
* AssignBit / AssignFlag
*说明:
* 这个宏用来得到一个变量的某个或某几个位被赋值后的值
*参数:
* type 参数flag的类型
* flag 要赋值的变量
* which_bit
* 标明flag的哪几个位要被赋值
* val 表示要赋给flag的那几个位的值
*注意:
* 1. 对于宏,其参数不要用++i;之类的表达式!也不要直接使用调用函数得到的返回值!
* 2. 如果type是寄存器,那么它必须是可读的
*示例:
* u8 a = 0xf0;
* AssignBit(u8, a, BIT4 | BIT0, BIT0);
* 执行完后,a == 0xe1;
*备注:
* 1. 效率上, 如果参数(除flag外)都是常量, 编译器会自动优化, 如果参数是变量, 就算手动写代码也是这个样子的
* 2. (which_bit) 括号是为了保证 AssignBit(flag, BIT0 | BIT1, 0)之类的用法不会出错
- 2022-07-22 02:46:37下载
- 积分:1
-
USB无线串口
串口无线模块,简单地说是可以通过串口来进行无线通信的模块,他一般是由无线收发芯片和一个带串口的单片机组成,用户只要了解串口通信,不要了解复杂的无线通讯知识,就能完成无线通信产品的开发。最普遍的应用是取代原来的有线的RS232、RS485通信,采用串口无线模块,不需要施工,也不要布线,能大大节省材料和人工成本,安装十分方便,基本上是无缝连接,所以该模块应用十分地广泛。如电子台秤、 请点击左侧文件开始预览 !预览只提供20%的代码片段,完整代码需下载后查看 加载中 侵权举报
- 2022-01-28 10:40:38下载
- 积分:1
-
52拼车合乘计费器
1、左边按键表示选择拼车或者不拼车,
拼车显示屏显示carpool!不拼车显示屏显示not carpool
2、当不拼车时,右边按键按下上车,再按下车
当拼车时,右边按键第一次按下第一个人上车,第二次按下第二个人上车,第三次按下下车。
3、上车后,开始计算里程数和价格,M后面代表里程数,P后面代表价格
测里程原理:
测速传感器输出为脉冲信号,一个脉冲中断一次;红外射线导通的时候是低电平,
所以我们设置中断为低电平触法模式。我们选用的编码盘上有12格子,
电机转一圈后便是射线导通12次,外部低电平触法12次,得到的总次数除于12
也就是电机转动次数了,然后按照轮子的周长,计算轮子一圈是多长,就可以推
算出小车已经跑多远了。
- 2022-08-03 08:47:14下载
- 积分:1
-
匿名飞控经典源代码 四轴飞行器
匿名飞控经典源代码 四轴飞行器
#include "stm32f10x.h"
#include "sysconfig.h"
#include "bsp.h"
#include "led.h"
#include "tim3.h"
#include "usart.h"
#include "ANO_TC_STM32F1_I2C.h"
#include "MPU6050.h"
#include "moto.h"
#include "spi.h"
#include "nrf24l01.h"
#include "tim_pwm_in.h"
#include "rc.h"
#include "imu.h"
#include "control.h"
#include "data_transfer.h"
u8 SYS_INIT_OK=0;
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
void SYS_INIT(void)
{
LED_INIT();
LED_FLASH();
Moto_Init();
Uart1_Init(115200);
Tim3_Init(500);
#ifdef CONTROL_USE_RC
Tim_Pwm_In_Init();
#endif
Nvic_Init();
ANO_TC_I2C2_INIT(0xA6,400000,1,1,3,3);
- 2022-06-15 05:31:50下载
- 积分:1
-
8×8×8的LED立方体的源代码
代码中使用AVR来控制研究的8x8x8 ledcube
- 2022-02-12 06:23:58下载
- 积分:1