找回密码
 立即注册
查看: 359|回复: 9

已经学习STC8H视频教程一段时间了,现在发表出来,想要获得实验箱,继续深入学习!

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:41:38 | 显示全部楼层 |阅读模式
第一集

陈老师单片机的历史,确实刷新了自己的认知,然后还讲了单片机点灯的知识,不过对于我来说,点灯可能很简单了,因为已经点过各种单片机的灯了。
我希望能通过这次学习STCAI单片机的过程,能同时将汇编语言和C语言学好,学会硬件通讯的各种协议,比如IICSPI这些,我只知道这些东西,但其细节可能不是那么清楚。



回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:42:41 | 显示全部楼层
第二集

LED点灯的步骤:
1、配置IO口工作模式
2、配置IO口的值
问题:IO口的4种工作模式的区别和使用场景,不是,十分清楚
其他:陈教授引用的头文件是stc8.h,在我的环境下无法找到该文件,我引入的头文件是stc8h.h

STC_ISP软件的使用:
    确保芯片型号选择正确;
    打开程序文件
    按住INT0,再按电源键,松开电源键,再松开INT0
    扫描串口出出现HID1
小工具:软件延时计算器

数值转换:
    十进制:D
    二进制:B
    十六进制:H

十进制转二进制:
    整数部分:除二取余法
    小数部分:乘二取整法

总线分为:地址总线、数据总线、控制总线

截图202601051041567113.jpg
截图202601051042032078.jpg
截图202601051042153541.jpg
截图202601051042249629.jpg
截图202601051042317674.jpg
截图202601051042397953.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:44:51 | 显示全部楼层
第三集

1、逻辑电平:高电平、低电平
2、上升沿、下降沿
3、逻辑0,逻辑1

逻辑运算是按位运算,没有进位和借位的问题,也没有符号问题

在线仿真步骤:
    Keil仿真设置
        单片机型号
        使用USB口进行仿真
        将所选目标单片机设置为仿真芯片
    Target => Xtal 11.0592MHz
    Debug => Use STC Monitor-51 Driver
                    Run to main()
    Setting => USB

单片机的硬件仿真:

截图202601051043105642.jpg
截图202601051043163148.jpg
截图202601051043215031.jpg
截图202601051043277637.jpg
截图202601051043328906.jpg
截图202601051043433959.jpg
截图202601051043523397.jpg
截图202601051043569588.jpg
截图202601051044027968.jpg
截图202601051044092108.jpg
截图202601051044137573.jpg
截图202601051044315106.jpg
截图202601051044462884.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:46:16 | 显示全部楼层
第四集

单片机的内部结构

一些词汇:
    TMP1、TMP2:暂存器
    ACC:累加器
    B寄存器:用于乘法运算
    PSW:程序状态寄存器
    PC:程序计数器,指向程序存储器
    WDT:看门狗
    LVD:低电压监测
    MDU16:16位硬件乘法器
    LCM:液晶接口
    DPTR:地址指针
    SP:堆栈指针
    SFR:特殊功能寄存器

IO接口:通道(锁存器、驱动器)
中断、串行口、定时/计数器 => P3口
SPI(SS、MOSI、MISO、SCLK)

程序存储器:
    地址范围:0000H~FFFFH
    复位后起始地址:0000H

数据存储器:
    内部数据存储区(内部RAM,00H~FFH,256B)、扩展数据存储区

内部RAM:
1、低128字节:00H~7FH
    基本RAM区(工作寄存器区、位寻址区、用户RAM、堆栈区),可直接寻址和间接寻址,指令:MOV或MOV @Ri
2、高128字节:80H~FFH
    只能间接寻址:MOV @Ri
3、特殊功能寄存器 SFR区:80H~FFH
    只能直接寻址:MOV
截图202601051045159701.jpg
截图202601051045214191.jpg
截图202601051045296094.jpg
截图202601051045395520.jpg
截图202601051045587197.jpg
截图202601051046035541.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:48:16 | 显示全部楼层
第五集

特殊功能寄存器:
    传统特殊功能寄存器(SFR):
        80H~FFH,直接寻址
    扩展特殊功能寄存器(XFR):
        扩展RAM(XDATA)区,P_SW2(BAH)最高位EAXFR置1,
        MOVX A, @DPTR或MOVX @DPTR, A

扩展数据存储区 -> XRAM
    STC8H8K64U 64K地址空间,内部集成了8192B(0000H~1FFFH)
    汇编语言:
        MOVX @DPTR
        MOVX @Ri
    C语言:
        xdata声明
        例如:unsigned char xdata i = 0;
        或者:keil设置:Target -> MemoryModer = Large

单片机引脚介绍:
    1、电源引脚
        Vcc/AVcc
        Gnd/AGnd
    2、外接晶体引脚
        XTAL1、XTAL0
    3、控制和复位引脚
        NRST(P5.4)
        ALE(P4.5)
    4、输入输出引脚(I/O脚)
        STC8H8K64U有60个IO脚
        a、开关量的输入输出
        b、复用功能

IO工作模式
    1、准双向口/弱上拉模式
    2、推挽输入/强上拉模式
    3、仅为输入(高阻)
    4、开漏模式(需外接上拉电阻)
    使用PnM1和PnM0寄存器配置

P3.0和P3.1 上电默认准双向口/弱上拉模式
除此之外,上电默认高阻输入,使用前需配置模式


1. 准双向口 / 弱上拉模式
比喻:像家里的水龙头,平时默认 “开一点小水流”(引脚默认输出高电平),但如果有更大的力量(比如外部电路接了低电平),能把水流顶回去(引脚变成输入状态)。
场景:比如按键检测 —— 平时引脚自己输出高电平,按下按键时被拉成低电平,既能 “主动输出” 又能 “被动接收”,但 “水流(电流)不大”。
2. 推挽输出 / 强上拉模式
比喻:像工地的高压水枪,要么 “全力喷水(输出高电平)”,要么 “全力抽水(输出低电平)”,力气很大(电流强)。
场景:比如驱动 LED 灯 —— 要亮就全力输出高电平,要灭就全力拉成低电平,能直接带动功率稍大的元件。
3. 仅为输入(高阻)
比喻:像一根空水管,自己不主动流水,也不抽水,只 “监听” 有没有水流经过(只接收外部信号)。
场景:比如接传感器 —— 传感器输出信号,引脚只负责 “读”,不干扰传感器的信号。
4. 开漏模式
比喻:像一个 “只能关水,不能开水” 的水龙头 —— 自己只能把水管堵死(输出低电平),但开不了水;要开水的话,得靠外面接个 “水泵”(外部电路接一个上拉电阻)。
场景:比如 I2C 通信 —— 多个设备共用一根线,大家都只能 “拉低”,要恢复高电平得靠公共的上拉电阻,避免多个设备同时 “开水” 打架。
简单总结:
想 “能发能收,但力气小”→ 准双向口
想 “大力出奇迹,直接驱动东西”→ 推挽输出
想 “只看不说”→ 仅输入
想 “和别人共用线路”→ 开漏模式


截图202601051046379643.jpg
截图202601051046508362.jpg
截图202601051046579433.jpg
截图202601051047067280.jpg
截图202601051047124896.jpg
截图202601051047432613.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:50:21 | 显示全部楼层
第六集

IO口的复用功能:
    比较重要的是P3口:外部终端输入、串口1(程序下载仿真调试)

1、上拉电阻:5.1K、10K
2、拉电流、灌电流
3、三极管控制电路
    达林顿管驱动器ULN2803
    场效应管
4、I/O外部状态输入
    软件设置后加延时、然后再读取状态

总线扩展方式:
    8位数据总线:P0
    16位地址总线:P2、P0
    写控制(/WR):P4.2
    读控制(/RD):P4.4
    锁存控制(ALE):P4.5

注:P2口没有用到的口线,不能再用做其他功能。
截图202601051048537094.jpg
截图202601051049069771.jpg
截图202601051049157426.jpg
截图202601051049301958.jpg
截图202601051049429615.jpg
截图202601051050008479.jpg
截图202601051050122356.jpg
截图202601051050193150.jpg
回复

使用道具 举报 送花

  • 打卡等级:常住居民I
  • 打卡总天数:67
  • 最近打卡:2026-02-10 13:19:40

22

主题

89

回帖

913

积分

版主

积分
913
发表于 2026-1-5 10:51:38 | 显示全部楼层
要 做到 USB不停电下载
要 尝试 AiCube 图形化自动配置生成程序工具
推荐优先看的:  
printf_usb("Hello World !\r\n")
USB不停电下载, 演示视频链接:
https://www.stcaimcu.com/thread-19077-1-1.html

下载 最新的 AiCube-ISP-V6.96N 或以上版本软件 !

深圳国芯人工智能有限公司-工具软件

下载 最新的 USB库函数,永远用最新的 USB库函数 !
深圳国芯人工智能有限公司-库函数
下载 最新的 用户手册 !
下载 最新的 上机实践指导书 !


下载 最新的 STC8H8K64U 用户手册
https://www.stcaimcu.com/data/download/Datasheet/STC8H.pdf

下载 最新的 STC8H8K64U 实验指导书
AiCube 图形化自动配置生成程序工具使用说明
https://www.stcaimcu.com/data/do ... %AF%BC%E4%B9%A6.pdf

推荐优先看的 printf_usb("Hello World !\r\n")及usb不停电下载, 演示视频链接

上面是 小李 演示:STC8H8K64U, printf_usb("Hello World !\r\n")及usb不停电下载@AiCube之图形化程序自动生成

上面是 小赵 演示:STC8H8K64U, printf_usb("Hello World !\r\n")及usb不停电下载@AiCube之图形化程序自动生成

点评

你 下载手册 贴错了,楼主在学 STC8H8K64U  详情 回复 发表于 2026-1-5 13:57
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:52:10 | 显示全部楼层
第7集

1、助记符语言描述

    MOV 是数据的传送
    ADD 是数据的相加运算
    ANL 是数据的逻辑与运算

    #8BH,前面带井号,说明是立即数

2、操作码

    (1)数据传送类
            MOV、MOVX、MOVC
            必须指明操作对象从哪来,到哪去。(源地址、目的地址)


    (2)数据操作类
            ADD、SUBB、MUL、DIV
            一般靠运算器完成,一般需要两个操作对象


    (3)程序控制类
            AJMP(SJMP、LJMP)
            JZ、JC、JB(JNZ、JNC、JNB)
            ACALL(LCALL)
            RET

            CJNE

            操作对象是程序计数器PC和一个数


    (4)逻辑操作类
            ANL、ORL、XRL


3、操作数

    可以是数据,也可以是地址

注意:
    a、数据只能是整数,不能是小数;
    b、数据是十六进制且是以字母开头时,该数据应该加一个前导0;
    c、数据前有前缀#,则表示数据是立即数,如果没有前缀#,则数据为直接地址

指令格式及分类

    [标号: ] 操作码助记符 [第一操作数][, 第二操作数][, 第三操作数] [; 注释]

    标号,也用过子程序的名字。
    操作数,可能有0~3个操作数。

    指令的存储格式:
        指令长度:单字节、双字节、三字节


    指令中的符号约定:
        A:累加器ACC
        B:寄存器B
        C:进位借位标志
        addr8:8位内部RAM地址

        bit:位地址,内部RAM中的可寻址位和SFR中的可寻址位
        #data8:8位立即数

        #data16:16位立即数

        @:间接寻址

        rel:8位带符号偏移量

        Rn:当前工作区(0~3区)的工作寄存器,(n=0,1,...,7)

        Ri:可用作地址寄存器的工作寄存器R0和R1

        (X):X寄存器的内容

        ((X)):由X寄存器寻址的存储器单元内容,即X中存放的值作为地址,相当于指针的功能

        ->:数据传送方向

        /:按位取反        

寻址方式(7种)

    1、立即寻址
        指令中的源操作数是立即数。

    2、寄存器寻址
        指定寄存器的内容为操作数,对寄存器ACC、B、DPTR和CY寻址时,具体的寄存器已隐含在其操作码中。
        而对选定的8个工作寄存器R7~R0,则用指令操作码的低3位指明所用的寄存器。

    3、直接寻址
        指令中包含了操作数的地址。
        a、特殊功能寄存器SFR;
        b、内部数据RAM中的00H~7FH(128个字节单元);
        c、位寻址空间。

    4、寄存器间接寻址
        指定某一个寄存器的内容作为操作数地址,使用时,前面加“@”表示间接寻址。

    5、变址寻址
        由偏移量寄存器和基址寄存器DPTR或PC相加所得结果作为操作数地址。
        例:MOVEC A, @A + PC

    6、相对寻址
        主要用于相对跳转指令。
        注:该偏移量有正负号,所转移的范围为相对于当前PC值的 -128~+127 之间。

    7、位寻址
        对位地址空间的每一位进行运算和传送。

纪要:
    00H~1FH:工作寄存器区(32个单元,分为4组,每组R0~R7)
    20H~2FH:可位寻址区(00H~FFH,256个位)

第8集
数据传送类指令
    对程序状态字PSW一般不产生影响
    分为三种:
        数据传送
        数据交换
        栈操作


数据传送类指令注意事项:
1、向累加器传送数据时,会影响PSW中的P标志
2、执行传送指令时,源地址中的内容不变
3、特殊功能寄存器SFR只能使用直接寻址
4、80H~FFH单元只能使用@Ri间接寻址方式
5、累加器A压栈和出栈时,应使用 PUSH ACC 或者 POP ACC。(* 使用A表示寄存器寻址,使用ACC表示直接寻址)
截图202601051051159789.jpg
截图202601051051202233.jpg
截图202601051051266065.jpg
截图202601051051329186.jpg
截图202601051051385564.jpg
截图202601051051447501.jpg
截图202601051051525257.jpg
截图202601051051597733.jpg
截图202601051052046829.jpg
回复

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:1
  • 最近打卡:2026-01-05 10:33:00
已绑定手机

1

主题

7

回帖

21

积分

新手上路

积分
21
发表于 2026-1-5 10:55:20 | 显示全部楼层
第十一集

学习了相关单片机开发的C语言知识点

截图202601051053211146.jpg
截图202601051053277932.jpg
截图202601051053314035.jpg
截图202601051053423905.jpg
截图202601051053518813.jpg
截图202601051053581011.jpg
截图202601051054072167.jpg
截图202601051054104504.jpg
截图202601051054144901.jpg
截图202601051054233693.jpg
截图202601051054287715.jpg
截图202601051054383139.jpg
截图202601051054462235.jpg
截图202601051054531071.jpg
截图202601051054586245.jpg
截图202601051055027268.jpg
截图202601051055076169.jpg
截图202601051055117721.jpg
截图202601051055166759.jpg
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:324
  • 最近打卡:2026-02-12 09:05:32

835

主题

1万

回帖

2万

积分

管理员

积分
22170
发表于 2026-1-5 13:57:32 | 显示全部楼层
芯S*** 发表于 2026-1-5 10:51
要 做到 USB不停电下载;
要 尝试 AiCube 图形化自动配置生成程序工具;
推荐优先看的:  

你 下载手册 贴错了,楼主在学 STC8H8K64U
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-2-12 18:02 , Processed in 0.125096 second(s), 86 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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