最近一直在阅读张毅刚的《单片机原理及应用》,并模拟仿真书中案例,此次是根据书中提示编写了通过外部中断方式实现的模数转换,由于才疏学浅调试验证了一个工作日的时间,此时将源码和原理图悉数奉上。注:本人起步较晚,今后像从事单片机行业,第一次发帖,请各路朋友多多指教!
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:- #include <reg51.h>
- #include <intrins.h>
- #define uchar unsigned char
- #define uint unsigned int
- #define LED P0
- #define out P1
- sbit start = P2^1;
- sbit OE = P2^7;
- sbit CLOCK = P2^0;
- sbit add_a = P2^4;
- sbit add_b = P2^5;
- sbit add_c = P2^6;
- sbit EOC = P3^2;
- void main()
- {
-
- EA = 1;
- EX0 = 1;
- IT0 = 0;
-
- add_a = 0;
- add_b = 0;
- add_c = 0;
- while(1)
- {
- start = 0;
- start = 1;
- start = 0;
- while(1)
- {
- CLOCK = !CLOCK;
- if(EOC == 0) break;
- }
- //OE = 1;
- //OE = 0;
- }
- }
- void init0() interrupt 0 using 0
- {
- EX0 = 0;
- OE = 1;
- LED = out;
- OE = 0;
- EX0 =1;
- }
复制代码
下载:
外部中断方式实现模数转换仿真程序.7z
(39.35 KB, 下载次数: 30)
|