搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
凡人多烦事01
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
AI-“国外一开源,国内就创新”!_国内ai是否基于国外开源ai
2
JAVA设计模式--解释器模式_java 解释器模式
3
OpenAI的GPT-2:用Python构建世界上最先进的文本生成器的简单指南
4
mysql数据库迁移达梦数据库_mysql迁移达梦数据库
5
element-ui离线文档制作_elementui离线文档
6
【总线】设计fpga系统时,为什么要使用总线?
7
Xilinx常用原语详解: FPGA设计中的关键点_fpga中什么时候用到触发器源语
8
知识库-kafka服务端基本参数配置_kafka sessiontimeout配置
9
100个超强CHATGPT 提示词语言 – 满足你对所有情景的需求!_chatgpt 高阶 提示词
10
JimuReport积木报表 — API数据源报表带参制作_积木报表如何定时导出某张报表
当前位置:
article
> 正文
《深入x86的内存寻址》I/O 外设硬件开发举例一_硬件开发pit
作者:凡人多烦事01 | 2024-06-16 04:50:07
赞
踩
硬件开发pit
本文是原文《
深入x86的内存寻址
》I/O 寻址的充部分,提供PC主机蜂鸣器的细节及乐声编程,代码可以作为第三方软件包作二次开发,任君耍玩,紧接的色条就是文字内,可以拷贝使用。代码附件下载:
PC/XT 8253计数器PIT 芯片乐音开发应用
硬件开发举例一IBM PC/XT系统中8253的计数器是一种 Programmable Interval Timer (PIT) 芯片,改进型号为8254。它使用5v电源,有3个16位的独立计数器,有6种工作方式,已经作为PC标准的外设集成在系统中,即称为系统定时器 System Timer。它支持二进制或十进制 BCD 计数,计数频率为2MHz,改进型可高达10MHz,所有引脚电平和晶体管-晶体管集成电路 Transistor-Transistor Logic (TTL) 兼容。在现代的计算机主板上已经看不到 8254 这样小的芯片了,因集成电路高速发展,像 8253 这样的小集成电路已经统一整合成为计算机主板上桥接芯片中,但它的功能被保持了下来。芯片在计算机系统中主要有几个方面的作用: 计数器0作为系统计时器,用于产生时钟信号,用它完成日时钟计数。CLK 0 输人为 1.1931816MHz 方波,工作于方式3,计数初值为 0,输出信号 OUT 0 接到中断控制器 8259A 的 IRQ0 作为中断请求输入线。OUT 0 输出的方波脉冲分频后频率为 F0=1.1931816/216MHz=18.2Hz。即计数器0中断频率为每秒18.2次,计满1h需要中断次数 18.2*60*60=65520,24h需中断次 1573040次(0x001800BO),计满后双字复位清0,重新计数。 计数器1作为动态存储器定时刷新控制,CLK 1 接 1.1931816MHz的方波脉冲,工作于方式2,计数初值为18(0012H),OUTl输出的负脉冲脉宽为 1÷1.1931816MHz=838ns,其周期为18÷1.1931816MHz= 15.08 us,即每隔15.08us产生一个正脉冲,作为DMAC8237A的0通道的请求信号DREQ0,定时地对系统的动态存储器芯片进行一次刷新操作。 计数器2作为蜂鸣器音频发生器,工作在 MODE 3 为系统机箱内的蜂鸣器提供方波音频信号,经过 75477 放大后驱动蜂鸣器,作为机器的报警信号或伴音信号。GATE2接并行通信芯片8255的PB0,用它控制计数器2的计数过程。输出OUT2经过一个与门,这个与门受PB1控制,所以,扬声器由并行通信芯片来控制发声。 另外,通过编程还可对计数器2重新进行初始化,用于乐曲演奏等。由硬件连接电路可以看出,要使8253的片选信号CS有效,应使系统地址总线的A9A8A7A6A5=00010B,由于A4A3A2未参与译码,因此8253的端口基址为0x40,若取A4A3A2=000,则8253计数器0、计数器1、计数器2以及控制寄存器的端口地址分别为0x40、0x41、0x42和0x43。通过系统信息也可以得到此 PIT 设备的端口号为 0x0040 - 0x0043,对应计数器0~2还有控制寄存器,其实这些端口的定义都是传统约定而成的。 芯片的工作脉冲逻辑可以查找 Datasheet 文件,这是介绍其 6 种工作模式,各模式下的 GATE 信号作用如表所示。因为电路连接关系,要使用 MODE 0 要求使用计数器 0 来进行计数;MODE 1 和 MODE 2 等要求使用计数器2。 模式 低电平 低跳变 正跳变 高电平 0 停止计数 ○ 开始计数 1 ○ 初始化计数及 下一个时钟重置输出 ○ 2 停止计数 输出高电平 初始化计数及 重新装入计数器 开始计数 3 停止计数 同上 开始计数 4 停止计数 ○ 开始计数 5 ○ 初始化计数 ○ GATE 信号在各模式下的作用 MODE 0 计数结束中断模式 Interupt on Terminal Count 写入控制字初始化 OUT0 输出低电平,设置好 16-bit 计数初始值后开始计数,直到计数溢出即计满时产生高电平引发中断夜静请求。写入初始计数值低 8-bit 时会打断正在进行的计数,写入高 8-bit 数据时开始计数。 MODE 1 可编程单脉冲模式 Programmable One-Shot 写入计数初始值,然后通过 GATE 输入脉冲的上升沿 Rising Edge 来激发计数,直到计数结束时输出端产生高电平。计数过程中可以通过 GATE 的来重新激发计数而不会影响输出,读取数据也是。因此计数过程中,写入数据是无效的。 MODE 2 分频器模式 Rate Generator 输 入方波与设置值
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/凡人多烦事01/article/detail/725234
推荐阅读
article
ClientCnxn
: Session
0x0
for
server
null, unexpecte...
ClientCnxn
: Session
0x0
for
server
null, unexpected error 异常...
赞
踩
article
LinkedList
和
链表
_
linkedlist
双向
循环
链表
...
方法解释尾插将e插入到index位置尾插c中的元素删除index位置元素删除遇到的第一个o获取下标index位置元素将下...
赞
踩
article
fpga
初始化
错误_
FPGA
复位
设计
常见问题
及处理方法...
一开始接触到
FPGA
,肯定都知道”
复位
“,即简单又复杂。简单是因为初学时,只需要按照固定的套路——按键开关
复位
,见寄存器...
赞
踩
article
恶意代码
分析
实战
学习笔记(一)
_
恶意代码
分析
csdn
...
恶意代码
分析
实战
学习笔记(一)静态技术
分析
基础1.使用md5deep 来识别
恶意代码
的哈希值2.使用strings 来查...
赞
踩
article
动作
识别
mmaction2
使用方法和多
视频
帧图
推理
_
mmaction2
入门教程
...
MMAction2 是一款基于 PyTorch 开发的行为
识别
开源工具包,是open-mmlab项目的一个子项目。_mm...
赞
踩
article
GPT资源_
awesome
gpt
...
AIGC最新开源整理_
awesome
gpt
awesome
gpt
...
赞
踩
article
Spring
- 高
并发
系统
限流
-漏桶
算法
和令牌桶
算法
_
spring
限流
...
参考:http://www.cnblogs.com/LBSer/p/4083131.htmlhttps://blog.c...
赞
踩
article
语音
深度
鉴伪
识别项目实战:基于
深度
学习
的
语音
深度
鉴伪
识别
算法
模型
(一)音频
数据编码
与预处理_
语音
鉴伪
...
深度
学习
技术在当今技术市场上面尚有余力和开发空间的,主流落地领域主要有:视觉,听觉,AIGC这三大板块。目前视觉板块的框...
赞
踩
article
GUI
发展以及
GTK
版本
计算器
实现
_
gtk
发展历程
,
值得收藏...
/1.
gtk
环境初始化。
_
gtk
gtk
先自我介绍一下
,
...
赞
踩
article
11
个
问题
,
帮
你
彻底搞懂
工业
互联网
...
▋
工业
互联网
,
到底是谁最先提出来的?通用电气(GE)。早在2012年末
,
通用电气就提出
,
产业设备应该和IT技术相融合。...
赞
踩
article
金融
数据中心
布线
运维
管理
解决方案...
金融行业
布线
管理
面临线缆混乱、端口标识不清等共性问题,以及基于金融流程的个性化问题。nVisual可视化
管理
平台通过线上...
赞
踩
article
一往无前
!
全球
边缘
计算
大会
·上海站成功召开!...
2022年11月12日,
全球
边缘
计算
大会
·在上海市普陀区成功召开。本次
大会
由
边缘
计算
社区主办,并得到了九州云、中国联通、...
赞
踩
article
Xilinx
-7系列
SelectIO
资源
_
iobufds
...
Xilinx
-7系列IO
资源
包括部分: 1、IO
资源
;用于描述输出驱动器、输入接收器的电气特性以及各种标准接口。 2、I...
赞
踩
article
基于
sklearn
的线性
判别分析
(
LDA
)
代码
实现_
lda
降维
代码
...
本文记录使用
sklearn
库实现有监督的数据
降维
技术——线性
判别分析
(
LDA
)。采用更高效的实现方法,学习基于sklea...
赞
踩
article
金融
数据中心
建设模式浅析...
文 / 广东银行同业公会
金融
科技工作委员会 调研组 广东农信 吴臻豪高可靠、高可用、高效节能的
数据中心
成为未来智能社会的...
赞
踩
article
(1)
Zookeeper
在
linux
上
搭建
集群
_
linux
zk
集群
搭建
...
zookeeper是Apache软件基金会的一个软件项目,它为大型分布式计算提供开源的分布式配置服务、同步服务和命名注册...
赞
踩
article
Permission
Error
:
[
Errno
13]
Permission
denied
,后端处理...
Permission
Error
:
[
Errno
13]
Permission
denied
,后端处理文件时报错_perm...
赞
踩
article
YOLOV5
-
Lite
轻量化
部署
与训练_
yolov5lite
...
没啥意思,很简单,需要实现一个目标检测,但是,不能占用太多运算资源,同时需要保证一定的精度。并且要在移动端
部署
,要在一台...
赞
踩
article
Git
创建本地仓库并推送至
Git
hub上(详细步骤)_
git
remote
add
"
桥梁
名称
"
桥...
由于本人是直接通过可视化工具上手
Git
的,所以第一次接触指令操作,如果描述有误希望各位能够踊跃的指出,非常感谢。废话不多...
赞
踩
article
8254
分频
_
8254
模式
3
的
分频
计算
...
CODE SEGMENTASSUME CS:CODE;原题目是1MHZ 分为1HZ,其实是这么
计算
的:1MHZ=1000...
赞
踩
相关标签
cloud
链表
数据结构
fpga初始化错误
安全
深度学习
人工智能
计算机视觉
python
gpt
java
算法
音视频
网络
web安全
数据中心布线
综合布线管理软件
网络可视化
nVisual
边缘计算
5G
机器学习