8155驱动程序主要是涉及对端口PA、PB、PC、控制字以及定时器的设置,主要包括以下代码及函数。
(1)相关函数声明及管脚定义。
管脚定义主要是指端口PA、端口PB、端口PC、控制字以及定时器A、B和存储器首地址和相关标志位的定义;函数的声明涉及存储器及端口PA、端口PB、端口PC的读写函数、中断的开关函数和定时器相关函数,具体代码如下:
(2)读写外RAM函数。
读写外RAM函数对外部存储器指定单元数据进行读写,程序代码如下:
(3)端口PA、端口PB以及端口PC的读写设置函数。
端口PA、端口PB以及端口PC的读写设置函数主要完成对8155端口的输入输出设置及数据读写,程序代码如下:
(4)端口PA、端口PB以及端口PC的中断设置函数。
①端口PA、端口PB以及端口PC的中断设置函数完成各个端口的中断开启和关断,程序代码如下:
②端口PC上下半口配置函数。
端口PC上下半口配置函数可实现端口PC上半口配置为PA状态输出和PC下半口配置为PB状态输出。程序代码如下:
③计数器设置函数。
计数器设置函数完成计数器的起停和读写和输出模式设置,具体程序代码如下:
关键字:驱动程序
引用地址:
8155驱动程序的设计
推荐阅读最新更新时间:2024-03-16 15:56
Windows98下硬件中断驱动程序的开发
摘 要: 介绍了Windows98的内核管理机制和应用程序权限级别,简述了在Windows98下进行虚拟驱动程序开发的几种工具和编程方法,并给出了借助VToolsD用C++语言编写的处理硬件中断的程序实例。 关键词: 虚拟设备驱动程序 VToolsD 中断服务例程 美国微软公司出品的Windows98以其友好的图形用户界面,在我国赢得了广泛的市场。在给广大办公环境工作人员带来方便的同时,也给不少工程技术人员带来了一些麻烦。一些原本在DOS下很容易编出的控制硬件的程序,现在在Windows98下就不那么容易实现了。作为一个完善的操作系统也必须能控制硬件,象DOS那样直接与硬件打交道是Windows98
[应用]
STM32开发笔记66: 移植看门狗驱动程序到STM32L053R8T6
单片机型号:STM32L053R8T6 在文章STM32开发笔记45:看门狗驱动程序的移植已经介绍了看门狗驱动程序的移植方法,其实现的是将STM32CubeMX中的驱动程序,移植到自己已有的工程中。本文将介绍将STM32F070F6P6上的看门狗驱动程序移植到STM32L053R8T6的方法,步骤如下: 1、在1_bsp层引入STM32官方的驱动程序stm32l0xx_hal_iwdg.c,并修改stm32l0xx_hal_conf.h中的内容,使能内部看门狗,相关程序如下,然后进行编译,形成bsp.lib #define HAL_MODULE_ENABLED /*#define HAL_ADC_MODULE_ENA
[单片机]
利用WinDriver开发PCI设备驱动程序
摘要: WinDriver是一套PCI驱动程序开发包。它改变了传统驱动程序开发的方法与思路,极在地简化了驱动程序的编制;同时,又没有牺牲驱动程序的性能,是一套高效、快捷的PCI驱动程序开发软件包。特别适合专业硬件人员的使用。
关键词: 设备驱动程序 WinDriver PCI
WinDriver是Jungo公司出版的一个设备驱动程序开发组件,它可以大大加速PCI设备驱动程序的开发。作者在实际的项目中采用了WinDriver来开发设备驱动程序,取得了相当好的运行效果。从目前国内的资料上来看,大多数设计人员还是在用DDK、Wtools开发设备驱动程序,因而作者觉得有必要向大家介绍与推荐这个软件。
[应用]
STM32 LCD1602驱动程序
#ifndef LCD1602_STM32_H #define LCD1602_STM32_H #define LCD_RS_1 GPIOE- BSRR=GPIO_Pin_0 //PE.0--(LCD)RS #define LCD_RS_0 GPIOE- BRR =GPIO_Pin_0 #define LCD_RW_1 GPIOE- BSRR=GPIO_Pin_1 //PE.1--(LCD)RW #define LCD_RW_0 GPIOE- BRR =GPIO_Pin_1 #define LCD_EN_1 GPIOE- BSRR=GPIO_Pin_2 //PE.2--(LCD)E #define LCD_EN_0 GPIOE
[单片机]
74HC164N+单片机驱动程序
74HC系列IC广泛应用在数字电路上,主要在单片机电路比较多。其中,74HC164N是8位移位锁存器,一般用来驱动数码管,因为有时候单片机的I/O口数量有限,有时会出现单片机I/O不够用的情况,这个时候就需要外接IC来扩展。74HC164只需两根I/O口就可以控制8位输出,特别适应数码管、点阵屏、液晶等的驱动。这两根线一根是CLK、一根是DATA,只要结合时序,两根线就可以输出512种状态。下面是C程序; void sendcode(uchar SC) { uchar i; for(i=0;i 8;i++) { DAT=SC&0x01; CLK=0; CLK=1; SC =1; } } 这个是74HC164N的驱动
[单片机]
TTP229触摸模块的51单片机驱动程序
网购了一块TTP229的触摸模块。模块中实际使用的是8229BSF集成块。本人用STC89C52搭建了测试电路。用12864液晶显示。 显示01-16,表示16个按钮的对应值。 制作出来的实物图如下: 单片机源程序如下: /********************************************************************************* * 【作 者】: * 【版 本】: * 【函数功能】: 利用单线制DS18B20温度传感器, 并在液晶12864上显示 * 【使用说明】: 触摸板P1的第一和第三跳线短接 ********************************
[单片机]
Windows98下硬件中断驱动程序的开发
摘 要: 介绍了Windows98的内核管理机制和应用程序权限级别,简述了在Windows98下进行虚拟驱动程序开发的几种工具和编程方法,并给出了借助VToolsD用C++语言编写的处理硬件中断的程序实例。 关键词: 虚拟设备驱动程序 VToolsD 中断服务例程 美国微软公司出品的Windows98以其友好的图形用户界面,在我国赢得了广泛的市场。在给广大办公环境工作人员带来方便的同时,也给不少工程技术人员带来了一些麻烦。一些原本在DOS下很容易编出的控制硬件的程序,现在在Windows98下就不那么容易实现了。作为一个完善的操作系统也必须能控制硬件,象DOS那样直接与硬件打交道是Windows98
[嵌入式]
S3C2410的linux下DMA驱动程序开发
网上介绍LINUX下的一般驱动程序开发示例浩如烟海,或是因为简单,关于DMA驱动的介绍却寥寥无几;近期zhaoyang因工作需要,花了几日时间开发了某设备在S3C2410处理器Linux下DMA通信的驱动程序,有感于刚接手时无资料借鉴的茫然,故写点介绍,期待能给有DMA开发任务的网友们一点帮助。 本文将包括如下内容: DMA驱动主要函数功能 驱动中关键技术分析 具体的DMA实例分析 申明:本DMA驱动开发介绍仅适合S3C2410处理器类型,分析源码为韩国MIZI研究中心维护的dma驱动代码: linux/arch/arm/mach-s3c2410/dma.h,linux/arch/arm/mach-s3c2410/dma.c,其它
[单片机]