wuzhengmin 发表于 2026-1-7 09:47:42

字寻找很少用:

wuzhengmin 发表于 2026-1-7 09:50:46

指定内存区域:


code 是必须要加的,不加的话,默认是放在256个字节的内部RAM里

如果是字模数组或者是图片的数组,显然是放不下的!

最好把不变的常数,放在程序存储器FLASH当中


wuzhengmin 发表于 2026-1-7 10:05:56

外部存储器,在STC8H8K64U中:

速度是最慢的,比程序存储器还慢

更不能和基本内部存储器RAM相比,但人家空间够大!还有就是STC8H8K64U以后的芯片

速度上来了,基本没啥感觉!

PDATA就很少用了,256B就太小了,姚总补充,这个PDATA是在8031时代的产物,是和P2口配合使用的


万一编译器搞错了就难办!尽量不要用!

wuzhengmin 发表于 2026-1-7 10:41:36

姚总指示:
尽量声明XDATA,不要用PDATA!

不依靠编译器!

wuzhengmin 发表于 2026-1-7 10:44:30

接着看指针:

wuzhengmin 发表于 2026-1-7 10:54:44

结构和指针,在C语言是不能逃避的!

指针本身存储在哪里?这就有个指针存储类型的问题

假如我们声明数组maA

如果遍历这个数组,最好用指针:


wuzhengmin 发表于 2026-1-7 10:56:20

用指针访问外部端口:

wuzhengmin 发表于 2026-1-7 11:01:31

C51对函数的扩展:

wuzhengmin 发表于 2026-1-7 11:08:35

中断号,用#define 定义好,不用记忆:

wuzhengmin 发表于 2026-1-7 11:11:06

指定工作寄存器区:

页: 45 46 47 48 49 50 51 52 53 54 [55] 56 57 58 59 60 61 62 63 64
查看完整版本: 有关DMA,山东大学陈桂友教授