![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
智能家居项目
文章平均质量分 86
Jacky~~
Learning Linux kernel!
展开
-
IIC基础回顾——硬件I2C
文章目录前言I2C控制器设计思路源码分析main.ci2c.ceeprom.c运行结果源码前言使用硬件I2C是,不用编写协议时序细节,通过寄存器配置好MCU的I²C控制器,I²C控制器便可控制引脚自动输出I²C时序。这里还是基于STM32F103_MIN开发板,以读写EEPROM(ATC2402)为例,进行回顾和分析。I2C控制器STM32F103系列的I2C控制器,可作为通信主机或从机,因此有4中工作模式可选择:主机发送模式、主机接收模式,从机发送模式、从机接收模式。传输速度上,支持标准模式原创 2022-02-22 17:33:22 · 5625 阅读 · 0 评论 -
STM32基础回顾——详解I²C(GPIO模拟I2C)
文章目录前言IIC协议数据有效性开始信号和结束信号应答信号完整传输流程EEPROM介绍结构组成设备地址写AT24Cxx读AT24CxxIIC模拟硬件设计IIC模拟软件设计源码解析运行结果源码前言这一篇博客是根据自己的需要,以及为了面试岗位的需求,所以专门来再次学习一遍SPI和IIC两个常用的通信协议。这里使用的开发板是STM32F03_MIN也希望这篇博客能对你有一定的帮助!IIC协议I²C ,通常被读作“I方C”,它是一种多主从架构的串行通信总线。在1980年由飞利浦公司设计,用于让主板,嵌原创 2022-02-21 18:50:18 · 7266 阅读 · 3 评论 -
智能家居项目(基于HAL库开发附源码)
文章目录前言需求分析开发板:STM32F103_MIN实物图原理图CubeMX环境搭建GPIO设置中断设置代码分析系统时钟配置GPIO引脚初始化USART1初始化USART2初始化NVIC初始化功能代码编写按键功能的完善USART1串口打印功能重构printf函数添加输入wifi账号和密码功能USART2串口的数据发送和接收USART2向ESP8266进行数据的发送和接收获取ESP8266的IP优化IP显示函数发送UDP数据优化,串口输入wifi的账号和密码主函数的编写运行结果源码网址前言感谢百问网老原创 2022-02-19 22:29:46 · 2288 阅读 · 0 评论 -
手把手教你单片机HAL库开发——中断,通信、串口
文章目录前言中断基本概念使用中断来获取按键并控制LED原理图入如下CubeMX设置运行结果通信串行通信/并行通信全双工/半双工/单工通信同步通信/异步通信通信速率常见通信协议串口基础知识STM32的串口通信、串口代码设计原理图CubeMX设置源码分析查看打印信息前言非常感谢百问网黄老师今天的授课!在这里推荐大家学嵌入式上百问网官网,更是有明星老师韦东山老师亲自授课。中断特别提示:因为在STM32MP157实验中,详细的讲述了中断,所以这里对于基本的概念就不再重述,只进行重点分析。基本概念通原创 2022-02-17 16:47:40 · 5497 阅读 · 0 评论 -
嵌入式网络基础知识——MQTT引入
文章目录网络基础知识IP和端口的作用公网IP不够用对外访问时,路由器来帮忙双方之间怎么来传输数据呢?硬件上协议上MQTT下载总结网络基础知识IP和端口的作用在网络传输时,通过IP和端口来表示自己和对方。IP:IP地址,包含主机号+网络号。用来表示接入互联网的一台设备。端口:端口表示传输层到应用层,数据传输的通道,每个应用对应不同的端口。公网IP不够用IP和端口都很重要,但是IP不够用:在家里,在公司里,只有路由器才有公网IP其他电脑都只是局域网IP,比如192.168.x.x你家里原创 2022-02-15 20:42:50 · 5114 阅读 · 0 评论 -
手把手教你使用HAL库开发入门——成为点灯大师
文章目录前言基础知识时钟GPIO的输入输出模式CubeMX配置Keil编程实验现象前言非常感谢百问网黄老师的授课和解答,非常推荐同学们上百问网学习嵌入式知识百问网官网基础知识时钟HSI:内部高速时钟LSI:内部低速时钟HSE:外部高速时钟LSE:外部低速时钟因为内部的时钟容易受芯片温度的影响,所以精准度不太好。所以一般采用使用外部是时钟。GPIO的输入输出模式推挽输出:推挽结构由两个MOS管按互补对称的方式连接,任意时刻总是其中一个三极管导通,另一个三极管截止。如原创 2022-02-14 17:48:26 · 8167 阅读 · 0 评论 -
嵌入式开发程序框架
文章目录框架设计框架得概念总结框架设计在《代码大全》第5章中,把程序设计分为这几个层次:第1层:软件系统,就是整个系统、整个程序第2层:分解为子系统或包。比如我们可以拆分为:输入子系统、显示子系统、业务系统第3层:分解为类。在C语言里没有类,可以使用结构体来描述子系统。第4层:分解成子程序:实现那些结构体(结构体中有函数指针)。框架得概念等于说为了我们的代码方便上层开发人员的阅读,我们需要将底层的驱动程序进行封装,通过中间层的缓冲,让上层能够轻松调用的同时,对于书写业务裸机的工程师也原创 2022-02-13 21:26:53 · 1089 阅读 · 0 评论 -
一篇博客实现嵌入式入门
文章目录前言最小系统和C语言最小系统原理图电源电路时钟电路复位电路调试/下载电路嵌入式C语言基础知识数据类型const用法修饰变量修饰数组修饰指针修饰函数参数作用域与static用法extern的用法volatile的用法struct用法enum用法enum常量enum默认值enum赋值typedef的用法预处理器与预处理指令#define和#undef用法文件包含#include条件编译#ifdef、#else 和#endif指令ifndef指令#if和#elif指针用法回调函数位运算单片机不同开发模式的原创 2022-02-13 21:07:07 · 974 阅读 · 8 评论 -
深入理解裸机与RTOS开发模式
文章目录前言裸机开发模式轮询方式事件驱动方式改进的事件驱动方式常用时间驱动方式:定时器使用状态机进行改进总结RTOS的引入RTOS编程要注意的问题临界资源的访问任务的休眠唤醒总结前言感谢韦东山老师的直播教学,在今天的这次教学中学到了很多实用的知识。对逻辑开发和RTOS开发有了本质的理解。博主也在这里向大家推荐一个嵌入式学习网站百问网官网。在这里有所有嵌入式学习的视频,更有韦东山老师的亲自授课为你解答疑惑。裸机开发模式所谓裸机开发,指的就是没有操作系统,就是单片机开发。程序的运行,完全取决于代码原创 2022-02-12 22:01:33 · 6181 阅读 · 5 评论 -
嵌入式入门基础知识
文章目录前言嵌入式基本知识ARM的理解ARM是一家公司一类芯片或产品的统称一项技术的名称,即采用RISC处理器体系架构ARM和intel的区分ARM和STM32的关系处理器的基本概念MCUMPUDSPFPGA总结ARM开发MCU开发和MPU开发的区别开源硬件 Arduino 和 Raspberry Pi总结总结前言今天是参加百问网组织的物联网智能家居项目第一天,很幸运能够抓住这次机会来更好的学习嵌入式,也非常感谢百问网的老师们辛勤教导。嵌入式基本知识ARM的理解ARM是一家公司ARM首先是一原创 2022-02-12 19:47:04 · 18077 阅读 · 6 评论