单片机入门--常见单片机PIC\STM32

PIC 16F18系列单片机开发 IO口配置与stm32的区别 PIC 芯片IO口配置小结 阅读详情

这里虽说是介绍常见的单片机,实际上也只是简单的描述下我曾经在项目中使用过的单片机。
PIC单片机,英文全称为Peripheral Interface Controller,翻译过来应该是物理接口控制器。顾名思义,我们使用它主要是通过这些物理接口来完成对其他设备的控制。
开发环境安装
PIC:
https://www.microchip.com/mplab/compilers
https://www.microchip.com/mplab/mplab-x-ide
在使用XC2.0版本时,会报下面的错误。

error: variable has incomplete type ‘void’
error: expected ‘;’ after top level declarator。
需要将
void interrupt ISR(void)
修改为
void __interrupt (high_priority) ISR(void)

STM32:
https://www.st.com/content/st_com/en/search.html#q=cubeMX-t=tools-page=1
https://www.st.com/content/st_com/en/search.html#q=truestudio-t=tools-page=1 (好像官网上说不推荐这个用于最新的设计了)
https://developer.arm.com/tools-and-software/embedded/keil-mdk
keil的库如果无法在线更新的话,可以考虑在这个网页上找到相对应的安装文件,下载安装:
https://www.keil.com/dd2/pack/#/eula-container
编码风格

PIC单片机使用MPLAB创建工程,在创建工程的时候选择要编程的设备。之后就需要根据手册进行代码的编写工作。在这个过程中,全部的代码框架都需要自己来定义,我们要定义时钟,管脚功能等等所有的工作。
STM32使用CubeMX这个简单易用的图形化工具,所有的配置都可以在图形界面上进行选择,并且可以生成整个工程的代码框架。大大缩短了开发周期降低了开发难度。

选型要求
PIC主频低,管脚少,功能弱,所以一般会用来进行一些简单场景的控制。STM32有丰富的管脚,以及丰富的产品形态,主频高,适合用于一些较为复杂的控制场景。

应用场景
我自己做过的项目,一般用来进行管脚控制,主要是通过管脚控制来完成对其他芯片上下电的操作。通过ADC采集电流电压值,通过I2C进行交互通信。
STM32 比较灵活,既可以作为MASTER和又可以作为SLAVE存在。并且一般都可以支持3组I2C。
使用CubeMX,还可以选择freeRTOS系统,可以方便的用于更复杂的场景中。

Proteus仿真STM32按键检测:从GPIO原理到轮询与中断实现 在嵌入式系统开发中,GPIO(通用输入输出)是微控制器与外部世界交互的基础接口,其输入模式用于读取外部信号状态。按键作为最常见的人机交互元件,其检测原理涉及硬件电路设计、电平采样和软件消抖处理。通过理解GPIO的上拉/下拉电阻配置及输入模式,开发者可以准确捕获按键动作。在工程实践中,高效的按键检测能提升系统响应性和可靠性,广泛应用于消费电子、工业控制和物联网设备等场景。本文以STM32为例,结合Proteus仿真工具,详细解析轮询与外部中断两种实现方式,并融入**软件消抖**和**状态机**等关键技术,帮助 阅读详情

相关推荐

Proteus仿真实战:从51单片机到STM32的电路设计与调试指南

电路仿真是电子工程领域的核心技术之一,它通过在虚拟环境中模拟真实电子元件的物理特性,验证电路设计的正确性。其原理在于利用数学模型对电压、电流、时序等参数进行实时计算,从而预测硬件行为。这项技术的核心价值在于大幅降低开发成本与风险,允许工程师在投入物理制造前反复迭代优化设计。在嵌入式系统开发、单片机学习以及通信协议验证等应用场景中,仿真工具已成为不可或缺的环节。Proteus作为一款主流的电子设计自动化软件,集成了原理图设计、代码调试与交互式仿真功能,尤其擅长解决诸如51单片机定时器配置、STM32控制系统开

weixin_30388677的博客 427

mplab下和中断相关的编译错误

error: variable has incomplete type 'void' error: expected ';' after top level declarator。 我在mplab x 5的帮助中发现了解决方法,有如下图片 我依照帮助进行修改后,编译成功。后面还有很多坑,就说道这里吧。 不得不说pic的开发体验真的一言难尽!!!糟糕的体验,糟糕的生态环境。糟...

ack26的博客 3162

Proteus单片机仿真入门:从点亮LED到系统调试实战

电路仿真作为硬件开发的前置验证手段,能够显著降低反复打板与调试的时间成本。其核心原理是通过软件建模的方式模拟芯片、电阻、电容等元器件的电气行为,并支持加载编译后的程序文件进行系统级运行。这种虚拟化验证的思路,对于单片机学习者和电子设计工程师尤为重要,特别是在验证最小系统、外设驱动以及信号观测时,能在不接触真实硬件的情况下快速定位逻辑错误。从实际应用场景来看,无论是点亮一颗LED、驱动LCD1602,还是利用虚拟示波器捕捉PWM波形,仿真工具都能提供直观的反馈。本文正是围绕这一强大工具展开,梳理从工程建立到系

weixin_42525211的博客 279

Qt报错: variable has incomplete typte ‘QJsonObject’

Qt demo, 进行json操作,代码报错: variable has incomplete typte ‘QJsonObject’ 网上不少教程都是这么写的,为什么我这里偏偏报这个错呢?找了很久也没弄明白。 真是个傻瓜式的问题:https://stackoverflow.com/questions/23128904/read-json-with-qjsonobject 其实就是却了Js...

小鹰信息技术服务部 5352

Proteus仿真实战:从51单片机到STM32的电子系统虚拟调试指南

在嵌入式系统与电子设计领域,电路仿真技术是连接软件逻辑与硬件实现的关键桥梁。其核心原理在于通过数学模型和算法,在计算机中模拟真实电子元件的电气行为与微控制器的程序执行,从而构建一个虚拟的硬件实验环境。这项技术的核心价值在于,它允许工程师在物理硬件制造之前,以极低的成本和风险完成电路功能验证、程序逻辑调试和系统交互测试,显著缩短开发周期并降低试错成本。其典型应用场景涵盖单片机学习、嵌入式产品原型验证、混合信号电路分析以及通信协议调试等。本文将以Proteus这一主流仿真平台为例,深入探讨如何利用其作为“数字沙

weixin_30947043的博客 476

keil obj 文件 结构_在MDK开发环境下的STM32工程结构

最近迫于找工作的压力,我不得不加快嵌入式学习的步伐,不再和AVR、PIC8位机纠缠了,开始学习32位单片机。开发环境如下:STM32F103RBT6+MDK+JLINK。今天打开了第一个程序:流水灯。程序内容很简单,只是这个工程的结构看上去很是复杂,不像之前一个工程里就那么几个C源程序和头文件。因此,今天很有必要讨论一下这个工程的结构,相当于一个程序的骨架。其实认真研究一下,会发现例程工程和之前我...

weixin_34023576的博客 1518

使用MPLAB X 对PIC单片机进行配置

最近有与项目需要,要使用PIC单片机进行开发(之前从来没有使用过)。遇到了许多不明白的问题,再此总结一下遇到的问题和相应的解决办法,希望有大神指导,也希望能帮到像我一样的朋友。 一、初入PIC单片机         之前玩过51和stm32等单片机,初入时比较懵,拿到数据手册不知从何下手。网上搜索资料,看到“郭天祥十天教你玩PIC单片机”,当然,视频中使用的单片并不是我使用的单片机型号,但观看...

ailong91的博客 7823

【proteus】安装并实现stm32仿真

摘要:本文介绍了Proteus软件安装及STM32仿真的详细步骤。首先完成Proteus 8.9 SP2的默认安装并覆盖汉化补丁,随后展示如何创建STM32F103仿真工程及运行效果。文章指出Proteus支持多种MCU协同仿真,但仿真结果可能存在理想化偏差。最后针对Proteus 8.17常见问题(如安装源访问失败、汉化乱码、闪退、单片机无响应、元件缺失等)提供具体解决方案,帮助用户顺利完成安装与仿真调试工作。

嵌入式单片机实验室 1008

【ZT】七大主流单片机最全面对比:51/STM32/MSP430/STC/TMS/PIC/AVR

http://www.52solution.com/news/80029883.html七大主流单片机最全面对比:51/STM32/MSP430/STC/TMS/PIC/AVR sunny 2018-01-26单片机现在可谓是铺天盖地,种类繁多,各个厂商们也在速度、内存、功能上各有特点,本文对51、MSP430、TMS、STM32、PIC、AVR、STC单片机之间的性能特点进行简单比较。一、51单...

南岭笑笑生之家 4万+

STM32最小二乘法算法实现教程

STM32微控制器,作为ARM Cortex-M系列处理器的流行代表,已经成为嵌入式系统开发的宠儿。其家族产品广泛应用于多种领域,包括工业控制、医疗设备、消费电子以及航空航天等。最小二乘法是一种数学优化技术,它通过最小化误差的平方和寻找数据的最佳函数匹配。这种方法最早可以追溯到18世纪高斯和勒让德的工作,现在已经成为数据分析、统计建模和工程领域不可或缺的工具。在数学上,最小二乘法可以用于确定一组数据的最佳拟合曲线。

weixin_32242475的博客 1090

基于STM32的旋转LED电子钟设计与实现

说到主控芯片的选择,市面上五花八门:AVR、PIC、ESP32……但如果你要做一个对时序要求极高、外设丰富、还要兼顾功耗和成本的项目,STM32几乎是绕不开的名字。尤其是像旋转LED这种需要。

weixin_36369848的博客 675

STM32F103C8T6在Arduino IDE里编程

前言 时代在进步,极客们手上的单片机也从古老的51、PIC变成了AVR、STM32,也出现了各种便捷的开发工具,例如盛极一时的Arduino;不过Atmega328所属的AVR单片机,终究还是老点了,算起来差不多是20年前的主流了,现在流行的是ARM,今天我们就来玩下Arduino与STM32的结合。 经过半天的努力,终于可以让Arduino IDE支持我的32小板子了,STM32的芯片性价比...

bobo184的博客 4万+

CentOS 7下kkFileView 4.4.0离线部署全攻略(含LibreOffice 7.5配置避坑指南)

本文详细介绍了在CentOS 7环境下离线部署kkFileView 4.4.0的全流程,包括LibreOffice 7.5的配置避坑指南、中文字体解决方案以及企业级运维实践。通过本指南,用户可以在内网环境中快速搭建稳定可靠的文档在线预览服务,提升办公效率。

weixin_28481133的博客 290

PIC32MX1/2/5系列单片机:嵌入式控制领域的稳定之选

在嵌入式控制领域,32位单片机是产品设计的核心器件。传统ARM架构虽占据主流,但MIPS内核的PIC32MX系列凭借稳定可靠的中断响应、灵活的PPS引脚映射以及5V耐压IO,在工业控制、电机驱动和家电应用中长期占据一席之地。该类芯片通过外设组合与硬实时特性,为开发者提供了高确定性的控制方案。配合MPLAB X与MCC图形化配置工具,可快速完成PWM、ADC、UART等外设初始化,降低开发门槛。从直流水泵闭环调速到USB数据采集,PIC32MX1/2/5系列以适中的性能与优秀的抗干扰能力,成为许多产品选型时不

weixin_30279671的博客 315

基于STM32的红外测温系统设计

为了实现本次的毕业设计,我搜集了大量的文献与资料,通过这些资料了解到红外测温的优点,与实现所需的基本器件,并设计了几个方案,最终选择了STM32作为主控芯片,为此还查阅了关于STM32的资料,在此次设计中采用的是MLX90614医用红外测温模块,通过查阅其数据手册了解其测量精度高且自带温度补偿,所以选择了该传感器作为红外测温模块,本次设计到此已经基本完成,硬件部分和软件部分的设计已基本完成。

weixin_112233的博客 1422

winedt + miktex + SumatraPDF 搭建latex环境

整个环境包含三部分: - winedt: 前端编辑器 - miktex: 后端编译器 - SumatraPDF: 预览器顺序无关紧要, 不过如果先装miktex的话, 可能会被winedt在安装的时候自动找到路径从而不需要设置.1.安装miktex首先在latex-project官网, 打开”get”后, 有四种平台: Linux, Mac OS, Windows, Online. 我写论文

Iteration makes perfection. 6462

MPLAB X IDE与PIC单片机入门:从环境搭建到LED闪烁实战

单片机开发离不开集成开发环境(IDE)与编译器的配合,而PIC系列单片机采用的哈佛结构让程序存储与数据存储物理分离,带来高效取指的同时也要求开发者理解其独特的内存管理方式。Microchip官方提供的MPLAB X IDE作为一套独立的图形化开发环境,需搭配XC系列编译器(如XC8)才能完成从源码到机器码的转换,这种模块化设计虽灵活却常让新手困惑。借助MCC(MPLAB Code Configurator)这类图形化外设配置工具,开发者可以快速生成初始化代码,降低寄存器配置的复杂度,从而把精力聚焦于业务逻辑

weixin_33851429的博客 291

OSMDroid(1)——OSM简介,基础例子搭建

1.OSMDroid简介 Osmdroid是一款完全开源的地图基本操作SDK,相比于现在普遍使用的百度地图,高德地图,谷歌地图等最大的好处就是开源。 最近在做一个军方项目,要求完全不能联网,从开发到应用整个阶段都是在局域网进行,相比之下采用了OSMDroid这个SDK作为解决方案。 先来看OSMDroid,便是(OpenStreetMapForAndroid),后面都简称OSM...

robotskly的博客 6179

STM32使用外设热敏打印机进行打印

【代码】STM32外接串口热敏打印机进行打印。

白云苍狗 7537

焊缝缺陷智能检测:基于 YOLO 的工业质检系统实战

从焊缝缺陷数据集的构建到模型训练,从桌面检测界面到缺陷统计输出,本文覆盖了一套工业焊缝质检系统的完整路线。这个场景的核心难点在数据层面——气孔和裂纹这类小目标的标注质量直接决定了模型的最终表现。建议先在开源数据集上跑通全链路,确认 mAP 达到可接受的水平后,再通过补充特定类型的小目标数据和提升输入分辨率来做精度优化。工业场景中,漏检一个气孔的成本和误报一个假阳性的成本不一样——根据对两类成本的承受力,调整置信度阈值来找到业务上的最佳平衡点。

m0_71589036的博客 202

1 电科院FTU检测标准学习笔记-外观检查

作者简介:本人从事电力系统多年,岗位包含研发,测试,工程等,具有丰富的经验在配电自动化验收测试以及电科院测试中,本人全程参与,积累了不少现场的经验。

sixtome 1852

LittleVGL不完全指南(一)——STM32移植F429IG_spi屏

LittleVGL不完全指南文章目录 LittleVGL不完全指南(一)——STM32移植F429IG_spi屏 文章目录 系列文章目录 前言 一、获取LittleVGL 二、移植 总结 前言 LittlevGL是一个免费的开放源代码图形库,它提供创建嵌入式GUI所需的一切,它具有易于使用的图形元素,精美的视觉效果和低内存占用; 它是一个开源的图像库,旨在为嵌入式设备提供一个精美的界面,当然嵌入式设备只是一部分,由于它是使用标C所写,你可以很轻松的移植到更多设备上,...

Y_Y_T_T的博客 3476

FANUC机器人S523 新款PN板卡与西门子PLC通信配置介绍

FANUC机器人S523 新款PN板卡与西门子PLC通信配置介绍

Robot_PLC_HMI_Automation 354

STM32 MPLAB X IDE ​软件安装-玩转单片机-英文版沉浸式安装

STM32 MPPLAB 的安装,可以参考

qq_51183095的博客 646

点云去噪:基于点云拟合的方法

点云处理是计算机视觉中的重要任务之一,而点云去噪是点云处理的关键步骤之一。在实际应用中,由于采集设备的噪声、运动估计误差或者环境干扰等因素,点云数据中常常包含有噪声点,这些噪声点会对后续的点云分析和处理造成不良影响。一种简单的方法是计算点到拟合曲面的距离,并将距离超过某个阈值的点定义为噪声点,进行过滤。一种简单的方法是计算点到拟合曲面的距离,并将距离超过某个阈值的点定义为噪声点,进行过滤。该方法通过拟合点云数据的曲面模型,对噪声点进行识别和过滤,从而得到更加干净的点云数据。

AuSwift的博客 638

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

串口触摸屏双核STC\8051单片机教学实验箱系统

摘要:该文介绍了一款基于STC/8051单片机的串口触摸屏教学实验箱系统。系统采用Keil开发环境,集成了示波器、信号源、万用表等多种仪器功能,配备3.3V至±12V多路电源输出。实验箱包含基础实验模块(如LED、数码管、电机控制等)和传感器模块(如温度、湿度、光电等),支持51系列、STM32等多种单片机开发。系统提供丰富的实验例程和教学资料,适用于单片机原理、接口技术等课程的教学实践,可完成从基础到综合的60余个实验项目,培养学生的硬件设计和编程能力。设备尺寸500×350×150mm,质保5年。

840

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

上一篇: 2020失业第一天
下一篇: 单片机入门---最重要的外设控制(GPIO)
野-百-合
博客等级 码龄17年 308粉丝 118原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值