| cyqdesign |
2010-01-26 12:31 |
基于51系列单片机的LED显示屏开发技术(作者:邬芝权,靳桅,李骐)
《基于51系列单片机的LED显示屏开发技术》以当今广告媒体中较为流行的LED显示屏控制系统为背景,结合基于51系列单片机的硬件控制系统,对LED显示屏的数据组织方式和灰度、亮度控制做深度剖析,详细地讲解了如何利用LED单元板驱动控制方式高效率地排列存储器中的数据。《基于51系列单片机的LED显示屏开发技术》提供了一些经过实际应用项目验证的完整开发实例,供读者参考。在简要讲述普通51单片机和C51编程的基础上,《基于51系列单片机的LED显示屏开发技术》还对具有40 MHz工作频率、单指令周期的增强型51单片机——VRS51L3074及其在LED显示屏控制系统中的应用做了详细介绍。《基于51系列单片机的LED显示屏开发技术》是国内第一本针对铁电单片机的书籍,为初学铁电单片机或是希望了解该单片机的读者提供了较为全面的资料和开发例程。此外还对通用LED显示屏上位机控制软件设计、LED显示屏控制系统常用时钟芯片DS1302、温度传感器DS18B20等模块控制程序和硬件电路进行分析和讲解。这些内容是作者近几年来部分开发工作的实践总结,有些是根据实际生产产品的提炼和推广。 TiiMX 《基于51系列单片机的LED显示屏开发技术》内容丰富实用,图文并茂,适用于从事单片机开发和应用以及从事LED控制系统的研发人员和工程技术人员使用,也可以作为单片机爱好者、铁电单片机初学者,以及使用C51编程的研究生、本科生、专科生毕业设计的参考用书。 obYXDj2 [attachment=24202] :by EXe;3 ;0j 8Xj 市场价:¥49.00 S!*wK- 优惠价:¥36.30 为您节省:12.70元 (74折) Uy8r
!9O
)2
E7>SQc~ 第1章 51系列单片机系统结构概述 ZH]n&%@j 1.1 51单片机概述1 ]xhZJ~"@u 1.1.1 单片机的分类1 EJF*_<f9O 1.1.2 8051单片机的应用3 4.?tP7UE 1.1.3 8051单片机的开发3 3LT[?C]H$ 1.1.4 8051单片机型号的选择4 s d-5AE 1.1.5 单片机学习的要点4 +&t`"lRl& 1.2 51单片机基本系统结构4 GEJEhwO;H 1.2.1 51单片机的结构框图及引脚4 U-uBz4Gha 1.2.2 MCS51系列单片机主要功能部件6 ~`7L\'fs 1.2.3 典型时钟电路和复位电路7 lFHj]%Y 1.2.4 8051单片机I/O结构7 oA_T9uh[ 1.3 51单片机存储器结构8 x.d;7 1.3.1 程序存储器9 2<18j 1.3.2 外部数据存储器10 g=8}G$su{% 1.3.3 内部数据存储器空间11 Ns^[Hb[b' 1.3.4 MCS51单片机特殊功能寄存器13 d9'gH#f? 1.3.5 常用特殊功能寄存器14 6 w"-& 1.4 51单片机的指令系统及汇编语言设计要点16 )_$F/ug 1.4.1 指令格式16 lLq9)+HGN 1.4.2 伪指令17 J|vriI; 1.4.3 寻址方式19 l Je=z 1.4.4 指令类型21 0(+3w\_! 1.5 汇编程序设计34 rlQ4+~ 1.5.1 三种基本的程序结构34 $JH_ 1.5.2 汇编程序设计的要点35 s,KE,$5F 1.6 51单片机主要扩展功能部件39 La$*)qD, 1.6.1 MCS51单片机定时/计数器39 y'gIx*6B@ 1.6.2 中断系统47 V\C$/8v 1.6.3 串行口54 MoIq)5/ 第2章 C51应用基础 D;~c`G
"f 2.1 Keil C51简介62 #;l~Y}7' 2.2 C51程序设计基础知识63 >5,nB< 2.2.1 C语言的特点63 :i;iSrKy 2.2.2 一个简单的C51例子63 }Xn5M&>? 2.2.3 C51的基础知识64 6gUcoDD 2.2.4 存储空间定义64 irg%n 2.2.5 C51数据类型65 zkFx2(Hq-f 2.2.6 C51存储空间的定义67 '"#W!p 2.2.7 C51的常量67 EfTuHg$pe 2.2.8 C51常用运算符68 $Tc"7nYu 2.2.9 C51表达式73 lwY2zX&%)/ 2.2.10 C51的基本语句74 HY
(|31 2.3 C51的函数与数组80 e.8(tEqZ1 2.3.1 函数的定义81 S"*M9*8 2.3.2 数组83 JYE[
1M 2.3.3 结构(struct) 86 3B{B6w}t& 2.3.4 联合(union)87 `%PU_;Y5Q 2.4 C51基本应用90 K'Gv+UC*6 2.4.1 I/O口字节操作应用90 fT:a{ 2.4.2 I/O口位操作应用90 =Zg%& J 2.4.3 计数器应用91 zjuU*$A4 2.4.4 外部中断应用91 ;ALkeUR[ 2.4.5 串行口中断应用92 $-tgd<2h 2.4.6 键盘显示程序93 ]z^*1^u^ig 第3章 铁电单片机VRS51L3074 ukZ>_ke`+ 3.1 VRS51L3074概述104 U{^~X_? 3.1.1 功能说明104 9&FFp*'3 3.1.2 引脚说明106 bZf18lvij: 3.1.3 指令系统109 yXuc<m 3.2 VRS51L3074的存储器结构113 `V(zz 3.2.1 内部数据存储区114 ;rD
M%S@ 3.2.2 特殊功能寄存器区114 o.)8A8 3.2.3 外部数据存储器组织120 [;rty<Z^b 3.2.4 外部数据总线访问123 "`QI2{!l 3.2.5 FRAM铁电存储器的使用127 7U:-zfq 3.3 VRS51L3074芯片配置133 z2EZ0vZ 3.3.1 系统时钟配置133 D^R= 3.3.2 处理器工作模式控制135 2YU-iipdOq 3.3.3 功能模块使能控制136 nDt1oM
H 3.3.4 功能模块I/O映射与优先级137 ]HpKDb0+ 3.4 通用I/O口138 mJj
[f8 3.4.1 I/O口结构139 FCk4[qOp7 3.4.2 I/O口方向配置139 v2vPfb 3.4.3 I/O口输入使能控制140 V3^=Mj2" 3.4.4 I/O口锁存器140 k7R8Q~4 3.4.5 I/O口驱动能力141 dtXAEL\q 3.4.6 I/O口状态变化监控141 dZMOgZ.!yr 3.5 定时/计数器142 .Mn+Bd4f 3.5.1 定时/计数器T0、T1 143 2HxT+|~d6 3.5.2 定时/计数器T2147 |zJxR_) 3.5.3 定时器级联150 }D/O cp~o 3.5.4 定时器应用例程151 -uE2h[X| 3.6 脉冲宽度计数器(PWC)151 *5kQ6#l 3.6.1 PWC模块配置寄存器153 1$Jria5n 3.6.2 PWC模块配置操作155 X^2Txm d 3.6.3 PWC模块例程155 `oDs]90 3.7 串行口156 T7wy{; 3.7.1 串行口UART0157 ~^6[SbVb 3.7.2 串行口UART1159 R<5GG|(B 3.7.3 串行通信波特率计算161 7wO0d/l_ 3.7.4 UART0和UART1引脚映射162 U',.'"m 3.7.5 串行口例程163 u$3wdZ2&m 3.8 SPI接口166 *@E Itj ` 3.8.1 SPI运行控制167 ?iX1;c9 3.8.2 SPI配置和状态监控168 |=dmxfj@ 3.8.3 SPI传输字长171 H
3e(- 3.8.4 SPI数据寄存器172 a\UhOPFF 3.8.5 SPI数据输入/输出173 li U=&wM> 3.8.6 可变位数据传输174 m|7lDfpb 3.9 I2C接口175 !I7bxDzK$ 3.9.1 I2C运行控制175 aMUy^>
3.9.2 I2C从机在线状态检查178 /Ir|& <yB 3.9.3 从机ID设置与I2C高级配置180 +c8cyx:^f 3.9.4 I2C例程181 "agc*o~!F 3.10 脉冲宽度调制器(PWMs)184
R%(ww 3.10.1 PWM输出波形控制185 -<R" 3.10.2 PWM模块时钟配置188 sSh=Idrx 3.10.3 PWM模块例程188 S%+$ 3.10.4 PWM模块的定时器工作模式191 ~miRnW*x 3.11 增强型算术单元(AU)194 zoj3w|G 3.11.1 算术单元控制寄存器195 r_5k$u( 3.11.2 算术单元数据寄存器198 -w0U}Te^ 3.11.3 桶式移位器200 3?}W0dZ$d 3.11.4 增强型算术单元整体结构201 {3jV ,S 3.11.5 算术单元基本运算例程201 s+=JT+g 3.12 看门狗定时器(WDT)202 ZL0':7 3.12.1 看门狗定时器的控制203 \z/_vzz4 3.12.2 采用外部时钟的情况下WDT的复位控制204 [P,/J$v^~ 3.12.3 WDT基本配置例程204 kpe7\nd=> 3.13 中断系统205 fnZa IV=H 3.13.1 中断系统概述205 #4?(A[]>H 3.13.2 中断允许控制207 eX+FtN 3.13.3 中断源选择208 U%Igj:%?;` 3.13.4 中断优先级209 |o:[*2- 3.13.5 引脚变化中断209 _$W</8< 3.14 VRS51L3074 JTAG接口211 JOR ?xCc 3.14.1 激活JTAG接口对系统的影响211 HjX!a29Wf 3.14.2 板级JTAG接口的实现212 )2U#<v^ 3.14.3 VRS51L3074调试器212 dHcGe{T^( 3.15 Flash编程接口(FPI)212 liYR8 D
| 3.15.1 与FPI模块相关的特殊功能寄存器212 QO'=O}e 3.15.2 Flash存储器读操作215 zF&>1y.$ 3.15.3 Flash存储器擦除217 a^9-9* 3.15.4 Flash存储器写操作218 L5"|RI} 第4章 LED显示屏工作原理 #4WA2EW 4.1 LED发光原理及其发展状况、趋势224 6l{=[\.Xa 4.1.1 LED发光原理224 D92#&,KD 4.1.2 LED发展历史及趋势225 w|"cf{$^x 4.2 LED显示屏基本模块介绍226 OMr &f8 4.2.1 光学和人眼视觉知识226 }]qx " 4.2.2 LED器件主要参数227 OT&mNE4 4.2.3 双基色点阵LED模块简介228 n*4N%yI^m5 4.3 常用双基色LED显示屏基本控制单元229 U 0$?:C+? 4.3.1 室内双基色LED单元板结构介绍229 J!%cHqR 4.3.2 驱动方式分析230 m[@7!.0=
4.3.3 室内双基色单元板电路分析232 [7QIpt+FSo 4.4 LED显示屏分类及亮度、灰度控制237 \X'{ e e 4.4.1 LED显示屏分类237 9Q!X~L|\S 4.4.2 LED显示屏亮度及灰度控制理论238 G8JwY\ 4.5 LED显示屏工程应用及维护概述241 O_PKS$sz{ 4.5.1 LED显示屏的方案设计241 ^:b%QO 4.5.2 LED显示屏的安装243 8:BPXdiK 4.5.3 LED显示屏的维修244 UUxDW3K 第5章 LED显示屏显示数据的组织 \XG18V& 5.1 LED显示屏控制系统对单片机的基本要求245 x*)@:W! 5.1.1 LED显示屏对单片机控制系统的基本要求245 iNTw;ov 5.1.2 LED显示屏对单片机数据处理方式的基本要求247 (I?CW~3# 5.1.3 指令优化对字节处理时间的影响248 B:YUb{CJ 5.2 LED显示屏静态显示数据的组织251 -?8;-h, h 5.2.1 静态显示的LED显示屏数据组织251 K1P3
FfG 5.2.2 静态屏的滚动显示255 ]FJpe^
ua 5.3 LED显示屏动态显示数据的组织258 zUw9 5.3.1 动态显示的LED显示屏数据组织258 u-CC UMR 5.3.2 显示区域中X、Y坐标与存储单元字节地址i、位地址j之间的关系261 t=`bXBX1 5.4 显示效果与占用显示数据存储器大小的关系263 0FDfB; 5.4.1 显示效果与占用显示数据存储器大小的关系263 </K"\EU 5.4.2 采用双RAM并行输出降低显示数据存储器的占用267 `_IgH 5.4.3 多RAM并行输出时双RAM并行输出方式的扩展270 k5>K/;*9 第6章 基于51系列单片机的小型LED显示屏控制系统 ]}g;q*!J 6.1 单片机直接驱动LED显示屏272 (_}w4N# 6.1.1 显示数据存储在程序存储器中272 '`$US;5 6.1.2 显示数据存储在扩展的外部并行数据存储器中278 Y)x(+# 6.2 利用单片机外部读写信号驱动LED显示屏279 mUj=NRq 6.2.1 单片机外部数据存储器扩展279 1 :xN )M,s 6.2.2 多个外部数据存储器扩展280 );LkEXC_' 6.3 利用单片机SPI接口驱动LED显示屏287 w$JG:y# 6.3.1 SPI接口的特点287 {r9fKA 6.3.2 利用SPI接口驱动LED显示屏288
RVxlN* 6.4 单片机直接驱动LED显示屏应用实例291 GEg8\ 第7章 单片机扩展外部地址计数器驱动大型LED显示屏 >*TFM[((Y) 7.1 单片机访问外部数据存储器时间上的限制297 p^G:h6|+| 7.2 利用单片机多RAM技术驱动大型LED显示屏301 7Y:~'&U| 7.2.1 并行RAM方式301 'RIlyH~Yf 7.2.2 串行存储器方式307 X-F|&yE~< 7.3 利用LED显示屏单元板排列方式驱动超长LED显示屏308 @v1f)(N 7.3.1 超长LED显示屏面临的问题308 MZt~
Abt 7.3.2 LED显示屏的双向排列方式308 {+V1>6 7.3.3 超长LED显示屏的数据组织与硬件实现309 3pSkk 7.4 利用多单片机系统驱动超大型LED显示屏313 2
{lo 7.5 基于DSP与FPGA的LED显示屏控制系统的设计315 :
"[dr~. 7.5.1 DSP的特点及在LED显示屏控制系统中的应用315 >?b9Xh 7.5.2 基于FPGA的系统时序电路设计316 0Hz*L,Bh4 7.5.3 显示存储器模块设计317 H];QDix? 7.5.4 LED显示屏分区317 Pg3O )D9 7.5.5 显示存储器扫描时序控制电路318 PvzB, 2": 第8章 LED显示屏的系统软件编程 J$)lYSNE 8.1 汉字字库的生成与使用320 6Xjr0C+ 8.1.1 汉字编码简介321 *QzoBpO< 8.1.2 点阵汉字字库321 SwESDo) 8.1.3 在Windows环境下提取字模的工作原理322 qDqgU 8.1.4 提取字模的程序设计322 M1Jnn4w*d 8.2 控制卡与PC机的协议制定324 q%u;+/|l 8.2.1 控制命令字约定325 iJg3`1@j 8.2.2 配置文本编辑326 D0?l$]aE 8.2.3 直接数据格式定义329 ^O
cM)Z6h 8.2.4 存储器地址位置331 `I.Uw$,P 8.2.5 PC机端串行口通信模块331 s=lkK/ [ 8.3 汉字字形的提取及图片的嵌入333 d#@N2 8.3.1 汉字字形提取334 e[t+pnRh 8.3.2 图片的嵌入339 b469 8.4 PC机对下载数据的预处理339 tlU&p' 8.4.1 LED屏显示信息编辑及提取340 ER:)Fk>_ 8.4.2 LED显示数据生成340 j HT2|VGb* 8.4.3 INTER格式数据转换342 Re <G#*^ 第9章 LED显示屏单片机控制系统编程 {1^9* 9.1 基于SPI的Flash存储器读写346 1uTbN 9.1.1 SST25系列串行Flash存储器346 ?XVJ$nzW 9.1.2 基于51单片机SPI接口的串行Flash驱动程序350 ;Ry
)^5Q 9.2 字符控制及处理程序设计359 b {e nD 9.2.1 字符控制处理程序设计360 h' OLj#H 9.2.2 字符点阵字模提取程序设计367 Ak!l}d 9.3 显示程序372 jI$}\*g 9.3.1 显示程序指令表372 sF?N vp 9.3.2 读显示程序指令表378 N@UO8'"9K& 9.3.3 执行显示程序指令表381 n/_cJD\ 9.3.4 单场显示程序设计384 v%|()Z0 9.4 串行口通信模块设计385 yQ>
*F 9.4.1 51单片机端串行口收发模块385 T,h,)|:I^ 9.4.2 51单片机端串行口扩展程序模块388 > m GO08X 9.5 基于DS1302时钟模块程序设计391 ?@
ei_<A{ 9.5.1 DS1302的结构及工作原理391 *pN,@ZV$ 9.5.2 DS1302的控制字节说明391 4C&L | |