PC机基本AD转换

Code:
  1. //PC机基本AD转换
  2. #defineTRUE1
  3. #defineFALSE0
  4. #defineEND_OF_INT0x20
  5. #defineN80
  6. #include<process.h>
  7. #include<stdlib.h>
  8. #include<ctype.h>
  9. #include<dos.h>
  10. intstart,ch,flag;
  11. voidinterruptint9();
  12. voidon_intr9();
  13. voidenairq9();
  14. voiddisirq9();
  15. intad[641];
  16. inti;
  17. char*ab;
  18. main()
  19. {
  20. charc;
  21. clrscr();
  22. printf("PleaseinputA/Dchannelnumber(0~47)");
  23. ch=choice_channel();
  24. on_intr9();
  25. i=0;
  26. do
  27. {
  28. clrscr();
  29. flag=0;
  30. enairq9();
  31. i++;
  32. ad[i]=ab;
  33. if(i==640)
  34. {
  35. for(i=1;i<=640;i++)
  36. printf("%d",ad[i]);
  37. i=0;
  38. printf("pressqkeytoquit");
  39. c=getch();
  40. if(c=='q')
  41. break;
  42. continue;
  43. }
  44. }while(1);
  45. disirq9();
  46. printf("/n/r");
  47. exit(0);
  48. }
  49. intchoice_channel()/*选择A/D输入通道器*/
  50. {
  51. intc;
  52. staticchartem[4]={0,0,0,0};
  53. i=0;
  54. do
  55. {
  56. tem[i]=getch();
  57. if(isdigit(tem[i]&&(i<2)))/*若是数字且少于2位*/
  58. {
  59. i++;
  60. gotoxy(48+i,1);
  61. printf("%c",tem[i-1]);/*打印出来*/
  62. continue;
  63. }
  64. else
  65. if(tem[i]=0x0d)/*若是回车*/
  66. {
  67. c=atoi(tem);/*转换成整数*/
  68. if(c>=0&&(c<=47))/*若不是0—47通道号*/
  69. break;/*重新输入*/
  70. }
  71. i=0;
  72. sound(1000);
  73. delay(200);
  74. nosound();
  75. }while(1);
  76. returnc;
  77. }
  78. voidon_intr9()
  79. {
  80. disable();
  81. setvect(0x0a,int9);
  82. enable();
  83. }
  84. voidinterruptint9(bp,di,si,ds,es,dx,cx,bx,ax,ip,cs,flags)
  85. {
  86. intj,a,b;
  87. disable();
  88. if(start)
  89. {
  90. start=FALSE;
  91. for(j=0;i<N;j++);/*时间延迟*/
  92. a=inportb(0x304);/*取低8位数*/
  93. for(j=0;j<N;j++);
  94. a=inportb(0x305);/*取高4位数*/
  95. ab=(b&0x0f)*256+a;/*得到12位A/D转换后的数*/
  96. outportb(0x20,END_OF_INT);/*发硬中断结束命令*/
  97. enable();
  98. flag=1;/*中断标志置1*/
  99. }
  100. }
  101. voidenairq9()
  102. {
  103. inta;
  104. enable();
  105. start=TRUE;
  106. outportb(0x303,0);/*清A/D中断寄存器*/
  107. for(a=0;a<N;a++);
  108. outportb(0x300,ch);/*送A/D通道号*/
  109. for(a=0;a<N;a++);
  110. outportb(0x301,1);/*启动A/D转换*/
  111. }
  112. voiddisirq9()
  113. {
  114. start=FALSE;
  115. outportb(0x303,0x00);/*A/D中断寄存器*/
  116. }

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值