嵌入式设备自带专用属性,不适合作为随机性很强的人工智能深度学习训练平台。想象用S3C2440训练神经网络算法都会头皮发麻,PC上的I7、GPU上都很吃力,大部分都要依靠服务器来训练。但是一旦算法训练好了做成了一个API库就可以到处移植转化使用了,就像一个驱动程序。但是训练好的深度学习模型直接用在嵌入式设备上依然有难度,一个是嵌入式设备计算资源有限(RAM、ROM小),其二是嵌入式设备大部分使用使用
前言  复位之后,CPU首先根据boot引脚选择存储器重映射区域,该区域的地址重映射为地址偏移量为0;  pc指针从地址偏移量为0的地址处开始执行;该地址烧录的代码是xx.s启动文件,也称bootloader;  启动文件主要分配了堆栈和向量表,然后跳转到SystemInit函数配置系统时钟,然后通过__main最终进入到main函数;  MDK并没有将启动文件的所有配置开源,比如一部分的配置由_
作者安装STM32终于出了这样一款工具,之前也出过开源的eclipse开发工具,但这次帮你打包了一站式的,更方便了,点击此处下载,下载需要有自己的账号,官网下载,安装一路默认就可以了。使用新建stm32工程:文件 > 新建 > STM32 Project,弹出下面的向导,通过1,2,3等过滤选项,选出正点原子战舰V3对应的stm32f103ze系列芯片,点击Next, 下面一路默认选项
之前做STM32项目,需要用到json串处理数据,用常用的字符串拆分,容错率和扩展率太低了,所以采用Cjson库。之前采用的时小容量的STM32芯片,由于库文件中存在大容量的内存申请,写好的程序死活运行不起来,是因为栈内存使用超出,之后换了中容量的芯片,程序完全能跑起来,但作为一个大一些的项目,程序里面变量的增多,还是会导致程序死机,这个时候可以考虑更改malloc.h文件的内存申请大小或是更换大
1 引言“工欲善其事,必先利其器”,我们都知道会用好的工具会事半功倍。在STM32开发中,STM32CubeMX是意法半导体推出的IDE,可以说是非常方便开发者对整个项目工程的配置,其友好的图形化和可视化界面非常受到大家的欢迎,功能强大,支持自动生成所需配置的C程序,极大了提高开发效率。以下内容是博主亲自验证后的小小总结,有需要的朋友可以进行参考。2 工具下载地址官方网站下载地址:http://w
前情提要:STM32代码自动生成工具_本想...但是...可是...所以 首先说一下那几天大家的反应,有的持观望态度,毕竟STM32CUBE很香;有的很激动,期待我快点出东西;还有的很淡定,知道我在挖坑,填坑遥遥无绝期;还有的,希望我把当前这个工具分享出来……….. 兄弟,作者都已经说了不要分享,你这样合适吗? 退一步,我是怎么得来这个工具的?网上搜的,你要是真想要…….. 还要感谢一位网友,他分
STM32CubeIDE基础学习-新建STM32CubeIDE基础工程前言有开发过程序的朋友都清楚,后面开发是不需要再新建工程的,一般都是在初学时或者有特殊需要的时候才需要新建项目工程的。后面开发都是可以在这种已有的工程上添加相关功能就行,只要前期准备一个工程作为模板,可以大大减少在新建工程上的宝贵时间,效率也可以得到提升。下面就来学习一下新建工程的具体步骤。第一步:双击打开软件后,进入主界面如下
卸载jdk,换低版本jdk 8。
原创 2023-05-16 14:34:31
878阅读
昨天调试新项目时出现如此一个现象。项目是在MDK上新建的,主要基于FreeRTOS平台,而RTOS文件是用MDK自有包。 我也比较喜欢这种,不必自己还要外挂FreeRTOS文件。简化不少工程目录。 因为FreeRTOS我之前没怎么接触过(只接触过rt_thread),不是太熟悉配置过程,不过好在网络对此有许多教程,如这篇连载就很详细:FreeRTOS基础篇教程目录汇总 按着其介绍,完成了系统配置。
STM32 MAP文件浅析1、MDK编译生成文件MDK编译工程,会生成一些中间文件(.o .axf .map等),最终会生成HEX文件,以便下载到MCU上面执行,我们通常使用STM32工程中,output文件夹下面会生成十多种文件类型。我们这里只介绍几种重要的文件。 1、.o文件:它是由编译器编译.c/.s文件时所产生的可重定向对象文件。【注:①可重定向是指该文件包涵数据、代码,但是没有指定地
最近因为工作需要使用到了STM32F407VET6的USB_OTG_FS作为虚拟串口。 之前用STM32 CubeMX生成过STM32F103C8T6的虚拟串口代码,感觉用起来很方便,于是这次的F407也用MX生产工程,奈何竟然遇到诸多难题,整整困扰了两天。 先说一下我的流程。MX生成F407 USB虚拟串口工程操作流程1,选择芯片先是利用条件筛选选择自己的芯片,如下图:2,配置管脚配置RCC
STM32CUBEIDE.7----USART收发配置概述样品申请视频教学生成例程STM32CUBEIDE配置串口重定向串口发送接收函数HAL_UART_Transmit()发送HAL_UART_Transmit_IT()发送HAL_UART_Transmit()和HAL_UART_Transmit_IT()对比HAL_UART_Receive()接收HAL_UART_Receive_IT()接
STM32的通信接口STM32主要用的通信接口有USART、IIC、SPI、USB、CAN。这些通信接口的主要目的是将设备的数据传送到另一个设备,扩展硬件系统。 在串口通信中有着TTL、RS232、RS485等电平标准。其中TTL和RS485都为正逻辑,只有RS232为负电压表示1,正电压表示0.TTL:+3.3V或+5V表示1,0V表示0.RS232:-3V—— -15V表示1,+3V——+15
一、DAC简介DAC(Digital-to-Analog Converter),即数字/模拟转换模块,故名思议,它的作用就是把输入的数字编码,转换成对应的模拟电压输出,它的功能与 ADC 相反。在常见的数字信号系统中,大部分传感器信号被化成电压信号,而 ADC 把电压模拟信号转换成易于计算机存储、处理的数字编码,由计算机处理完成后,再由 DAC 输出电压模拟信号,该电压模拟信号常用来驱动某些执行器
经过具体实验可知,以前思学师哥的程序中有ADC开始DMA采集和停止DMA采集两个函数,可以理解成消抖,因为采集频率过快数据可能会发飘。 硬石资料如下 配置要求一定要在mode处勾选circular ,数据宽度一定要选择“Word” 根据实验只需要将ADC的DMA通道采集打开,无需关闭即可采集成功,而且数据比较稳定,这样为快速傅里叶变换做出了准备。经过一下午的实验可知ADC采集周期过短的时候在同时
第五十八章 USB 鼠标键盘(Host)实验上一章我们向大家介绍了如何利用 STM32F767 的 USB HOST 接口来驱动 U 盘,本章,我们将利用 STM32F767 的 USB HOST 来驱动 USB 鼠标/键盘。本章分为如下几个部分:58.1 USB 鼠标键盘简介58.2 硬件设计58.3 软件设计58.4 下载验证58.1 USB 鼠标键盘简介传统的鼠标和键盘是采用 PS/2 接口
目录基于STM32F469 discovery kit 开发板的开发2开发环境搭建keil安装F4的固件库keil配置st-link调试工具例程测试基于STM32F469 discovery kit 开发板的开发2开发环境搭建在嵌入式开发中,常用的集成开发环境(IDE)常用的有keil或IAR,我们以keil为例进行说明,主要有两步:keil安装F4的固件库首先到Keil官网下载ST的库文件,在K
STM32基础知识3-STM32串口USART1的使用方法和程序 通用同步异步收发器(USART)提供了一种灵活的方法来与使用工业标准NR 异步串行数据格式的外部设备之间进行全双工数据交换。 USART利用分数波特率发生器提供宽范围的波特率选择,支持同步单向通信和半双工单线通信。 1、STM32固件库使用外围设备的主要思路 在STM32中,外围设备的配置思路比较固定。首先是使能相关的时钟,一方面是
转载 2024-09-12 20:32:36
55阅读
  目录目录一、第一个汇编程序的创建过程(基于MDK)二、HEX文件格式的分析说明三、汇编语言"hello_world"程序——LED灯闪烁四、总结五、参考文献一、第一个汇编程序的创建过程(基于MDK)1、双击打开keil_uVsion5(也叫MDK),进入软件界面2、找到左上角的project后下拉选择new_uVsion_project新建工程项目,项目名可自行定义,此处我
 文章目录ADC+TIM+DMA采集交流前言模式简介工程建立时钟配置ADC配置配置串口代码生成代码编写串口重定向ADC采集代码硬件连接运行结果练习后记 模式简介ADC+TIM+DMA采集交流信号是电赛中使用范围最为广泛的一个技术。这个模式下单个ADC可以实现0-1M的任意可调采样率,采集20khz一下的信号轻轻松松。F1的ADC支持许多触发信号,这里选择TIM3的TRGO事件作为触发信号
  • 1
  • 2
  • 3
  • 4
  • 5