Deepseek给出的8255显示例程

article/2025/7/4 17:53:48

#include <stdio.h>
#include <conio.h>
#include <dos.h>// 定义8255端口地址 (根据原理图译码确定)
#define PORT_8255_A 0x8000  // PA端口地址
#define PORT_8255_B 0x8001  // PB端口地址
#define PORT_8255_C 0x8002  // PC端口地址
#define PORT_8255_CTRL 0x8003 // 控制寄存器地址// 数码管段码表 (共阴极)
unsigned char seg_codes[] = {0x3F, // 00x06, // 10x5B, // 20x4F, // 30x66, // 40x6D, // 50x7D, // 60x07, // 70x7F, // 80x6F  // 9
};// 延时函数
void delay(unsigned int ms) {for (unsigned int i = 0; i < ms; i++) {for (unsigned int j = 0; j < 1000; j++) {// 空循环延时}}
}// 初始化8255
void init_8255() {// 控制字: 10000001 (0x81)// A口输出, B口输出, C口输出outportb(PORT_8255_CTRL, 0x81);
}// 显示8位数字
void display_numbers() {unsigned char digits[] = {1, 2, 3, 4, 5, 6, 7, 8}; // 要显示的数字while (!kbhit()) {  // 按任意键退出for (int i = 0; i < 8; i++) {// 设置位选 (选中当前位)outportb(PORT_8255_B, ~(1 << i));// 设置段码outportb(PORT_8255_A, seg_codes[digits[i]]);// 延时保持显示delay(1);// 关闭当前位显示 (消除鬼影)outportb(PORT_8255_A, 0x00);}}
}int main() {init_8255();        // 初始化8255display_numbers();  // 显示数字// 程序结束前关闭所有显示outportb(PORT_8255_A, 0x00);  // 关闭段选outportb(PORT_8255_B, 0xFF);  // 关闭位选return 0;
}


http://www.hkcw.cn/article/ykFLwyGVgC.shtml

相关文章

计算机组成原理——CPU的功能和基本结构

5.1 CPU的功能和基本结构 整理自beokayy课程视频 1.CPU的组成 程序计数器&#xff08;PC&#xff09;&#xff1a; 存放即将执行指令的地址。顺序执行时&#xff0c;PC“1”形成下条指令地址。在有的机器中&#xff0c;PC本身具有“1”计数功能&#xff0c;也有的机器借助运算…

LINUX62软链接;核心目录;错题:rpm -qa |grep<包名> 、rpm -ql<包名>;rm -r rm -rf;合并 cat

硬链接 软链接 软链接 [rootcode axel-2.4]# which axel /usr/bin/which: no axel in (/sbin:/bin:/usr/sbin:/usr/bin) [rootcode axel-2.4]# ln -s /opt/axel/bin/axel /usr/bin [rootcode axel-2.4]# axel https://mirrors.aliyun.com/centos-stream/ 初始化下载: https:/…

[Java恶补day13] 53. 最大子数组和

休息了一天&#xff0c;开始补上&#xff01; 给你一个整数数组 nums &#xff0c;请你找出一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 子数组是数组中的一个连续部分。 示例 1&#xff1a; 输入&#xff1a;nums …

C++哈希表:冲突解决与高效查找

引入 通过CSTL库中的unordered_map和unordered_set的学习&#xff0c;我们还需要其底层结构是什么&#xff0c;如何实现的&#xff0c;本节重点讲解哈希 哈希概念 顺序结构以及平衡树中&#xff0c;元素关键码与其存储位置之间没有对应关系&#xff0c;因此在查找一个元素是…

【科研绘图系列】R语言绘制论文比较图(comparison plot)

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍加载R包数据下载导入数据数据预处理画图1画图2画图3系统信息介绍 这篇文章详细介绍了如何使用R语言进行工作流中不同步骤的比较分析,包括数据预处理、特征选择、模型训练和结果可…

录屏不再难,从功能到体验深度测评

在日常工作和学习中&#xff0c;录屏是一项非常常见的需求&#xff0c;比如制作教程、记录操作过程、录制线上会议等。市面上虽然有不少录屏工具&#xff0c;但要么功能受限&#xff0c;要么广告繁多&#xff0c;甚至需要付费解锁高级功能&#xff0c;使用起来并不方便。 这款…

2023年12月6级第一套第一篇

在这里才找完题干&#xff0c;所以答案在下一句虽然不重要&#xff0c;不用看&#xff0c;重要的是但是 A&#xff1a;critic在虽然部分&#xff0c;不重要&#xff0c; c选项前面的部分也在虽然部分&#xff0c;不重要定位的下一句就是答案&#xff0c;还有冒号&#xff0c;看…

Linux --TCP协议实现简单的网络通信(中英翻译)

一、什么是TCP协议 1.1 、TCP是传输层的协议&#xff0c;TCP需要连接&#xff0c;TCP是一种可靠性传输协议&#xff0c;TCP是面向字节流的传输协议&#xff1b; 二、TCPserver端的搭建 2.1、我们最终好实现的效果是 客户端在任何时候都能连接到服务端&#xff0c;然后向服务…

多群组部署

相关概念 星形拓扑和并行多组 如下图&#xff0c;星形组网拓扑和并行多组组网拓扑是区块链应用中使用较广泛的两种组网方式。 星形拓扑&#xff1a;中心机构节点同时属于多个群组&#xff0c;运行多家机构应用&#xff0c;其他每家机构属于不同群组&#xff0c;运行各自应用…

unidbg patch 初探 微博deviceId 案例

声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01; 逆向过程 看了b站迷人瑞信那个由于是…

如何自定义WordPress主题(5个分步教程)

如果您已经安装了一个 WordPress 主题&#xff0c;但它不太适合您&#xff0c;您可能会感到沮丧。在定制 WordPress 主题方面&#xff0c;您有很多选择。 挑战在于找到正确的方法。 在本篇文章中&#xff0c;我将引导您了解自定义 WordPress 主题的各种选项&#xff0c;帮助您…

【兽医处方专用软件】佳易王兽医电子处方软件:高效智能的宠物诊疗管理方案

一、软件概述与核心优势 &#xff08;一&#xff09;试用版获取方式 资源下载路径&#xff1a;进入博主头像主页第一篇文章末尾&#xff0c;点击卡片按钮&#xff1b;或访问左上角博客主页&#xff0c;通过右侧按钮获取详细资料。 说明&#xff1a;下载文件为压缩包&#xff…

【nssctf第三题】[NSSCTF 2022 Spring Recruit]easy C

这是题目&#xff0c;下载附件打开是个C文件 #include <stdio.h> #include <string.h>int main(){char a[]"wwwwwww";char b[]"dvxbQd";//try to find out the flagprintf("please input flag:");scanf(" %s",&a);if…

DAY41 CNN

可以看到即使在深度神经网络情况下&#xff0c;准确率仍旧较差&#xff0c;这是因为特征没有被有效提取----真正重要的是特征的提取和加工过程。MLP把所有的像素全部展平了&#xff08;这是全局的信息&#xff09;&#xff0c;无法布置到局部的信息&#xff0c;所以引入了卷积神…

助力活力生活的饮食营养指南

日常生活中&#xff0c;想要维持良好的身体状态&#xff0c;合理的营养补充至关重要。对于易受身体变化困扰的人群来说&#xff0c;更需要从饮食中摄取充足养分。​ 蛋白质是身体的重要 “建筑材料”&#xff0c;鱼肉、鸡肉、豆类制品富含优质蛋白&#xff0c;易于消化吸收&am…

CA-Net复现

复现结果–Dice&#xff1a;90.093802&#xff0c;Jaccard&#xff1a;82.077802&#xff0c;95HD&#xff1a;6.89387267&#xff0c;ASD&#xff1a;1.76263258&#xff0c;与原文一致 感想 第16篇完全复现的论文

【具身智能】【机械臂】各类机械臂对比

选购指标 选购指标 说明机械-负载1w以内通常200g负载&#xff08;一袋酸奶&#xff09;&#xff0c;1w-5w 1kg负载&#xff08;1L饮料&#xff09;&#xff0c;5w 3kg负载机械-精度越贵精度越高机械-夹爪是否支持更换夹爪等&#xff0c;能否支持力控夹爪机械-AGV扩展 …

云服务器无法远程连接怎么办?

当云服务器无法远程连接&#xff08;比如 SSH、RDP 连接不上&#xff09;时&#xff0c;可以按照以下步骤逐一排查和解决&#xff1a; ✅ 一、检查网络连通性 &#x1f539; 1. 确认公网 IP 是否正确 登录云服务商后台查看分配给服务器的公网 IP&#xff0c;确保你连接的目标地…

PolyGen:一个用于 3D 网格的自回归生成模型 论文阅读

[2002.10880] PolyGen&#xff1a;一个用于 3D 网格的自回归生成模型 --- [2002.10880] PolyGen: An Autoregressive Generative Model of 3D Meshes 图 2&#xff1a;PolyGen 首先生成网格顶点&#xff08;左侧&#xff09;&#xff0c;然后基于这些顶点生成网格面&#xff0…

从 LeetCode 到日志匹配:一行 Swift 实现规则识别

文章目录 摘要描述题解答案题解代码分析示例测试及结果时间复杂度空间复杂度总结 摘要 在开发中我们经常遇到“模式匹配”的问题&#xff0c;比如日志分类、用户意图识别、甚至是在一些权限系统中做规则映射判断。这类问题的本质是判断两个结构是否具有一致的对应关系。LeetCo…