网站的安全怎么做网络营销方式思维导图
网站的安全怎么做,网络营销方式思维导图,开发一个小程序需要多久,网站横幅怎么制作教程熟悉C语言的人都知道#xff0c;虽然C语言是一门高级语言#xff0c;拥有很多高级语言的特性#xff0c;但是作为一种由低级语言到高级的过渡#xff0c;他又继承了很多低级语言的特性#xff0c;那就是可以直接操作计算机的硬件设备。本人近日在学习有关PLC网络方面的知识…熟悉C语言的人都知道虽然C语言是一门高级语言拥有很多高级语言的特性但是作为一种由低级语言到高级的过渡他又继承了很多低级语言的特性那就是可以直接操作计算机的硬件设备。本人近日在学习有关PLC网络方面的知识的时候接触到了这方面的知识特拿来和大家分享。C语言实现串口通信功能的调用可分为三个层次,它们是高级语言层(速度较慢)、BIOS功能调用以及直接驱动硬件今天我要和大家介绍的的这种方法就是基于BIOS功能调用的。首先简单介绍一下何谓BIOS。BIOS的全称是ROM-BIOS——ROM Basic I/O System(只读存储器基本输入输出系统)。它是一组固化到微机主板上一个ROM芯片上的子程序主要功能包括(1)驱动系统中所配置的常用外设(即驱动程序)如显示器、键盘、打印机、磁盘驱动器、通信接口等。(2)开机自检引导装入。(3)提供时间、内存容量及设备配置情况等参数。使用BIOS中断调用与DOS系统功能调用类似用户也无须了解相关设备的结构与组成细节直接调用即可。为了实现BIOS调用在BIOS中提供了大量的中断调用供我们操作不同的硬件设备它们是INT 05H 打印屏幕内容功能调用INT 10H 显示中断调用INT 12H 测定内存容量调用INT 14H 异步通行功能调用INT 16H 键盘中断调用INT 17H 打印机控制调用INT 1AH 时钟调用在众多的中断调用功能中于串口通讯有关的事 INT 14H 中断调用为了实现串口通信 对它的入口参数和出口参数作了如下的约束功能入口参数出口参数异步通信口初始化(功能编码0)AH0DX通信口号AL初始化参数AH 中为通信线路状态AL中为Modem状态写字符到异步通信口(功能编码1)AH1AL要发送的字符DX通信口号若成功AH的D70若失败AH的D71AH的D0~D6为通信线路状态从异步通信口读数据(功能编码2)AH2DH通信口号若成功AH的D70若失败AH的D71AH的D0~D6为通信线路状态AL所读取得字符读取异步通信口状态(功能编码3)AH3DX通信口号AH 中为通信线路状态AL中为Modem状态现在再将通信线路控制寄存器的各位意义简要介绍如下D7D6D5D4D3D2D1、D0访问寄存器0允许访问发送、接收中断允许1允许访问除数寄存器设置停顿0不设停顿1使Modem发连续停顿信号固定奇偶位0不用1使用D5 D4 D3111恒0101恒1校验选择0奇1偶校验允许0无校验1有校验停止位01位11.5/2位数据位选择005位016位107位118位在对BIOS调用和通信线路控制寄存器有了一些基本的了解以后在对硬件了解的要求不高的情况下我们就可以借助下面的模块利用C语言实现异步通讯了。C语言的BIOS功能调用模块1、通讯口初始化模块;r.h.al0xfb //7位数据位偶校验1位停止位。(该值时根据表二配置的)r.h.ah0 //初始化功能编码号0r,h,ax通信端口号 //通信端口设置 0为COM1 1为COM2int86(0x14,r,r) //INT14功能调用2、发送数据功能模块r.h.ah1 //初始化功能编码号1r.h.alDATA // DATA 为要发送的数据r,h,ax通信端口号 //通信端口设置 0为COM1 1为COM2int86(0x14,r,r) //INT14功能调用3、读取通信信号状态功能模块r.h.ah3 //初始化功能编码号3r,h,ax通信端口号 //通信端口设置 0为COM1 1为COM2int86(0x14,r,r) //INT14功能调用(通信状态在ah中)4、接收数据功能模块r.h.ah2 //初始化功能编码号2r,h,ax通信端口号 //通信端口设置 0为COM1 1为COM2int86(0x14,r,r) //INT14功能调用(接收的数据在al中)有了这些功能模块后我们就可以轻松的利用C语言编写出异步通信程序了现列举编写的发送共能的程序如下unsigned char send(int port,char c){union REGS r;r.x.dxport;r.h.ah1;r.h.alc;int86(0x14,r,r);return (r.h.ah); //返回发送的结果成功与否失败返回 0x80}在此仅举了发送功能模块的使用其它模块均可仿效此法实现。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89726.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!