C语言基础及STM32基础

本文介绍了C语言基础,包括变量、函数、指针和结构体等,强调了指针作为C语言灵魂的重要性。接着讲解了STM32的基础知识,如MCU功能、寄存器、PID控制和通信协议。文章还讨论了STM32的HAL库,解释了其优缺点,并阐述了实时操作系统的基本概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、C语言基础

C语言(代码什么都都可以干)
写代码之前要考虑事件怎么操作
C语言要提前定义变量
{1.#include 2.mian() 3.变量 (int float char)
4判断(if switch) 5.循环(while for) 6.数组
7.函数 8.指针 9.结构体}
这就是C语言!

1.库函数,头文件(相当于程序的解)
2.main(看程序一定要从main函数开始看)
3.int pi =3.14 (pi是变量)(const) #define pi 3.14(pi是常量)
有符号(unsigned)和无符号(signed)
7.函数:传入参数 返回值
全局变量:括号外定义变量,没有赋初值,打印出来是0
局部变量:括号内定义变量,没有赋初值,打印出来是随机数
运行后会被释放
8.指针:C语言的灵魂
9.结构体:使用结构体,数据类型最为合理,节省内存,防止浪费。
结构体:“偷懒+变量”

关键字:
1.static
全局变量:对于全局变量也是存储在静态区,但是它的作用域仅为本文件。
局部变量:再次调用函数的时候,这个静态变量仍然保持上次时候的值。
静态函:只在当前文件下调用此函数,防止被其他的.c文件调用。

2.extern
extern关键字可以用来声明变量、函数作为外部变量或者函数供其它文件使用。

3.struct和union
struct和union都是由多个不同的数据类型成员组成, 但在任何同一时刻, union中只存放了一个被选中的成员, 而struct的所有成员都存在。在struct中,各成员都占有自己的内存空间,它们是同时存在的。一个struct变量的总长度等于所有成员长度之和。在Union中,所有成员不能同时占用它的内存空间,它们不能同时存在。Union变量的长度等于最长的成员的长度。

二、STM32基础

STM32被广泛应用在控制领域,本此选用STM32F407进行电机实验,此单片机是基于arm-cortem4为核心。

功能:执行 感知 计算 计时(定时器:外部晶振,按照一定周期震动,可以条件占空比)
控制器:
MCU(GPIO 定时器 PWM UARRT CAN) 板载外设(LED 通讯电路 驱动电路)

执行:I/O口 供电(母头)防止触碰引起火花

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值