xinggdkyzbrsyqz 2024-10-22 16:09 采纳率: 0%
浏览 2

有个挺基础的8086系统设计,想请教一下

  • 开发语言

电路连接使用PROTEUS的示例模板中的译码电路,芯片选择引脚连接到译码器74154IO4,数据线连接到系统的低8位数据线ADOAD7,编程将8253计数器0设定为方式3,输入频率为100kHz的数字时钟信号,要求产生5~22ms的方波信号:计数器1设定在方式3,输入同计数器0,要求产生500ms的方波信号,输出信号连接到LED灯,控制IED灯闪烁,设计硬件电路和程序实现以上功能,用虚拟示波器观察产生的波形。

  • 写回答

1条回答 默认 最新

  • 月下独码 Java领域新星创作者 2024-10-22 19:40
    关注

    本答案参考 多次询问 ChatGPT-3.5 后选择的最佳回答,若是满意,还请采纳,谢谢

    以下是解决此8086系统设计问题的步骤:

    一、硬件电路设计

    1. 8086微处理器
      • 8086是整个系统的核心,它负责控制其他芯片的操作并处理数据。
      • 连接其数据总线(低8位ADO - AD7用于与8253通信)、地址总线以及控制信号。
    2. 8253计数器芯片
      • 连接方式
        • 数据线:将8253的数据线D0 - D7连接到8086系统的低8位数据线ADO - AD7,以便数据传输。
        • 地址线:通过译码电路连接到合适的地址,这里芯片选择引脚连接到译码器74154的IO4,以确定8253在系统中的地址。
        • 时钟信号:输入频率为100kHz的数字时钟信号到8253的CLK0CLK1引脚(用于计数器0和计数器1)。
        • 对于计数器0,将其输出OUT0连接到示波器用于观察波形,并且根据后续程序设置,产生5 - 22ms的方波信号。
        • 对于计数器1,将其输出OUT1连接到LED灯,产生500ms的方波信号来控制LED闪烁。
    3. 74154译码器
      • 用于对8086的地址进行译码,以便选择8253芯片。它的IO4引脚连接到8253的芯片选择引脚,根据8086的地址信号产生合适的片选信号。

    二、程序设计

    1. 8253初始化编程(假设8253的端口地址为PORT0PORT1,这里是通过译码电路得到的实际地址)

      • 计数器0初始化
        • 首先,需要向8253的控制字寄存器写入控制字。对于计数器0,方式3(方波发生器模式)的控制字格式为:1011xxxxB,假设使用二进制计数(x部分根据具体需求确定,这里假设为0000),则控制字为10110000B(十六进制为B0H)。
        • 写入控制字到8253的控制字寄存器(假设地址为PORT0):
          MOV AL, 0B0H
          OUT PORT0, AL
          
        • 计算计数初值。已知输入时钟频率f = 100kHz,要产生的方波周期T在5 - 22ms之间。根据公式计数初值N = f*T,当T = 5ms时,N1=(100000Hz)* (5*10 - 3s)=500;当T = 22ms时,N2=(100000Hz)* (22*10 - 3s) = 2200。所以计数初值的范围是500 - 2200。
        • 写入计数初值(假设先写低字节,后写高字节):
          MOV AX, 500 ; 这里以500为例,可以根据需求调整
          OUT PORT0, AL
          MOV AL, AH
          OUT PORT0, AL
          
      • 计数器1初始化
        • 对于计数器1,同样先写控制字。方式3的控制字格式为1011xxxxB,假设为二进制计数且其他设置相同,控制字也是10110000B(十六进制为B0H)。
          MOV AL, 0B0H
          OUT PORT0, AL
          
        • 计算计数初值。已知输入时钟频率f = 100kHz,要产生的方波周期T = 500ms。根据公式计数初值N = f*TN=(100000Hz)* (500*10 - 3s)=50000
        • 写入计数初值(假设先写低字节,后写高字节):
          MOV AX, 50000
          OUT PORT1, AL
          MOV AL, AH
          OUT PORT1, AL
          
    2. 控制LED闪烁的程序(简单示例)

      • 可以通过不断检测计数器1输出的方波信号来控制LED的亮灭。假设通过输入输出端口(如8255芯片等,这里未详细设计其连接)来控制LED,并且可以读取计数器1的输出状态。
        CHECK_LOOP:
        IN AL, PORT_STATUS ; 假设PORT_STATUS是读取计数器1输出状态的端口
        TEST AL, 01H ; 假设OUT1连接到最低位
        JZ LED_OFF
        LED_ON:
        MOV AL, 0FFH ; 假设点亮LED是输出高电平
        OUT PORT_LED, AL
        JMP CHECK_LOOP
        LED_OFF:
        MOV AL, 00H ; 假设熄灭LED是输出低电平
        OUT PORT_LED, AL
        JMP CHECK_LOOP
        

    请注意,以上程序只是一个基本的框架,在实际的8086系统设计中,还需要考虑更多的细节,如系统的初始化、中断处理(如果需要)、地址译码的具体实现等。并且在PROTEUS中进行仿真时,需要正确设置各个元件的参数和连接关系,以确保系统能够正常工作并观察到正确的波形。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月22日

悬赏问题

  • ¥15 fluke高精度万用表8845A型号测交流电压一直跳动,且去掉输入后显示不归零
  • ¥15 不同模型怎么用同一个shader
  • ¥15 安卓启动没有ais proxy与v4l2的log打印
  • ¥15 go怎么读取mdb文件里面的数据
  • ¥60 Matlab联合CRUISE仿真编译dll文件报错
  • ¥15 脱敏项目合作,ner需求合作
  • ¥15 脱敏项目合作,ner需求合作
  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发

玻璃钢生产厂家商场美陈奖品大拉花上海节庆商场美陈多少钱兰州抽象人物玻璃钢雕塑公司艺术商场美陈哪里有树脂玻璃钢雕塑厂家西宁玻璃钢卡通雕塑制作商场户外美陈方案安庆美陈商场布置商场美陈是真的吗解说青白江玻璃钢造型雕塑湖南卡通玻璃钢雕塑景观装饰河南常用商场美陈哪家好3米龙王玻璃钢佛像雕塑卡通玻璃钢雕塑加工厂玻璃钢动画形象雕塑河南玻璃钢动物雕塑批发上海卡通玻璃钢动物北极熊雕塑伊春玻璃钢雕塑定做上海商场美陈招聘信息防城港玻璃钢座椅雕塑造价昆山玻璃钢雕塑公司有哪些如何承接玻璃钢雕塑重庆双桥玻璃钢仿铜雕塑青岛市玻璃钢人物雕塑厂家高淳新年商场美陈赣州特色玻璃钢雕塑优势淮安玻璃钢海豚雕塑定制保山玻璃钢雕塑直销湘潭玻璃钢抽象雕塑革命主题玻璃钢雕塑有哪些香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化