当前位置: 首页 > news >正文

Deepseek给出的8255显示例程

#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.lqws.cn/news/66799.html

相关文章:

  • Linux --TCP协议实现简单的网络通信(中英翻译)
  • vscode 插件 eslint, 检查 js 语法
  • Cursor 编辑器介绍:专为程序员打造的 AI 编程 IDE
  • 【 HarmonyOS 5 入门系列 】鸿蒙HarmonyOS示例项目讲解
  • 云部署实战:基于AWS EC2/Aliyun ECS与GitHub Actions的CI/CD全流程指南
  • mac电脑安装 nvm 报错如何解决
  • 数据库系统概论(十三)详细讲解SQL中数据更新(插入,修改与更新)
  • Perl One-liner 数据处理——基础语法篇【匠心】
  • 电脑wifi显示已禁用怎么点都无法启用
  • SQL 执行顺序详解
  • Dify工作流实践—根据word需求文档编写测试用例到Excel中
  • 从 AMQP 到 RabbitMQ:核心组件设计与工作原理(一)
  • 【机器学习基础】机器学习入门核心:数学基础与Python科学计算库
  • 使用pandas实现合并具有共同列的两个EXCEL表
  • SystemVerilog—Interface语法(二)
  • 如何使用DAXStudio将PowerBI与Excel连接
  • STL解析——list的使用
  • 【设计模式-3.5】结构型——装饰器模式
  • sigmastar实现SD卡升级
  • 探索大语言模型(LLM):参数量背后的“黄金公式”与Scaling Law的启示
  • 【MATLAB代码】制导——平行接近法,三维,目标是运动的,订阅专栏后可直接查看MATLAB源代码
  • 百度蜘蛛池的作用是什么?技术@baidutopseo
  • deepseek问答记录:请讲解一下transformers.HfArgumentParser()
  • 【Linux】基础文件IO
  • 智慧零工平台后端开发实战:Spring Boot 3 + MyBatis-Flex 现代化架构
  • 【AI论文】表R1:表格推理的推理时间扩展
  • 深入了解linux系统—— 进程间通信之管道
  • 微服务常用日志追踪方案:Sleuth + Zipkin + ELK
  • ffmpeg 的视频格式转换 c# win10
  • 从 AMQP 到 RabbitMQ:核心组件设计与工作原理(二)