开物
发表于 2023-12-10 13:02:09
第十集 汇编语言程序设计的一般步骤和基本框架 占位
后期补充
开物
发表于 2023-12-10 21:32:15
第十一集 单片机C语言程序设计一
----C51对ANSI C的扩展
----变量或数据类型
声明变量时,应根据变量数值大小合理的选择数据类型
----bit变量可用于变量类型和函数声明、函数返回值等。存储于内部RAM的20H~2FH单元,位不能声明位一个指针 不能为数组
----可位寻址区 sbit声明可独立访问可位寻址对象的位 要求基址对象的存储器类型位bdata 否则只有绝对的位声明方法是合法的 位的位置(^后的数字)最大值依赖于指定的基类型
char/unsigned char (0-7)int/unsigned int/short/unsigned short(0-15)long/unsigned long(0-31)可位寻址对象的位声明只能放到main函数的外部作为全局变量使用, 否则编译报错。
----特殊功能寄存器(SFR)用来控制定时/计数器 串口 I/O及其他不见 支持sfr、sbit等关键字
sfr:字节寻址sfr P0 = 0X80;// =后为常数 且这个常数就是特殊功能寄存器的对应地址
sfr16: 字寻址 sfr16 DPTR = 0X82;//指定DPTR的地址DPL = 0X82 DPH = 0X83
sbit:位寻址 用于声明可位寻址的特殊功能寄存器的位变量sbit CY = PSW^7;//定义CY为PSW的第7位 且PSW必须之前已经被定义
----存储区域的制定
code 关键字表示 变量保存到程序存储区 可用于定义表格常速 以节省内部RAM的使用 unsigned char code led_buf = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,x06f};//共阴极数码管显示字模
data 直接寻址区 内部低128字节 00H~7FH默认声明变量保存区域
idata 间接寻址区 内部RAM256字节00H~FFH
bdata 可位寻址区 20H~2FH
xdata 可指定多达64KB的外部直接寻址区 0000H~FFFFH 需要声明较大的数组时 可以使用xdata关键字将变量数组保存到扩展RAM中。unsigned char xdata arr;
pdata 能访问1页(256B)的外部RAM(不推荐)
----keil C51指针
----C51对函数的扩展
----C语言程序中的常用运算
----C51程序框架
开物
发表于 2023-12-20 12:47:26
第十二集 单片机C语言程序设计实例
----实例一 1S周期的方波 引用头文件声明延时函数 主函数内-设置I/O口--循环内500ms切换P60 延时函数
----延时函数的探讨 变量声明尽量强制定义
----中断函数的讲解
----仿真的讲解 通过移位来实现流水灯
----实例二flash作为EEPROM使用的基本操作实现对0X0400单元的擦除和读写 EEPROM 的写操作只能将1写为0如果需要将0写1 只能进行擦除擦除以扇区为单位操作 写操作以字节为单位
STC8H8K64U的EEPROM 大小可以通过ISP设置
---- _nop_ 空等指令
开物
发表于 2023-12-20 13:59:03
第十三集 中断原理及工作机制一
----中断的相关概念
----STC8H8K64U单片机的中断源
开物
发表于 2023-12-20 20:56:56
第十四集 中断原理及工作机制二
----
----中断应用开发举例
引用头文件主函数(I/O模式设置 初始化 中断设置 开启中断....) 中断服务函数interrupt 0 (P60取反)
开物
发表于 2023-12-21 12:22:12
第十五集 定时器原理及STC拓展
----STC8H8K64U 定时/计数器结构应用
----相关寄存器
开物
发表于 2023-12-21 17:10:54
第十六集 定时器应用及STC拓展
----STC8H8K64U 定时/计数器应用举例
开物
发表于 2023-12-22 13:43:26
第十七集 串行口原理一
----STC8H8K64U集成了 4个UART 1个SPI 1个I2C 1个USB
开物
发表于 2023-12-22 14:42:01
第十八集 串行口原理二
---- STC8H8K64U 4个全双工串口 UART1 UART2 UART3 UART4
开物
发表于 2023-12-23 15:05:19
第十九集 串口通信,多机通信
----建议使用ISP工具设置串口波特率 简单快捷