目录 前言 Proteus硬件部分键盘程序部分运算代码逻辑(代码解释)LCD屏幕显示运算结果输入部分键值判断部分删除按键的实现程序执行运算 前言Hello,大家好。想做关于嵌入式的一些小项目已经很久了,今天借着我们课设的机会,给大家展示我自己对代码逻辑的理解,为了方便简易,所有代码我都放在了一个.c文件里面,希望我的代码能给读者带来不一样的收获与编写简易计算机的思路,创作不易,大家觉得好的话点个赞呗~简易计算机前后最大位均是三位,可以实现加减乘除四种运算功能,输入键盘采用的是4×4行列式的循环扫描按键键盘 Proteus硬件部分 Proteus版本是8.6,我采用的显示屏是LCD1602用来显
24小时切换简易时钟简介1、本设计主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机STC89C51单片机和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。2、本设计拟实现的性能指标如下:(1)键盘用于校正、调节数码管上显示的时间。(2)单片机通过输出各种电脉冲信号开驱动控制各部分正常工作。(3)单片机发送的信号经过显示电路通过译码最终在数码管上显示出来。(4)按键还可以切换12小时制和24小时制,并有指示灯。STC89C51单片机STC89C51是一种低功耗、高性能CMOS8位微控制器,具有4K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和
前言当你点进看这篇博客时,相信对DHT11产品的概述与特性没有任何兴趣,所以跳过那部分,直接上技术活。1、温湿度如何采集根据产品说明文档:用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.在模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。所以从中我们能提取出三个主要点:主机开始信号结束后,才会有数据发出,并触发一次信号采集。发出的是一次40bit数据:8bit湿度整数数
摘要本文介绍了基于STC89C52单片机的多功能电子万年历的硬件结构和软硬件设计方法。本设计由数据显示模块、温度采集模块、时间处理模块和调整设置模块四个模块组成。系统以STC89C52单片机为控制器,以串行时钟日历芯片DS1302记录日历和时间,它可以对年、月、日、时、分、秒进行计时,还具有闰年补偿等多种功能。温度采集选用DS18B20芯片,万年历采用直观的数字显示,数据显示采用12864A液晶显示模块,可以在LCD上同时显示年、月、日、周日、时、分、秒,还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点,具有广阔的市场前景。关键字:万年历温度计液晶显
项目文件文件关于项目的内容知识点可以见专栏单片机原理及应用的第五章,中断 在第4章的实例2中,按键检测是采用查询法进行的,其流程图如图所示问题是这样的:由于查询法-按键查询、标志位修改及彩灯循环几个环节是串联关系,当CPU运行于彩灯时,将因不能及时检测按键状态,而使按键操作效果不灵敏。 解决这一问题的方法:利用外部中断检测按键的状态,一旦有按键动作发生,系统可立即更新标志位。这样就保证系统及时按新标志位值控制彩灯运行。为此需要对电路进行改造,加装一个4输入与门电路(输入端与p0并联),这样就能将按键闭合电平装化为INT0中断信号。就是A0~A3相当于P0.0~P0.3对应按键的端口如果按键按下
最近需要用到433M的单片机解码,上网搜了一下。大部分的程序都是基于定时器定时检测。感觉逻辑不够严谨。对于新手理解起来也比较困难。查看EV1527手册我是用的240K电阻。得到了每个数据宽度是1.29MS,每个数据宽度为16个LCK,每个LCK宽度大约为80us,可以算出同步位的高电平时间大约为:320us,低电平持续时间为:9.9ms数据1的高电平持续时间为:960us, 数据1的低电平持续时间为320us数据0的高电平持续时间为:320us,数据0的低电平持续时间为960us。已经知道了数据0和1还有同步信号的持续时间,我们来说一下思路我首先开了一个us级的定时器,持续计数。不需要打开中断
一、DS18B20DS18B20是Dallas半导体公司的一款数字温度传感器芯片;DS18B20是一款支持1-wire总线接口的温度传感器;DS18B20能测量的温度范围-55℃--125℃,精度是±0.5℃;DS18B20可以将分辨率设定为9到12位;DS18B20的工作电压范围3--5.5V二、DS18B20与STC89C51的连接单片机的P4.1引脚用来接DS18B20的数据引脚sbitDS=P4^1;三、DS18B20的内部构成以下是友台半导体的DS18B0结构图,内部有9个模块1、电源与寄生电源2、ROM:存DS18B20的系列号,也就是那个64位的编码,3、存储器控制逻辑4、Scr
目录一、烧录软件 二、相关基础知识三、交流学习四、常用单片机系统板五、常用烧录工具1.CH3402.CP210X六、烧录步骤1.常用系统板1烧录(不带下载电路)2.自动烧录器3.常用系统板2烧录(带下载电路)七、注意事项一、烧录软件 STC-ISP软件下载 戳它跳转提取码:0t2w 二、相关基础知识CH340驱动下载与安装 戳它跳转CP2102驱动下载与安装 戳它跳转三、交流学习 安装过程如有疑问,可留言或者私聊交流四、常用单片机系统板 STC89C52RC系统板STC89C52RC系统板图片常用系统板1烧录(不带下载电路)常用系统板2烧录(带下载电路)五、常用烧录工具1.CH340
一、功能介绍 基于LCD1602显示屏的自制秒表,可完成计时,暂停,继续,清零功能二、程序设计 1、延时函数1.1、实现功能输入参数为延时时间长度,单位为毫秒,用于短暂延时1.2、设计原理从STC-ISP中生成的延时1ms的代码修改得到的延时任意时间的函数1.3、代码实现/***@brief延时函数*@param延迟的时间xms*@retval无*/voidDelay(unsignedintxms) //@12.000MHz{ unsignedchari,j;while(xms) { i=2; j=239; do { while(--j); }while(--i)
51单片机步进电机控制详解目录51单片机步进电机控制详解一、步进电机基本介绍1.步进电机结构2.步进电机驱动二、硬件&仿真设计0.设计要求1.硬件设计显示模块输入模块步进电机模块2.仿真全图一览3.PCB设计三、软件设计1.显示模块LCD1602.hLCD1602.c2.输入模块Key.hKey.c3.步进电机模块Motor.hMotor.c4.数据整合Includes.hCommunal.hCommunal.c5.主函数main.c主界面最近角度设置界面标定角度设置界面最近角度调整界面标定角度调整界面设置界面四、工程下载一、步进电机基本介绍我个人认为,步进电机的基本原理和介绍看看其他博主的介