草庐IT

【51单片机】普中A2开发板 模块化编程 单片机入门 实例教学目录

写在前面😋(跟着b站up江科大自化协学习的)一、流水灯代码1.点亮第一个小灯#includevoidmain(){P2=0xfe;}2.LED闪烁#includevoidDelay(unsignedinttime)//定义延时函数{unsignedinti;for(time;time>0;time--)for(i=120;i>0;i--);//用两个循环是为了保证延时函数的正确性}voidmain(){while(1){P2=0x55;//亮Delay(1000);P2=0xff;//灭Delay(1000);}}#include#includevoidDelay1000ms() //@11

DW_apb_i2c 使用介绍2--i2c初始化以及读写eeprom测试

1.DW_apb_i2c寄存器        目前我使用DW_apb_i2c协议是:DW_apb_i2c_2018,即2018版本。这个IP的寄存器共有68个,相对于stm32来说,这个寄存器数量确实有点多,实际使用起来也确实有点繁琐,不过当前的项目需求,有一大部分寄存器是用不到的,所以也还好。另外因为项目原因,一些具体的代码细节不太方便写出来,有疑问可以留言交流。    寄存器是在第5章,截图如下: 具体每个寄存器如何使用就不展开了,直接看寄存器说明即可。2.DW_apb_i2c初始化流程        在第6章的6.3章节,有一个初始化流程图,如下图:        这是一个结合DMA的使

DW_apb_i2c 使用介绍2--i2c初始化以及读写eeprom测试

1.DW_apb_i2c寄存器        目前我使用DW_apb_i2c协议是:DW_apb_i2c_2018,即2018版本。这个IP的寄存器共有68个,相对于stm32来说,这个寄存器数量确实有点多,实际使用起来也确实有点繁琐,不过当前的项目需求,有一大部分寄存器是用不到的,所以也还好。另外因为项目原因,一些具体的代码细节不太方便写出来,有疑问可以留言交流。    寄存器是在第5章,截图如下: 具体每个寄存器如何使用就不展开了,直接看寄存器说明即可。2.DW_apb_i2c初始化流程        在第6章的6.3章节,有一个初始化流程图,如下图:        这是一个结合DMA的使

Linux设备驱动之I2C驱动

Linux下I2C驱动分为两部分:主机驱动和设备驱动。主机驱动:    主机侧I2C控制器使用structi2c_adapter描述,结构体中包含了i2c总线通信方法,设备结构体等。structi2c_adapter{structmodule*owner;unsignedintclass;/*classestoallowprobingfor*/conststructi2c_algorithm*algo;/*总线通信算法*/void*algo_data;/*datafieldsthatarevalidforalldevices*/structrt_mutexbus_lock;inttimeout

充电电池的充放电电流-0.2C、1C、2C的含义

1C是指电池标称容量的电流,电池以一定的电流放电到3.0V电压时,时间刚好一小时,这个一定的电流就是1C电流。不同国家的容量定义不一样,有的标称容量是以0.2C电流外放计算的,有的以1C外放电流计算的,但1C的定义是一样的.高倍率放电,就是大于1C到10C或瞬间20C电流放电例1:16850电池容量:2000毫安时(2安时)高倍率10C放电的意思是这个18650电池可以最大的工作电流瞬间达到20000毫安(20安)放电,1C=标称容量2000毫安时/时=2000毫安(mA)=2安(A)10C=20000毫安(mA)=20安(A)例2:电池容量是2400mAh.10C就是24000mA(24A)

I2C知识大全系列四 —— I2C驱动之Linux下的I2C

Linux的I2C体系结构Linux系统定义了I2C驱动体系结构。在Linux系统中,I2C驱动由三部分组成,即I2C核心、I2C总线驱动和I2C设备驱动。这三部分相互协作,形成了非常通用、可适应性很强的I2C框架。I2C核心I2C核心提供了I2C总线驱动和设备驱动的注册、注销方法,I2C通信方法(即“Algorithm”)上层的、与具体适配器无关的代码以及探测设备、检测设备地址的上层代码等。I2C总线驱动I2C总线驱动是对I2C硬件体系结构中适配器端的实现,适配器可由CPU控制,甚至可以直接集成在CPU内部。I2C总线驱动主要包含了I2C适配器数据结构i2c_adapter、I2C适配器的A

I2C上拉电阻计算

  一起来了解掌握一下I2C的上拉电阻。通过几个点来了解下:上拉电阻在I2C的作用通过VOL和IOL设计I2C上拉电阻结合总线电容设计上拉电阻一:I2C的上拉电阻在I2C电路中,在SCL、SDA线与电源之间通常会接一个上拉电阻。上拉电阻通常选择几K或几十K阻值的电阻。阻值较大的电阻确保不会通过电阻不断地将过多的电流引入到信号线上(3.3VVdd/10KΩ=0.33mA电流)。在常见的MCU中有大约几十K的电阻可以通过代码启用的上拉电阻将GPIO引脚预设为逻辑高电平状态。在I2C的电路中,I2C设备(芯片)的SCL和SDA的内部是开漏电路,它们可以吸收电流,却无法提供电流。这种信号可以被设置为低

A2DP Hardware Offload

关于A2DP硬件卸载功能,描述可以看https://source.android.com/docs/core/connect/bluetooth/hci_requirements#a2dp-hardware-offload-support。如我在AndroidBluetoothA2DP_阅后即奋的博客-CSDN博客中的3.2.7节所述,AudioStream通过Audio处理器直接发给了BT控制器。1.功能开关1.1UI开关继续以Android手机为例,该功能的开关,可以开发者选项中看到开关。 默认地,停用蓝牙A2DP硬件卸载功能是关闭的,双重否定即肯定,那么这里的意思就是默认支持A2DPHa

【51单片机】STC-ISP软件保姆级烧录教程(以普中A2开发板为例)

 保姆级烧录教程        本章节实验到此已经完毕,考虑到大家的基础差异较大,刚接触51单片机的小伙伴可能对烧录过程有些困惑,作者便在篇末给大家提供保姆级烧录教程,帮助大家快速掌握单片机程序烧录技巧,希望对大家有所帮助!本教程所需软件下载(win系统)        1.开发板准备工作(以普中A2开发板为例)        (1)检查单片机芯片型号是否为STC89C52RC图17:普中A2开发板单片机芯片        (2)单片机与计算机建立通信图18:用micro-usb线一端连接单片机图19:用micro-usb线另一端连接计算机USB口        2.烧录软件的准备操作    

利用ESP8266+OLED(I2C)打造智能时钟(网络校时+实时天气+天气预报)

从零开始使用ESP8266+OLED打造智能时钟(网络校时+实时天气+天气预报)目录零、前言一、材料准备1、ESP8266(NodeMCUV3)2、OLED(SSD1306)(四针脚,利用I2C通信)3、杜邦线(我使用4根母对母)3、WiFi或者手机热点温馨提示:不要打开WIFI6,不要打开5.0GHz频段温馨提示:不要打开WIFI6,不要打开5.0GHz频段温馨提示:不要打开WIFI6,不要打开5.0GHz频段4.一台能上网的电脑5、心知天气账号(免费版即可)(👉传送门)二、开发环境配置1、Arduino基础安装(1)访问Arduino官网,下载ArduinoIDE(2)接入开发板,查看端口