上位机图像处理和嵌入式模块部署(mcu之芯片选择)

news2025/1/11 11:59:59

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        目前市面上的mcu很多,有国产的,有进口的,总之种类很多。以stm32为例,这里面又包括了stm32f1、stm32f4、stm32f7。而且,很多时候,电商网站上面的开发板种类很多,有的资料很多,有的只提供基本程序,那这个时候应该怎么选择呢。结合我自己的经验,给大家参考一下。

1、选择高性价比的mcu

        很多同学上来的时候,野心很大,恨不得短时间内把所有的mcu知识点都掌握。有了这个想法,买板子的时候直接追求大而全,其实是没有必要的。我们买过来的东西,如果没有经过学习、思考,变成自己的东西,买了再多也是无益。目前mcu这部分,stm32f103系列性价比最高,核心板+st-link v2加起来也就几十块,个人觉得用来入门是比较合适的。要说其他还需要买的,最多买一个usb转ttl的模块即可。

2、第一次编译、下载很重要

        和软件直接在电脑上编译、运行不一样,mcu代码不仅需要在x86 pc上面用keil编译,还需要st-link v2下载到mcu开发板上面。因此,第一次编译成功,对于建立开发者的信心很重要。在mcu上面,一般来说,第一个程序就是点灯程序,有点类似于学习编程语言里面的hello-world。编译之后,就可以直接通过st-link v2下载了。有了这个做基础,后续就好办了。

3、下载的时候先erase一下

        我们在下载程序之后,最好养成先erase,后program的习惯。因为mcu上面的存储空间是flash,如果要对flash进行重新编程的话,最好先erase,再programe。这样几乎不会有什么编程失败的问题。一般code、read only data都是放在flash里面,stack、global data、heap都是放在sram里面,这一点需要注意下的。

4、下载程序后手动复位开发板

        很多同学第一次编程,会出现下载后,没有反应的情况。其实,这个时候我们只需要按一下复位键,mcu就可以开始运行了。但是很多同学不知道这个操作,以为自己的程序有问题,殊不知只是因为自己没有按下复位键,才导致mcu没有按照新的程序来运行。

5、尽快调通串口

        串口是mcu调试里面很重要的调试、通信方法。有了串口相当于我们知道mcu走到哪一步了,所以打通串口有着很重要的现实意义。此外,一般mcu带有多个串口,后续其他串口还可以与上位机进行数据的交互通信。找到对应的tx、rx、gnd,这一点非常重要。

6、一定要掌握中断的写法

        mcu下面很多的程序都是while(1) + interrupt的写法,所以我们需要的就是尽快写一次中断代码。这个中断可以是gpio的中断,可以是定时中断,甚至可以是uart中断,只要是中断就可以。如果是定时中断,后续甚至可以以timer为驱动,配合状态机进行应用开发。

7、慢慢掌握其他接口

        有了上面做基础,下面就可以慢慢学习其他接口了,比如说iic、iis、sdio、spi、usb和eth。同样以spi为例,这个接口可以适配的模块就更多,能实现哪些功能,很多时候取决于我们外接了哪些模块,可以拿到哪些数据。

8、开始业务的开发

        有了上面的开发做接触,下面就开始业务的开发了。当然,这中间可能还会涉及到rtos、fatfs、lwip、lvgl,不过没关系,本身用什么学什么的原则,后续就可以开始业务的开发了。简单一点,可以做数据的采集;后续做一些模块的转发;最后慢慢做一些控制和识别的东西,这样就算真正把mcu用起来了。

9、所有的相关mcu代码都可以参考

        我们买的开发板可能来源于一个人,但是其他家的程序我们也是可以参考的,无非就是改一下接口、改一下pin就行,这都问题不大。真的遇到问题了,反而是自己学习的机会。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1686666.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

local dimming(局部调光)介绍

文章目录 1. 什么是local dimming2. 工作原理3. 类型4. 优点5. 缺点和局限7. 技术发展趋势 1. 什么是local dimming local dimming(局部调光)是电视和显示器中用于提升画面对比度和画质的背光技术。其基本原理是将背光源(通常是LED&#xff…

python写接口性能测试

import time import requestsdef measure_response_time(api_url):try:start_time time.time()response requests.get(api_url, timeout10) # 设置超时时间为10秒end_time time.time()response_time end_time - start_timeprint(f"接口 {api_url} 的响应时间为&#…

UE5 OnlineSubsystem Steam创建会话失败解决方法

连接上Steam但是创建会话失败 解决方法 在DefaultEngine.ini中加上bInitServerOnClienttrue,这个其实在官方文档里用注释给出了,直接取消注释就行 删除项目目录中的Saved、Internmediate、Binaries目录 右键你的项目.uproject选择Generate Visual Studio project f…

QT 圆盘百分比

1. /* 设置抗锯齿 */painter.setRenderHints(QPainter::Antialiasing, true);/* 最外层的圆 */QRect drawRect event->rect();QRadialGradient gradient1(drawRect.center(), drawRect.width() / 2, drawRect.center()); gradient1.setColorAt(0, Qt::transparent); gradi…

志愿者招募|基于SSM+vue的志愿者招募网站系统的设计与实现(源码+数据库+文档)

志愿者招募网站 目录 基于SSM+vue的志愿者招募网站系统的设计与实现 一、前言 二、系统设计 三、系统功能设计 1系统功能模块 2后台登录模块 5.2.1管理员功能 5.2.2用户功能 5.2.3志愿组织功能 四、数据库设计 五、核心代码 六、论文参考 七、最新计…

【Qt常用控件】—— 布局管理器

目录 前言 (一)垂直布局 (二)水平布局 (三)网格布局 (四)表单布局 (五)分组布局 (六)Spacer 总结 前言 之前使⽤Qt在界⾯上…

【软件工程】【23.10】p2

关键字: 软件复用技术、过程途径、特定需求是文档核心、数据字典条目、高内聚低耦合独立性、数据流图映射模块结构图、UML依赖、用例图关系、RUB迭代、程序规格说明等价类划分、有效性测试的目标、喷泉模型面向对象、软件验证过程、CMMI

15.回归问题

回归问题是机器学习领域中的核心问题之一,它旨在通过拟合数据点来建立数学模型,以预测因变量的值。回归问题不仅广泛应用于金融、医疗、工程等领域,也是数据分析和机器学习算法研究的重要基础。本文将深入探讨回归问题的基本概念、数学原理、…

Java | Leetcode Java题解之第100题相同的树

题目&#xff1a; 题解&#xff1a; class Solution {public boolean isSameTree(TreeNode p, TreeNode q) {if (p null && q null) {return true;} else if (p null || q null) {return false;}Queue<TreeNode> queue1 new LinkedList<TreeNode>();…

回文排列00

题目链接 回文排列 题目描述 注意点 回文串不一定是字典当中的单词 解答思路 因为本题中回文串不一定是字典当中的单词&#xff0c;所以使用Map存储每个字符出现的次数&#xff0c;并统计出现次数为奇数的字符的数量&#xff0c;如果多余1个&#xff0c;则不是回文排列 代…

Mia for Gmail for Mac:Mac用户的邮件管理首选

对于追求高效工作的Mac用户来说&#xff0c;Mia for Gmail for Mac无疑是邮件管理的首选工具。它以其卓越的性能和丰富的功能&#xff0c;为用户带来了前所未有的高效邮件管理体验。 Mia for Gmail for Mac不仅支持多帐号登录和标签选择功能&#xff0c;还提供了邮件分类、垃圾…

如何选择序列化协议:关键因素与场景分析

如何选择序列化协议&#xff1a;关键因素与场景分析 序列化协议的选择直接影响着系统的性能、可维护性及跨平台兼容性。以下是针对不同场景下&#xff0c;几种常见序列化协议的选择建议&#xff1a; 1. 公司间系统调用&#xff08;性能要求宽松&#xff09; SOAP (基于XML)&a…

【Python】 Python脚本中的#!(Shebang):使用指南与最佳实践

基本原理 在Python脚本编程中&#xff0c;#!&#xff08;通常称为shebang&#xff09;是一个特殊的行&#xff0c;它告诉操作系统使用哪个解释器来执行脚本。在Unix-like系统中&#xff0c;shebang是必需的&#xff0c;因为它允许脚本作为独立的程序运行&#xff0c;而不需要显…

揭秘:APP广告变现逻辑

APP广告变现项目逻辑 一、项目背景与目标 在当今数字化时代&#xff0c;移动应用&#xff08;APP&#xff09;已成为人们日常生活中不可或缺的一部分。随着智能手机的普及&#xff0c;APP市场呈现出爆炸性增长&#xff0c;为开发者提供了巨大的商业机会。然而&#xff0c;如何在…

全球点赞第一人颜廷利:英文“China”中国及瓷器背后的易经最前沿教育思想

在全球化的语境中&#xff0c;“China”一词不仅标识了一个国家&#xff0c;它还承载了一种文化符号——瓷器。这种看似简单的词汇背后&#xff0c;蕴藏着丰富的哲学思想和深刻的文化意蕴。 让我们从一种不同的角度来审视这个词汇。当我们将“China”作为音译词进行解读时&…

Covalent的CQT质押迁移比率在以太坊上升至13%,超Moonbeam记录

Covalent Network&#xff08;CQT&#xff09;作为领先的结构化模块化数据基础设施层&#xff0c;目前其在以太坊上的 CQT 质押比率已超过之前在 Moonbeam 上达到的历史最高水平。自从将质押合约迁移到以太坊不到一个月的时间里&#xff0c;超过总供应量的 13% 的 CQT 代币已被…

工业镜头的参数、选型步骤

目录 一、如何选择合适的工业镜头 1. 工业镜头的基本参数 2. 选择工业镜头的步骤 3. 案例分析&#xff1a;如何选择合适的镜头 4. 远心镜头的设计目的 二、 介绍远心镜头 2.1 远心镜头的主要特性 2.2 远心镜头的类型 2.3 远心镜头的应用 2.4 远心镜头的工作原理 2.5 …

2024电工杯A题详细思路代码分析数学建模:园区微电网风光储协调优化配置

题目分析&#xff1a;园区微电网风光储协调优化配置 我们会先给出三个问题总体的分析&#xff0c;最后会详细分析问题一的建模和详细内容。 背景&#xff1a; 园区微电网由风光发电和主电网联合为负荷供电&#xff0c;为了尽量提高风光电量的负荷占比&#xff0c;需配置较高比…

听说京东618裁员没?上午还在赶需求,下午就开会通知被裁了~

文末还有最新面经共享群&#xff0c;没准能让你刷到意向公司的面试真题呢。 京东也要向市场输送人才了? 在群里看到不少群友转发京东裁员相关的内容&#xff1a; 我特地去网上搜索了相关资料&#xff0c;看看网友的分享&#xff1a; 想不到马上就618了&#xff0c;东哥竟然抢…

科大讯飞Nano+耳机套装登场:智能录音转写,办公充电新方案

目录 一、科大讯飞Nano会议耳机&#xff1a;专业会议助手 二、会议狗Kit&#xff1a;即插即用&#xff0c;智能会议新体验 三、努比亚65W氮化镓充电头&#xff1a;全能快充&#xff0c;一充多用 四、产品总结 在这个快节奏的数字化时代&#xff0c;高效沟通与信息处理能力成…