草庐IT

一起来做个CH347的项目(应用于FPGA、CPLD、MCU)

        国产CH347芯片自从出现在大众视野,就展开了很多讨论。四种工作模式,多接口可同时使用,如下表:接口模式接口功能Mode-0480Mbps高速USB转双UART(Baudrate最高9Mbps)Mode-1480Mbps高速USB转UART+SPI+I2C(厂商驱动模式)Mode-2480Mbps高速USB转UART+SPI+I2C(系统HID驱动模式)Mode-3480Mbps高速USB转UART+JTAG(厂商驱动模式)  一些相关资料可参考我之前文章:【1】国产USB转接芯片CH347-初体验_OIDCAT的博客-CSDN博客_国产usb接口芯片    其中CH347支持

RISC-V MCU 智能安全驾驶监测系统

                 智能安全驾驶检测BinaryTree小队张浩然谢文倩杜晓霞智能安全驾驶检测系统队员:张浩然谢文倩杜晓霞摘要现代社会频频发生车祸事件,为了减少各类车祸事故的发生,我们设计了一个智能安全驾驶检测系统,在汽车准备行驶或行驶过程中随时获取驾驶员状态,收集数据,进行系统的运算与分析,判别驾驶行为,实时监测驾驶员的驾驶行为以及驾车环境,从而预先让驾驶员察觉到可能发生的危险,有效增加汽车驾驶的安全性和舒适性。该系统可以为车主的身体健康和安全驾驶行为提供监测保护。 第一部分 设计概述1.1设计目的根据调查显示,高达70%的交通事故都起因于驾驶员酒驾或驾驶员的疲劳驾驶。由于驾驶

车规级MCU芯片

作为车辆控制的核心器件,MCU主要用于车身控制、驾驶控制、信息娱乐和驾驶辅助系统。8位MCU:提供低端控制功能:风扇控制、空调控制、雨刷、天窗、车窗升降、低端仪表盘、集线盒、座椅控制、门控模块。16位MCU:提供中端控制功能:用于动力系统,如引擎控制、齿轮与离合器控制和电子式涡轮系统等;用于底盘,如悬吊系统、电子式动力方向盘、扭力分散控制和电子泵、电子刹车等。32位MCU:提供高端控制功能:在实现L1和L2的自动驾驶功能中扮演重要角色,如仪表盘控制、车身控制、多媒体信息系统、引擎控制,以及新兴的智能性和实时性的安全系统及动力系统。车规级半导体对产品的环境要求、可靠性要求和供货周期要求较高,主要

RISC-V MCU开发实战 (三):移植鸿蒙LiteOS-M项目

RISC-VMCU开发实战(三):移植鸿蒙OS项目软件平台:MounRiverStudio(MRS);硬件平台:CH32V307开发板先去码云上将源码克隆下来:https://gitee.com/openharmony/kernel_liteos_m新建一个CH32V307的工程,将源码直接拖到工程中,就添加进来了,然后去添加头文件路径即可源码中包含比较全面,我们可以选择不需要的部分将其排除在编译之外,操作方法为右键目录或文件,点击Include/ExcludeFromBuild菜单项恢复编译,同样的方法再选一遍即可。下面说些移植操作系统的注意事项ARM上移植实时操作系统大家可能比较熟悉,对于

三电技术(电池(BMS)、电驱(MCU)、电控(VCU))

三电技术1、概述三电技术不仅是新能源汽车的核心技术,也是基础性技术。三电是指电池,电驱(电机),电控,简称BMC。2、电池为了区分新能源汽车上的低压电池将其称为动力电池,“动力电池“也是行业术语。动力电池系统通常由电芯,电池组,电池管理系统,冷却系统,高低压线束,保护外壳,和其他结构件构成。3、电驱主要的三部分组成为:传动机构,电机,电机控制器(逆变器)。4、电控一般是指整车控制器。在新能源汽车上电控不仅是整车控制器,同时包含电机控制器和电池管理系统等。整车控制器(VCU):主要是负责车辆的正常行驶、制动能量的回馈、动力电池的能量管理、网络管理、故障诊断及处理、车辆状态监测,以及采集油门、制动

从应用层到MCU,看Windows处理键盘输入 [2.a.1.传球手User32.dll]

副标题:精准型消息断点引言1.前文作为系列的开篇,我们站在Notepad.exe的视角,看它接过系统传来的消息,交由Notepad的窗口处理函数(WndProc)进行处理的过程。User32.dll!DispatchMessageAPI是前面"系统传来"4个字中的一环,也是最靠近应用层的一环。本文从该API切入,逐渐远离熟悉的应用层。开始前先回顾1个User32.dll导出的API(也是本文的主角):1.User32.dll!DispatchMessage。当Notepad.exe接受到消息后,通过该API调用RegisterClassEx注册的窗口过程。引言2.【原本本文我想结合Ollydb

从应用层到MCU,看Windows处理键盘输入 [1.在应用层调试Notepad.exe (按键消费者)]

文本编辑器/文本编辑框是应用层常见的键盘处理程序。微软泄露的WinXP源码下有文本编辑器Notepad的实现:Microsoft_leaked_source_code\nt5src\Source\XPSP1\NT\shell\osshell\accesory\notepad文本编辑器的实现并不复杂,微软又(被迫)提供了Sample,因此本文就不重复造轮子了。本文从调试器的角度观察Notepad.exe如何消费键盘按键.Notepad接收WM_CHAR首先评估一下调试Notepad.exe的难易程度(虽然有源码,我还是装作没有):无壳且看着像是C++编译器生成Notepad.exe属于标准的Wi

详细总结SoC、DSP、MCU、GPU和FPGA等基础概念

目录简介详细介绍FPGASoCDSPMCUCPUGPUNPUTPUMPU简介FPGA是现场可编程门阵列:Field-ProgrammableGateArraySOC是片上系统集成:systemonchipsetDSP是数字处理器:DigitalSignalProcessingMCU是微处理器:microcontroluniteCPU中央处理器(CentralProcessingUnit)GPU图形处理器(GraphicsProcessingUnit)NPU嵌入式神经网络处理器MPU,微处理器和内存保护单元芯片分类图如下:详细介绍FPGAFPGA(Field-ProgrammableGateAr

bootloader编写——MCU固件升级系列2(STM32)

本系列将从升级流程、boot代码编写、APP代码编写以及固件打包来介绍,硬件选用STM32F407ZGT6(手里只有),来完成这系列教程。前言开发STM32固件升级并编写Bootloader时,需要注意以下几个关键点:熟悉硬件和数据手册:在开发过程中,确保充分理解STM32微控制器的特性和功能。阅读相关数据手册,了解其内存布局、外设接口以及其他重要信息。选择合适的通信接口:根据项目需求选择合适的通信接口进行固件升级,如串口、I2C、SPI、USB等。确保所选接口可以与外部设备(如PC)正常通信。(后续会使用CANUART)定义固件升级协议:设计一个简单且可靠的通信协议,用于在Bootloade

第七章 OLED+DHT11+STM32动态显示温湿度

    上一章给大家介绍了OLED显示模块的使用,但上一章我们在OLED上显示的是静态的,不会变动的,所以这一章我结合第一章介绍的DHT11温湿度模块,实现温湿度数值在OLED显示模块上进行动态显示,其实也是非常简单。    首先打开第一章提供的DHT11代码工程文件和第六章提供的OLED的代码工程文件,因为DHT11与STM32之间是通过单总线进行通讯的,所以我们把单总线驱动源码文件移植到OLED工程文件中。          移植完单总线源码文件后,我们就可以将STM32获取温湿度的函数代码文件也移植过来。但是DHT11的代码工程把单总线驱动源码和STM32获取温湿度的函数代码都整合在上面