- 3.65 MB
- 2022-12-29 13:30:15 发布
- 1、本文档共5页,可阅读全部内容。
- 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
- 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
- 文档侵权举报电话:19940600175。
2021/10/211第7章80C51单片机的系统扩展存储器的扩展7.1输入/输出及其控制方式7.281C55接口芯片及其应用7.3LCD接口及其扩展7.4
2021/10/212扩展总线7.1.1程序存储器的扩展数据总线,P0口地址总线,高8位P2口、低8位P0口控制总线,RD、WR、EA、ALE、PSEN7.1存储器的扩展74LS373
2021/10/213片外ROM操作时序片内片外ROM读,用指令MOVC(产生PSEN信号)片外片外ROM选择,用EA。片外ROM最大容量64K。【例7-1】读外部ROM时序。
2021/10/214ROM芯片及其扩展方法常用ROM芯片特性芯片型号27C6427C12827C25627C512容量8KB16KB32KB64KB引脚数28282828读出时间/ns1201209090最大工作电流/mA20202025最大维持电流/mA0.10.10.10.03注:应注意优先选用CMOS器件,其读出时间短,耗电少。
2021/10/215常用ROM芯片引脚
2021/10/216扩展电路
2021/10/217RAM扩展原理读操作时序7.1.2数据存储器的扩展【例7-2】若(DPTR)=2030H,片外RAM单元2030H内容为55H,指令MOVA,@DPTR(该指令代码为E0H)所在片外ROM的地址为2314H。
2021/10/218写操作时序【例7-3】若(DPTR)=1040H,(A)=88H,指令MOV@DPTR,A(该指令代码为F0H)所在片外ROM的地址为2218H。
2021/10/219数据存储器扩展方法常用RAM芯片特性芯片型号62646212862256容量8KB16KB32KB典型工作电流/mA4088典型维持电流/mA20.50.5最大存取时间/ns200200200
2021/10/2110常用RAM芯片引脚
2021/10/2111扩展电路
2021/10/21127.2输入/输出及其控制方式7.2.1输入/输出接口的功能单片机与输入/输出设备的关系
2021/10/2113输入/输接口的功能对单片机输出的锁存对输入设备的三态缓冲信号转换时序协调
2021/10/21147.2.2单片机与I/O设备的数据传送方式无条件传送查询状态传送中断传送DMA传送
2021/10/21157.2.3单片机扩展TTL芯片的输入/输出基本扩展电路
2021/10/2116驱动LED数码管示例
2021/10/21177.381C55接口芯片及其应用7.3.181C55的结构及工作方式81C55的结构及引脚
2021/10/211881C55的内部编制内部RAM地址为00H~FFH内部端口地址000:命令/状态寄存器001:A口010:B口011:C口100:计数器低8位101:计数器高6位及计数器方式设置位
2021/10/2119工作方式设置及状态字格式方式设置76543210TM2TM1IEBIEAPC2PC1PBPA地址:000PA:A口方向。0--输入;1--输出PB:B口方向。0--输入;1--输出
2021/10/2120PC2PC1工作方式说明00ALT1A、B口为基本I/O,C口方向为输入11ALT2A、B口为基本I/O,C口方向为输出01ALT3A口为选通I/O,PC0~PC2作为A口的选通应答B口为基本I/O,PC3~PC5方向为输出10ALT4A口为选通I/O,PC0~PC2作为A口的选通应答B口为选通I/O,PC3~PC5作为B口的选通应答PC1、PC2:C口工作方式设置位IEA:A口的中断允许设置位。0--禁止;1--允许。IEB:B口的中断允许设置位。0--禁止;1--允许。
2021/10/2121TM2、TM1:计数器工作方式设置位TM2TM1工作方式说明00方式0空操作,对计数器无影响01方式1使计数器停止计数10方式2减1计数器回0后停止工作11方式3未计数时,送完初值及方式后立即启动计数;正在计数时,重置初值后,减1计数器回0则按新计数初值计数
2021/10/2122状态字格式76543210TIMERINTEBBFBINTRBINTEABFAINTRA地址:000INTRX:中断请求标志BFX:口缓冲器空/满标志INTEX:口中断允许/禁止标志TIMER:计数器计满标志
2021/10/2123计数器输出模式位号1514131211109876543210M2M1T13T12T11T10T9T8T7T6T5T4T3T2T1T0M2M1输出方式说明00方式0单方波输出。计数期间输出低电平,计数器回0后输出高电平。01方式1连续方波输出。计数前半部分输出高电平,后半部分输出低电平。10方式2单脉冲输出。计数器回0后输出一个单脉冲。11方式3连续脉冲输出(计数值自动重装)。计数器回0后输出单脉冲,又自动向计数器重装原计数值,回0后又输出单脉冲,如此循环。
2021/10/2124选通I/O方式的组态工作方式PC5PC4PC3PC2PC1PC0ALT1输入ALT2输出ALT3输出BFAINTRAALT4BFBINTRBBFAINTRA选通方式时,C口的PC0~PC5被定义为A或B口选通I/O方式的应答和控制线
2021/10/2125组态逻辑
2021/10/21267.3.281C55的接口方法81C55与单片机的接口
2021/10/2127A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0I/O口0××××××1×××××000命令/状态口0××××××1×××××001A口0××××××1×××××010B口0××××××1×××××011C口0××××××1×××××100计数器低8位0××××××1×××××101计数器高6位及方式RAM地址:0111111000000000B(7E00H)~0111111011111111B(7EFFH)I/O端口的地址:
LED数码管的译码八段LED数码管段代码编码表(连线不同可有多种表):公共阳极hgfedcbaabcdgefh公共阴极hgfedcbaabcdgefhhgf……ahgf……a高电平点亮低电平点亮接高电平接地字形0123456789黑共阳0C00F90A40B09992820F880900FF共阴3F065B4F666D7D077F6F00
2021/10/212981C55的键盘及显示接口
2021/10/21307.4LCD接口及其扩展7.4.1LCD1602模块的外形与引脚引脚01:VSS,接地引脚引脚02:VDD,接+5V电源引脚03:VL,对比度调整端引脚05:RW,读/写选择端引脚06:E,使能端引脚07~14:D0~D7,8位双向数据线引脚15:BLA,背光正极引脚16:BLK,背光负极
2021/10/2131结构框图7.4.2LCD1602模块的组成对于2行16字符的显示要增加HD44100驱动器HD44780本身可以驱动单行16字符或2行8字符
2021/10/2132HD44780由字符发生器CGROM、自定义字符发生器CGRAM和显示缓冲区DDRAM组成。CGROM存储了不同的点阵字符图形(表7.9),每一个字符都有一个固定的代码。CGRAM可定义8个字形
2021/10/2133DDRAM有80个单元,但第1行仅用00H~0FH单元,第2行仅用40H~4FH单元
2021/10/21347.4.3LCD1602模块的命令序号指令RSR/WD7D6D5D4D3D2D1D01清屏00000000012光标归位000000001*3输入模式设置00000001I/DS4显示与不显示设置0000001DCB5光标或屏幕内容移位选择000001S/CR/L**6功能设置00001DLNF**7CGRAM地址设置0001CGRAM地址8DDRAM地址设置001DDRAM地址9读忙标志和计数器地址设置01BF计数器地址10写DDRAM或CGROM10要写的数据11读DDRAM或CGROM11读出的数据
2021/10/2135接口电路7.4.4LCD1602模块的接口示例实现程序(略)
2021/10/21361、将R6中的内容分别送入片内30H和片外0030H地址单元内。2、ROM2000H单元内容送给外部RAM0020H单元。3、将地址单元20H与30H中的内容相减,结果存在40H中。MO4、根据进位C的值判断:C=0返回;C=1则C清0返回。5、将单元30H的高4位与31H单元的低4位组合放在32H单元里。
2021/10/21371、将内RAM30H中的数据传送到外RAM1000H单元中。2、将外RAM1008H单元中的数据传送到内RAM50H中。
2021/10/2138
2021/10/2139设R0=20H,R1=25H,(20H)=70H,(21H)=80H,(22H)=A0H,(25H)=A0H,(26H)=6FH,(27H)=76H,试在后面的空格中填入程序执行后的结果。CLRCMOVR2,#3LOOP:MOVA,@R0ADDCA,@R1MOV@R0,AINCR0INCR1DJNZR2,LOOPJNCNEXTMOV@R0,#01HSJMP$NEXT:DECR0SJMP$执行后结果:(20H)=,(21H)=,(22H)=,(23H)=(A)=,(CY)=
2021/10/2140
2021/10/2141
ThankYou!