找回密码
 立即注册
查看: 1095|回复: 7

STC32G单片机开发,视频教程第一集:认识单片机

[复制链接]

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-15 15:04:23 | 显示全部楼层 |阅读模式
什么是单片机?
单片机(Microcontroller,缩写为MCU)是一种集成了中央处理单元(CPU)、内存、输入/输出端口以及各种外设功能的微型计算机系统。它通常用于控制、监测和执行各种嵌入式系统任务,如家电、汽车、工业自动化、医疗设备等。
单片机的主要特点包括:
  • 集成性: 单片机将许多关键组件集成到一个芯片中,包括处理器、存储器(如闪存或RAM)、输入/输出引脚、定时器、计数器、通信接口等。这使得单片机在紧凑的空间内能够实现复杂的控制和计算功能。
  • 低功耗: 单片机通常被设计为低功耗设备,这使得它们适用于需要长时间运行并使用有限电源的应用,比如便携式设备。
  • 实时性: 许多单片机具备实时响应能力,可以在非常短的时间内对输入做出反应,从而适用于需要快速控制和决策的应用。
  • 多种外设: 单片机通常具有多种内置的外设,如模拟-数字转换器(ADC)、数字-模拟转换器(DAC)、串行通信接口(如UART、SPI、I2C)、脉冲宽度调制(PWM)等,这些外设使其能够与其他设备进行通信和控制。
  • 编程和调试: 单片机可以使用特定的编程语言和工具进行编程,控制其行为。开发人员可以编写代码来配置单片机的各种功能和行为,以实现特定的应用需求。
  • 成本效益: 由于其集成度高、功耗低,以及适用于广泛的应用领域,单片机通常比传统的通用计算机系统更具成本效益。


STC32
"STC8051" 可能指的是基于 8051 架构的单片机产品系列,由中国的 STC 微电子(STC Microelectronics)生产。8051 是一种经典的 8 位微控制器架构,广泛应用于许多嵌入式系统和应用中。
以下是关于 STC8051 单片机系列的一些常见特点和信息:
  • 架构: STC8051 基于经典的 8051 架构,这是一种 8 位微控制器架构,具有内置的 CPU、内存、I/O 端口和各种外设。
  • 性能: 不同型号的 STC8051 单片机可能具有不同的性能特点,包括时钟速度、Flash 存储容量、RAM 容量等。性能的选择取决于应用需求。
  • 外设: STC8051 单片机通常具有多种内置的外设,如定时器、计数器、串行通信接口(UART)、模拟-数字转换器(ADC)等,使其能够与外部设备进行通信和控制。
  • 编程和开发: STC8051 单片机可以使用特定的开发工具和编程语言进行编程,常见的编程语言包括汇编语言和 C 语言。开发人员可以使用这些工具来编写代码、烧录程序,并进行调试和测试。
  • 应用领域: 由于 STC8051 单片机适用于多种应用场景,可以用于家电控制、工业自动化、汽车电子、仪器仪表等领域。
  • 支持和文档: STC 微电子通常提供有关其单片机产品系列的技术文档、数据手册、应用笔记和示例代码,以帮助开发人员理解和使用这些单片机。




回复

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-15 15:06:54 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-15 15:09 编辑

第二节课

微信截图_20230815150720.png
微信截图_20230815150742.png


单片机是一个集成电路(IC),具有多个组成部分,使其能够执行各种任务,从控制到计算,通信到数据处理。以下是一个通常的单片机的主要组成部分:
  • 中央处理单元(CPU): 单片机的核心部分,负责执行指令、处理数据和控制整个系统。CPU 可能基于不同的架构,如 8 位、16 位或 32 位。
  • 存储器: 单片机通常包含两种主要类型的存储器:
    • 程序存储器(ROM 或 Flash): 存储程序代码,即单片机的指令集。这是单片机启动时执行的代码。
    • 数据存储器(RAM): 用于临时存储程序数据、变量和中间结果。RAM 可以读写,但在断电后数据会丢失。

  • 输入/输出(I/O)端口: 这些是用于与外部世界通信的引脚。它们可以用于接收传感器数据、控制执行器、与其他设备进行通信等。
  • 定时器和计数器: 这些硬件模块用于生成精确的时间延迟、周期性触发以及测量时间间隔。它们在许多应用中都很重要,比如生成 PWM 信号或实现定时任务。
  • 串行通信接口: 单片机通常具有一些串行通信接口,如 UART、SPI、I2C 等,用于与其他设备或微控制器进行数据交换。
  • 模拟-数字转换器(ADC): 如果需要处理模拟信号(如传感器信号),ADC 可以将模拟信号转换为数字形式,以便单片机进行处理。
  • 数字-模拟转换器(DAC): 一些单片机还可能包含 DAC,可以将数字数据转换为模拟信号,用于控制模拟设备。
  • 中断系统: 中断是一种机制,允许单片机在出现特定事件时立即响应。这对于实时响应和多任务处理非常重要。
  • 时钟源: 单片机需要时钟来同步其操作。时钟源可以是外部晶体振荡器、晶体振荡器或内部振荡器。
  • 电源管理单元: 单片机通常具有电源管理电路,以管理供电和功耗,包括休眠和低功耗模式。
  • 复位电路: 复位电路确保在单片机上电时,它处于已知的初始状态。


不同单片机的设计有所不同,STC和ST就就所区别,一个8051架构,一个是ARM架构

回复 支持 反对

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-15 15:10:51 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-15 15:16 编辑

第三节课
主要讲解搭建开发环境以及编译程序

微信截图_20230815151012.png
微信截图_20230815151205.png

微信截图_20230815151344.png

福昕阅读器靠顾客了 哈哈
微信截图_20230815151423.png

微信截图_20230815151521.png

微信截图_20230815151543.png

其实这些我好像不用看 本身已经搭建好了

回复 支持 反对

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-15 15:17:20 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-15 15:20 编辑

第四节课
点亮LED灯

微信截图_20230815151644.png

微信截图_20230815151740.png

点亮一个 LED 灯是嵌入式系统中最基本的实验之一。以下是通过嵌入式系统控制 LED 灯点亮的一般步骤和原理:
  • 硬件准备: 首先,你需要一个 LED 灯和一个适当的电阻。电阻的作用是限制电流,以保护 LED 不受过大电流的损害。你还需要将 LED 连接到嵌入式系统的输出引脚,通常称为 GPIO(通用输入/输出)引脚。
  • 连接电路: 将 LED 的一个引脚连接到电源(通常是正极),另一个引脚连接到一个电阻,然后将电阻的另一端连接到嵌入式系统的 GPIO 引脚。最后,将嵌入式系统的地(负极)连接到 LED 的另一个引脚。
  • 编程控制: 使用你的嵌入式系统开发工具和编程语言,编写程序来控制 GPIO 引脚的状态。对于大多数嵌入式系统,你可以将 GPIO 引脚设置为输出模式。
  • 点亮 LED: 将 GPIO 引脚设置为高电平(通常是高电压,即 3.3V 或 5V,具体取决于你的系统电压水平)。这将使电流流经 LED,并点亮它。
  • 熄灭 LED: 将 GPIO 引脚设置为低电平,这将切断电流流,导致 LED 熄灭。

基本上,通过控制 GPIO 引脚的电平状态,你可以在嵌入式系统中控制 LED 灯的点亮和熄灭。这是一个简单的示例,展示了嵌入式系统如何与外部世界进行交互。实际应用中,你可以扩展这个原理,以实现更复杂的控制和交互功能。


回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:8
  • 最近打卡:2025-04-27 10:40:24

11

主题

425

回帖

1971

积分

版主

积分
1971
发表于 2023-8-15 16:33:13 | 显示全部楼层
欢迎楼主继续打卡学习
有机会优先获赠实验箱+包邮


QQ:2269694595     微信:18106296594
回复 支持 反对

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-17 16:45:10 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-17 16:52 编辑


第五节

微信截图_20230817164459.png

微信截图_20230817164554.png

这节主要讲解

1.C语言 print函数的实现
2.数的进制:2进制、10进制、 16进制
3.C语言常用运算符
4.数据的基本类型

  • 数的进制:
    • 2进制:使用0和1表示,以0b或0B开头,如0b1010。
    • 10进制:我们平常使用的十进制,使用0-9表示。
    • 16进制:使用0-9和A-F(或a-f)表示,以0x或0X开头,如0x1A。
  • C语言常用运算符:
    • 算术运算符:+(加)、-(减)、*(乘)、/(除)、%(取余)
    • 关系运算符:==(等于)、!=(不等于)、<(小于)、>(大于)、<=(小于等于)、>=(大于等于)
    • 逻辑运算符:&&(逻辑与)、||(逻辑或)、!(逻辑非)
    • 赋值运算符:=(赋值)、+=(加赋值)、-=(减赋值)、*=(乘赋值)、/=(除赋值)、%=(取余赋值)
    • 位运算符:&(按位与)、|(按位或)、^(按位异或)、~(按位取反)、<<(左移)、>>(右移)
  • 数据的基本类型:
    C 语言中的基本数据类型包括:
    • 整数类型:int、short、long、long long
    • 浮点数类型:float、double、long double
    • 字符类型:char
    • 指针类型:用于存储变量的内存地址
    • 枚举类型:enum
    • 空类型:void
    这些基本数据类型可以在不同平台上有不同的大小,具体取决于编译器和硬件。你可以使用这些数据类型来声明变量并存储不同类型的数据。



回复 支持 反对

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-17 16:53:03 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-17 16:55 编辑

第六节

微信截图_20230817165252.png

微信截图_20230817165345.png
微信截图_20230817165418.png
微信截图_20230817165432.png


更多的是需要实践,若是有管理员送板子 希望可以多几个芯片开发学习,谢谢

回复 支持 反对

使用道具 举报 送花

4

主题

5

回帖

36

积分

新手上路

积分
36
发表于 2023-8-17 16:57:07 | 显示全部楼层
本帖最后由 前程晨 于 2023-8-17 16:59 编辑

第七节
按键点灯

微信截图_20230817165722.png

微信截图_20230817165754.png

微信截图_20230817165812.png

微信截图_20230817165830.png
微信截图_20230817165857.png


基础内容,实践为大


回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 13:05 , Processed in 0.162312 second(s), 93 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表