这是STM通用的刷固件方法,不仅仅适用于.Net Micro Framework,支持我们当前所有板子,包括阿波罗、探索者和雅典娜三个系列。 单片机可以看做是CPU、内存和硬盘的集合体,其中的Flash就是硬盘,RAM就是内存。我们所谓的刷机(刷固件)就是把系统(固件)安装(刷)到单片机上。固件一般是bin文件,也有hex。传统单片机程序,系统程序和用户程序都混在一个bin里面,而我们的MF,一般刷TinyCLR.bin,然后用户程序通过另外的软件刷进去(比如MFDeploy和vs2010
这是STM通用的刷固件方法,不仅仅适用于.Net Micro Framework,支持我们当前所有板子,包括阿波罗、探索者和雅典娜三个系列。 单片机可以看做是CPU、内存和硬盘的集合体,其中的Flash就是硬盘,RAM就是内存。我们所谓的刷机(刷固件)就是把系统(固件)安装(刷)到单片机上。固件一般是bin文件,也有hex。传统单片机程序,系统程序和用户程序都混在一个bin里面,而我们的MF,一般刷TinyCLR.bin,然后用户程序通过另外的软件刷进去(比如MFDeploy和vs2010)。 一 般的单片机都有专用的固件烧写设备,比如51的编码器,TI和STM的JLink和ULink等。探索者一号二号上都有一个20P(10*2)的方形插 座,那就是给JLink等用的JTAG接口,我们用C写单片机程序,或者移植MF的时候,用的就是它,方便刷写,还可以调试。只是这些设备都不便宜,最便 宜的JLink也都七八十块钱,所以一号二号都没有配。 STM单片机为什么能通过串口刷写固件呢?其实那是因为STM单片机片内Flash里面有一段只读的程序,称为系统程序,那是不可覆盖的,它就是专门用于通过串口读写片内Flash。一般STM开发板上都会有Boot0/Boot1两组跳线,每一组有3根针,跳线帽连接其中两根,另外一根空出来。我们只需要把Boot0的跳线帽换到另一边,中间那根针连接本来空着的那一根,即可设置单片机从系统程序启动。 (注意:以下所有接线操作,包括跳线操作,都必须在断电的情况下进行,最后才接上供电) 探索者一号的Boot跳线在JP8/JP9(如下图),默认两个跳线都是接右边两针,JP8(上面一个)是Boot0,把跳线帽改为接左边两针。(记住原来的接法,刷了固件以后要复原的)
因为探索者一号供不应求,远超预期,并且我们自己设计制造的成本太高,所以没有再次生产。而是选择较高性价比的第三方STM32开发板作为MF学习板,是为探索者二号。因此,二号并不是一号的改进版,它们压根就不同,甚至MCU(处理器)都不同。 先来看看探索者二号的全貌:
一、什么是.Net Micro Framework 它是一个.Net框架(微型框架),也是一个嵌入式系统OS,可以裸奔在ARM单片机上,也可以运行在别的嵌入式系统上。我们可以用VisualStudio C#开发代码,调用对应各种硬件的类库方法,实现对硬件的控制。 Microsoft® .NET Micro Framework简介 .Net Micro Framework_百度百科 【C#改变世界】谈谈自动化的软硬件及技术选型 .Net Micro Framework可以做什么?在单片机上有什么优势? MF开发板-用途简介 .Net Micro Framework结构和特性【英文】 .Net Micro Framework硬件要求和功用【英文】 二、学习.Net Micro Framework需要准备些什么 学习MF,可以买我们准备好的套装;也可以自己买别家的板子(购买总目录里面有推荐),然后买我们的无限制固件;如果有一定技术,对MF移植有贡献,我们还可以赠送板子;如果兴趣很低,不想掏钱,那就申请试用吧(推广计划)! .Net Micro Framework学习推广及赠送计划 .Net Micro Framework购买总目录(最低46元MF学习板) .Net Micro Framework固件(支持STM32F103ZET6/VET6开发板) 三、拿到开发板后如何下手 MF开发板都是STM32单片机开发板,一般出厂内置的是单片机C程序,我们当然是需要刷入MF系统! 每一块开发板的三个地方是一定要找到的:用于刷固件的COM1、设为系统启动的Boot跳线、用于供电的USB口 不同开发板的这三个位置都不同,特别是探索者二号,COM1是由USB转的,同时具备供电能力。 因为驱动的问题,在64位系统特别是Win8x64上,绝大部分同学都无法刷机成功! 开发板通用刷机教程 老树系列--.NET MF固件部署 MF前传——探索者二号简介 MF前传——雅典娜二号简介 MF前传——探索者一号简介 MF前传——探索者一号液晶屏接线 四、教程与例子程序 开发环境就是Visual Studio 2010 + .Net Micro Framework SDK,据说vs2008也可以,但vs2012不可以! C#工程师学MF不建议学太多单片机知识,知道怎么找针脚接线就好。 老树系列--.NET MF环境的安装 MF干活——点灯神话 MF干活——C#数码管与跑马灯之舞(视频) 老树系列--2.Hello World 你懂的 老树系列--3.LED灯控制 老树系列--数码管显示 MF—探索者二号测试心得—UART MF—探索者二号测试心得—ADC12 五、.Net Micro Framework移植 MF是一座大宝库,还有许多宝藏没有挖掘,我们需要更多人加入移植,让大家可以使用更多的MF功能! .Net Micro Framework移植环境准备 六、更多资料 QQ群:1600838 论坛:http://www.NewLifeX.com/MF/list.aspx 叶帆
因为探索者一号供不应求,远超预期,并且我们自己设计制造的成本太高,所以没有再次生产。而是选择较高性价比的第三方STM32开发板作为MF学习板,是为探索者二号。因此,二号并不是一号的改进版,它们压根就不同,甚至MCU(处理器)都不同。 先来看看探索者二号的全貌: image.png image.png 二号相对于一号,有几个优点是非常吸引人的:直接配有匹配的TFT触屏,避免了一号那样出现接口不兼容的问题;带有4个高亮蓝色LED灯,4个功能按键,方便测试基础功能;引出的排针针脚,都标有名
ALIENTEK战舰STM32F103,资源十分丰富,并把STM32F103的内部资源发挥到了极致,基本所有STM32F103的内部资源,都可以在此开发板上验证,同时扩充丰富的接口和功能模块,整个开发板显得十分大气。
最近在老师交给了一个项目,需要用到STM32单片机,这里就在学习的过程中所注意到的一些地方或细节部分记录了下来,笔者所使用的是STM32F407ZGT6芯片(探索者)。 查看芯片的数据手册
本章节主要讲述如何使用cubemx、HAL库点亮LED灯,希望教程对正在学习HAL库的你有用哦~系列教程主要在STM32F407ZGT6探索者开发板完成,部分在自设计fallingstar board完成。
上次介绍了一下建立基于固件库的工程模板,这次来介绍一下新建基于寄存器的工程模板,因为两者有许多相似之处,所以就简单介绍一下。
在使用 DHT11 的时候,时序通信需要微秒来操作,STM32CubeMX 自带一个系统时钟,但是实现的是毫秒级别的。因此就自己用通用计时器实现一个。
第一篇:STM32F103ZET6单片机双串口互发程序设计与实现 第二篇:最简单DIY基于STM32单片机的蓝牙智能小车设计方案 第三篇:最简单DIY基于STM32F407探索者开发板的MPU6050陀螺仪姿态控制舵机程序 第四篇:最简单DIY基于STM32F407探索者开发板和PCA9685舵机控制模块的红外遥控机械臂控制程序 第五篇:注释最详细、代码最简单的STM32+摄像头+显示屏的颜色跟踪电路软硬件方案 第六篇:最简单DIY基于STM32单片机的WIFI智能小车设计方案
创世半导体(CS)是全球首家推出SD NAND FLASH产品的厂商,SD NAND的出现大大降低了使用 NAND FLASH 的技术难度。
Mbed TLS是一个开源、可移植、易于使用、代码可读性高的SSL库。可实现加密原语,X.509证书操作以及SSL / TLS和 DTLS 协议,它的代码占用空间小,非常适合用于嵌入式系统。
想来想去,也不知道更新什么内容比较好了,犹豫了好久还是先跟大家讲讲液晶显示的配置吧,毕竟我觉得这个在很多项目中都非常实用,我个人是比较喜欢用一块TFT液晶来做显示终端的,大大的屏幕显示什么都方便,接到产品上面也显得特别高端,当然在考虑成本的情况下OLED和12864这些也是不错的选择。
因为项目的原因需要将原有的标准库工程升级为基于TencentOS-tiny的RTOS工程,所以花费一点时间记录移植过程,提供一份向基于STM32标准库的老工程中移植TencentOS-tiny的思路。
MF让我们这些C#程序员能够把手伸到嵌入式行业,大大增强我们在各种项目中的竞争能力。无奈国内研究MF的人少之又少,为了加速MF技术的研究,我们团队采用少量补贴的方式,委托厂家生产了一批MF开发板,售给团队内的开发人员。 image.png 这一批板子只生产了20片,元件成本133.5元,PCB成本12元,焊接成本25元,共170.5元。配上串口线,USB线,杜邦线,还有一些小东西,整体要180多,对内以180元的价格销售。配套的3.2寸触摸屏采购价58每片,因为选错接口,做排线又花了1.5
现在开始慢慢从51单片机过渡到STM32的学习,因为之前学习过51单片机,所以环境的搭建特别快,一会就搞好了,而且发现STM32的烧录方式比51单片机要方便一点,不需要反复的冷启动,但是发现STM32建立工程模板太麻烦了。首先,分成基于固件库和基于寄存器(后面都会介绍),而且需要建立多个文件夹,在每个文件夹里面,还需要拷贝启动程序和许多的.C 和.H 文件等等,接下来,我就来好好介绍一下如何建立一个工程模板吧!(基于正点原子探索者F4)
如同学习每一门编程语言的Hello World!一样,点灯自然成了单片机入门的HelloWorld。因为单片机上的HelloWorld实在是太难了! 在电子上只有电压电流之类的概念,而对于单片机来说,我们可以认为0代表低电压(低电平、接地),1代表高电压(高电平)。在我们学习的STM32单片机上,高电平其实就是3.3伏!今天我们要点亮的小灯,就是发光二极管,让3.3V和0V分别接在发光二极管的正负(长短)两端,就可以让其发光! 我们采用的单片机有很多针脚(ZET6是144脚,VET6
STM32MP157C-DK2 是 STM32MP157C 探索套件,板载信息如下图:
通过这两个步骤,即可解锁 FLASH_CR,如果写入错误,那么 FLASH_CR 将被锁定,直到下次复位后才可以再次解锁。
SEGGER RTT支持使用J-link调试器输出来自目标微控制器的信息,也可以接收输入,并且在高速度交互的同时不会影响目标处理器的实时性,可以省掉平常打印日志用的串口。
学单片机的,相信对中断的概念都已经了如指掌了,中断具体是什么我在这里也就不再详细说明,不懂的上网找找也一大堆。那么在介绍实验之前我先跟大家简单讲讲STM32当中的NVIC(嵌套向量中断控制器)
照理来说,USB-CAN这种东西应该已经被做的烂大街的工具,国内居然没有一个拿得出手的开源方案。某立功和PCAN动辄2000+的价格也是离谱。淘宝上各种虚拟串口方案、替换dll兼容某立功软件的各种方案....价格都倒是便宜,性能和可靠性嘛.......就不多说了,上位机软件也是烂的一塌糊涂。
后面公众号资料都会放在此github地址中,大家可以自取!! 伙伴们,一步一步DIY自己的重力感应小车,本次调试在RT-Studio平台调试遥控端MPU6050数据采集和通过MQTT协议在Onenet服务器发布订阅数据,本次主要用到正点原子开发板STM32F407ZGT6(探索者),也讲一下如何使用基于芯片开发,话不多说,上干货!
上篇介绍了STM32MP57-DK1开发板官方系统的烧录。那个系统包含Linux系统的基础功能,如果要进行Qt开发,还需要重新构建带有Qt功能的镜像
下载链接:en.SOURCES-tf-a-stm32mp1-openstlinux-5-10-dunfell-mp1-21-11-17_tar.xz[1]。
STM32MP157 微处理器基于灵活的双 Arm® Cortex®-A7 内核(工作频率 800 MHz)和 Cortex®-M4 内核(工作频率 209 MHz)架构,并配一个专用的 3D 图形处理单元(GPU)、MIPI-DSI 显示接口、以及一个 CAN FD 接口。
做毕业设计需要用到大量的音频文件,一般的存储器满足不了存储要求,故选择SD卡作为存储器件。在这里记录一下自己的学习经历,学习一个新的IC,无非是要么根据时序图写出Read和Write函数,要么是根据通信总线和IC相关操作指令去完成Read和Write函数。只有能与对应IC“说话”,我们才能去开发它更多地可能性。这里以原子探索者为例,为大家介绍一下SD卡相关知识。
Linux平台上有许多开源的嵌入式linux系统构建框架(框架的意思就是工具),这些框架极大的方便了开发者进行嵌入式系统的定制化构建,目前比较常见的有OpenWrt, Buildroot, Yocto,等等。其中Buildroot功能强大,使用简单,而且采用了类似于linux kernel的配置和编译框架,所以受到广大嵌入式开发人员的欢迎。
上篇文章介绍了STM32MP157D-DK1开发板Qt镜像的构建,通过在Ubuntu中重新编译带有Qt功能的系统来实现。
Linux内核(英语:Linux kernel)是一种开源的类Unix操作系统宏内核。整个Linux操作系统家族基于 该内核部署在传统计算机平台(如个人计算机和服务器,以Linux发行版的形式)和各种嵌入式平台,如路由器、无线接入点、专用小交换机、机顶盒、FTA接收器、智能电视、数字视频录像机、网络附加存储(NAS)等。工作于平板电脑、智能手机及智能手表的Android操作系统,它的底层操作系统也是Linux。尽管在桌面计算机的占用率较低,但基于Linux的操作系统统治了几乎从移动设备到主机的其他全部领域。实际Linux的发行版Ubuntu,其易用性也逐渐接近Windows。
本文将以Myirtech的MYD-YF13X以及STM32MP135F-DK为例,讲解如何使用STM32CubeMX结合Developer package实现最小系统启动。
STM32Cube是ST公司开发的一套生态系统,致力于使STM32的开发变的更简单,并且100%开源免费。
有Windows和Linux两种,这里介绍在Ubuntu虚拟机的Linux系统中安装的操作步骤。
看上图,选择122号中断,它是SPI里的122号中断,GIC里的编号是(32+122)=154。
这是为了给接下来的Linux下嵌入式开发打好基础,尽快熟悉Linux下c编程,但是在开发stm32的时候,编译工具链要使用gcc-arm-none-eabi,为什么不是gcc呢?这就要说到linux下的交叉编译了,因为我们要在PC机上编译出可以运行在ARM上的程序,使用gcc编译出的是在PC上运行的程序,所以我们要使用gcc-arm-none-eabi进行交叉编译~
Trusted Firmware-A(TF-A)是用于 Arm A-Profile 体系结构(Armv8-A 和 Armv7-A)的安全世界软件的参考实现,其中包括 Exception Level 3(EL3)安全监视器。它为在 AArch32 或 AArch64 执行状态下的安全世界启动和运行时固件产品化提供了一个合适的起点。
https://blog.csdn.net/weixin_66578482/article/details/126123515
对于嵌入式设备来说,合适的电源管理,不仅可以延长电池的寿命,而且可以省电,延长设备运行时间,在提高用户体验方面有很大的好处。所以,各个soc厂家在这方面花了很多的功夫。下面,我们可以看看linux是如何处理电源管理驱动的。
① 使用Busybox手工制作 Busybox本身包含了很了Linux命令,但是要编译其他程序的话需要手工下载、编译,如果它需要某些依赖库,你还需要手工下载、编译这些依赖库。 如果想做一个极简的文件系统,可以使用Busybox手工制作。
他是一个大三的学生,我看了他的简历,里面几乎没什么项目经验,对于企业来说这样的学生就好比一张白纸一样,当然,这样的学生很难拿到一份好的offer。
以前微处理器(MPU)与微控制器(MCU)是截然不同的两种设备,MPU支持丰富的软件系统,如Linux和相关的软件堆栈,而MCU通常将专注于裸机和RTOS。近年来,随着MCU的性能越来越高,MCU和MPU之间的区别变得越来越模糊。
2022腾讯犀牛鸟开源人才培养计划 开源项目介绍 滑至文末报名参与开源人才培养计划 提交 TencentOS Tiny 项目Proposal TencentOS Tiny 项目介绍 腾讯面向物联网领域开发的实时操作系统,具有低功耗,低资源占用,模块化,安全可靠等特点,可有效提升物联网终端产品开发效率;提供精简的 RTOS 内核,内核组件可裁剪可配置,可快速移植到多种主流 MCU (如 STM32 全系列)及模组芯片上。覆盖IoT主流应用场景,支持硬件平台数量超60+,包括STM32、NXP、华大半导体等多家
往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 1、ST发布STM32
注意:使用我们提供的Ubuntu映象文件时,请按照我们的目录结构,手动设置交叉编译工具链以及编译的架构环境变量配置,(建议配置为永久生效),这里我们提供了两种交叉编译工具链,分别是buildroot构建生成的8.4以及yocto生成的9.3工具链,开发板系统默认安装的系统使用的是通过yocto编译构建,所以如果只想针对于文件系统应用做开发或者编译内核uboot等操作,建议只使用yocto的交叉编译工具链。
接着上一篇的讲,我们上一篇研究了 GPIO 的硬件结构,其来源于 STM32 官方手册,研究了 GPIO 的八种工作模式和推挽输出及开漏输出原理,接下来我们研究 GPIO 的软件部分,分别从单片机平台和 Linux 平台来研究。
牛客 Verilog 刷题入门篇1~24 + 进阶篇1~34 题解代码,所有代码均能通过测试,配合视频讲解效果更佳。本文给出代码,部分题目给出必要说明。 很多题目本身出题有些问题,着重理解题目,没必要钻牛角尖。
Yocto项目使用更强大和定制化的方法,来构建出适合嵌入式产品的Linux系统。Yocto不仅仅是一个制做文件系统工具,同时提供整套的基于Linux的开发和维护工作流程,使底层嵌入式开发者和上层应用开发者在统一的框架下开发,解决了传统开发方式下零散和无管理的开发形态。
在虚拟的I2C_Adapter驱动程序里,只要实现了其中的master_xfer函数,这个I2C Adapter就可以使用了。 在master_xfer函数里,我们模拟一个EEPROM,思路如下:
领取专属 10元无门槛券
手把手带您无忧上云