Polaris 发表于 2023-8-16 13:57:38

冲哥STC32学习打卡贴~欢迎交流指导

本帖最后由 Polaris 于 2023-8-16 17:24 编辑

首先声明:觉得不是想要带走STC32G12K128-实验箱-V9.6才发帖的[旺柴][旺柴]
本人是半小白一个,想要系统的学习一下32。为什么半小白呢,因为参加过两届智能车比赛摄像头组,今年学弟的电磁组正是用的这款芯片,跟学弟交流过这款芯片也算是有所接触。小白是因为,此前除了跟着江科大学过一段时间的51,就去实战TC264了。几乎没有系统的学习过,用的也都是龙邱的库,改改参数,要是自己写真写不了。而且对于外部中断等也是有所了解,底层也是很模糊。想通过冲哥视频教学,更深的理解学习一下,希望可以达到更高的层次。 然后顺带,带走STC32G12K128-实验箱-[旺柴][旺柴]

月光如盐 发表于 2023-8-16 17:11:32

楼主可继续打卡学习
有机会优先获赠实验箱+包邮

https://www.stcaimcu.com/data/attachment/forum/202308/11/091702k4gxonb0js1021jx.png

Polaris 发表于 2023-8-17 09:50:46

第一节:认识单片机
  一:芯片封装类型:
直插 贴片
  二:功能:
超迷你计算机,可以编写,修改程序,用它来做有规律的事情
  三:用途:
用途非常广泛。个人理解:除了极其简单的电气产品(如钨丝灯泡等),其余生活中只要用电的设备应该都有单片机在里面。
四:新手常见问题
1:入手51还是STM32
小白可以入手51单片机,更方便学习。而且51后面也不会被淘汰。51单片机虽然性能不是很强,但是很稳定。性能也可以提升,未来市场还是很大。
2:如何算离开小白,入门单片机
当有需求时,自己脑子里有没有解决方案。
3:做一个项目需要掌握什么才会感受压力?
会找资料!!!(之前又在百度直接搜 CSDN等 当然发现本论坛后,以后也会经常用到)
4:熟练以后,寄存器的效率更高。
5:STC单片机好不好?
真的很便宜!!! 然后网上资料也是很好找,教程也比较多。物美价廉~ 好!
四:学习建议
1:静的下心,沉得住气!!!
2:跟着动手做
3:举一反三,发散思维
4:多看论坛,官网,多交流问题
5:尝试实践,用STC32做一些项目。
五:介绍了官网~开源案例还是很吸引人的。

Polaris 发表于 2023-8-17 10:23:55

第二节:硬件介绍
一:实验箱集成了------如图
NTC测温:连续变化的电压信号
18B20测:不是线性变化,中间可能检测不到
基准电压:0~5——0~4095
ADC:V—数字  PWM:数字—V
24C02:存储芯片~断电也可保存。
FLASH:大的放这里,类电脑硬盘
工作电压  1.9~5.5V
RAM:类电脑内存,下电没。
课后作业:
做一个寻迹小车。
1.0:光电or电磁寻迹,PID控制。
2.0:电磁+光电寻迹(可单独),测温+蜂鸣器+排灯(每5°亮一个灯)
后续可能还会加一些其他。蓝牙遥控,传输。。。。

Polaris 发表于 2023-8-17 13:29:52

第三节:开发环境和程序下载
  首要目的:学会PDF阅读器查阅手册(之前没看过)
&&&&&&&&&&&&&&&&&&&&&&&&
1:stc-isp-stc独家烧录软件,有很多开发工具:虚拟显示功能、生成范例程序、驱动安装等
2:冲哥推荐(福昕阅读器)用阅读器的书签功能!!!几千页不必看完,用啥看啥。
3:跟着手册安装Keil C251编译环境。
4:下载程序包,配置一下Keil打开例程后,在option for Target中选择单片机型号,并勾选编译输出Hex文件选项,点击build编译。 注意:烧录的时候要复位一下&&时钟用24MHz(因为程序是24MHz)
&&&&&&&&&&&&&&&&&&&&&&&
由于做智能车是时候已经配置过了,过程中没出现问题。冲哥讲的特别细。

Polaris 发表于 2023-8-21 20:20:10

第四节:点亮一颗LED灯
高电平=1=VCC;低电平=0=GND
GPIO通用输入输出端口(可以读取输入,也可控制输出)
点亮LED灯原理学习
新建工程-->选择芯片类型--〉添加工程
按下tab 缩进几格 可以自定义
重要!!!勾选一下设置 生成 hex文件 不然后面找不到下载文件
编译一下,通过isp下载进去
搜索功能CTRL+F
***********************************************************
程序理解:
/*定义P0特殊功能寄存器*/
sfr P0 = 0x80;   
sfr P0M1 = 0x93;
sfr P0M0 = 0x94;
/*对单个IO口进行位定义*/
sbit P40 = P4^0;
sbit P60 = P6^0;
/*通过配置PxM0、PxM1,设置GPIO功能模式等*/
P0M0 = 0x00;
P0M1 = 0x00;   //0x00:将Px配置为准双向口

Polaris 发表于 2023-8-22 01:14:30


第五节:

这节主要讲解:
主要内容:1:详细讲解了数制
2:c语言中常用的运算符及数据类型
3:并演示了c语言中printf的实现

1.C语言printf函数的实现
常规用法。
printf("Hello Word")
printf("室内温度: %.2f\r\n",11.2)

• 数的进制:

• 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

这些基本数据类型可以在不同平台上有不同的大小,具体取决于编译器和硬件。你可以使用这些数据类型来声明变量并存储不同类型的数据。
页: [1]
查看完整版本: 冲哥STC32学习打卡贴~欢迎交流指导