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

深度入门打卡

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-19 09:22:27 | 显示全部楼层 |阅读模式

第一集

8051U

1.屏幕显示和视频播放(flash编程器)
2.IIS录放器
3.PWM_DMA
4.频谱分析仪
5.手写计算器
6.QSPI等

初步入门单片机学习,同时也在这段时间正在学习89C52,学习了一些基础,这段时间感受到来自单片机的魅力,说一说我为什么会对单片机感兴趣,其实主要是在最开始的时候,对电路感兴趣,那会闲来无事,就开始在家里面维修了一些电器,比如做了一个鱼缸的降温设备,其实就是半导体降温,还把一个定时器的维修好了,当时就觉得这个电路板也挺有意思的,想着说了解一下,看看自己能否学会,在以前读书的时候,就考过电子信息的研究生,广州大学嘛,但是后来感觉数据结构那门课好像有点被压分了,分数特别低,然后最终也确实是差了几分,挺可惜了没考上,再后来就没考了,反正自己也对这方面感兴趣,就开始着手研究起来,最开始的时候是研究了PCB板,但是发现学习PCB比较困难,需要先有一些电路的知识以及应用能力,就去买了一个二手普中的51单片机,也就四十块钱,别人的现成的,无意中发现了这个,就同时开始研究起来,希望能学明白,也当作是一种爱好了。

回复

使用道具 举报 送花

3

主题

714

回帖

139

积分

等待验证会员

积分
139
发表于 2025-5-19 09:23:00 | 显示全部楼层
单片机学习者:从电路兴趣到专业认知的探索之路

作为一名对电子和计算机科学充满热情的大学生,我深深体会到了学习单片机的成就感与价值。在学习单片机的过程中,我逐渐发现,这不仅是一门技术课程,更是一门充满乐趣的科技探索之旅。随着对单片机的兴趣加深,我不仅掌握了硬件设计的基础知识,更养成了对电路设计的热爱。以下,我们将从硬件学习、个人兴趣培养、专业认知等方面,谈谈我的学习历程和感悟。

一、硬件学习的深刻体验

我记得第一次接触单片机是在大学的实验室环境。当时,我偶然间发现了一本二手的51单片机,价格仅为40元。我对这个价格感到惊讶,但随后,我意识到这是一本值得深入研究的工具。在学习51单片机的过程中,我逐渐接触了电路基础知识、硬件设计、软件开发等各个方面。通过这些学习,我不仅掌握了单片机的基本原理,还深刻体会到电路设计的艰辛与快乐。

在学习过程中,我逐渐发现,单片机的魅力在于其灵活性。通过学习8051U等硬件设备,我不仅理解了单片机的核心功能,还学会了如何将理论知识应用到实际项目中。这种将知识转化为实践的转变,让我对学习单片机产生了浓厚的兴趣。

二、专业学习的动机:从电路到硬件设计的转变

在学习单片机的过程中,我逐渐意识到,这不仅仅是掌握一些硬件设备,更是要将理论知识转化为实际应用。为了满足对硬件设计的兴趣,我选择了学习《数据结构》等专业课程。这门课程虽然对我来说是难度较大的,但我对数据结构的理论有着浓厚的兴趣。

在学习《数据结构》的过程中,我深刻体会到,数据结构不仅是计算机科学的基础,更是逻辑思维的体现。通过学习线性结构、非线性结构以及高级数据结构,我逐渐培养了一种严谨的思维方式。这种思维方式,让我在学习单片机的过程中更加得心应手。

三、对单片机的兴趣与专业认知的融合

通过学习单片机和数据结构,我逐渐认识到单片机与计算机科学的紧密联系。单片机是计算机的核心组件,而计算机科学的基础知识,如算法设计、数据结构、编程语言等,都与单片机学习紧密相连。这种联系让我对学习单片机产生了更加深刻的认识。

在学习过程中,我逐渐意识到,单片机不仅是一种硬件设备,更是计算机科学的重要组成部分。通过学习单片机,我不仅掌握了硬件设计的基本技能,还对计算机科学的理论有了更深刻的理解。这种对知识的整合,让我对学习单片机有了更全面的认识。

四、学习单片机的意义与价值

学习单片机的过程,是我人生中的一次宝贵体验。在这个过程中,我不仅学到了硬件设计和软件开发的知识,还培养了严谨的思维方式和对科技的兴趣。这种兴趣,让我在学习单片机的过程中更加投入,也让我对计算机科学产生了更深的热爱。

通过学习单片机,我不仅学到了硬件设计的基本技能,还学到了如何将理论知识转化为实际应用。这种学习方式,让我对计算机科学产生了更深层次的思考。在未来的学习和工作中,我将更加注重知识的整合与应用,将所学的理论知识与实际工作相结合,为社会的发展贡献自己的力量。

五、对单片机的未来展望

单片机作为计算机科学中的重要工具,其技术基础和技术应用已经渗透到我们的日常生活和工作中。随着技术的不断进步,单片机的智能化水平也在逐步提高。学习单片机的过程,不仅是对硬件知识的积累,更是对计算机科学理论的深入理解。

未来,我希望能够将所学的单片机知识应用到实际工作中,为团队和社区的发展贡献自己的力量。同时,我也希望通过学习单片机,进一步培养自己的兴趣爱好,将学习与生活相结合,提升自己的综合素质。

总之,学习单片机的过程,是我人生中一次深刻的体验。在这个过程中,我不仅学到了硬件知识,更培养了严谨的思维方式和对科技的兴趣。这种学习方式,让我对计算机科学有了更全面的认识,也让我对未来的学习和工作充满期待。

[本文内容由国芯人工智能辅助生成,仅供参考]
回复 支持 1 反对 0

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-19 15:41:43 | 显示全部楼层

第二集

硬件及工具介绍

经过了解,发现ai8051u和89C52基本是相通的,无论是所使用的软件,keil5以及stc-isp,大体上来说,没什么太大区别,具体使用上,频率以及选项稍微有所偏差,不过这个按步骤来做的话基本没什么问题!!然后在还有像Alapp-ISP,keil中断拓展插件,具体使用这个还需要后续继续学习,现阶段在这方面还并不是很清楚有什么用。
继续加油!!

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-19 17:19:07 | 显示全部楼层

第三集

到了每个单片机人最激动的点灯环节!
学完之后发现和51的区别,这里讲到了一个很重要的点,就是配置IO口,此处分为四种不同的配置模式,准双向口、推挽输出、高阻输入、开漏模式,课程当中主要讲解了准双向口的工作原理,准双向口又称8051端口模式以及弱上拉,首先需要先配置P0M0,P0M1,都设置为0就是准双向口模式,最幸运的是有STC-IPS这个软件,可以有这四种设置的配置,太方便了,感受到科技的力量!

代码如下:

#include “ai8051.u”

void main()
{
        P0M0 = 0X00;
        P0M1 = 0X00;
        //把P0-p07端口设置为双向端口
        P4M0 = 0X00;
        P4M1 = 0X00;
        //把P4端口设置为双向端口

  
        while(1)
        {
                P40=0;
                P00=0;
        }
}

微信图片_20250522093948.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-20 09:07:06 | 显示全部楼层

第四集:USB不停电下载

根据我对89C52的了解,每次使用isp软件下载程序之后,都需要重启进行冷启动,才能进行下一步操作,今天使用的这个ai8051U不需要,只需要进行操作即可,按照步骤来,一步步操作,成功实现结果!!

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-20 09:13:17 | 显示全部楼层

第五集 C语言基础

本集讲了一些C语言的基础内容,这个的话就算是巩固一下过去的知识把,这些是大学的知识,哈哈!!

1.usb-cdc串口之Printf函数

重定向到了printf_hid中,相当于替换

printf_hid(const char *fmt,....);

image.png

利用不同的格式可以进行不同字符的替换。

2.数据类型

image.png

主要是要判断好范围,不能用于过大的数

3.运算符

image.png

主要是区分/和%

++和--

image.png

0为0,非0为真!

判断语句中常用

image.png

image.png

注意数据的溢出,数据类型的选择。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-21 17:38:38 | 显示全部楼层

第六集

GPIO
首先是关于输入和输出的设置,高电平和低电平的概念,高电平即接近电源正极vcc的电压,低电平则为靠近电源负极的电压,即0V,而关于io的设置一共有四种不同的模式,分别是准双向口,推挽输出,高阻输入,开漏模式。

关于按键的检测方法

0

P40需要先开启,LED灯才可以打开,

任务1:按下P32按钮灯点亮,松开P32按钮灯灭

while(1){
  if(P32==0){
    P00=0;
  }
  else
  {
  p00=1;
  }
}

任务2:按下P32按钮灯灭,松开P32按钮灯开

while(1){
  if(P32==0){
    P00=1;
  }
  else
  {
  p00=0;
  }
}

任务3:按一下灯亮,按一下灯灭。

由于此处的按钮,在按下去的时候会有电平的忽高忽低,因此需要一定的延迟程序,将中间的忽略掉,因此需要使用到Delay函数,除此之外,还需要一个状态码,使用state表示此时的灯属于亮还是灭,后期反转状态码即可判断灯亮灭。

while(1){
  if(P32==0)   //判断按钮是否按下
  {
    //首先先延迟20毫秒
    Delay(20);
    if(P32==0)   //判断按钮是否按下
    {
    state=!state;     //状态码取反
    P00=state;
    printf("state:%d\r\n,(int)state");  //(int)强转
    while(P32==0);    //等你松手
    }
  }


}
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:6
  • 最近打卡:2025-05-22 22:09:15
已绑定手机

1

主题

7

回帖

45

积分

新手上路

积分
45
发表于 2025-5-22 22:09:15 | 显示全部楼层

第七集

任务1:每隔3秒,就去反一次,串口打印按键次数

if(P32==0){
  Delay(20);
  if(P32==0){
    printf("按下次数\xfd为:%d次\r\n",(int)count);
    count++;
    while(P32==0);
  }

}

void Timer0_Isr(void) interrupt 1      //中断上述代码3秒执行一次
{
  state=!state;
  P00=state;
}

image.png

image.png

image.png

定时器的本质,就是从设定的值到65536以后溢出,记作一次标志位,是得ETH0中断

函数的定义声明和调用

image.png

任务2:灯按一下亮三秒后熄灭

if(P32==0){
  Delay(20);
  if(P32==0){
    P00=0;            //点亮
    Timer0_Isr();      //等待3秒
    while(P32==0);
  }

}

void Timer0_Isr(void) interrupt 1      //中断上述代码3秒执行一次
{
  P00=1;                //关灯
  TR0=0;                //直接诶吧TR0设置为0,使得定时器关闭计时
}

任务3:救护车灯控制器,LED1和LED2交替闪烁

U8 Run_state=0;          //用于记录运行状态


if(P32==0){
  Delay(20);
  if(P32==0){
    Run_state=!Run_state;      //运行状态取反
  
    if(Run_state==1){
      Timer0_Isr();
    }
    else
    {
        TR0=0                  //停止计时
        P00=1;
        P01=1;
    }
  }

}

void Timer0_Isr(void) interrupt 1      //中断上述代码3秒执行一次
{
    state=!state;
    P00=1;
    P01=1;
}
回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-6-17 03:47 , Processed in 0.283170 second(s), 94 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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