开关量输入输出通道与顺序控制课件.ppt

开关量输入输出通道与顺序控制课件.ppt

ID:57046830

大小:701.00 KB

页数:39页

时间:2020-07-28

开关量输入输出通道与顺序控制课件.ppt_第1页
开关量输入输出通道与顺序控制课件.ppt_第2页
开关量输入输出通道与顺序控制课件.ppt_第3页
开关量输入输出通道与顺序控制课件.ppt_第4页
开关量输入输出通道与顺序控制课件.ppt_第5页
资源描述:

《开关量输入输出通道与顺序控制课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、回顾:寻址方式计算机按地址访问各个外部设备的端口(I/Oport)采集卡:集多通道于一体,具有多个端口,每个端口都有各自的端口地址。板卡端口地址=基地址+偏移量本板卡基地址=0x220(由板卡跳线所决定)偏移量地址:由所用的寄存器决定Baseoffset回顾:I/O端口地址定义地址读写Base+0计数器0计数器0+1计数器1计数器1+2计数器2计数器2+3-计数器控制+4AD低字节DA通道1低字节+5AD高字节DA通道1高字节+6DI低字节DA通道2低字节+7DI高字节DA通道2高字节+8-清除中断请求+9-增益控制+10-多路选择控制+11-模式控制

2、+12-AD转换软件触发+13-DO低字节+14-DO高字节+15--思考1、在DI.c程序中,inportb函数使用的端口地址为:基地址+6,想想在训练时是如何接线的?若端口地址为:基地址+7,又该如何接线?2、在DO.c程序中,outportb函数使用的端口地址为:基地址+13,想想在训练时是如何接线的?若端口地址为:基地址+14,又该如何接线?开关量输入输出通道与顺序控制第三讲(开关量通道综合应用)本次课的主要内容掌握I/O端口读写:输入函数:inportb(端口地址)/*读端口(寄存器)*/输出函数:outportb(端口地址,变量名)/*写端

3、口(寄存器)*/开关量通道综合应用:光电对管遮光控制LED;脉冲列计数进一步体会对开关量的读写。inportb(端口地址)/*读端口*/Base+676543210DI低字节DI7DI6DI5DI4DI3DI2DI1DI0Base+776543210DI高字节DI15DI14DI13DI12DI11DI10DI9DI8DI:16个开关输入量分别占用输入通道地址Base+6和Base+7。数据格式如下:例:DI_in=inportb(Base+6);Base+676543210DI低字节01110101DI_in=117(01110101)2;outpo

4、rtb(端口地址,变量名)/*写端口*/DO:16个开关输出量分别占用输出通道地址Base+13和Base+14。数据格式如下:DO_out=85(01010101)2;Base+1376543210DO低字节DO7DO6DO5DO4DO3DO2DO1DO0Base+1476543210DO高字节DO15DO14DO13DO12DO11DO10DO9DO8outportb(Base+13,DO_out);Base+1376543210DO低字节01010101例:ACL-8112PG采集卡DI、DO操作小结#defineBASE0x220/*基地址*/

5、DI:di_lbyte=inportb(BASE+6);di_hbyte=inportb(BASE+7);DO:outportb(BASE+13,do_lbyte);outportb(BASE+14,do_hbyte);采集卡DI/DO通道的工作过程inportb(port)outportb(port,0x15)0x1500010101111101100xF6port:0X220+13port:0X220+6DO-1DI-6开关量通道综合应用1.光电对管遮光控制LED光电对管自左至右编号,DO显示用的LED也自左至右编号。编写程序,实现如下功能:遮挡某

6、一光电对管时(绿灯显示其状态),相应的红色LED熄灭。光电对管遮光控制LED提示:端口读写函数Inportb和outportb的使用。流程图获取光电对管状态计算并输出控制LED的开关量(读DI低字节)(写DO低字节)开关量通道综合应用(续)2.脉冲列计数反复遮挡1号光电对管的光路,由此产生一个脉冲列。2号光电对管光路遮断时刻开始对这个脉冲序列计数,2号光电对管光路恢复畅通时刻停止计数。编写程序实现此功能。脉冲的计数方法看上升沿:01看下降沿:10整个脉冲:01,10(上升沿+下降沿)/2:01,10脉冲列计数提示:流程图初始化,设置计数器n

7、=02号光路是否被遮挡?1号光路是否通断1次计数器n=n+1输出计数器值是否是训练内容接线示意图Warning:关机状态下接线!仔细检查无误后再开机!六线六线光电对管遮光控制LED例程1当两排LED编号方向一致时:#defineBASEADDR0x220main(){intdi_in,do_out;while(!kbhit()){di_in=inportb(BASEADDR+6);do_out=di_in;outportb(BASEADDR+13,do_out);}}光电对管遮光控制LED例程2当两排LED编号方向相反时:intBASE_ADDRESS

8、=0x220;intcreat_DI(int*DI_NUM,intnum){inti=0;fo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。