fcxqczzyjdxx 发表于 2023-5-19 00:29:15

看冲哥的视频,打卡

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:38 编辑

第一集 认识单片机

单片机,把CUP,RAM(相当于电脑的内存),ROM(相当于电脑的硬盘),外设(相当于电脑的显卡声卡网卡USB等),集成到一颗芯片上。
单片机的作用,输入输出电压信号,计时计数,做数学运算,做逻辑运算等功能。
应用场景很广泛,仪器仪表,工控,电气控制,物联网设备等。

fcxqczzyjdxx 发表于 2023-5-20 09:08:06

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:39 编辑

第二集 了解试验箱上的硬件
试验箱外设
1、红外接收发射
2、电压比较器
3、数码管
4、LED
5、万能板
6、NTC测温
7、18B20
8、ADC按键
10、基准电压
11、PWM模拟DAC
12、24C02 EEPROM存储
13、矩阵键盘
14、独立按键
15、LCD12864接口
16、LED电源指示
17、232接口
18、FLASH扩展
19、232电路
20、调试接口
21、蜂鸣器
单片机介绍
工作电压1V9-5V5,

fcxqczzyjdxx 发表于 2023-5-20 10:57:17

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:39 编辑

第三集 开发环境搭建和程序下载
下载STC-ISP软件和STC32手册
查阅STC32手册
搭建C251开发环境keil
下载官方例程
编译第一个工程
----------------------------------
在stcai.com/gjrj 下载STC-ISP
打开STC-ISP 在菜单资料下载->用户手册->点击STC32G 下载手册
开发环境keil的下载,在STC32G手册第五章,有下载链接和安装方法
在STC-ISP里面下载STC32G的官方例程
用STC-ISP给keil添加头文件和芯片支持
安装USB驱动

fcxqczzyjdxx 发表于 2023-5-20 12:02:29

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:39 编辑

第四集建立工程点亮第一颗LED上
输出电压是VCC就是高电平,用‘1’表示,
输出电压是GND就是低电平,用‘0’表示,

单片机上GPIO通过程序输出‘1’或者‘0’,
--------------------------------
新建一个工程
认识sfr关键字,给0X80-0XFF范围内的寄存器起个名字,
需要对这些寄存器操作时,只要对寄存器的名字操作就可以。
给PnM1 PnM0都写入0,Pn表示P0-P7 ,把Pn设置成准双向口,既可以输出高低电平,也可以输入高低电平。

fcxqczzyjdxx 发表于 2023-5-20 13:39:24

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:40 编辑

第四集 第二讲建立工程点亮第一颗LED下,USB-CDC/虚拟串口,不停电下载
不断电下载
根据数据手册5.15章节对STC-ISP设置和修改代码。
2023年5月20日 我看到的数据手册是在5.14章节
----------------------------------------
如果usb_init()在main函数后面定义,需要在main函数前面要声明。
usb_init()函数在main函数中调用。

----------------------------------------
#include 引入头文件,
认识寄存器EA,中断的总开关。
sbit,给寄存器的其中一位起名字。

fcxqczzyjdxx 发表于 2023-5-20 14:15:53

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:40 编辑

第五集C语言运算符和进制数入门上
c语言printf函数实现
认识ASCII码
二进制,逢二进一,十进制,逢十进一,十六进制,逢十六进一。

fcxqczzyjdxx 发表于 2023-5-20 14:51:24

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:40 编辑

第五集 第二讲 C语言运算符和进制数入门上
P4端口和P6端口与16进制数的对应关系
运算符
加(+)、减(-)、乘(*)、除(/)、除运算的余数(%),
自加 i++ 和++i
自减 i-- 和--i
右移 >>左移 <<
位运算 与 & 全1为1、或 | 全0为0、非 ~ 由1得0,由0得1
-----------------------------------------
数据类型
bit 一个位
char 。。 unsigned char
int。。 unsigned int
long 。。 unsigned long

fcxqczzyjdxx 发表于 2023-5-20 15:19:38

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:40 编辑

第六集 LED闪烁
LED的闪烁,一段时间亮一段时间灭。
#define 的使用,给一个数字起一个名字
写一个delay_ms函数。
while语句,条件成立开始运行while里面的语句。
do-while语句,先执行do-while里面的语句,然后判断是不是成立,如果成立再运行do-while里面的语句。

fcxqczzyjdxx 发表于 2023-5-20 15:37:44

本帖最后由 fcxqczzyjdxx 于 2023-5-20 15:41 编辑

第六集 第二讲 LED闪烁
#define 名字 需要定义的内容
函数的定义
返回值 函数名字(参数类型 参数名,......)
{
      函数要实现的功能代码
}
函数的声明
返回值 函数名字(参数类型 参数名,......);
函数的调用
函数名字(参数,......);
----------------------------------
模块化编程
把单独功能的函数放到一个c文件中,对应的在一个h文件中声明。
在需要该功能的地方包含h文件,和调用对应的函数。

fcxqczzyjdxx 发表于 2023-5-20 16:14:33

第七集 按键点灯
按键按下 有一段时间的电压不稳定,在跳过这段时间后判断按键是否按下才准确。
if(KEY==0)
{
        delay_ms(10);
        if(KEY==0)
        {
        ......
        }
}
-------------------------------
if...else的用法
取反运算的使用 y=!x;
while语句另一个用途,在某个地方停下来
页: [1] 2 3 4 5
查看完整版本: 看冲哥的视频,打卡