本站近期与电子报单片机公共实验室合作推出系列教学文章!

欢迎来到51单片机学习网:庆祝51单片机学习网全面改版

返回主页XL2000实验仪 51论坛 单片机教学 本站例程  技术资料  软件下载  产品介绍 学液晶显示 如何购买  

         步进电机  xl600实验仪  红外线遥控  c语言集锦 自制编程器 音响技术 品质技术 音响网址   更新中..51论坛

51单片机学习网XL2000开发套件火热推出,全自动smt贴片工艺,推广期间每套单价998元

点击察看说明书(64页彩色PDF文档)

1.1 系统简介

4.3 ISP引脚连接

端口按键判断

红外线遥控 555硬件振荡器

1.2 模块接口定义

5.1 仿真概述

矩阵按键识别技术

汉字显示屏 PS2键盘实验
2.1 软件安装   5.2 KEIL软件指南

74LS14反向器

1602液晶显示屏 SD 卡实验
2.2 软件界面介绍 

51引脚说明

74LS138译码器

8155试验

485通信实验 
2.3 软件操作

八路跑马灯

74LS164串入并出

24C02储存

DS1302实时时钟
3.1 USB驱动安装

继电器控制

74LS165并入串出 步进电机 产生hex文件
3.2  特别 usb安装 

8路拨动开关

dac0832应用

93c46 演示

常见问题解答
4.1 ISP 介绍 

数码管静态扫描 

模拟/数字转换器

串行双向通信 系统配置指南
4.2  下载头之插头定义

数码管动态扫描

小喇叭警报器 18B20温度显示 购买方式

*实验21 93c46 演示程序

93c46是1k位串行EEPROM储存器。 每一个储存器都可以通过DI/DO引脚写入或读出。它的存储容量为1024位,内部为128×8位或64×16位。93C46为串行三线SPI操作芯片,在时钟时序的同步下接收数据口的指令。指令码为9位十进制码,具有7个指令,读、擦写使能、擦除、写、全擦、全写及擦除禁止。该芯片擦写时间快,有擦写使能保护,可靠性高,擦写次数可达100万次,以下给出了93C46与单片机的接线图,和引脚说明。


 

说明: 93c46的第6脚org为16/8位模式选择, XL2000套件第6脚接地,仅工作在8位模式下。



XL2000的93C46部分原理图


接线方法:

1用一个4PIN数据排线一端插入CPU部分JP53(P3口)的P3.4,P3.5,P3.6,P3.7。另外一端插入93C46部分的输入端JP46.

2用一条8PIN的数据排线把CPU部份的P2口(JP52)接到八路指示灯部份的JP32。

此程序先把8路跑马灯的数据写入93C46, 然后读出送P2口显示。 运行程序可以观察到8路跑马灯。

为证明93C46的作用, 可以拔下93c46的数据线, 再次运行程序, 则没有跑马灯。


93C46的跑马灯运行照片

 READ EQU 0 ;读93C46
WRITE EQU 2 ;写入93C46
EWEN EQU 4 ; 93C46写入使能
EWDS EQU 6 ; 93C46写入禁止
CS BIT P3.7 ; 93C46 CS
CLK BIT P3.6 ; 93C46 CLK
DI BIT P3.5 ; 93C46 DI
DO BIT P3.4 ; 93C46 DO
ADR46 EQU 20H
ORG 00H
START0: MOV 21H,#00H ; 取地址码
MOV 22H,#08H ; 8组8个码
MOV P3,#10H
MOV ADR46,#00H ;93C46地址00H
START: MOV A,#EWEN ;写入使能
CALL TO9346
MOV A ,21H ;载入取码指针
MOV DPTR,#TABLE ;至TABLE取码
MOVC A,@A+DPTR
MOV R4,A ;存入"写入寄存器"
MOV A,#WRITE ;写入数据
CALL TO9346
MOV A,#EWDS ;写禁止
CALL TO9346
INC 21H ;取下一个码
INC ADR46 ;下一个地址
CALL DELAY1
DJNZ 22H,START
MOV R0,#30H ;存入8051的RAM 地址
MOV ADR46,#00H ;93C46 :00地址
MOV 22H,#08H ; 93C46 8个地址8个码
A1: MOV A,#READ ;读(地址)的数据
CALL TO9346
MOV A,R4 ;93C46输出的数据载入ACC
MOV @R0,A
INC ADR46 ;读下一个地址
INC R0 ;下一个RAM
DJNZ 22H,A1
A2: MOV 22H,#08H
MOV R0,#30H
OUTPUT:MOV A,@R0
MOV P2,A ;输出至P2
CALL DELAY1 ;
INC R0
DJNZ 22H,OUTPUT
JMP A2
TO9346: SETB CS ;93C46 CS=1
SETB DI ;DI=1
SETB CLK ;CLK=1
CALL DELAY ;启动位
CLR CLK ;CLK=0
CALL DELAY
MOV DPTR,#JPTBL46
JMP @A+DPTR ;依ACC值跳至相关地址
JPTBL46: AJMP SREAD ;读
AJMP SWRITE ;写
AJMP SEWEN ;写使能
AJMP SEWDS ;写禁止
SREAD:
MOV A,#80H ;送操作码10
CALL SDATA
MOV A,ADR46 ;载入93C46地址
CALL SADR ;写入7位地址(DI)
CALL RDT46 ;读出数据(DO),存入3CH
MOV R4,A
;CALL RDT46 ;读出数据(DO),存入3DH
;MOV 3DH,A
JMP EX9346
SWRITE:
MOV A,#40H ;送操作码01
CALL SDATA
MOV A,ADR46 ;载入93C46地址
CALL SADR ;写入7位地址
MOV A,R4 ;写入(3CH)数据
CALL SDT46
;MOV A,3DH ;写入(3DH)数据
;CALL SDT46
JMP EX9346
SEWEN:
CLR A ;送操作码00
CALL SDATA
MOV A,#60H ;写使能操作码11XXXXX
CALL SADR
JMP EX9346
SEWDS:
CLR A ;送操作码00
CALL SDATA
CLR A ;写7位禁止操作码000XXXX
CALL SADR
EX9346: CLR CS ;CS=0
RET
SADR:
CLR C
RLC A
MOV R3,#7
JMP SD1
SDATA:
MOV R3,#2
JMP SD1
SDT46: MOV R3,#8 ;写入8位数据
SD1: RLC A ;
MOV DI,C
SETB CLK
CALL DELAY
CLR CLK
CALL DELAY
DJNZ R3,SD1
RET
RDT46: MOV R3,#8 ;读出8位数据
RD1: SETB CLK
CALL DELAY
CLR CLK
CALL DELAY
MOV C,DO
RLC A
DJNZ R3,RD1
RET
DELAY: MOV R7,#0FH
DJNZ R7,$
RET
DELAY1: MOV R4,#20
D1: MOV R5,#20
D2: MOV R6,#248
DJNZ R6,$
DJNZ R5,D2
DJNZ R4,D1
RET
TABLE : DB 0FEH ,0FDH ,0FBH, 0F7H ;广告一个灯左移
DB 0EFH ,0DFH ,0BFH, 7FH ;
END

精致外观

精致外观

精致外观

精致外观

精致外观

精致包装

精致包装

精致包装

配套附件

配套附件

使用手册

使用手册

使用手册

配套附件

配套附件

配套附件

配套附件

配套附件

配套附件

配套附件

精致细节

精致细节

精致细节

精致细节

配套光盘