任何一款MCU,其基本原理和功能都是大同小异,所不同的只是其外围功能模块的配置及数量、指令系统等。对于指令系统,虽然形式上看似千差万别,但实际上只是符号的不同,其所代表的含义、所要完成的功能和寻址方式基本上是类似的。因此,对于任何一款MCU,主要应从如下的几个方面来理解和掌握:* MCU的特点:要了解一款MCU,首先需要知道就是其ROM空间、RAM空间、IO口数量、定时器数量和定时方式、所提供的外            
                
         
            
            
            
            独立按键:  按键的按下与释放是通过机械触点的闭合与断开来实现的,因机械触点的弹性作用,在闭合与断开的瞬间均有一个抖动的过程,抖动必须清除。按键按下一次,数码管数值加1:#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit we = P2^7;    //数码管位选
            
                
         
            
            
            
            经过一个星期的努力,终于将Minigui移植到我的ARM7开发板上了,在这个过程中我遇到了很多困难和问题,但是通过网络,通过以前很多前辈在网络上分享的经验,终于取得成功,也让我更加体会到只有大家都互相帮助,互相分享经验才能使大家都受益。所以基于这一点,我将我的移植过程分享给大家,并且写得尽量详细点,希望给大家一些帮助,使后来者少走一些弯路。有不对的地方,欢迎大家板砖!
   首先说明一下            
                
         
            
            
            
            590原为SSD公司的一种全数字直流调速器,有一段时间欧陆公司收购了SSD公司,590调速器就变成欧陆公司的产品了,所以大家都叫这款全数字直流为欧陆590,现在590直流调速器被卖给了派克公司,但大家都叫惯口了,欧陆590的名称也就一直传下来了,欧陆590目前是国内市场占有率最高的直流调速器,虽然调速市场早就变成了交流变频器调速器的天下,但在一些大功率大扭矩的场合仍然有使用直流调速系统,欧陆590            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-08-01 16:25:21
                            
                                242阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            JLink Commander调试方法1. 背景目前开发中常用的调试手段主要有串口、IO口输出作为调试方式。目前串口的限制较多,有些硬件不太方便接串口或者一些实时的数据,当时没有接串口则无法实时获取调试信息。IO调试,可获得的信息较少,在设备出现运行异常,如死机等情况,无法通过串口和IO口获得较多现场的信息。 Jlink可以通过commander命令调试口或者比较多现场实时的数据以及调试信息。例如            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-28 14:51:56
                            
                                638阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
             FreeRTOS入门作业目的实验步骤 作业目的学习温湿度传感器原理,阅读国产温湿度采集芯片AHT20数据手册,在之前stm32最小系统电路原理中添加 AHT20数据采集原理电路,并完成PCB电路设计(PCB部分可延至第16周提交)。学习FreeRTOS原理,在STM32下完成一个基于FreeRTOS的多任务程序,执行3个周期性task,具体任务不限,但建议如下:task1,每间隔500ms闪烁(            
                
         
            
            
            
            谈到内存,我们都会想到PC,对于单片机或者arm来说也是存在内存的,简单的理解是:内存嘛……就是存放东西的地方,只不过这个东西是数据而已,好了,还是把重点放在mcu上面,对于一款mcu来说,在性能描述的时候都会告诉sram,flash的容量大小,对于初学者来说,也不会去考虑和理会这些东西,拿到东西就只用。其实不然,这些量都是十分重要的,仔细想想,代码为什么可以运行,代码量是多少,定义的int、sh            
                
         
            
            
            
            在嵌入式开发中,我们会经常看到或接触一些专业术语,例如CPU、MPU、MCU和SOC等,并且这些专业术语出现的频率也是非常之高,在面试中也常常会作为提问的知识点,下面我们就来看一下他们之间的特点和区别。CPUCPU是Central Processing Unit的缩写,计算机的运算控制核心就是CPU。CPU是由运算器、控制器和寄存器及相应的总线构成。众所周知的三级流水线:取址、译码、执行的对象就是            
                
         
            
            
            
             文章目录《STM32F103的flash读写操作》一、背景知识二、ST官方固件提供的API接口函数2-1解锁上锁函数2-2获取flash状态函数2-3擦除函数2-4写操作函数2-5等待操作完成函数2-6读操作三、操作步骤3-1流程四、注意事项 《STM32F103的flash读写操作》一、背景知识  1、MCU的flash是存储芯片的一种,通过特定的程序可以修改里面的数据。FLASH在电子以及半            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-03 14:18:58
                            
                                59阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            方法1:  新建好项目之后 → 右击类库 → 新建项 → ADO.NET实体数据模型(在Visual C#项中) → 从数据库生成 → 选择你要映射的数据库的数据源(将 『是,在连接字符串中包含敏感数据』勾上) → 选中要映射的表、视图、存储过程。下面是使用!//保证一次请求共用一个上下文实例   var dbContext =            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-16 20:37:58
                            
                                47阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            NXP (恩智浦半导体)是一家新近独立的半导体公司,由飞利浦公司创立,已拥有五十年的悠久历史,主要提供工程师与设计人员各种半导体产品与软件,为移动通信、消费类电子、安全应用、非接触式付费与连线,以及车内娱乐与网络等产品带来更优质的感知体验。  恩智浦半导体以其领先的射频、模拟、电源管理、接口、安全和数字处理方面的专长,提供高性能混合信号(High Performance Mixed Si            
                
         
            
            
            
            前言布线时, 总会用自动布线来尝试下走线, 看看器件布局是否合理。但是贴片的LQFP封装的MCU管脚间距总是小于10mil, 要设置规则要<10mil(7~8mil). 但是板子上其他走线线宽和间距要>= 10mil.如果不针对MCU单独设置规则, 或将全局规则的线宽和线间距改小的话,自动布线时有警告,也布不通。可以将MCU放进room, 然后设置MCU所在的room的规则。这样MCU            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-16 15:59:56
                            
                                47阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            为了写这个Blog,无奈的我深夜打开虚拟机,希望也能帮助一些人,因为好像真的有人不会欸!(→_→) 写在前面的话:1. TD面板下的调试十分重要。可以观察内存(GOTO DS:XXXX)存放的位置与数值,是否正确。2. 通过寄存器面板查看取出的值是否正确,单步调试(F8)查看程序的运行流程是否和想法相同。3. 通过步入(F7)查看调用子程序内部是否按照正常逻辑执行。4. 通过标志位寄存器            
                
         
            
            
            
            意法半导体虽然全球芯片制造商都在积极的扩产,但是目前缺芯问题仍未缓解,特别是依赖于成熟制程的车用芯片,包括MCU、电源管理芯片、功率半导体等,依然相当紧缺,价格也是在持续上涨。继去年四季度开始全产品线涨价之后,3月24日,MCU及功率半导体芯片大厂意法半导体今日再度向经销商发出涨价函,宣布将于2022年第二季度再度上调所有产品线的价格,包括现有积压产品。对于涨价的原因,意法半导体表示,“全球半导体            
                
         
            
            
            
            QT设置断点调试:1、知道哪里可能出问题2、完全不清楚自己程序bug在哪3、跳过肯定不会出错的地方前言: 这个东西难道大家不都应该会吗??? 本人用Qt Creator编写Qt的,~ 当然是有大佬用记事本写Qt的hhhh,每个人用IDE或者编辑器的习惯不一样,但……调试嘛,大差不差的,将就看看吧1、知道哪里可能出问题在觉得可能会出现问题的代码块开头第一行代码左侧添加断点,(这里和下面都以用栈把中缀            
                
         
            
            
            
            1. 基本概念描述了MCU(Microcontroller Unit) 驱动程序的功能和 API。 MCU 驱动程序为其他 MCAL 软件模块所需的基本微控制器初始化、断电功能、复位和微控制器特定功能提供服务。除了启动代码(见下图)之外,初始化服务还允许灵活的和应用程序相关的 MCU 初始化。启动代            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-06 08:52:28
                            
                                170阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            0.开始前准备工具1.SAM-BA v2.12.exe 用于烧写固件 下载地址:新版本的SAM-BA(例如sam-ba v2.9)不能正确连接JLink,所以还是用了这个版本2.JLink v8固件 下载地址:请务必使用这个固件,其他固件会导致 J-LINK the connected emulator is a j-link clone 问题,即jlink不是正版,具体原因请查看此贴:http:            
                
         
            
            
            
            目录写在前面1  SWD协议简介2  SWD物理层协议解析2.1  SWD通信时序分析2.2  SWD 寄存器简介2.2.1  DP寄存器2.2.2  AP寄存器2.3  SWD通信流程2.3.1  SWD复位2.3.2  SWD读IDCODE2.3.3  SWD清除错误标志位,并且使能AP调试2.3.4  SWD读取AP IDR(也就是AP寄存器的ID CODE)2.3.5  SWD读写MCU任            
                
         
            
            
            
            散加载能够将加载和运行时存储器中的代码和数据描述在被称为分散加载描述文件的一个文本描述文件中,以供连接时使用。分散加载区分散加载区域分为两类:? 加载区,包含应用程序复位和加载时的代码和数据。? 执行区,包含应用程序执行时的代码和数据。应用程序启动过程中,从每个加载区可创建一个或多个执行区。映象中所有的代码和数据准确地分为一个加载区和一个执行区。分散加载文件示例ROM_LOAD 0x0000 0x            
                
         
            
            
            
             关于MCU产品开发参数存储的几种方案Chapter1 关于MCU产品开发参数存储的几种方案Chapter2 单片机参数处理[保存与读取]Chapter3 嵌入式设备参数存储技巧Chapter4 STM32硬件I2C的一点心得(AT24C32C和AT24C64C) Chapter1 关于MCU产品开发参数存储的几种方案原文链接在工作中,几乎所有参与产品开发的产品都将实现参数存储功能。通常,参数存储