草庐IT

使用51单片机模拟IIC从机,实现主机(51单片机)对模拟从机的读写操作

51单片机、IIC从机模拟、IIC协议、iiC读写1.思路1.1写数据1.2读数据2.从机IIC协议2.1起始信号和结束信号2.2从机读取和写数据2.3从机发送和接收ACK2.4判断主机发送读操作还是写操作2.5寄存器地址2.6主函数3.主机IIC协议3.1起始信号和结束信号3.2主机写数据和读数据3.3主机发送和接收ACK3.4主机写3.5主机读4.使用逻辑分析仪抓取波形4.1主机写数据波形图4.2主机读数据波形图1.思路IIC大部分都是MCU对EEPROM进行读写数据,今天我们用一块51单片机模拟iic_slaver,另外一块mcu当主机,实现主机对iic_slaver的读写。主机向从机读

使用51单片机和DS1302时钟芯片做一个简易的电子时钟

简易的电子时钟实验一、前言二、DS1302模块介绍三、驱动DS1302的代码3.1初始化DS1302时钟芯片3.2读取DS1302时钟芯片的时间3.3设置DS1302时钟芯片的时间3.4读取DS1302时钟芯片的RAM四、读取DS1302时钟芯片的RAM4.1发送读取RAM的命令4.2读取RAM的内容4.3读取部分单独代码实现(注重逻辑)五、整体代码实现六、显示效果一、前言今天给大家推荐一个51单片机小实验,带你使用51单片机做一款简易的电子时钟,其中计时模块采用DS1302硬件模块,显示采用LCD显示屏,具体怎么实现开来一起看看吧!二、DS1302模块介绍DS1302是DALLAS公司推出的

51.pyinstaller打包后,打开exe程序提示SyntaxError: Non-UTF-8 code starting with '\x90' in file的问题

问题:最后开发了一款小工具,然后确定一切测试没有问题,想通过pyinstaller将其打包成exe,像类似的打包以前也经常打包的,复杂一点的也都是打包成功的,但这里感觉程序很简单,打包居然出现了以下错误。我的python版本是3.8.9,然后pyinstaller版本是5.9.0,不知道会不会是版本不兼容的问题,看网上哪位大佬能帮忙一起解决一下。 解决办法:其实我也不知道这个算不算是解决办法,因为我在无意中,通过鼠标双击了打包生成的exe文件后,程序居然可以正常启动。但是通过终端启动exe程序,还是会报上面的错误。 总结:开发这个软件时,本以为会很容易,也会很顺利,但是在打包的过程中碰到了新问

基于普中51单片机开发板的温控风扇

自学单片机也不算很久,刚好遇上了这一门的课程设计,查找了好多的资料发现都不算合适,合适的又要收费,那么最后呢才找到了一个有关我使用的开发板的温控风扇程序,也就是普中单片机开发板,该程序来自--黑51论坛的作者yrx0203,论坛ID号:684871,在此特别鸣谢。话不多说,直接上代码。#include#include //包含头文件typedefunsignedintu16; //对数据类型进行声明定义,用u16表示unsignedinttypedefunsignedcharu8; // 用u8表示unsignedchar#defineGPIO_DIGP0/**定义各引脚**/sbitl

vue 报错:WebSocket connection to ‘ws://192.168.51.116:3000/ws‘ failed:

问题描述:vue创建项目打开页面后可以运行正常,就是控制台一直报websocket的connection错误WebSocketconnectionto'ws://192.168.51.116:3000/ws'failed:  解决方案:在网上找到一个靠谱的方法了,修改vue.config.js里的devServer配置devServer:{host:'0.0.0.0',port:3000,client:{webSocketURL:'ws://0.0.0.0:3000/ws',},headers:{'Access-Control-Allow-Origin':'*',}}重启后就不报错了。

Proteus8仿真:51单片机A/D转换(ADC0808)

51单片机A/D转换元器件原理图部分代码main.c工程文件元器件元器件名称排阻RESPACK-851单片机AT89C51数码管7SEG-MPX4-CA-BLUEADC芯片ADC0808滑动变阻器POT-HG原理图部分ADC0808引脚作用项目ValueADDA-C选择IN通道IN0-7模拟量输入VREF+ADC参考电压VREF-ADC参考地CLOCK时钟VREF+ADC参考电压OUT1-8数字信号输出START起始信号OE输出使能EOC结束信号ADC0808初始化函数根据时序图,首先是START信号,由低变高再变低,然后看EOC信号,由高到低,然后再到高时,OUTPUTENABLE(OE)信

关于Keil开发C51单片机的头文件“REGX52.H“问题。其他类型的warning C318:can‘t open fine头文件也可以按照这个步骤来

我用的是宏晶STC的入门板子,最近在学习写代码的时候也是遇到了这个问题,这个"REGX52.H"是只能用大写的,我们也必须用大写。其他类型的板子也可以按照最下面的步骤试试;  第一步,我们先点开魔法棒 第二步,我们点开魔法棒后按箭头步骤点击第三步:打开后新建,选择你的安装keil的路径,到C51中找到INC,在选择Atmel后okok      ok,我们添加完后重新编译一下没有问题,单片机成功点亮!如果没有就重启一下keil上面步骤是"REGX52.H"的详细步骤,其他头文件打不开可以在INC中搜索一下 根据以上方法找到相应的文件夹将其添加后即可!  INC的路径是在你安装keil的文件中的

基于51单片机的电子秤proteus仿真设计

本设计仅供学习参考基于51单片机的电子秤proteus仿真设计(仿真+程序+原理图+报告+讲解)原理图:AltiumDesigner仿真图proteus7.8程序编译器:keil4/keil5编程语言:C语言编号C0033【腾讯文档】C0033网盘链接资料下载链接功能说明:数据采集模块+最小系统模块+超重报警模块+键盘+显示模块。1、数据采集模块包括称重传感器和A/D转换电路;2、最小系统部分主要包括AT89C51、晶振电路和复位电路;3、键盘由4X4位矩阵键盘组成,可以控制显示重量和价钱等信息;4、显示部分由LCD1602液晶显示。5、可以实现称重、置零、计价和显示等功能。其称重范围为0~1

基于51单片机 + MQ-3酒精传感器 + ADC0832模数转换器 + LCD1602液晶显示器的酒精检测系统

一、简介废话不多说,直接上东西。本文是基于51单片机的酒精检测系统设计,用的元器件有:51单片机、MQ-3酒精传感器、ADC0832模数转换器、LCD1602液晶显示器、喇叭等元器件。二、仿真题1、MQ-3酒精检测传感器,用于检测酒精浓度。当然采集到的数据是模拟的还需要通过ADC0832模数转换器将其转化成数字后,才能用于单片机中去。2、这是设置检测酒精浓度的基准按钮,首先需要点击“关闭报警器”按钮打开设置状态后,将点击“基准值”加减“1”。3、LCD1602液晶显示器工显示2行,第一行为当前所测的酒精浓度,第二行为设置的酒精浓度的基准值,超过这个基准值就会报警。三、代码结构代码分模块管理,清

51单片机的音乐盒设计

一.硬件设计        本设计的硬件主要由51单片机最小系统(AT89C51/52、AT89S51/52、STC89C51/52均通用)、LED指示灯、LM386功率放大电路、喇叭、按键电路等构成。二.设计功能本设计内置8首歌曲,按键可以上一曲,下一曲,开始或暂停。电位器可以调节音量。采用LM386功放电路,最大可提供0.5W音频功能。本设计一共由4个按键;单独按键为系统的复位按键;其他三个按键分别为:上一曲、开始/暂停、下一曲。三.设计原理图(1)LM386功率放大电路    音频的产生主要由STC89C51的I/O口产生一定频率的方波脉冲,通过LM386功放电路驱动喇叭发出不同的音调从