嵌入式硬件设计该从哪个设计软件学起呢?
比如设计 STM32\ESP32外围电路。
学cadence或altium designer软件,两个软件都可以
具体外围电路,就得一个个看芯片手册了~
因平时时间有限,仅实现以下功能:
OLED驱动:
主界面:显示年月日时分秒等时间信息,显示当前温湿度
菜单界面:通过向下键移动光标,通过OK键对无线账号名称密码设置,时间设置,IO口电平控制,风扇控制等进行选择。
无线设置界面
时间设置界面
IO口控制界面
风扇控制界面
界面切换算法
DS1302驱动:时间的获取和设置
DHT11驱动:温湿度数据获取
无线账号密码设置和时间设置算法,通过按键操作和OLED显示屏显示完成此功能,此部分内容更多的是算法层面的代码编写
IO口电平控制:与4点算法类似,通过按键设置IO口的电平状态,并反馈于OLED界面
风扇控制:通过外接继电器,通过一个IO口控制继电器的开关,继电器接风扇,从而实现IO口对风扇开关的控制。结合了DHT11温湿度传感器,可设置温度高于多少度时风扇自动开启,如温度高于25°C时风扇自动开启,低于25°C时风扇便关闭了,类似智能家居的联动功能
EEPROM驱动:实现对EEPROM数据的写入和读取
CAN通信:实现两设备间数据的发送和获取
串口通信:实现与ESP8266的串口通信
10.FLASH读写:实现对FLASH的读写,在非程序区域进行读写,实现类似EEPROM功能
嵌入式硬件设计学习资源推荐: 1. 乐鑫ESP32的官方开发文档,包括硬件选型工具ESP Product Selector、开发板使用说明、GPIO、ADC、定时器等基础知识介绍,以及驱动源代码和API文档。 2. STM32的官方开发文档,包括产品选型指南、开发板使用说明、GPIO、ADC、定时器等基础知识介绍,以及驱动源代码和API文档。同时推荐ST公司的官方教学视频,以便更好地理解学习内容。 3. 《嵌入式系统设计与开发》等相关书籍的学习,可以从原理、实践等多方面深入学习相关知识。 4. 在公众号“51MCU技术资讯”、CSDN等在线论坛上,可以找到大量的相关技术文章和案例,以及与其他开发者交流经验。
在嵌入式硬件设计的学习过程中,可以使用以下的嵌入式硬件设计软件: 1. Altium Designer:一个功能强大的PCB设计和布线软件,可以设计出更加高效和精确的电路板。 2. Eagle PCB Design:一个流行的PCB设计软件,可以设计和布线简单电路板。 3. Proteus:一个全面的电路和系统模拟软件,可以校验电路或系统在布局之前的设计,使用仿真器来模拟硬件表现。 4. Keil uVision:一个集成开发环境(IDE),可以用于创建嵌入式应用程序。
最后,需要注意的是,在学习过程中,要注意理论与实践相结合,多动手实践和调试,以便更好地理解和掌握相关知识。